14/06/2012, 23:16
Mareo a écrit :tcl
proc irc_uneputaindeproc { s_nick s_uhost s_hand s_chan s_msg
# Tcl étant un langage non typé, il a été choisi de préfixer chaque variable #
# par le type de la valeur qu'elle contient : #
# "s_" pour une chaîne de caractère (string) #
# "i_" pour un entier (integer) #
# "l_" pour une liste (list) #
# "d_" pour un dictionnaire (dict) #
# "a_" pour un tableau (array) #
################################################################################
Une chose m'échappe dans l'exemple s_msg, si c'est composer de plusieurs strings c'est une liste ? et en general c'est le cas non ?
Si je suis la logique nous sommes mieux de mettre l_msg au lieu de s_msg non?
J'ai lu dans une doc ceci :
Citation :Tcl/Tk permet de tout considérer comme une liste, par exemple:et dans l'exemple
% set toto "il etait une bergere"
% llength $toto #fonction retournant le nombre d'éléments de la
#liste en argument
4
Mareo a écrit :tcl
namespace eval "script" { proc irc_uneputaindeproc { s_nick s_uhost s_hand s_chan s_msg } { switch -exact -nocase -- [lindex $s_msg 0] { # vous la voyez la grosse erreur sur la ligne juste au dessus ? # si non, voyez un opticien, une fonction dont le nom commence par # un "l" appliquée à une chaîne franchement c'est moche ! (des trucs pas interessants) } }
Si s_msg est juste, et, que la fonction lindex est faux dans l'exemple. Que faut-il utiliser ?
Au final quel est la correction que tu sous entend pour ton exemple ?