# Howto irssi * Documentation : ## Installation ~~~ # apt install irssi ~~~ ## Utilisation de base ~~~ /connect irc.freenode.net /join #channel /part /query /query /part ~~~ ## racourcis clavier ~~~ Echap + a = Se déplacer vers le dernier message le plus important Ctrl + n = Se déplacer au salon suivant Ctrl + p = Se déplacer au précédent salon ~~~ ## Syntaxe Vim irssilog ~~~ $ mkdir -p ~/.vim/syntax $ wget 'http://www.vim.org/scripts/download_script.php?src_id=10584' -O ~/.vim/syntax/irssilog.vim vim 2016-08.log :syntax on :set syntax=irssilog ~~~ ## Gérer le layout des windows ~~~ /WINDOW show x # créer une vue splité sur la fenêtre x /WINDOW close # fermer la fenêtre courante /WINDOW shrink|grow # rétrécir ou agrandir la fenêtre courante /WINDOW balance # taille des fenêtres visible à l'identique /WINDOW move x # déplace la fenêtre actuelle sur le numéro x /WINDOW move UP # déplace la fenêtre sur celle du dessus /WINDOW number x # change le numéro de la fenêtre active /WINDOW show x # séparer la frame en deux avec la fenêtre x affiché : il faut que le mode 'sticky' soit désactivé pour cette fenêtre /WINDOW stick off /WINDOW log ON #activer les logs pour cette fenêtre <- afin de faire une surveillance sur le fichier ou autre possibilité ~~~ Ne pas hésiter à sauvegarder sa session actuelle (thème) ~~~ /SAVE ~~~ ## Action selon touche pressé ~~~ /BIND ^[OP key F1 /BIND ^[11~ key F1 /BIND F1 /me a besoin d'aide ! ~~~ ## Envoyer une commande CTCP à un utilisateur ~~~ /CTCP user (PING|VERSION|USERINFO|CLIENTINFO|TIME) ~~~ ## Loguer toutes les conversations Log les channels mais aussi les conversations privés : ~~~ /LOG START ~/irclogs/irssi-%Y-%m-%d /SET autolog ON ~~~ ## Highlight de son pseudo ~~~ /highlight mon-pseudo ~~~ Pour désactiver tout highlight personnalisé: ~~~ /dehighlight 1 ~~~ Le chiffre 1 représente l'ordre à laquelle on ajoute les filtres. ## Scripts sur irssi Créer ou copier les scripts dans ~/.irssi/scripts/ ~~~ /SCRIPT load /SCRIPT unload ~~~ ## Notifications Pour avoir des notifications avec irssi, on pourra utiliser le plugin [fnotify](https://scripts.irssi.org/scripts/fnotify.pl) qui va écrire tous les messages nous étant destinés dans ~/.irrsi/fnotify. On peut aussi le limiter à seulement une fenêtre (/WINDOW log), et le combiner aussi au plugin [highlite](https://scripts.irssi.org/scripts/highlite.pl). On pourra ensuite parser ce fichier et envoyer des notifications. Voici un exemple de script avec irssi qui tourne dans un screen sur un serveur distant : ~~~{.bash} #!/bin/bash if [ -n "$IRSSI_SCREEN_SRV" ]; then ssh -q $IRSSI_SCREEN_SRV ": > .irssi/fnotify;tail -f .irssi/fnotify" > >(\ while read heading message; do notify-send "${heading}" "${message}" -t 5000 done) & \ FNOTIFY_PID=$! x-terminal-emulator -e "ssh -t $IRSSI_SCREEN_SRV screen -r -D" kill $FNOTIFY_PID 2&> /dev/null else notify-send 'Error' 'You must set IRSSI_SCREEN_SRV !' -t 10000 fi ~~~ Recherche : ~~~ /lastlog /lastlog -hilight /lastlog -clear ~~~