[Résolu] Problème d'accents avec script TCL maison
#1
Bonjour à tous,

Ça fait quelques temps que je n'ai pas visité le forum, sympa de voir que vous êtes tous encore là Smile

J'ai dernièrement changé mon Eggdrop de VPS et depuis j'ai un problème d'accents que je n'arrive pas à solutionner. J'ai même suivi les recommandations de http://wiki.eggdrop.fr/Utf-8 mais ça n'a rien changé hélas.

Voici un bout de code TCL que j'utilise :

tcl
bind pub - !coffre pub:coffre
proc pub:coffre { nick uhost handle chan arg } {
if { $arg =="3491" } {
putserv "PRIVMSG $chan :BRAVO !!!"
putserv "PRIVMSG $chan :T'as trouvé le code $nick !"
putserv "PRIVMSG $chan :Le code était $arg"
} else {
putserv "PRIVMSG $chan :$arg : code erroné !"
}
}



Dans mon éditeur de texte, je vois bien les accents et le programme indique UTF-8 pour l'encodage. Pas de problème non plus quand je modifie le fichier du script via nano sur le serveur. Mais depuis mon client IRC, les "é" ne sont tout simplement pas visibles quand on fait appel au script :

Code :
!coffre 1323
=> 1323 : code erron !

!coffre 3491
=> BRAVO !!!
=> T'as trouv le code xyz !
=> Le code tait 3491

Seul le Eggdrop semble avoir ce problème, les autres utilisateurs et moi pouvons envoyer / recevoir des messages avec accents sans problème via ce serveur IRC.

Quelles pistes puis-je suivre pour corriger cela ? Merci d'avance pour votre aide.
Répondre Avertir
#2
Et si tu modifies ton script en:
Code :
bind pub - !coffre pub:coffre
proc pub:coffre { nick uhost handle chan arg } {
   if { $arg =="3491" } {
      pututf8 $chan "BRAVO !!!"
      pututf8 $chan "T'as trouvé le code $nick !"
      pututf8 $chan "Le code était $arg"
   } else {
      pututf8 $chan "$arg : code erroné !"
   }
}
proc pututf8 { chan text } {
   putserv "PRIVMSG $chan :[encoding convertto utf-8 $text]"
   return 1
}
Répondre
#3
Merci CrazyCat !

Ce problème est réglé grâce à tes conseils.
Répondre Avertir
#4
Salut à tous je remonte se post car j'ai aussi un problème d'accent sur mon tcl maison.
voila se qui s'affiche quand je tape ma commande
Code :
[13:18:03] «~AngeDesOmbres» !biere Anibal-Lecter
[13:18:04] «&Thor» AngeDesOmbres offre une bonne biÚre bien fraiche à Anibal-Lecter .
donc j'ai mis le code plus haut en place et il fonctionne pas pour moi
Code :
:48:03] «~AngeDesOmbres» !biere Anibal-Lecter
[13:48:05] «&Thor» AngeDesOmbres offre une bonne biÚre bien fraiche à Anibal-Lecter .
Alors du coup j'ai modifier légèrement le code en remplacement
Code :
proc pututf8 { chan text } {
  putserv "PRIVMSG $chan :[encoding convertto utf-8 $text]"
  return 1
}
par
Code :
proc putiso { chan text } {
  putserv "PRIVMSG $chan :[encoding convertto ISO-8859-15 $text]"
  return 1
}
oui j'ai bien modifier la proc dans la commande en elle même
mais la ça ne fonctionne pas
et j'ai un message en PL
Code :
Tcl error [pub:biere]: unknown encoding "ISO-8859-15"
Merci d'avance
Bye

EDIT: problème résolu je met le code pour ceux qui sont sous linux à la base et qui encode en utf-8 direct
tcl
proc pututf8 { chan text } {
   putserv "PRIVMSG $chan :[encoding convertfrom utf-8 $text]"
   return 1
}


Suffit de remplacer convertto en convertfrom
Encore merci
Bye
Répondre Avertir


Atteindre :


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