|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
EDITB - ALIASES FAVORIS DANS L'EDITBOX (SUGGESTION, COMPLETION)
Information sur la source
Description
Ce code mémorise tous les aliases entrés dans l'editbox de chaque fenêtre pour vous les reproposer si vous commencez à taper un alias qui débute de la même façon. Vous pouvez y ajouter, au choix : - ceux de mIRC (/kick,/nick,...) - les aliases contenus dans vos remotes Vous pouvez très bien choisir d'en ajouter aucun (auquel cas seuls les aliases que vous aurez rentré vous-même apparaîtront). Il utilise un système de statistiques pour essayer de vous proposer celui qui correspond au mieux au début d'alias que vous avez tapé (bêtement en proposant le plus utilisé). Par exemple, /echo a été utilisé 15 fois et /ebeeps 9. En commençant la ligne par /e, vous aurez /echo qui va remplacer l'ancien editbox, mais qui va séléctionner la chaîne "cho", vous permettant de continuer à écrire en écrasant la suggestion. Vous pouvez de plus faire "tourner" les suggestions en utilisant TAB de la même façon que vous le faisiez pour les nicks sur un salon. Tapez /editb si l'alias ne s'est pas déclenché au début (il s'agit d'un ON START donc si vous avez c/c le code sans le charger, vous devrez le faire). Tapez /editb.uninstall si vous souhaitez supprimer le fichier Edit.ini qui contient toutes les statistiques.
Source
- ;************************
- ;EditB - Aliases Favoris
- ; Par ArKanis
- ; http://www.arkanis.eu
- ;************************
- ;v1.3
-
- on *:start:editb
- alias editb {
- .timereditb -mo 1 100 editb
- if (!$hget(Editb)) {
- hmake Editb 100
- if ($exists(Edit.ini)) hload -i Editb Edit.ini Commands
- else {
- var %i = 1, %a = $script(0)
- if (!$?!="Souhaitez-vous inclure les aliases contenus dans vos remotes ?") var %a = 0
- while %i <= %a {
- tokenize 32 $script(%i)
- if ($exists($1-)) filter -fkg $qt($1-) editb.ht ^alias [^-l]
- inc %i
- }
- var %l1 = abook ajinvite alias aline ame amsg anick aop auser autojoin avoice $&
- away background ban bcopy beep bread break breplace bset btrunc bunset bwrite channel
- var %l2 = clear clearall cline clipboard close color comclose comopen comreg continue copy creq $&
- ctcpreply ctcps dcc dccserver dde ddeserver debug dec describe dialog did didtok disable
- var %l3 = disconnect dlevel dline dll dns dqwindow drawcopy drawdot drawfill drawline drawpic drawrect $&
- drawreplace drawrot drawsave drawscroll drawtext ebeeps echo editbox emailaddr enable events
- var %l4 = exit fclose filter findtext finger firewall flash flist flood flush flushini font fopen fseek $&
- fsend fserv fserve fullname fwrite ghide gload gmove gopts goto gplay gpoint gqreq groups gshow
- var %l5 = gsize gstop gtalk gunload guser hadd halt haltdef hdec hdel help hfree hinc hload hmake hop hsave $&
- ial ialclear ialmark identd if ignore iline inc invite iuser join kick linesep links list load
- var %l6 = loadbuf localinfo logmdi me mkdir mnick mode msg nick noop notice notify omsg onotice part partall $&
- pdcc perfom play playctrl pop protect pvoice qme qmsg query queryrn quit raw reload remini remote
- var %l7 = remove rename renwin reseterror resetidle return returnex rlevel rline rmdir run ruser save savebuf $&
- saveini say scid scon server set showmirc signal sline sockaccept sockclose socklist socklisten
- var %l8 = sockmark sockopen sockpause sockread sockrename sockudp sockwrite sound speak splay sreq strip timer $&
- timerstamp titlebar tnick tokenize toolbar topic tray ulist unload unset unsetall updatenl url uwho
- var %l9 = var vcadd vcmd vcrem vol while whois window winhelp write writeini, %i = 1, %m = 9
- if (!$?!="Souhaitez-vous inclure les aliases officiels de mIRC ?") var %m = 0
- while %i <= %m {
- var %l = $($+(%,l,%i),2), %m = $numtok(%l,32), %t = 1
- while %t <= %m {
- editb.ht $gettok(%l,%t,32)
- inc %t
- }
- inc %i
- }
- hsave -i Editb Edit.ini Commands
- }
- }
- scid $activecid
- var %a = $replace($active,$chr(32),_), %o = $hget(EditbAct,%a), %c = $editbox($active), %l = / $readini(mirc.ini,text,commandchar), %i = 1
- tokenize 32 $replace(%c,$chr(91),$chr(165),$chr(93),$chr(166))
- if (!$1) hadd -m EditbAct %a 1
- if (!$istok(%l,$left($1,1),32)) return
- var %l = $addtok(%l,.,32)
- while $istok(%l,$left($1,1),32) {
- tokenize 32 $right($1-,-1)
- inc %i
- }
- hadd -m EditbAct %a $editbox($active).selstart
- if (($len($1) > $calc(%o - %i)) || (!$hget(EditbPro,%a))) {
- if ($hget(Editb,$1) != $null) return
- var %s = $editbox($active).selstart
- if (($len($1) >= 0) && (%s > $calc($len($1) +1))) {
- if ($hget(EditbPro,%a)) hdel EditbPro %a
- if (!$exists(Edit.ini)) return
- var %r = $+($replace($1,.,\.,?,\?,+,\+),.*), %p, %w = 0
- window -h @Editb
- filter -cgfwa Edit.ini @Editb edit.c $+(/^,%r,=[0-9]+/i)
- var %re = $line(@Editb,1), %m = $line(@Editb,0), %d = 2
- while (!$regex(%re,/^([^=]+)=[0-9]+$/i)) {
- var %re = $line(@Editb,%d), %d = %d + 1
- if (%d > %m) break
- }
- if ($regml(1)) {
- var %t = $+($left($editbox($active),$calc(%i -1)),$replace($regml(1),$chr(165),$chr(91),$chr(166),$chr(93)))
- if ($hget(EditbAct,%a) >= %s) dec %i $calc($v1 - $v2)
- editbox $+(-ab,$calc($len($1) + %i),e,$calc($len(%t) +1)) %t $2-
-
- }
- else var %t = $gettok($editbox($active),1,32)
- hadd -m EditbPro %a %t
- hadd -m EditbAct %a %s
- hadd -m EditbSel %a $left($1,%s)
- }
- }
- }
- alias -l editba return $editbox($active)
- alias editb.uninstall {
- .timereditb* off
- var %l = Editb EditbAct EditbPro EditbSel, %t = 1
- while $gettok(%l,%t,32) {
- if ($hget($v1)) hfree $v1
- inc %t
- }
- if ($exists(Edit.ini)) .remove Edit.ini
- if ($window(@Editb)) window -c $v1
- echo 2 -at * Tapez /load -rs $qt($script) pour décharger le code
- }
- on *:unload:editb.uninstall
- alias -l edit.c {
- var %1 = $gettok($1,2,61), %2 = $gettok($2,2,61)
- if (!%1) return 1
- if (!%2) return -1
- if (%1 > %2) return -1
- else return 1
- }
- alias -l editb.ht {
- tokenize 32 $1-
- var %m = $replace($iif($2,$2,$1),$chr(91),$chr(165),$chr(93),$chr(166))
- if (!$hget(Editb,%m)) hadd -m Editb %m 0
- }
- on *:input:*:{
- if ($mouse.key & 2) return
- var %l = / $readini(mirc.ini,text,commandchar), %s
- if (!$istok(%l,$left($1,1),32)) return
- var %l = $addtok(%l,.,32)
- while ($istok(%l,$left($1,1),32)) tokenize 32 $right($1-,-1)
- if ($1 == editb.uninstall) return
- hinc -m Editb $1
- if ($hget(Editb,$1) == 1) var %s = 1
- hinc -m EditbAct C
- var %a = $replace($target,$chr(32),_)
- editb
- if ($hget(EditbPro,%a)) hdel EditbPro %a
- if ($hget(EditbAct,%a)) hdel EditbAct %a
- if (!$calc($hget(EditbAct,C) % 5)) var %s = 1
- if (%s) editb.s
- }
- alias -l editb.s if ($hget(Editb)) hsave -i Editb Edit.ini Commands
- on *:exit:if ($hget(Editb)) hsave -i Editb Edit.ini Commands
- raw 421:*:{
- if ($hget(Editb,$2)) hdel Editb $2
- editb.s
- }
- on *:tabcomp:*:{
- var %l = / $readini(mirc.ini,text,commandchar), %e = 0
- if (!$istok(%l,$left($1,1),32)) return
- var %l = $addtok(%l,.,32)
- while $istok(%l,$left($1,1),32) {
- tokenize 32 $right($1-,-1)
- inc %e
- }
- scid $activecid
- tokenize 32 $replace($1-,$chr(91),$chr(165),$chr(93),$chr(166))
- var %a = $replace($target,$chr(32),_), %s = $editbox($target).selstart
- if (%s > $calc($len($1) + %e +1)) return
- var %p = $1, %q = $left(%p,$calc(%s - %e -1)), %r = $+($replace(%q,.,\.,?,\?,+,\+),.*), %b
- window -h @Editb
- if ($hget(EditbSel,%a) != %q) {
- if (!$exists(Edit.ini)) return
- filter -cgfwa Edit.ini @Editb edit.c $+(/^,%r,=[0-9]+/i)
- hadd -m EditbSel %a %q
- }
- var %f = $fline(@Editb,$+(%p,=*),1)
- if ($+($1,=*) !iswm $line(@Editb,%f)) var %b = 1
- if ($mouse.key & 1) {
- var %i = $calc(%f - 1)
- if ((%b) && (%f)) inc %i
- if (%i <= 0) var %i = $line(@Editb,0)
- }
- else {
- var %i = $calc(%f + 1)
- if ((%b) && (%f)) dec %i
- if (%i > $line(@Editb,0)) var %i = 1
- }
- var %t = $gettok($line(@Editb,%i),1,61)
- if (%t) {
- var %t = $+($left($editbox($target),%e),$replace($+(%q,$right(%t,$calc($len(%t) + %e +1- %s))),$chr(165),$chr(91),$chr(166),$chr(93)))
- editbox $+(-ab,$calc(%s),e,$calc($len(%t) +1)) %t $2-
- hadd -m EditbPro %a %t
- }
- halt
- }
- ;End Of File
;************************
;EditB - Aliases Favoris
; Par ArKanis
; http://www.arkanis.eu
;************************
;v1.3
on *:start:editb
alias editb {
.timereditb -mo 1 100 editb
if (!$hget(Editb)) {
hmake Editb 100
if ($exists(Edit.ini)) hload -i Editb Edit.ini Commands
else {
var %i = 1, %a = $script(0)
if (!$?!="Souhaitez-vous inclure les aliases contenus dans vos remotes ?") var %a = 0
while %i <= %a {
tokenize 32 $script(%i)
if ($exists($1-)) filter -fkg $qt($1-) editb.ht ^alias [^-l]
inc %i
}
var %l1 = abook ajinvite alias aline ame amsg anick aop auser autojoin avoice $&
away background ban bcopy beep bread break breplace bset btrunc bunset bwrite channel
var %l2 = clear clearall cline clipboard close color comclose comopen comreg continue copy creq $&
ctcpreply ctcps dcc dccserver dde ddeserver debug dec describe dialog did didtok disable
var %l3 = disconnect dlevel dline dll dns dqwindow drawcopy drawdot drawfill drawline drawpic drawrect $&
drawreplace drawrot drawsave drawscroll drawtext ebeeps echo editbox emailaddr enable events
var %l4 = exit fclose filter findtext finger firewall flash flist flood flush flushini font fopen fseek $&
fsend fserv fserve fullname fwrite ghide gload gmove gopts goto gplay gpoint gqreq groups gshow
var %l5 = gsize gstop gtalk gunload guser hadd halt haltdef hdec hdel help hfree hinc hload hmake hop hsave $&
ial ialclear ialmark identd if ignore iline inc invite iuser join kick linesep links list load
var %l6 = loadbuf localinfo logmdi me mkdir mnick mode msg nick noop notice notify omsg onotice part partall $&
pdcc perfom play playctrl pop protect pvoice qme qmsg query queryrn quit raw reload remini remote
var %l7 = remove rename renwin reseterror resetidle return returnex rlevel rline rmdir run ruser save savebuf $&
saveini say scid scon server set showmirc signal sline sockaccept sockclose socklist socklisten
var %l8 = sockmark sockopen sockpause sockread sockrename sockudp sockwrite sound speak splay sreq strip timer $&
timerstamp titlebar tnick tokenize toolbar topic tray ulist unload unset unsetall updatenl url uwho
var %l9 = var vcadd vcmd vcrem vol while whois window winhelp write writeini, %i = 1, %m = 9
if (!$?!="Souhaitez-vous inclure les aliases officiels de mIRC ?") var %m = 0
while %i <= %m {
var %l = $($+(%,l,%i),2), %m = $numtok(%l,32), %t = 1
while %t <= %m {
editb.ht $gettok(%l,%t,32)
inc %t
}
inc %i
}
hsave -i Editb Edit.ini Commands
}
}
scid $activecid
var %a = $replace($active,$chr(32),_), %o = $hget(EditbAct,%a), %c = $editbox($active), %l = / $readini(mirc.ini,text,commandchar), %i = 1
tokenize 32 $replace(%c,$chr(91),$chr(165),$chr(93),$chr(166))
if (!$1) hadd -m EditbAct %a 1
if (!$istok(%l,$left($1,1),32)) return
var %l = $addtok(%l,.,32)
while $istok(%l,$left($1,1),32) {
tokenize 32 $right($1-,-1)
inc %i
}
hadd -m EditbAct %a $editbox($active).selstart
if (($len($1) > $calc(%o - %i)) || (!$hget(EditbPro,%a))) {
if ($hget(Editb,$1) != $null) return
var %s = $editbox($active).selstart
if (($len($1) >= 0) && (%s > $calc($len($1) +1))) {
if ($hget(EditbPro,%a)) hdel EditbPro %a
if (!$exists(Edit.ini)) return
var %r = $+($replace($1,.,\.,?,\?,+,\+),.*), %p, %w = 0
window -h @Editb
filter -cgfwa Edit.ini @Editb edit.c $+(/^,%r,=[0-9]+/i)
var %re = $line(@Editb,1), %m = $line(@Editb,0), %d = 2
while (!$regex(%re,/^([^=]+)=[0-9]+$/i)) {
var %re = $line(@Editb,%d), %d = %d + 1
if (%d > %m) break
}
if ($regml(1)) {
var %t = $+($left($editbox($active),$calc(%i -1)),$replace($regml(1),$chr(165),$chr(91),$chr(166),$chr(93)))
if ($hget(EditbAct,%a) >= %s) dec %i $calc($v1 - $v2)
editbox $+(-ab,$calc($len($1) + %i),e,$calc($len(%t) +1)) %t $2-
}
else var %t = $gettok($editbox($active),1,32)
hadd -m EditbPro %a %t
hadd -m EditbAct %a %s
hadd -m EditbSel %a $left($1,%s)
}
}
}
alias -l editba return $editbox($active)
alias editb.uninstall {
.timereditb* off
var %l = Editb EditbAct EditbPro EditbSel, %t = 1
while $gettok(%l,%t,32) {
if ($hget($v1)) hfree $v1
inc %t
}
if ($exists(Edit.ini)) .remove Edit.ini
if ($window(@Editb)) window -c $v1
echo 2 -at * Tapez /load -rs $qt($script) pour décharger le code
}
on *:unload:editb.uninstall
alias -l edit.c {
var %1 = $gettok($1,2,61), %2 = $gettok($2,2,61)
if (!%1) return 1
if (!%2) return -1
if (%1 > %2) return -1
else return 1
}
alias -l editb.ht {
tokenize 32 $1-
var %m = $replace($iif($2,$2,$1),$chr(91),$chr(165),$chr(93),$chr(166))
if (!$hget(Editb,%m)) hadd -m Editb %m 0
}
on *:input:*:{
if ($mouse.key & 2) return
var %l = / $readini(mirc.ini,text,commandchar), %s
if (!$istok(%l,$left($1,1),32)) return
var %l = $addtok(%l,.,32)
while ($istok(%l,$left($1,1),32)) tokenize 32 $right($1-,-1)
if ($1 == editb.uninstall) return
hinc -m Editb $1
if ($hget(Editb,$1) == 1) var %s = 1
hinc -m EditbAct C
var %a = $replace($target,$chr(32),_)
editb
if ($hget(EditbPro,%a)) hdel EditbPro %a
if ($hget(EditbAct,%a)) hdel EditbAct %a
if (!$calc($hget(EditbAct,C) % 5)) var %s = 1
if (%s) editb.s
}
alias -l editb.s if ($hget(Editb)) hsave -i Editb Edit.ini Commands
on *:exit:if ($hget(Editb)) hsave -i Editb Edit.ini Commands
raw 421:*:{
if ($hget(Editb,$2)) hdel Editb $2
editb.s
}
on *:tabcomp:*:{
var %l = / $readini(mirc.ini,text,commandchar), %e = 0
if (!$istok(%l,$left($1,1),32)) return
var %l = $addtok(%l,.,32)
while $istok(%l,$left($1,1),32) {
tokenize 32 $right($1-,-1)
inc %e
}
scid $activecid
tokenize 32 $replace($1-,$chr(91),$chr(165),$chr(93),$chr(166))
var %a = $replace($target,$chr(32),_), %s = $editbox($target).selstart
if (%s > $calc($len($1) + %e +1)) return
var %p = $1, %q = $left(%p,$calc(%s - %e -1)), %r = $+($replace(%q,.,\.,?,\?,+,\+),.*), %b
window -h @Editb
if ($hget(EditbSel,%a) != %q) {
if (!$exists(Edit.ini)) return
filter -cgfwa Edit.ini @Editb edit.c $+(/^,%r,=[0-9]+/i)
hadd -m EditbSel %a %q
}
var %f = $fline(@Editb,$+(%p,=*),1)
if ($+($1,=*) !iswm $line(@Editb,%f)) var %b = 1
if ($mouse.key & 1) {
var %i = $calc(%f - 1)
if ((%b) && (%f)) inc %i
if (%i <= 0) var %i = $line(@Editb,0)
}
else {
var %i = $calc(%f + 1)
if ((%b) && (%f)) dec %i
if (%i > $line(@Editb,0)) var %i = 1
}
var %t = $gettok($line(@Editb,%i),1,61)
if (%t) {
var %t = $+($left($editbox($target),%e),$replace($+(%q,$right(%t,$calc($len(%t) + %e +1- %s))),$chr(165),$chr(91),$chr(166),$chr(93)))
editbox $+(-ab,$calc(%s),e,$calc($len(%t) +1)) %t $2-
hadd -m EditbPro %a %t
}
halt
}
;End Of File
Conclusion
Il a grossièrement la même utilité que l'add-on qu'avait proposé fjxokt, sauf que celui-cç n'affiche pas les suggestions au dessus de l'editbox, mais fonctionne à la manière d'Internet Explorer (7.0 je crois) Pas de bugs connu (grâce à la participation active de Wims pour les dénicher :D). Merci à lui. Pour toute question, suggestion, remarque, n'hésitez pas ^^
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Historique
- 23 août 2007 18:08:38 :
- Insertion du .zip
- 24 août 2007 02:43:29 :
- Prise en compte des majuscules pour la recherche (regex //i) - Si le début est /E, le e majuscule restera
- 24 août 2007 14:20:46 :
- Le code gère le changement de serveur actif (/scid)
- 26 août 2007 01:29:12 :
- un oubli sur le ON INPUT concernant les [ ]
- 15 mars 2008 15:18:59 :
- Correction de bugs lors de l'utilsation de la touche Suppr (à droite du chariot donc)
Gestion du . (commandes discrètes) : exemple avec /.timer ...
Sources du même auteur
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
EditBox retour à la ligne [ par Kolibot ]
Je n'arrive pas à trouver la commande qui provoquerait un retour à la ligne dans un editbox en fonction d'un caractère.Je réexplique : Un script envoi
Heure active dans un editbox [ par DiGhan ]
Bonjour ! But : Afficher l'heure dans un editbox de telle facon que l'heure soit active et non fixe . J'entends par "active" qu'elle soit mise à jour
comment sélectionnez dans une list [ par _Dams_ ]
slt à tous,j'aibeau chercher je n'y arrive pas.j'aimerais joindre un canal qd je clique dessusmerci de votre aidevoici mon code :dialog favoris { tit
probléme d'incrémentation [ par GeVaUdAn974 ]
salut a tous!!! j'ai un petit probléme d'incrémentation... je ne sais pas si sa vien de mes aliases ou quoi, mais mon incrémentation marche quand il v
kickban en aliases avec mIRC 6.2 [ par by43 ]
Bonjour,Voilà, j'ai ecrit un petit aliase qui permet que lorsque je tape /kb pseudo raison, il kickban le pseudo avec la raison donnée. Seul probleme,
soucis pour set une var dans un dialog [ par mr_orus1 ]
Bonjour, voilà, j'essaie de faire un petit system de favoris pour joindre les salles favorites.voici mon code, après j'esplique le soucison *:dialog:f
RECHERCHER UN FAVORIS IE/FIREFOX [ par Arsene Lupin ]
Bonsoir à tousJ'ai téléchargé l'add-on pour "RECHERCHER UN FAVO
/editbox [ par PaTaTe ]
Bonjour,Je vais peut être paraitre idiot mais je ne trouve pas le moyen d'automatiser l'affichage d'un second editbox géré par la commande /editbox -o
boite dial couleur ecriture mirc conbo [ par snip74 ]
Bonjour,depuis des mois je teste de créer une barre ou on peut choisir la couleur du texte et le fond de couleur dans une liste ( un combo) me semble
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version

LG KP501
Entre 9€ et 159€
|