Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:reseau:weechat [23/04/2011 10:08] arien |
doc:reseau:weechat [19/07/2015 11:39] milou [Configuration manuelle] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Weechat ====== | + | ====== WeeChat : client IRC console====== |
+ | * Objet : **WeeChat**, client IRC en mode texte. | ||
+ | * Niveau requis : {{tag>débutant avisé}} | ||
+ | * Commentaires : //Client IRC moderne en mode texte (curses).// | ||
+ | * Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-) | ||
+ | * Le terminal ou console : [[:doc:systeme:console | Utilisation du terminal.]] | ||
+ | * Suivi : {{tag>à-compléter}}{{tag>à-tester}} | ||
+ | * Création par [[user>MaTTuX_]] le 10/02/2009 | ||
+ | * Mis à jour par [[user>MicP]] le 06/02/2014 | ||
+ | * Testé par <...> le <...> FIXME | ||
+ | * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=1973|ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
+ | **Nota :** | ||
+ | Contributeurs, les FIXME sont là pour vous aider, supprimez-les une fois le problème corrigé ou le champ rempli. | ||
===== Introduction ===== | ===== Introduction ===== | ||
- | Weechat est un client IRC qui n'a pas de mode graphique.\\ | + | **WeeChat** (**W**ee **E**nhanced **E**nvironment for **Chat**) est un client de discussion en mode texte utilisant le protocole IRC. Il est léger et rapide, distribué sous licence GPL. \\ |
- | Il s'utilise directement en console.\\ | + | Tout peut y être contrôlé au clavier. Il est extensible par des extensions (plugins) et des scripts. |
+ | |||
+ | Un émulateur de terminal recommandé pour X (mais pas obligatoire) est rxvt-unicode (il a un bon support UTF-8, et aucun problème avec les touches par défaut).\\ | ||
Il supporte les scripts écrit en ruby, perl, python et lua grâce à un système de plugins. | Il supporte les scripts écrit en ruby, perl, python et lua grâce à un système de plugins. | ||
Ligne 10: | Ligne 24: | ||
En console, il suffit de taper : | En console, il suffit de taper : | ||
- | <code bash># aptitude install weechat && weechat-core && weechat-plugins && weechat-dev && weechat-curses</code> | + | <code root>apt-get update && apt-get install weechat weechat-plugins weechat-scripts</code> |
- | Si vous avez installez Squeeze par la méthode **traditionnelle** tous ces paquets sont installés automatiquement : \\ | + | fonctionnalités :\\ |
- | + | - 256 couleurs\\ | |
- | **weechat**\\ | + | - proxy IRC (extension relay)\\ |
- | **weechat-core**\\ | + | - redirection des commandes IRC\\ |
- | **weechat-plugins**\\ | + | - l'extension rmodifier\\ |
- | **weechat-dev**\\ | + | - les expressions rationnelles pour les highlights\\ |
- | **weechat-curses**\\ | + | - support de la couleur dans l'heure du tampon de discussion\\ |
- | + | - option IRC pour forcer la couleur de certains pseudos\\ | |
- | + | - partage de la zone de saisie entre les tampons.\\ | |
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | + | ||
- | ==== Plus bas à continuer par un pro (si besoin est) - 23/04/2011 - arien ==== | + | |
===== Configuration ===== | ===== Configuration ===== | ||
Ligne 40: | Ligne 43: | ||
Dans un terminal sous user, saisissez : | Dans un terminal sous user, saisissez : | ||
- | $ weechat-curses | + | <code user>weechat-curses</code> |
- | + | ||
- | Ensuite on va ajouter un serveur auquel on voudra se connecter : | + | |
- | /server add freenode irc.freenode.net/6667 | + | |
On définit ensuite les pseudos que l'on utilisera : | On définit ensuite les pseudos que l'on utilisera : | ||
Ligne 64: | Ligne 64: | ||
/set irc.server.freenode.autojoin "#debian-facile,#canal2" | /set irc.server.freenode.autojoin "#debian-facile,#canal2" | ||
- | Si vous avec installer un serveur oftc :\\ | + | Si vous avez installé **avant** un serveur oftc :\\ |
Pour supprimer la valeur d’une option du serveur et utiliser sa valeur par défaut à la place, par exemple pour utiliser les pseudos par défaut (irc.server_default.nicks) : | Pour supprimer la valeur d’une option du serveur et utiliser sa valeur par défaut à la place, par exemple pour utiliser les pseudos par défaut (irc.server_default.nicks) : | ||
/set irc.server.oftc.nicks null | /set irc.server.oftc.nicks null | ||
- | Voilà, on a fait l'essentiel. N'oubliez pas de taper : | + | Voilà, on a fait l'essentiel. **N'oubliez pas de taper :** \\ |
/save | /save | ||
- | afin de ne pas perdre ce que vous venez de faire ! | + | **afin de ne pas perdre ce que vous venez de faire !** |
S'il vous vient le désir de modifier cette configuration, il suffit de reprendre la commande où ce situe ces changements à faire et de les exécuter ! | S'il vous vient le désir de modifier cette configuration, il suffit de reprendre la commande où ce situe ces changements à faire et de les exécuter ! | ||
Ligne 88: | Ligne 88: | ||
===== Split des fenêtres ===== | ===== Split des fenêtres ===== | ||
- | Une fonctionnalité très intéressante de weechat est le split des fenêtres. Kézako le split des fenêtres ? C'est ça : | + | Une fonctionnalité très intéressante de weechat est le split des fenêtres. Qu'est-ce que c'est le split des fenêtres ? C'est ça : |
Ligne 123: | Ligne 123: | ||
===== Raccourcis clavier ===== | ===== Raccourcis clavier ===== | ||
- | - alt + flèches gauche/droite (ou F5/F6): aller au chan(tampon) précédent/suivant | + | WeeChat utilise un certain nombre de touches par défaut. Toutes ces touches sont dans la documentation, mais vous devriez connaître au moins les touches vitales : |
- | - F7/F8: aller à la fenêtre précédente/suivante (quand l'écran est divisé) | + | |
- | - F9/F10: faire défiler la barre de titre | + | ^ //RACCOURCIS CLAVIER// ^ //ACTION// ^ |
- | - F11/F12: faire défiler la liste des pseudos | + | | <key>alt</key> + <key>Left</key> / <key>Right</key> (ou <key>F5</key> / <key>F6</key>) | aller au chan(tampon) précédent/suivant | |
- | - tab: compléter le texte de la barre d’entrée, comme avec votre shell | + | | <key>F7</key> / <key>F8</key> | aller à la fenêtre précédente/suivante (quand l'écran est divisé) | |
- | - page préc/suiv: faire défiler le texte dans le tampon courant | + | | <key>F9</key> / <key>F10</key> | faire défiler la barre de titre | |
- | - alt + A: sauter au tampon avec de l’activité (dans la "hotlist") | + | | <key>F11</key> / <key>F12</key> | faire défiler la liste des pseudos | |
+ | | <key>tab</key> | compléter le texte de la barre d’entrée, comme avec votre shell | | ||
+ | | <key>Left</key> / <key>Right</key> | faire défiler le texte dans le tampon courant | | ||
+ | | <key>alt</key> + <key>a</key> | sauter au tampon avec de l’activité (dans la “hotlist”) | | ||
+ | |||
+ | Selon votre clavier et/ou vos besoins, vous pouvez associer n’importe quelle touche à une commande avec la commande /key. Une touche utile est meta-k (<key>alt</key> + <key>k</key>) pour trouver le code des touches. | ||
+ | |||
+ | Exemple pour associer meta-y (<key>alt</key> + <key>y</key>) à la commande /buffer close : | ||
+ | |||
+ | <code>/key bind (pressez meta-k) (pressez meta-y) /buffer close</code> | ||
+ | |||
Vous pouvez créer vous-même vos raccourcis : | Vous pouvez créer vous-même vos raccourcis : | ||
Ligne 142: | Ligne 153: | ||
* [[http://www.weechat.org/scripts/ | Scripts disponibles]] | * [[http://www.weechat.org/scripts/ | Scripts disponibles]] | ||
- | Il vous suffira de les copier dans leurs repertoires respectifs, //python// avec //python//, //ruby// avec //ruby//... dans les répertoires **autoload** \\ | + | Il vous suffira de les copier dans leurs repertoires respectifs, //python// avec //python//, //perl// avec //perl//, //ruby// avec //ruby//... dans les répertoires **autoload** \\ |
- | Voir l'installation du script **urlbar.py** à la suite. | + | |
+ | ===== Barre latérale avec la liste des tampons. ===== | ||
+ | |||
+ | La barre latérale est super pratique voir assez indispensable pour afficher la liste des tampons à gauche, je vous propose d'installer. | ||
+ | |||
+ | ==== Script: buffers.pl ==== | ||
+ | **Fermer** weechat. | ||
+ | |||
+ | Copiez simplement ce script avec [[:doc:editeurs:nano|nano]] dans : | ||
+ | <code user> nano ~/.weechat/perl/autoload/buffers.pl</code> | ||
+ | * [[http://www.weechat.org/files/scripts/buffers.pl| Télécharger script: buffers.pl]] | ||
- | ==== TP - urlbar.py : ==== | + | ===== Bip sur haut-parleur sur highlight/message privé. ===== |
+ | ==== Script: beep.pl ==== | ||
+ | <code user> nano ~/.weechat/perl/autoload/beep.pl</code> | ||
+ | * [[http://www.weechat.org/files/scripts/beep.pl| Télécharger script: beep.pl]] | ||
- | Je vous propose par exemple l'installation d'un script à destination de pouvoir lire une <url> longue en entier (pour la recopier par exemple) dans une fenêtre particulière qui va surplomber les /window splith et splitv que vous avez créées. | + | ===== Réduire la longueur des URLs en utilisant isgd ou tinyurl. ===== |
+ | Je vous propose à présent l'installation d'un script qui réduit la longueur des URLs. | ||
- | ==== Script urlbar.py ==== | + | ==== Script: shortenurl.py ==== |
- | Fermer weechat. | + | **Fermer** weechat. |
- | Créer et copier le script dans : | + | Copier le script dans : |
- | $ nano /home/mon_user/.weechat/python/autoload/urlbar.py | + | <code user>nano ~/.weechat/python/autoload/shortenurl.py</code> |
- | voir [[commande:nano|Commande NANO]] | + | voir [[:doc:editeurs:nano|nano]] |
+ | * [[http://www.weechat.org/files/scripts/shortenurl.py| Télécharger script: shortenurl.py]] | ||
- | <code bash># -*- coding: utf-8 -*- | + | ===== Affichage de la barre d'url pour clic ou sélection facile. ===== |
+ | Ce script affiche une barre d'URLs longue.\\ | ||
+ | <note tip>**Nota :** Je ne suis pas certain que ce script serait utile.</note> | ||
+ | |||
+ | ==== Script: urlbar.py ==== | ||
+ | <code user>nano ~/.weechat/python/autoload/urlbar.py</code> | ||
+ | * [[http://www.weechat.org/files/scripts/urlbar.py| Télécharger script: urlbar.py]] | ||
+ | Copiez **par exemple:** | ||
+ | <file python ~/.weechat/python/autoload/urlbar.py># -*- coding: utf-8 -*- | ||
# | # | ||
# Copyright (c) 2009 by FlashCode <flashcode@flashtux.org> | # Copyright (c) 2009 by FlashCode <flashcode@flashtux.org> | ||
+ | # Copyright (c) 2009 by xt <xt@bash.no> | ||
# | # | ||
# This program is free software; you can redistribute it and/or modify | # This program is free software; you can redistribute it and/or modify | ||
Ligne 182: | Ligne 217: | ||
# | # | ||
# History: | # History: | ||
+ | # 2010-12-20, xt <xt@bash.no> | ||
+ | # version 10: use API for nick color, strip nick prefix | ||
+ | # 2009-12-17, FlashCode <flashcode@flashtux.org> | ||
+ | # version 0.9: fix option name "show_index" (spaces removed) | ||
+ | # 2009-12-12, FlashCode <flashcode@flashtux.org> | ||
+ | # version 0.8: update WeeChat site | ||
+ | # 2009-11-05, xt <xt@bash.no> | ||
+ | # version 0.7: config option to turn off index | ||
+ | # 2009-10-20, xt <xt@bash.no> | ||
+ | # version 0.6: removed priority on the bar | ||
# 2009-07-01, xt <xt@bash.no> | # 2009-07-01, xt <xt@bash.no> | ||
# version 0.5: changed script command to /urlbar, comma separated ignore list | # version 0.5: changed script command to /urlbar, comma separated ignore list | ||
Ligne 188: | Ligne 233: | ||
# 2009-05-21, xt <xt@bash.no> | # 2009-05-21, xt <xt@bash.no> | ||
# version 0.3: bug fixes, add ignore feature from sleo | # version 0.3: bug fixes, add ignore feature from sleo | ||
- | # 2009-05-19, xt <xt@bash.no>: | + | # 2009-05-19, xt <xt@bash.no> |
# version 0.2-dev: fixes | # version 0.2-dev: fixes | ||
- | # 2009-05-04, FlashCode <flashcode@flashtux.org>: | + | # 2009-05-04, FlashCode <flashcode@flashtux.org> |
# version 0.1-dev: dev snapshot | # version 0.1-dev: dev snapshot | ||
# | # | ||
Ligne 196: | Ligne 241: | ||
SCRIPT_NAME = "urlbar" | SCRIPT_NAME = "urlbar" | ||
SCRIPT_AUTHOR = "FlashCode <flashcode@flashtux.org>" | SCRIPT_AUTHOR = "FlashCode <flashcode@flashtux.org>" | ||
- | SCRIPT_VERSION = "0.5" | + | SCRIPT_VERSION = "10" |
SCRIPT_LICENSE = "GPL3" | SCRIPT_LICENSE = "GPL3" | ||
SCRIPT_DESC = "Bar with URLs. For easy clicking or selecting." | SCRIPT_DESC = "Bar with URLs. For easy clicking or selecting." | ||
Ligne 210: | Ligne 255: | ||
"show_nick" : 'on', # Show nick in list | "show_nick" : 'on', # Show nick in list | ||
"show_buffername" : 'on', # Show buffer name in list | "show_buffername" : 'on', # Show buffer name in list | ||
+ | "show_index" : 'on', # Show url index in list | ||
"time_format" : '%H:%M', # Time format | "time_format" : '%H:%M', # Time format | ||
} | } | ||
Ligne 218: | Ligne 264: | ||
except ImportError: | except ImportError: | ||
print "This script must be run under WeeChat." | print "This script must be run under WeeChat." | ||
- | print "Get WeeChat now at: http://weechat.flashtux.org/" | + | print "Get WeeChat now at: http://www.weechat.org/" |
import_ok = False | import_ok = False | ||
Ligne 258: | Ligne 304: | ||
result = '' | result = '' | ||
for index, url in enumerate(printlist): | for index, url in enumerate(printlist): | ||
- | result += '%s%2d%s %s \r' %\ | + | if weechat.config_get_plugin('show_index') == 'on': |
- | (weechat.color("yellow"), index+1, weechat.color("bar_fg"), url) | + | index = index+1 |
+ | result += '%s%2d%s %s \r' %\ | ||
+ | (weechat.color("yellow"), index, weechat.color("bar_fg"), url) | ||
+ | else: | ||
+ | result += '%s%s \r' %(weechat.color('bar_fg'), url) | ||
return result | return result | ||
Ligne 283: | Ligne 333: | ||
weechat.config_get('weechat.color.chat_time_delimiters'))), | weechat.config_get('weechat.color.chat_time_delimiters'))), | ||
weechat.color('reset'))) | weechat.color('reset'))) | ||
- | self.nick = irc_nick_find_color(nick) | + | self.nick = irc_nick_find_color(nick.strip('%&@+')) |
def __str__(self): | def __str__(self): | ||
Ligne 369: | Ligne 419: | ||
def irc_nick_find_color(nick): | def irc_nick_find_color(nick): | ||
- | color = 0 | + | color = weechat.info_get('irc_nick_color', nick) |
- | for char in nick: | + | if not color: |
- | color += ord(char) | + | # probably we're in WeeChat 0.3.0 |
- | + | color %= weechat.config_integer(weechat.config_get("weechat.look.color_nicks_number")) | |
- | color %= weechat.config_integer(weechat.config_get("weechat.look.color_nicks_number")) | + | color = weechat.config_get('weechat.color.chat_nick_color%02d' %(color+1)) |
- | color = weechat.config_get('weechat.color.chat_nick_color%02d' %(color+1)) | + | color = w.color(weechat.config_string(color)) |
- | color = weechat.config_string(color) | + | return '%s%s%s' %(color, nick, weechat.color('reset')) |
- | return '%s%s%s' %(weechat.color(color), nick, weechat.color('reset')) | + | |
Ligne 399: | Ligne 448: | ||
"urlbar_completion_urls_cb", "") | "urlbar_completion_urls_cb", "") | ||
weechat.bar_item_new("urlbar_urls", "urlbar_item_cb", ""); | weechat.bar_item_new("urlbar_urls", "urlbar_item_cb", ""); | ||
- | weechat.bar_new("urlbar", "on", "1000", "root", "", "top", "horizontal", | + | weechat.bar_new("urlbar", "on", "0", "root", "", "top", "horizontal", |
"vertical", "0", "0", "default", "default", "default", "0", | "vertical", "0", "0", "default", "default", "default", "0", | ||
"urlbar_urls"); | "urlbar_urls"); | ||
- | weechat.hook_print("", "", "://", 1, "urlbar_print_cb", "")</code> | + | weechat.hook_print("", "", "://", 1, "urlbar_print_cb", "") |
- | + | </file> | |
- | Ensuite, ouvrir **weechat-curses**, le plugins **urlbar.py** est chargé au démarrage : | + | |
- | + | ||
- | $ weechat-curses | + | |
- | + | ||
- | Maintenant, lorsqu'une <//url//> se présente, une fenêtre apparaît quelques secondes avec cette <//url//> indiquée. | + | |
- | + | ||
- | Pour revoir ces <//url//> taper : | + | |
- | + | ||
- | /urlbar toggle | + | |
- | **Tchap** ! | + | |
+ | Pour revoir ces <url> taper dans tty X : | ||
+ | <code>/urlbar toggle</code> | ||
=== Nota : === | === Nota : === | ||
Ligne 422: | Ligne 464: | ||
/upgrade | /upgrade | ||
- | Pour l'installation d'un nouveau script seulement, toujours weechat activé, vous pouvez le lancer par : | + | Pour l'installation d'un nouveau script seulement, toujours weechat activé, vous pouvez le lancer par exemple : |
/python load urlbar.py | /python load urlbar.py | ||
Ligne 447: | Ligne 489: | ||
/set plugins.var.python.urlbar.use_popup "off" | /set plugins.var.python.urlbar.use_popup "off" | ||
- | Ensuite créer un raccourcis clavier, par exemple le raccourcis ''Alt + l'' ainsi : | + | Ensuite créer un raccourcis clavier, par exemple le raccourcis <key>Alt</key> + <key>l</key> ainsi : |
/key bind meta-l /urlbar toggle | /key bind meta-l /urlbar toggle | ||
Ligne 453: | Ligne 495: | ||
Maintenant, pour faire apparaître et disparaître à volonté les <//url//> des différents chans dans la fenêtre **urlbar**, utiliser le raccourcis créé : | Maintenant, pour faire apparaître et disparaître à volonté les <//url//> des différents chans dans la fenêtre **urlbar**, utiliser le raccourcis créé : | ||
- | Alt + l | + | <key>Alt</key> + <key>l</key> |
- | //Merci à engil et captnfab sans qui la rédaction des tutos ne serait que désert et perdition !// | ||
===== Les liens ===== | ===== Les liens ===== | ||
Ligne 463: | Ligne 504: | ||
* [[http://www.weechat.org/scripts/ | Scripts disponibles]] | * [[http://www.weechat.org/scripts/ | Scripts disponibles]] | ||
- | --- //[[matt_chile@yahoo.fr|MaTTuX_]] 2009/02/10 00:16// | + | :-P :-P :-P |