theocrite Posté(e) le 1 octobre 2005 Partager Posté(e) le 1 octobre 2005 En bref Résumé pour les dissahideurs pressés. Coolchan est un script pour Xchat. Il permet de gérer plusieurs encodages de caractères (charsets) au sein d'un même serveur. Par défaut xchat ne le permet pas : on ne peux régler qu'un seul charset par serveur. Ce topic sert de présentation/tutorial. Il fait suite à la discution commencée sur le topic d'XChat Pour faire fonctionner coolchan, il suffit de télécharger http://theocrite.free.fr/INpact/chat/coolchan.py et le fichier d'exemple http://theocrite.free.fr/INpact/chat/coolchannels (optionnel, il sera recréé lors de la fermeture d'Xchat sinon). Mettre ces fichiers dans ~/.xchat2 et faire /coolchan HELP. Un tutorial détaillé est disponible plus loin. Plan Historique Et l'unicode fût (le futur) Tutoriel (linux, et windows) Liste de compatibilité Historique Un charset c'est une représentation des données. Ça s'applique à ce qu'on écrit. L'unicode permet beaucoup plus de choses que l'iso de base. L'avant (ASCII) Dans les temps anciens, au début de l'informatique, il n'y avait que de l'ASCII (American Standard Code for Information Interchange) pur. Comme son nom l'indique, l'ASCII ne permet de représenter que des caractères américains. Les 128 caractères représentables en ASCII sont les suivants (plus quelques caractères non imprimables): !"#$%&'()*+,-./0123456789:;<=>?@ABCDEFGHIJKLMNOPQRSTUVWXYZ[\]^_`abcdefghijklmnopqrstuvwxyz{|}~ Ce qui est bien pour écrire en anglais, mais qui est fortement limité. L'ensuite (iso) On a alors eu le droit à des extensions de l'ASCII avec notamment l'ISO 8859-1 (latin1) et l'ISO 8859-15 (latin9 ou latin0). Ces deux charsets apportent des caractères manquant dans la plupart des pays ouest européens. Le second une extention du premier et est préférable en français car il rajoute les caractères €, Œ, œ et Ÿ. (Si le Ÿ est utilisé en français). C'est actuellement (malheureusement) encore le charset dominant. Et l'unicode fût (le futur) Pour remédier à ces problèmes de charsets qui se traînent des limitations historiques et dont on fait des extensions d'extensions, l'unicode a fait son apparition. Unicode permet de représenter toutes les lettres, tous les glyphes, les idéogrammes... de toutes les langues, de nombreux signes, opérateurs mathématiques, les signes astrologiques, du braille, de l'alphabet phonétique, des chiffres romains, ... (∉, ∞, ∭, ≉, ⌚, ☎, ♙, ♚,♣,♤, ❽, ⣇, ⣈, ⻳, ⺤, β, ə, ℕ, ♩♪♫♬♭♮♯, ☯, ☮). Bref dans un monde parfait, tout le monde devrait utiliser de l'unicode et il n'y aurait plus de problèmes. coolchan à été créé pour faciliter la migration des chans vers utf-8 en douceur. Il a été créé à une époque où le client IRC le plus dépendu ne supportait pas encore l'utf8. Tutoriel Coolchan est un petit script pour utiliser plusieurs charsets par serveur. Il est écrit en python, il faut donc : Windows : au moment de l'installation de xchat, choisir le plugin python, et installer Active Python (voir les instructions de xchat. si vous avez déjà installé xchat il suffit de le désinstaller et de le réinstaller, sans pour autant perdre vos réglages ) Linux : Vérifier que le plugin python est installé : Fenêtre => "greffons et scripts" (paquet xchat-python sous Mandriva, de base sous Debian). [*] Configurer les salons que vous voulez rejoindre (voir le topic d'XChat pour plus de détails). Lorsque coolchan sera chargé, il passera les chans en utf-8. Ce sera l'encodage par défaut pour la réception. Pour ne pas ennuyer les salons qui sont encore majoritairement en iso-8859-1(5), ce dernier est l'encodage utilisé pour l'émission de donnés (en fait c'est de l'utf-8 réencodé à la volée en iso). coolchan permet d'envoyer en utf-8 sur les chans désirés. Dans ce cas c'est du full utf-8 (en émission et en réception). [*] télécharger les 2 fichiers suivant : http://theocrite.free.fr/INpact/chat/coolchan.py le script en lui même http://theocrite.free.fr/INpact/chat/coolchannels le fichier contenant les channels qui seront en utf-8. il reste optionnel vu que coolchan le recrée au premier lancement s'il n'est pas là ; le fichier proposé là contient un exemple pour le chan #pcinpact-linux sur le réseau Teepi (irc.teepi.net). [*] les placer dans votre dossier de configuration de xchat qui est : Unix, Linux, MacOs, bsd... : ~/.xchat2 Windows : C:\Documents and Settings\<USER>\Application Data\X-Chat 2Placer les scripts dans ce répertoire assure qu'ils seront automatiquement chargés au prochain démarrage. [*] puis relancer xchat. Note : Pour la première fois il n'est pas nécessaire de relancer xchat. Il est possible de charger à chaud un script en précisant son path dans le menu fenêtre => greffons et scripts. Ceci n'assure pas qu'il sera chargé au démarrage. Pour cela il faut toujours le placer dans le répertoire d'xchat. [*] pour ajouter un chan à la liste des chan en utf-8 pour l'écriture, il y a deux méthodes : méthode la plus simple car directe : taper "/coolchan on" (sans les guillemets) dans la boite de dialogue de xchat, une fois sur le chan qui doit être en utf-8 méthode la plus "compliquée" mai la plus efficace s'il y a beacoup de chans à configurer. éditer le fichier coolchannels avec votre éditeur de texte préféré (vi, notepad2, etc) et ajouter les chans qui sont en utf-8,un par ligne, avec la syntaxe "Réseau #salon". par exemple : "Teepi #pcinpact-linux" sachant que Réseau est le nom exact du serveur que vous avez dans la liste de réseaux. Ces deux méthodes supposent que le serveur est enregistré (menu xchat => Network list). Si le serveur a été accédé par la main et pas via la configuration normale, il n'est pas identifié (NETWORK) et ne peux pas différentier les servers. [*] Liste des fonctions de coolchan accessibles : "/coolchan on" ajoute le chan courant à la liste des chans cools (ceux qui supportent l'utf8) "/coolchan off" fait l'opération inverse "/coolchan list" affiche la liste des chans qui sont sympa "/coolchan help"... Vous devez bien avoir une petit idée non ? D'autres options sont à venir. Pour les features requests, il suffit de laisser un message dans le topic. Liste de compatibilité Coolchan est connu pour fonctionner sur : Debian GNU/Linux (etch) 2.6.15 / Xchat 2.6.4 Ubuntu GNU/Linux (dapper) 2.6.15 / Xchat 2.6.1 Mandriva 2007 / xchat-2.6.6-3mdv2007.0 Gentoo / xchat 2.6.8 Mac OS X 10.4.7 / Xchat Aqua : 0.15.2 Windows XP / Xchat 2.6.4-1 de Silverex Windows XP / Xchat 2.6.5a du site officiel. Coolchan ne semble pas fonctionner sur : Windows XP / Xchat 2.6.7a du site officiel.TODO : Ce qu'il est possible de faire avec l'utf-8 Problèmes de migration, Solution Alternatives : Irssi + recode, chatzilla (czpci) Lien vers le commentaire Partager sur d’autres sites More sharing options...
an0nyme Posté(e) le 2 octobre 2005 Partager Posté(e) le 2 octobre 2005 j'ai corrigé un bug et une erreur de frappe dans coolchan.py voila un diff : 138c138 < if len(coolhannels) > 0: --- > if len(coolchannels) > 0: 141c141 < print pair[1] + "@" + pair[0] --- > print pair[1] + "@" + pair[0] 143c143 < print "Usage : /coolchan {on|off|liste|help}" --- > print "Usage : /coolchan {on|off|list|help}" Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 3 octobre 2005 Auteur Partager Posté(e) le 3 octobre 2005 Xchat gère un charset par channel, mais pas à la connexion...Il y a toujours moyen d'exécuter la commande "/charset ..." pour changer pour le salon en cours. /charset s'applique à tout le serveur, contrairement à chatzilla. j'ai corrigé un bug et une erreur de frappe dans coolchan.pyvoila un diff : 138c138 < if len(coolhannels) > 0: --- > if len(coolchannels) > 0: 141c141 < print pair[1] + "@" + pair[0] --- > print pair[1] + "@" + pair[0] 143c143 < print "Usage : /coolchan {on|off|liste|help}" --- > print "Usage : /coolchan {on|off|list|help}" Salut, merci pour le diff. Par contre pour l'indentation du print, je ne vois pas Pour le reste, j'ai pris en compte les modifications. Sinon, je n'ai jamais fait de python sous windows et je n'ai pas l'intention d'en installer un chez moi, alors si quelqu'un a une idée... Ah, et aussi, normalement pour rajouter python et perl, pas besoin de désinstaller, il suffit de les rajouter en tant que script et plugins (ou greffons comme ils ont traduit). Lien vers le commentaire Partager sur d’autres sites More sharing options...
Scaramouche Posté(e) le 4 octobre 2005 Partager Posté(e) le 4 octobre 2005 je m'étais d'ailleurs posé la question ... mais bon, c'est vite fais de desintallé,réinstaller ... pour le lien du script modifié, c'est toujours le même ? que je teste quand même au cas ou ça soit solutionné sinon le problème de l'utf touche surtout les pingouins mais vu qu'on ne choisit pas toujours l'OS duquel on t'chat Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 4 octobre 2005 Auteur Partager Posté(e) le 4 octobre 2005 (faut voir si après la correction d'an0nyme ça va marcher .. si c'est lié ou non ..... tu nous tiens au courant theo ?) Non, il n'y a pas de raisons parce que 1/ Cette partie n'est utilisé que quand on tape /coolchan list 2/ Normalement, c'est interprété par le soft et c'est censé être dépendant de l'OS en offrant une couche d'abstraction. Ce genre de problèmes ne devrait pas exister... Sinon oui, le lien est le même : http://theocrite.free.fr/INpact/chat/coolchan.py Lien vers le commentaire Partager sur d’autres sites More sharing options...
Scaramouche Posté(e) le 5 octobre 2005 Partager Posté(e) le 5 octobre 2005 merci mon canard je vais tester ça (quand je serai sous win ) Lien vers le commentaire Partager sur d’autres sites More sharing options...
tuXXX Posté(e) le 25 octobre 2005 Partager Posté(e) le 25 octobre 2005 Pour que ça nous dise si il n'y a aucun chan de listé (et ne pas juste ne rien faire...) --- coolchan.py.ori 2005-10-04 01:50:10.000000000 +0200 +++ coolchan.py 2005-10-25 18:50:46.000000000 +0200 @@ -139,6 +139,8 @@ print "Liste des chans cool :" for pair in coolchannels: print pair[1] + "@" + pair[0] + else: + print "Aucun chan cool dans la liste." elif word[1] == "help" or word[1] == "aide": print "Usage : /coolchan {on|off|list|help}" print "" Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 25 octobre 2005 Auteur Partager Posté(e) le 25 octobre 2005 Merci TuXXX, c'est mis à jour Lien vers le commentaire Partager sur d’autres sites More sharing options...
Scaramouche Posté(e) le 27 octobre 2005 Partager Posté(e) le 27 octobre 2005 tu pourrais presque faire un topic dans programmation pour ce scritp theo non ? si vous le dévellopez on pourra faire un pcinpact-script avec plein d'autres choses Lien vers le commentaire Partager sur d’autres sites More sharing options...
AHP_Nils Posté(e) le 10 novembre 2005 Partager Posté(e) le 10 novembre 2005 Quelqu'un a essayé coolchan avec Xchat pour osx? Jvoudrais des retours avant de tester Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 10 novembre 2005 Auteur Partager Posté(e) le 10 novembre 2005 En fait c'est du python, donc les binds ne fonctionnent pas sous windows. Mais ça fonctionne bien sous linux. Regarde sur le net si ça fonctionne bien sous OSX Au pire je pense que vu que c'est une base UNIX, ça devrait passer. Lien vers le commentaire Partager sur d’autres sites More sharing options...
Scaramouche Posté(e) le 11 novembre 2005 Partager Posté(e) le 11 novembre 2005 Quelqu'un a essayé coolchan avec Xchat pour osx? Jvoudrais des retours avant de tester tu ne perds rien à essayer : au pire ça te fera bugger ton xchat comme sous windows (fermeture de la fenêtre xchat quand tu veux envoyer un message) ... et tu as juste à supprimer les fichiers .py et jesais plus quoi de ton dossier xchat pour que le script ne se relance pas au démarrage Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 11 novembre 2005 Auteur Partager Posté(e) le 11 novembre 2005 Le deuxième fichier, c'est coolchannels. Tu peux aussi décharger les scripts sans redémarrer xchat Lien vers le commentaire Partager sur d’autres sites More sharing options...
tuXXX Posté(e) le 18 novembre 2005 Partager Posté(e) le 18 novembre 2005 theocrite... y'a un problème : le script ne marche pas si il y a un espace dans le nom du serveur (c'est mon cas...) EDIT : je suis dessus j'ai presque fini... EDIT2 : voilàààà Bon j'ai remplacé les espaces par des tab dans le fichier de config (on ne peut pas mettre de tab dans la liste des serveurs de xchat donc normalement c'est bon) Après j'ai mis simplifié la sauvegarde des fichiers, maintenant ça met un retour à la ligne systématiquement, c'est plus propre dans le code (code en moins) et dans le fichier (cat inside ). (et ça rajoute juste une ligne au chargement donc c'est raisonnable) Et accessoirement j'ai corrigé une indentation... --- coolchan.py.ori 2005-10-25 20:14:57.000000000 +0200 +++ coolchan.py 2005-11-19 00:32:44.000000000 +0100 @@ -140,7 +140,7 @@ for pair in coolchannels: print pair[1] + "@" + pair[0] else: - print "Aucun chan cool dans la liste\n" + print "Aucun chan cool dans la liste." elif word[1] == "help" or word[1] == "aide": print "Usage : /coolchan {on|off|list|help}\n" print "coolchan est un script python qui permet d'utiliser simultanément l'utf-8 et l'iso-8859-15 sur le même serveur. Il nécessite de régler le charset par défaut sur utf-8, ce sera l'encodage utilisé pour la réception. L'envoi sera réencodé en iso, sauf pour les chans ajouté dans la liste des chans cools" @@ -163,13 +163,8 @@ if len(coolchannels) == 0: chanfile.close() return - first = True for pair in coolchannels: - if first: - chanfile.write(pair[0] + " " + pair[1]) - first = False - else: - chanfile.write("\n" + pair[0] + " " + pair[1]) + chanfile.write(pair[0] + "\t" + pair[1] + "\n") chanfile.close() except IOError: print "coolchan: Erreur: Impossible d'ecrire le fichier de configuration" @@ -182,7 +177,8 @@ chanfile.close() if not templist == ['']: for channel in templist: - coolchannels.append(channel.split(" ")) + if not channel == '': + coolchannels.append(channel.split("\t")) del chanfile del templist except IOError: (j'envoie aussi directement le fichier à theo par mail...) Lien vers le commentaire Partager sur d’autres sites More sharing options...
tuXXX Posté(e) le 19 novembre 2005 Partager Posté(e) le 19 novembre 2005 Il faudrait aussi changer les liens vers le script de theo... là y'a un pb Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 19 novembre 2005 Auteur Partager Posté(e) le 19 novembre 2005 Suite au post de ex-floodeur, avant le post de TuXXX http://inconnu.isu.edu/~ink/new/projects/xchat-xmms/ http://rousse.pm.org/~georgi/xmms/xmms-tool.tar.gz http://apz.fi/apz/xchat2/xmmsrcs/ .... http://scripts.xchat.org/cgi-bin/search?st...0&Submit=Search Si tu y tiens vraiment TuXXX : C'est à jour sur le ftp. Malheureusement je ne passe plus tellement sur l'irc, donc j'ai pas tellement l'occasion de débugger et d'ajouter des features... Deuxième post, suite au post de TuXXX : C'est quoi ce binz ? L'url a merdé lors de la migration, c'est déjà arrivé. Mais le pire c'est que même quand j'édite, ça rechie après ? :spicedicounasse: Saloperie d'IPB Bon, je laisse Scara gérer ça, elle va bien trouver une solution EDIT : Ça fait bizzare je viens juste de poster, mais le dernier message n'est pas de moi... le temps de charger la page. Moins d'une seconde, pas mal EDIT : Han l'enfoiré, quand je reposte moins de 10 minutes après il combine les deux messages ensemble et il les place après les messages postés entre les deux. Je ne connaissait pas ça Lien vers le commentaire Partager sur d’autres sites More sharing options...
Scaramouche Posté(e) le 20 novembre 2005 Partager Posté(e) le 20 novembre 2005 bon, comme je l'avais suggéré y'a quelques temps un topic dédié pour ce script n'est pas du luxe avec le modifs, améliorations apportés au fur et à mesure .. donc j'ai mis les posts ayant un rapport avec ça dans ce topic (en provenance du topic tuto xchat pour ceux qui n'ont pas suivit ) theo : tu pourrais modifier ton premier post pour expliquer ce que c'est en fait plus en détail et mettre un :arro:w (et enlever la faute d'ortho dans le titre) ? je comptais le faire après avoir splité le topic mais je pensais plus que ici j'avais pas de droits Lien vers le commentaire Partager sur d’autres sites More sharing options...
tuXXX Posté(e) le 10 décembre 2005 Partager Posté(e) le 10 décembre 2005 J'ai trouvé un bug (disons une fonction non implémentée...) Quand on se connecte à un serveur, coolchan met le charset en utf-8 Mais à priori il le fait trop tôt, et quand xchat se connecte et met le charset par défaut du serveur. Sans compter que lorsqu'on se connecte à d'autres serveurs en plus, ils ne sont pas non plus en utf-8. Lien vers le commentaire Partager sur d’autres sites More sharing options...
tuXXX Posté(e) le 21 décembre 2005 Partager Posté(e) le 21 décembre 2005 Au fait, le coolchannel donné en première page ne marche peut-être plus... (et à mon avis ça déstabilise les gens, ils se demandent quoi prendre, à quoi ça sert, etc...) Lien vers le commentaire Partager sur d’autres sites More sharing options...
AHP_Nils Posté(e) le 13 janvier 2006 Partager Posté(e) le 13 janvier 2006 Juste pour prévenir que ça marche sous OSX avec X-Chat Aqua, par contre je dois loader à la main le plugin python, qui load coolchan.py tout seul... Lien vers le commentaire Partager sur d’autres sites More sharing options...
Ago Posté(e) le 13 janvier 2006 Partager Posté(e) le 13 janvier 2006 Un ptit message juste pour dire que je "crois" avoir trouvé un bug dans coolchan Je dis je crois, car c'est une bete observation, j'ai pas été voir dans le code :) Le problème : il s'agit du changement d'un topic à partir de xchat, apparement, il l'envoie en utf et ca fait pas bo quand on le vois en iso ^^ Lien vers le commentaire Partager sur d’autres sites More sharing options...
Scaramouche Posté(e) le 20 janvier 2006 Partager Posté(e) le 20 janvier 2006 wé, ça s'est avéré dite, vous confirmez qu'il fonctionne ou pas le coolchan en première page ? si c'est non va falloir voir ça.... (la flemme de l'essayer, je préfère être avec 2 serveurs ) Lien vers le commentaire Partager sur d’autres sites More sharing options...
JeremyF Posté(e) le 23 août 2006 Partager Posté(e) le 23 août 2006 Coolchan est parfaitement fonctionnel sur Xchat Aqua Système : Mac OS X 10.4.7 Xchat Aqua : 0.15.2 Lien vers le commentaire Partager sur d’autres sites More sharing options...
Kai-Kai Posté(e) le 31 août 2006 Partager Posté(e) le 31 août 2006 Bonjour, J'ai decouvert ce formidable script qu'etait coolchan recemment... et il me convenait a la perfection ! Mais voila, aujourd'hui je suis passé a la derniere version de Xchat, soit la 2.6.7a et la : ça ne fonctionne plus. Il m'affiche bien le message disant que le script est bien chargé, mais quand je tape du texte, il est envoyé un UTF8 et non en ISO comme le script devrait le faire... Avec l'ancienne version (2.6.4) ça fonctionnait bien, mais la nouvelle est plus jolie et j'aimerais bien la conserver pour éviter certains bugs de l'autre. Conclusion : quelqu'un a t-il une idée pour faire refonctionner coolchan dans Xchat 2.6.7a ? Car je ne sais malheureusement pas coder en python, donc je n'ai pas la moindre idée de la source du problème. Merci d'avance :) Lien vers le commentaire Partager sur d’autres sites More sharing options...
theocrite Posté(e) le 31 août 2006 Auteur Partager Posté(e) le 31 août 2006 Tu n'as pas d'erreurs ? C'est sur quelle distribution ? Où est ce que tu as récupéré la version 2.6.7 ? La dernière version stable est la 2.6.6[1]. Et sur le cvs, je n'ai trouvé des mentions que de 2.6.4, 2.6.6 et 2.6.X. Essaye la 2.6.6, pour voir si cela fonctionne. [1] http://www.xchat.org/download/ [2] http://xchat.cvs.sourceforge.net/xchat/xch...amp;view=markup Pour info, je vais être absent une semaine, donc je ne pourrais pas vraiment regarder ça avant (ceci dit, il y a plein de gens qui lisent le python sur ce forum et qui ont probablement une version plus uptodate que moi). Par curiosité, c'est pour aller sur quel serveur ? Lien vers le commentaire Partager sur d’autres sites More sharing options...
Messages recommandés
Archivé
Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.