Weechat
Les années passant, plus de 25, pour communiquer j'utilise toujours régulièrement IRC. Je suis forcément passé par de nombreux clients au court de ma « carrière ». Mon préféré et celui que j'utilise toujours est Weechat. Il répond à mes attentes, complètement configurable et se lance dans un terminal.
Je me suis inspiré de cet article et celui-ci pour Spell.
L'article est à jour pour la V4 qui a changé le nom de quelques-unes de ses options.
Compilation
Après avoir téléchargé les sourcesvoici les instructions que j'utilise pour la compilation et son installation
# Prérequis
sudo apt-get install cmake libgcrypt20-dev zlib1g-dev libcurl4-gnutls-dev libncursesw5-dev libgnutls28-dev
# Support ssl/tls
sudo apt-get install libgnutls28-dev
# Support perl
sudo apt-get install libperl-dev
# Support aspell
sudo apt-get install libaspell-dev aspell-en aspell-fr
mkdir build
cd build
cmake ..
make
sudo make install
Quelques commandes de base
# Connexion a un serveur
# ctrl-x pour naviguer entre les serveurs (visiblement uniquement sur la fenêtre de statut)
/server add worldnet irc.worldnet.net
/connect worldnet
# Séparer la fenêtre horizontallement
# F7/F8 pour naviguer entre les fenêtres
/window splith
# et verticalement
/window splitv
Toute la documentation en français se trouve ici.
Configuration
Il est possible de modifier la configuration en éditant les fichiers se trouvant dans le répertoire ~/.config/weechat
. Mais pour ma part je préfère taper les commandes directement dans le client et utiliser la commande /save
pour valider.
Par exemple pour se connecter automatiquement à un serveur au démarrage
/set irc.server.quakenet.autoconnect on
/set irc.server.quakenet.autojoin on
Où comme moi, se connecter à mon bouncer ZNC.
/server add worldnet <url>/9996 -username=king/worldnet -password=******** -autoconnect
Et pour désactiver le tls (ce qui n'est pas conseillé).
/set irc.server.worldnet.tls off
Un peu d'esthétisme
De base le client n'est pas très aguicheur. Voici la configuration que j'ai utilisée pour l'embellir un peu, du moins à mes yeux.
/set weechat.look.prefix_suffix "│"
/set weechat.look.read_marker_string "─"
/set weechat.look.separator_horizontal "—"
/set weechat.bar.title.color_bg 0
/set weechat.bar.status.color_bg 0
/set weechat.color.chat_nick_colors "cyan,magenta,green,brown,lightblue,default,lightcyan,lightmagenta,lightgreen,blue,31,35,38,40,49,63,70,80,92,99,112,126,130,138,142,148,160,162,167,169,174,176,178,184,186,210,212,215,247"
/set weechat.color.chat_delimiters 29
/set weechat.color.chat_host 24
/set weechat.color.chat_prefix_suffix 24
/set weechat.color.nicklist_away 244
/set weechat.color.separator 60
/set irc.color.reason_quit 244
/set irc.color.topic_new 36
/set irc.color.topic_old 244
/bar hide title
/key bind meta-n /bar toggle nicklist
/set weechat.look.buffer_time_format "${color:252}%H${color:245}:%M${color:240}:%S"
/set weechat.look.eat_newline_glitch on
Pour voir la liste des couleurs /color
.
Pour la barre de statut
/set weechat.bar.status*
/set weechat.bar.status.color_bg 60
/set weechat.bar.status.items "[time],buffer_name+(buffer_modes),[lag],[hotlist],completion"
Et la liste des buffers
/set weechat.bar.buffers*
/script install buffers.pl
/set weechat.bar.buflist.position top
/set buflist.format.buffer = ""${indent}${format_nick_prefix}${color_hotlist}${format_name}
/set buflist.format.buffer_current = "${color:,15}${format_buffer}"
/save
/layout store
Cacher les joins/parts des utilisateurs qui n'ont pas parlé depuis 5 minutes (désactivable avec ctrl-=)
/set irc.look.smart_filter on
/filter add irc_smart * irc_smart_filter *
Fusionner les buffers des différents serveur pour gagner de la place (ctrl-x permet de naviguer de l'un à l'autre)
/set buffers.look.hide_merged_buffers server
Scripts
Weechat permet d'utiliser des scripts pour certaines choses. La liste est accessible avec la commande /script
. Pour installer un script, se positionner dessus et faire alt-i
ou alt-u
pour le désinstaller.
Pensez à sauvegarder : /save
Spell
Weechat offre un correcteur orthographique intégré. Pour l'activer et le configurer, voici les commandes nécessaires
/spell enable
/set spell.check.default_dict fr
/set spell.check.suggestions 3
/set weechat.bar.status.items "[time],buffer_name+(buffer_modes),[lag],hotlist],completion,[spell_suggest]"
Pour choisir parmi les suggestions j'ai installé un plugin
/script install menu.pl
/script install spell_menu.pl
# Pour cacher le menu qui s'affiche à cause de la dépendence
/set plugins.var.perl.menu.main_menu_hidden on
Sur un mot en erreur, appuyer sur Tab permet de choisir une des options en appuyant sur 1, 2 ou 3 et valider avec Enter