[Script] Demande d'avis sur l'Anti pub V 2.1
#1
Bonjour,

Je suis là pour vous demander votre avis sur le code.
Peut t-on l'optimiser mieux que ça ?
Mon but est de régler le plus de défauts possible et qu'on m’explique pourquoi etc...
( Je tiens à préciser que je suis encore débutant en Tcl )

http://tools.eggdrop.fr/pasteme/view/ad3638f5
Répondre Avertir
#2
La seule remarque que je ferais, c'est que la procédure hostmask_process mériterait d'être sortie du namespace, et pourquoi pas dans un fichier annexe, car elle peut potentiellement être utile à d'autres scripts.

Sinon, rien à redire sur le script, à première vue il me semble plutôt propre.
Répondre
#3
Tu as des & #92; dans ton code qui devraient être remplacés par des \

Les "set" dans le namespace eval devraient comporter des noms de variable pleinement qualifiés ( set ::antispams::why(advert) .... )

Les 2 foreach servant à arrêter les timers/utimers dans la proc de désinstallation ne te servent à rien
Répondre Avertir
#4
salut,


Les lignes
217 et 200 ont la même fonction " *viens* / *viens sur #* "
216 et 219 aussi " *http* / *http://* "

La ligne 229 " *irc* " me semble trop restrictive exemple " Salut, je suis nouveau ,qu'est-ce irc ? " ça match

De plus mettre un "antispam" sur le #salon, je trouve ça un peu fort, lors d'une discution, un utilisateur, peut etre amené dire a un autre "Viens sur #aide, un helper vas t'expliquer" et pour le coup sera "matché" .

Cordialement.
Répondre Avertir
#5
(26/10/2014, 00:26)MenzAgitat a écrit : Tu as des & #92; dans ton code qui devraient être remplacés par des \

Les "set" dans le namespace eval devraient comporter des noms de variable pleinement qualifiés ( set ::antispams::why(advert) .... )

Les 2 foreach servant à arrêter les timers/utimers dans la proc de désinstallation ne te servent à rien
Tiens, je n'avais pas fait attention à cette erreur (due au forum) de & #92;, tellement habitué à la voir Smile
Pour les "set", vu qu'ils sont dans le eval, quel intérêt de qualifier ?

Et concernant les kills de timers, je pense que ce n'est pas génant dans le sens où la désinstallation intervient rarement et qu'on ne sait pas trop comment évoluera le tcl. Là, ça ne sert à rien, mais un jour qui sait...

(26/10/2014, 12:30)cestlemien a écrit : salut,


Les lignes
217 et 200 ont la même fonction " *viens* / *viens sur #* "
216 et 219 aussi " *http* / *http://* "

La ligne 229 " *irc* " me semble trop restrictive exemple " Salut, je suis nouveau ,qu'est-ce irc ? " ça match

De plus mettre un "antispam" sur le #salon, je trouve ça un peu fort, lors d'une discution, un utilisateur, peut etre amené dire a un autre "Viens sur #aide, un helper vas t'expliquer" et pour le coup sera "matché" .

Cordialement.

Je ne pense pas que le choix des mots-clés soit à discuter mais plutôt à prendre comme exemple. C'est vraiment la partie qui devrait devenir la plus configurable.

Ah, ben voila une critique: il faudrait mettre une liste des mots clés facile à éditer, et que l'init du tcl crée les binds à partir de cette liste.
Répondre
#6
(25/10/2014, 22:53)CrazyCat a écrit : Pour les "set", vu qu'ils sont dans le eval, quel intérêt de qualifier ?

Après vérification, il s'avère que tu as tout à fait raison; j'avais oublié que dans un namespace eval les set rendaient les variables permanentes même sans FQN, à la différence d'un set à l'intérieur d'une proc.
Il faut dire que j'ai pris l'habitude d'utiliser variable plutôt que set pour définir mes variables statiques.
Répondre Avertir


Atteindre :


Utilisateur(s) parcourant ce sujet : 1 visiteur(s)
Tchat 100% gratuit -Discutez en toute liberté