Communauté Eggdrop
[TCL] Erratum (version actuelle : 1.02) - Version imprimable

+- Communauté Eggdrop (https://forum.eggdrop.fr)
+-- Forum : Eggdrop et scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=8)
+--- Forum : Scripts (https://forum.eggdrop.fr/forumdisplay.php?fid=4)
+---- Forum : Releases et support (https://forum.eggdrop.fr/forumdisplay.php?fid=20)
+---- Sujet : [TCL] Erratum (version actuelle : 1.02) (/showthread.php?tid=1617)



Erratum (version actuelle : 1.02) - MenzAgitat - 31/03/2016

 
Erratum

Description

Erratum permet de corriger ce qui a été dit auparavant sur un chan.

L'objectif peut être de corriger les fautes d'orthographe faites par d'autres, ou encore de leur faire dire autre chose que ce qu'ils avaient voulu dire.


Exemples

<untel> comment sa va ?
<MenzAgitat> !erratum sa/ça
<Eggdrop> Correction : <untel> comment ça va ?

<untel> cc coman sa va ?
<MenzAgitat> !erratum cc/coucou/coman/comment/sa/ça
<Eggdrop> Correction : <untel> coucou comment ça va ?

<untel> je me sens mieux
<MenzAgitat> mieux/plus pisser
<Eggdrop> Correction : <untel> je me sens plus pisser


Syntaxe

!erratum <mot/remplacement[/mot/remplacement[/...]]>


Activation

Pour activer Erratum sur un chan, vous devez taper ceci en partyline de
l'Eggdrop :
.chanset #NomDuChan +erratum
et ceci pour le désactiver :
.chanset #NomDuChan -erratum


Changelog :
Citation :1.0
  • Première version.
1.01
  • L'utilisation de majuscules dans la commande empêchait le filtrage de fonctionner correctement.
  • Une notification s'affichait en partyline à chaque utilisation de la commande.
1.02
  • Correction : le script refusait de se charger sur les Eggdrops v1.8+
  • Correction : le catalogue de messages n'était pas déchargé de la mémoire par la procédure de désallocation des ressources.


Téléchargement

Erratum v1.02


Laissez vos commentaires / questions / suggestions / rapports de bugs.

Vous pouvez trouver une liste de mes autres releases ici
 



RE: Erratum (version actuelle : 1.01) - MenzAgitat - 31/03/2016

Nouvelle version disponible : v1.01

Changelog partiel :

Citation :v1.01
  • L'utilisation de majuscules dans la commande empêchait le filtrage de fonctionner correctement.
  • Une notification s'affichait en partyline à chaque utilisation de la commande.

Nouvelle version disponible : v1.02

Changelog partiel :
Citation :v1.02
  • Correction : le script refusait de se charger sur les Eggdrops v1.8+
  • Correction : le catalogue de messages n'était pas déchargé de la mémoire par la procédure de désallocation des ressources.


Téléchargement :   Erratum v1.01

Vous pouvez trouver une liste de mes autres releases ici


Laissez vos commentaires / suggestions / rapports de bugs.


Hack de Erratum :) - CrazyCat - 29/07/2024

Il y a eu une demande sur eggheads pour pouvoir utiliser Erratum en "sed-like", c'est à dire pour pouvoir faire s/ancien/nouveau

C'est faisable assez simplement en modifiant très peu de choses:
Configuration
Remplacer la valeur de erratum_cmd (par défaut "!erratum") par "s/"

Hack
Commenter le bind pub $::erratum::erratum_auth $::erratum::erratum_cmd ::erratum::process

Modifier la procédure user_msg_listen pour qu'elle devienne:
tcl
proc ::erratum::user_msg_listen {nick host hand chan text} {
   if {![channel get $chan erratum] || [string index $text 0] eq "\001"} {
   # Exit aussi sur les /me qui sont vus par le bind pubm
      return
   } elseif {[::tcl::string::match -nocase "$::erratum::erratum_cmd*" $text]} {
   # Hack pour exploiter le pubm s/...
      ::erratum::process $nick $host $hand $chan [string trimleft [string range $text [string length $::erratum::erratum_cmd] end]]
   } else {
      ::tcl::dict::lappend ::erratum::memory $chan "<$nick> $text"
      if { [llength [::tcl::dict::get $::erratum::memory $chan]] > $::erratum::max_memory } {
         ::tcl::dict::set ::erratum::memory $chan [lreplace [::tcl::dict::get $::erratum::memory $chan] 0 0]
      }
   }
}



Comme vous voyez, là où précédemment une ligne commençant par la commande d'erratum était ignorée, maintenant elle appelle la procédure en simulant une commande pub.