Irssi : IRC en mode console

le 21/08/2011 dans Linux #console#Linux#réseau#terminal#web

Irssi est un client IRC (Internet Relay Chat) en mode console, extrêmement léger, facilement installable et à l'utilisation assez simple (après un petit temps d'adaptation), à la configuration riche, que l'on peut enrichir grâce à de nombreux scripts et dont on peut modifier l'apparence comme on le souhaite grâce à des thèmes.

Installation et premiers pas

Commençons par installer le paquet irssi :

$ sudo aptitude install irssi

La configuration se fait dans le fihier ~/.irssi/config mais pour que ce fichier soit créé il faut tout d'abord lancer irssi une première fois :

$ irssi

Irssi se lance et vous devez tomber sur une notice, comme sur cette image :

irssi

Commençons par nous connecter à un serveur puis à rejoindre un salon de discussion ; ici, nous allons rejoindre le channel #ubntu-fr sur le serveur irc.freenode.net (commandes à taper une à une) :

/connect irc.freenode.net
/join #ubuntu-fr

Vous voilà maintenant sur le channel francophone consacré à Ubuntu.

Vous pouvez déjà constater que vous avez plusieurs fenêtres, une où s'affiche les informations fournies par le serveur et une seconde pour le canal #ubuntu-fr. Pour naviguer d'une fenêtre à l'autre, il suffit d'utiliser la combinaison Alt+chiffre_de_la_fenêtre, c'est-à-dire en fait Alt+Shift+& pour la première fenêtre (celle du serveur) et Alt+Shift+é pour celle du channel. Pour accéder à une troisième fenêtre (que nous n'avons pas pour le moment), il faudrait donc utiliser la combinaison Alt+Shift+". Vous pouvez aussi utilisez Ctrl+n et Ctrl+p pour accéder à la fenêtre suivante et précédente respectivement. Pour en savoir plus sur l'utilisation des fenêtres, je vous conseille de lire ceci [en] ou encore cette section de la documentation francophone de Fedora.

Grâce à la Formation Debian GNU/Linux et à son chapitre consacré à irssi, il est également possible d'utiliser les touches F1 à F12 pour naviguer entre les fenêtres 1 à 12. Pour cela, il convient de commencer par sauvegarder la configuration actuelle de irssi (depuis irssi) :

/save

puis depuis un autre terminal, lancer les commandes suivantes :

$ cd ~/.irssi
$ wget http://formation-debian.via.ecp.fr/fichiers-config/irssi-touches-fonction
$ cat irssi-touches-fonction >> ~/.irssi/config

puis dans irssi recharger la configuration avec

/reload

Configuration

Il est possible de configurer irssi depuis irssi lui-même mais également en passant par l'édition du fichier ~/.irssi/config (créé lors de la première utilisation) et notamment de préciser une liste de serveurs, une liste de channels et de déterminer les channels auxquels se connecter automatiquement au démarage. Tout ceci se fait au début du fichier de configuration dont voici un exemple qu'il vous faudra adapter selon vos besoins :

servers = (
  {
    address = "irc.freenode.net";
    chatnet = "freenode";
    port = "6667";
    autoconnect = "yes";
    term_type = "utf-8";
  }
  {
    address = "irc.oftc.net";
    chatnet = "oftc";
    port = "6667";
    autoconnect = "yes";
    term_type = "utf-8";
  }
);
 
chatnets = {
  freenode = {
    type = "IRC";
    nick = "Votre_Pseudo";
    autosendcmd = "/^msg NickServ IDENTIFY Votre_Mot_de_Passe";
  };
  oftc = { 
    type = "IRC";
    nick = "Votre_Pseudo";
    max_kicks = "1";
    max_msgs = "3";
    max_whois = "30";
  };
};
 
channels = (
  { name = "#ubuntu-fr"; chatnet = "freenode"; autojoin = "yes"; }
  { name = "#debian-fr"; chatnet = "oftc"; autojoin = "yes"; }
);

Dans la section Servers, je déclare une liste de serveurs auxquels je veux pouvoir me connecter facilement en précisant si je veux me connecter automatiquement, l'encodage… Dans la section Chatnets je déclare pour chaque serveur le nick avec lequel me connecter et éventuellement une commande à lancer automatiquement (bien pratique pour l'identification) et enfin dans la section Channels je précise les canaux que je veux joindre en précisant le serveur dont ils dépendent et si je veux m'y connecter au démarrage automatiquement.

Vous pouvez également configurer des alias, la façon dont s'affiche la barre de statut et bien d'autres éléments. Bonne découverte !