F-Keys Manager
Platform: mIRC
Published Aug 27, 2008
Updated Aug 28, 2008
This is a basic F-Keys, or Function Keys, Manager for mIRC. It simply allows you to add custom commands to keyboard function keys, ie: F1, CTRL+F8, SHIFT+F9, etc...
Thank you and enjoy!
Screenshot
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
; Title: F-Keys Manager v1.00
; Author: Zmodem
; Date: 26 August 2008
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
alias -l i return $ini($ifile,keys,$1)
alias -l w writeini $ifile keys $1 $2-
alias -l ifile return $+(",$scriptdirkeys.ini,")
alias -l k return $readini($ifile,$iif($1,p,n),keys,$2-)
alias fkeysman dialog - $+ $iif($dialog(fkeysman),a,m fkeysman) fkeysman
alias -l gitem return $gettok($did(fkeysman,2,$did(fkeysman,2).sel),1,32)
alias -l fkeysman.unload {
.timerFkeysman* off
.timerFkeysman 1 0 return $input(Successfully Unloaded Addon! $+ $crlf $+ $crlf $+ Thank you for using!,io,Unload Complete)
.unload -rs $+(",$nopath($script),")
}
alias -l set.key {
%t = $input(Please enter a new function for: $gitem $+ $crlf $+ $crlf $+ Note: Leave blank to cancel changes.,ieo,Enter Function)
if (!%t) { return }
w $gitem %t
load.keys $did(2,fkeysman).sel
}
alias -l make.ini {
var %i = 1, %k = F
:begin
while (%i <= 12) {
w %k $+ %i <NOT_SET>
inc %i
}
if (%k == cF) return
if (%k == sF) %k = cF
if (%k == F) %k = sF
%i = 1
goto begin
}
alias -l load.keys {
var %i = 1, %m = $i(0), %v, %d = fkeysman, %k
did -r %d 2
did -b %d 3,4
while (%i <= %m) {
%k = $k(0,$i(%i))
did -a %d 2 $i(%i) - $iif(%k,%k,<NOT SET>)
inc %i
}
if ($1) { did -c %d 2 $1 | did -e %d 3,4 }
}
;Function Keys
alias F1 $iif($k(1,F1) == <NOT_SET>,mirc,$k(1,F1))
alias F2 if (($k(1,F2)) && ($v1 != <NOT_SET>)) $k(1,F2)
alias F3 if (($k(1,F3)) && ($v1 != <NOT_SET>)) $k(1,F3)
alias F4 if (($k(1,F4)) && ($v1 != <NOT_SET>)) $k(1,F4)
alias F5 if (($k(1,F5)) && ($v1 != <NOT_SET>)) $k(1,F5)
alias F6 if (($k(1,F6)) && ($v1 != <NOT_SET>)) $k(1,F6)
alias F7 if (($k(1,F7)) && ($v1 != <NOT_SET>)) $k(1,F7)
alias F8 if (($k(1,F8)) && ($v1 != <NOT_SET>)) $k(1,F8)
alias F9 if (($k(1,F9)) && ($v1 != <NOT_SET>)) $k(1,F9)
alias F10 if (($k(1,F10)) && ($v1 != <NOT_SET>)) $k(1,F10)
alias F11 if (($k(1,F11)) && ($v1 != <NOT_SET>)) $k(1,F11)
alias F12 if (($k(1,F12)) && ($v1 != <NOT_SET>)) $k(1,F12)
alias sF1 if (($k(1,SHIFT+F1)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F1)
alias sF2 if (($k(1,SHIFT+F2)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F2)
alias sF3 if (($k(1,SHIFT+F3)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F3)
alias sF4 if (($k(1,SHIFT+F4)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F4)
alias sF5 if (($k(1,SHIFT+F5)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F5)
alias sF6 if (($k(1,SHIFT+F6)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F6)
alias sF7 if (($k(1,SHIFT+F7)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F7)
alias sF8 if (($k(1,SHIFT+F8)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F8)
alias sF9 if (($k(1,SHIFT+F9)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F9)
alias sF10 if (($k(1,SHIFT+F10)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F10)
alias sF11 if (($k(1,SHIFT+F11)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F11)
alias sF12 if (($k(1,SHIFT+F12)) && ($v1 != <NOT_SET>)) $k(1,SHIFT+F12)
alias cF1 if (($k(1,CTRL+F1)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F1)
alias cF2 if (($k(1,CTRL+F2)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F2)
alias cF3 if (($k(1,CTRL+F3)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F3)
alias cF4 if (($k(1,CTRL+F4)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F4)
alias cF5 if (($k(1,CTRL+F5)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F5)
alias cF6 if (($k(1,CTRL+F6)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F6)
alias cF7 if (($k(1,CTRL+F7)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F7)
alias cF8 if (($k(1,CTRL+F8)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F8)
alias cF9 if (($k(1,CTRL+F9)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F9)
alias cF10 if (($k(1,CTRL+F10)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F10)
alias cF11 if (($k(1,CTRL+F11)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F11)
alias cF12 if (($k(1,CTRL+F12)) && ($v1 != <NOT_SET>)) $k(1,CTRL+F12)
;DIALOGS
dialog -l fkeysman {
title "Function Keys Manager"
size -1 -1 180 135
option dbu
box "Function Keys", 1, 6 6 168 108
list 2, 10 16 159 93, size hsbar vsbar
button "&Set...", 3, 30 118 27 12
button "&Clear", 4, 67 118 27 12
box "", 5, 107 116 1 14
button "E&xit", 6, 120 118 27 12, ok
}
;fkeysman Dialog Events
ON *:DIALOG:fkeysman:*:*: {
var %d = $dname, %e = $devent, %i = $did, %t
if (%e == init) { load.keys }
if (%e == sclick) {
if (%i == 2) { did - $+ $iif($did(2,$did(2).sel),e,b) %d 3,4 }
if (%i == 3) { set.key }
if (%i == 4) { $iif($input(Are you sure you want to clear $gitem $+ 's function?,wy,Confirm F-Key Clear),w $gitem <NOT_SET>) | load.keys $did(2).sel }
}
if ((%e == dclick) && (%i == 2)) { set.key }
}
;MENUS
menu menubar,status {
F-Keys Manager
.Run...:fkeysman
.-
.Unload:$iif($input(Are you sure you want to unload this addon?,wy,Confirm Unload),fkeysman.unload)
}
;;LOAD EVENTS
ON *:LOAD:make.ini | var %q = $input(Function Keys Manager Successfully Loaded! $+ $crlf $+ $crlf Would you like to run it now?,iyvk6,Addon Loaded!) | $iif((%q != $no) && (%q != $timeout),fkeysman,return $input(You can run the addon at any time by typing: /fkeysman,iok6,Additional Help))