Ecriture couleur en popups

Contenu du snippet

L'addon d'écriture couleur, c'est pas nouveau, je sais. Mais j'ai essayé d'innover par rapport à ce que l'on voit d'habitude. Caractéristiques :
- Pas de dialogs, le tout en popup
- Utilise les Hash Table
- Utilise le $submenu pour raccourcir le code.
- Alias de colorisation, de cette façon, l'addon peut être intégré très facilement à un script.

Source / Exemple :


menu menubar,channel {
  Ecriture Couleurs
  .Texte standard
  ..Couleur du texte
  ...Actuel $chr(58) $iif($hc(ctxt),$colorname($hc(ctxt)),Aucun):halt
  ...$submenu($colorlist($1,ctxt))
  ..Couleur de fond
  ...Actuel $chr(58) $iif($hc(ftxt),$colorname($hc(ftxt)),Aucun):halt
  ...$submenu($colorlist($1,ftxt))
  ..Gras
  ...Actuel $chr(58) $iif($hcf(gra),Oui,Non):halt
  ...$submenu($colorouinon($1,gra))
  ..Souligné
  ...Actuel $chr(58) $iif($hcf(sou),Oui,Non):halt
  ...$submenu($colorouinon($1,sou))
  .Première lettre
  ..Couleur du texte
  ...Actuel $chr(58) $iif($hc(cfst),$colorname($hc(cfst)),Aucun):halt
  ...$submenu($colorlist($1,cfst))
  ..Couleur de fond
  ...Actuel $chr(58) $iif($hc(ffst),$colorname($hc(ffst)),Aucun):halt
  ...$submenu($colorlist($1,ffst))
  ..Gras
  ...Actuel $chr(58) $iif($hcf(fgra),Oui,Non):halt
  ...$submenu($colorouinon($1,fgra))
  ..Souligné
  ...Actuel $chr(58) $iif($hcf(fsou),Oui,Non):halt
  ...$submenu($colorouinon($1,fsou))
  ..Majuscule
  ...Actuel $chr(58) $iif($hcf(maj),Oui,Non):halt
  ...$submenu($colorouinon($1,maj))
  .Décorations
  ..Gauche:var %dg $input(Tapez ici la décoration a insérer à gauche,e,Décoration gauche,$hc(gauche)) | $iif(%dg,chasave,chdsave) gauche $iif(%dg,$+(%dg,$chr(160))
  ..Droite:var %dd $input(Tapez ici la décoration a insérer à droite,e,Décoration droite,$hc(droite)) | $iif(%dd,chasave,chdsave) color droite $iif(%dd,$+($chr(160),%dd)
}
on *:START:{
  hmake color
  $iif($exists(color),hload,hsave) color color
}
alias -l colorlist {
  if ($istok(begin.end,$1,46)) { return - }
  elseif ($1 == 1) { return Aucune:chdsave $2 }
  elseif ($1 > 1 && $1 <= 17) { return $colorname($calc($1 -2)) : chasave $2 $base($calc($1 -2),10,10,2) }
}
alias -l colorouinon {
  if ($istok(begin.end,$1,46)) { return - }
  if ($1 == 1) { return Oui:chasave color $2 }
  elseif ($1 == 2) { return Non:chdsave color $2 }
}
alias -l colorname { return $gettok(Blanc.Noir.Bleu foncé.Vert.Rouge.Marron.Violet.Orange.Jaune.Vert clair.Bleu vert.Bleu clair.Bleu.Rose.Gris.Gris clair,$calc(1+$1),46) }
alias -l hc return $hget(color,$1)
alias -l hcf return $hfind(color,$1)
alias -l chasave { hadd -m color $1- | hsave color color }
alias -l chdsave { hdel color $1 | hsave color color }
alias colorise {
  return $+($hc(gauche),$iif($hcf(fgra),),$iif($hcf(fsou),),$iif($hc(cfst),$+(,$hc(cfst),$iif($hc(ffst),$+($chr(44),$hc(ffst))))),$iif($hcf(maj),$upper($left($1-,1)),$left($1-,1)),$iif($hcf(fgra),),$iif($hcf(fsou),),,$iif($hcf(gra),),$iif($hcf(sou),),$iif($hc(ctxt),$+(,$hc(ctxt),$iif($hc(ftxt),$+($chr(44),$hc(ftxt))))),$right($1-,-1),$iif($hcf(gra),),$iif($hcf(sou),),,$hc(droite))
}

on *:INPUT:#:{ if ($left($1-,1) !isin /!. && c !isincs $gettok($chan($active).mode,1,32) && !$ctrlenter) { msg $active $colorise($1-) | halt } }

Conclusion :


Comme je l'ai dit, l'addon peut être utilisé manuellement à l'aide de $colorise(votre-texte)

Donc, l'on Input de la fin peut très bien être intégré à un autre input facilement à l'aide de cet alias.

Voila :)

A voir également

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.