Ce manuel documente le client de messagerie instantanée WeeChat, il fait partie de WeeChat.

La dernière version de ce document peut être téléchargée sur cette page .

1. Introduction

WeeChat (Wee Enhanced Environment for Chat) est un client de discussion libre, rapide et léger, conçu pour différents systèmes d’exploitation.

1.1. Fonctionnalités

Ses principales fonctionnalités sont les suivantes :

  • multi-protocoles (principalement IRC)

  • connexion multi-serveurs (avec TLS, IPv6, proxy)

  • petit, rapide et léger

  • paramétrable et extensible avec des extensions et des scripts

  • conforme aux RFCs IRC 1459 , 2810 , 2811 , 2812 , 2813  et 7194 

  • proxy IRC et relai pour WeeChat et interfaces distantes

  • multi plates-formes (GNU/Linux, *BSD, macOS, Windows et d’autres systèmes)

  • 100% GPL, logiciel libre

La liste complète des fonctionnalités peut être trouvée sur cette page .

1.2. Prérequis

Pour installer WeeChat, vous devez avoir :

  • un système GNU/Linux (avec le compilateur et les outils associés pour le paquet des sources), ou un système compatible

  • droits "root" (pour installer WeeChat dans un répertoire système)

  • quelques bibliothèques (voir les dépendances).

2. Installation

2.1. Paquets binaires

Les paquets binaires sont disponibles pour beaucoup de distributions, dont :

  • Arch Linux : pacman -S weechat

  • Cygwin (Windows) : sélectionnez les paquets WeeChat dans setup.exe

  • Debian/Ubuntu (ou toute distribution compatible Debian) : apt-get install weechat-curses weechat-plugins
    Pour les dernières versions et les constructions nocturnes : dépôts Debian 

  • Fedora Core : dnf install weechat

  • FreeBSD : pkg install weechat

  • Gentoo : emerge weechat

  • Mandriva/RedHat (ou toute distribution compatible avec les RPM) : rpm -i /path/to/weechat-x.y.z-1.i386.rpm

  • openSUSE : zypper in weechat

  • Sourcemage : cast weechat

  • macOS (avec Homebrew ) : brew install weechat (pour l’aide : brew info weechat)

Des paquets additionnels peuvent être utiles également, comme weechat-plugins.

Pour les autres distributions supportées, merci de vous référer au manuel de la distribution pour la méthode d’installation.

2.2. Conteneurs

Des conteneurs avec WeeChat peuvent être construits ou installés directement depuis le Docker Hub .
Pour plus d’informations, voire le README dans le dépôt weechat-container .

2.3. Paquet source

WeeChat doit être construit avec CMake.

Note
Sous macOS, vous pouvez utiliser Homebrew  : brew install --build-from-source weechat.

Dépendances

Le tableau suivant liste les paquets requis pour construire WeeChat :

Paquet (1) Version Fonctionnalités

compilateur C (gcc / clang)

Compilation des sources en C.

cmake

≥ 3.0

Construction.

pkgconf / pkg-config

Détection des bibliothèques installées.

libncurses-dev

Interface ncurses.

libcurl4-gnutls-dev

Transfert d’URL.

libgcrypt20-dev

Données sécurisées, authentification IRC SASL.

libgnutls28-dev

≥ 2.2.0 (2)

Extension IRC : support des connexions TLS, authentification IRC SASL (ECDSA-NIST256P-CHALLENGE).
Extension Relay : support des connexions TLS.

zlib1g-dev

Extension Logger : compression des fichiers de log qui tournent (gzip).
Extention Relay : compression des messages (WeeChat → client) avec zlib  (protocoles api et weechat).
Extension Script : lecture du fichier d’index du dépôt (gzip).

Note
(1) Le nom provient de la distribution GNU/Linux Debian Bookworm, la version et le nom peuvent être différents dans les autres distributions.
(2) GnuTLS ≥ 3.0.21 est requis pour l’authentification SASL avec le mécanisme ECDSA-NIST256P-CHALLENGE.

Le tableau suivant liste les paquets optionnels pour compiler WeeChat :

Paquet (1) Version Fonctionnalités

compilateur C++ (g++ / clang++)

Construction et lancement des tests, extension JavaScript.

gettext

Internationalisation (traduction des messages ; la langue de base est l’anglais).

ca-certificates

Certificats pour les connexions TLS.

libcjson-dev

Extension Relay : protocole "api" (API REST HTTP).

libzstd-dev

≥ 0.8.1

Extension Logger : compression des fichiers de log qui tournent (zstandard).
Extension Relay : compression des messages (WeeChat → client) avec Zstandard  (protocoles api et weechat).

libaspell-dev / libenchant-dev

Extension spell.

python3-dev

≥ 3.0

Extension python.

libperl-dev

Extension perl.

ruby3.1, ruby3.1-dev

≥ 1.9.1

Extension ruby.

liblua5.4-dev

Extension lua.

tcl-dev

≥ 8.5

Extension tcl.

guile-3.0-dev

≥ 2.0

Extension guile (scheme).

libv8-dev

≤ 3.24.3

Extension javascript.

php-dev

≥ 7.0

Extension PHP.

libphp-embed

≥ 7.0

Extension PHP.

libxml2-dev

Extension PHP.

libargon2-dev

Extension PHP (si PHP ≥ 7.2).

libsodium-dev

Extension PHP (si PHP ≥ 7.2).

asciidoctor

≥ 1.5.4

Construction de la page man et de la documentation.

ruby-pygments.rb

Construction de la documentation.

libcpputest-dev

≥ 3.4

Construction et lancement des tests.

Note
(1) Le nom provient de la distribution GNU/Linux Debian Bookworm, la version et le nom peuvent être différents dans les autres distributions.

Si vous utilisez une distribution basée sur Debian ou Ubuntu, et si vous avez des entrées source "deb-src" dans votre fichier /etc/apt/sources.list, vous pouvez installer toutes les dépendances avec la commande :

sudo apt-get build-dep weechat

Construction

  • Installation dans les répertoires systèmes (nécessite les droits root) :

mkdir build
cd build
cmake ..
make
sudo make install
  • Installation dans un répertoire spécifique (par exemple dans votre "home") :

mkdir build
cd build
cmake .. -DCMAKE_INSTALL_PREFIX=/chemin/vers/répertoire
make
make install

Des options peuvent être utilisées pour CMake, avec le format : -DOPTION=VALUE.

Liste des options disponibles :

Option Valeurs Valeur par défaut Description

CMAKE_BUILD_TYPE

Debug, Release, RelWithDebInfo, MinSizeRel

Type de construction : Debug (ou RelWithDebInfo) est recommandé si vous utilisez une version de développement de WeeChat.

CMAKE_INSTALL_PREFIX

répertoire

/usr/local

Le répertoire dans lequel WeeChat sera installé.

WEECHAT_HOME

répertoire

(chaîne vide)

Le répertoire "maison" par défaut lors du lancement de WeeChat.
Avec une valeur vide (recommandé), les répertoires XDG sont utilisés par défaut. Si non vide, un répertoire unique est utilisé pour tous les fichiers. La valeur peut aussi être 4 répertoires séparés par ":", dans cet ordre : config, data, cache, runtime.

ENABLE_ALIAS

ON, OFF

ON

Compiler l’extension Alias.

ENABLE_BUFLIST

ON, OFF

ON

Compiler l’extension Buflist.

ENABLE_CHARSET

ON, OFF

ON

Compiler l’extension Charset.

ENABLE_CJSON

ON, OFF

ON

Support du JSON avec la bibliothèque cJSON .

ENABLE_MAN

ON, OFF

OFF

Construire la page man.

ENABLE_DOC

ON, OFF

OFF

Construire la documentation HTML.

ENABLE_DOC_INCOMPLETE

ON, OFF

OFF

Forcer la construction de la documentation même si des extensions ne sont pas compilées (déconseillé : les documentations seront incomplètes).

ENABLE_ENCHANT

ON, OFF

OFF

Compiler l’extension Spell avec Enchant.

ENABLE_EXEC

ON, OFF

ON

Compiler l’extension Exec.

ENABLE_FIFO

ON, OFF

ON

Compiler l’extension Fifo.

ENABLE_FSET

ON, OFF

ON

Compiler l’extension Fset.

ENABLE_GUILE

ON, OFF

ON

Compiler l’extension Guile (Scheme).

ENABLE_HEADLESS

ON, OFF

ON

Compiler le binaire sans interface (« headless »).

ENABLE_IRC

ON, OFF

ON

Compiler l’extension IRC.

ENABLE_JAVASCRIPT

ON, OFF

OFF

Compiler l’extension JavaScript.

ENABLE_LARGEFILE

ON, OFF

ON

Support des gros fichiers.

ENABLE_LOGGER

ON, OFF

ON

Compiler l’extension Logger.

ENABLE_LUA

ON, OFF

ON

Compiler l’extension Lua.

ENABLE_NCURSES

ON, OFF

ON

Compiler l’interface Ncurses.

ENABLE_NLS

ON, OFF

ON

Activer NLS (traductions).

ENABLE_PERL

ON, OFF

ON

Compiler l’extension Perl.

ENABLE_PHP

ON, OFF

ON

Compiler l’extension PHP.

ENABLE_PYTHON

ON, OFF

ON

Compiler l’extension Python.

ENABLE_RELAY

ON, OFF

ON

Compiler l’extension Relay.

ENABLE_RUBY

ON, OFF

ON

Compiler l’extension Ruby.

ENABLE_SCRIPT

ON, OFF

ON

Compiler l’extension Script.

ENABLE_SCRIPTS

ON, OFF

ON

Compiler les extensions de script (Python, Perl, Ruby, Lua, Tcl, Guile, PHP).

ENABLE_SPELL

ON, OFF

ON

Compiler l’extension Spell.

ENABLE_TCL

ON, OFF

ON

Compiler l’extension Tcl.

ENABLE_TRIGGER

ON, OFF

ON

Compiler l’extension Trigger.

ENABLE_TYPING

ON, OFF

ON

Compiler l’extension Typing.

ENABLE_XFER

ON, OFF

ON

Compiler l’extension Xfer.

ENABLE_ZSTD

ON, OFF

ON

Activer la compression Zstandard .

ENABLE_TESTS

ON, OFF

OFF

Compiler les tests.

ENABLE_CODE_COVERAGE

ON, OFF

OFF

Compiler avec les options de couverture de code.
Cette option ne devrait être utilisée que pour les tests, pour mesurer la couverture de tests.

Les autres options peuvent être affichées avec cette commande :

cmake -LA

Ou avec l’interface Curses :

ccmake ..

Tests

Les paquets suivants sont nécessaires pour compiler les tests :

  • libcpputest-dev

  • C++ compiler

Les tests doivent être activés pour compiler WeeChat :

cmake .. -DENABLE_TESTS=ON

Ils peuvent être lancés après compilation depuis le répertoire de construction :

ctest -V

2.4. Sources Git

Attention : les sources Git sont réservées aux utilisateurs avancés : il se peut que WeeChat ne compile pas et qu’il soit très instable. Vous êtes prévenus !

Pour récupérer les sources Git, tapez cette commande :

git clone https://github.com/weechat/weechat.git

Suivez alors les instructions du paquet source (voir paquet source).

2.5. Rapporter les plantages

Si vous avez eu des plantages, ou si vous souhaitez rapporter tout plantage futur de WeeChat, vous devez :

  • Compiler avec :

    • les infos de debug (ou installer un paquet binaire avec les infos de debug),

    • la vérification des adresses (« address sanitizer ») (facultatif).

  • Activer les fichiers core sur votre système.

  • Installer gdb.

Construction en debug

Si vous compilez avec CMake :

cmake .. -DCMAKE_BUILD_TYPE=Debug

Vérification des adresses

Vous pouvez aussi activer la vérification des adresses (« address sanitizer »), ce qui provoquera immédiatement un plantage de WeeChat en cas de problème :

cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS=-fsanitize=address -DCMAKE_CXX_FLAGS=-fsanitize=address -DCMAKE_EXE_LINKER_FLAGS=-fsanitize=address
Attention
Vous ne devriez activer la vérification des adresses que si vous essayez de provoquer un plantage, ce qui n’est pas recommandé en production.

Une fois compilé et installé, vous devez lancer WeeChat comme ceci :

ASAN_OPTIONS="detect_odr_violation=0 log_path=asan.log" weechat

En cas de plantage, la trace se trouve dans le fichier asan.log.

Fichiers core

Pour activer les fichiers core, vous pouvez utiliser l’option weechat.startup.sys_rlimit :

/set weechat.startup.sys_rlimit "core:-1"

Pour WeeChat ≤ 0.3.8 ou si vous voulez activer les fichiers core avant que WeeChat ne démarre, vous pouvez utiliser la commande ulimit.

Par exemple sous Linux avec le shell bash, ajoutez cette ligne dans votre ~/.bashrc :

ulimit -c unlimited

Ou une taille maximum :

ulimit -c 200000

Obtenir la trace avec gdb

Lorsque WeeChat se plante, votre système génère un fichier core ou core.12345 (12345 est l’identifiant du processus) si l’option est activée. Ce fichier est créé dans le répertoire où vous avez lancé WeeChat (ce n’est pas le répertoire où WeeChat est installé !).

Note
Sur certains systèmes comme Archlinux, les fichiers core se trouvent dans un autre répertoire tel que /var/lib/systemd/coredump et vous devez utiliser la commande coredumpctl pour le lire.
Pour plus d’informations, voir cette page wiki .

Par exemple si weechat est installé dans /usr/bin/ et que le fichier core se trouve dans /home/user/, alors il faut lancer gdb avec cette commande :

gdb /usr/bin/weechat /home/user/core

Puis sous gdb, utilisez la commande bt full pour afficher la trace. Vous verrez quelque chose comme ceci :

(gdb) set logging file /tmp/crash.txt
(gdb) set logging on
Copying output to /tmp/crash.txt.
(gdb) bt full
#0  0x00007f9dfb04a465 in raise () from /lib/libc.so.6
#1  0x00007f9dfb04b8e6 in abort () from /lib/libc.so.6
#2  0x0000000000437f66 in weechat_shutdown (return_code=1, crash=1)
    at /some_path/src/core/weechat.c:351
#3  <signal handler called>
#4  0x000000000044cb24 in hook_process_timer_cb (arg_hook_process=0x254eb90,
    remaining_calls=<value optimized out>) at /some_path/src/core/core-hook.c:1364
        hook_process = 0x254eb90
        status = <value optimized out>
#5  0x000000000044cc7d in hook_timer_exec ()
    at /some_path/src/core/core-hook.c:1025
        tv_time = {tv_sec = 1272693881, tv_usec = 212665}
        ptr_hook = 0x2811f40
        next_hook = 0x0
#6  0x000000000041b5b0 in gui_main_loop ()
    at /some_path/src/gui/curses/gui-curses-main.c:319
        hook_fd_keyboard = 0x173b600
        tv_timeout = {tv_sec = 0, tv_usec = 0}
        read_fds = {fds_bits = {0 <repeats 16 times>}}
        write_fds = {fds_bits = {0 <repeats 16 times>}}
        except_fds = {fds_bits = {0 <repeats 16 times>}}
        max_fd = <value optimized out>

Vous devez envoyer cette trace aux développeurs, et leur indiquer quelle action a été la cause de ce plantage.

Merci pour votre aide !

Debug de WeeChat qui tourne

Pour déboguer WeeChat qui tourne (par exemple si WeeChat semble bloqué), vous pouvez utiliser gdb avec l’identifiant du processus (remplacez 12345 par le PID du processus weechat) :

gdb /usr/bin/weechat 12345

Ensuite comme pour un crash, utilisez la commande bt full :

(gdb) bt full

3. Lancement de WeeChat

Pour lancer WeeChat, tapez cette commande :

weechat

Lorsque vous lancez WeeChat pour la première fois, les fichiers de configuration par défaut sont créés dans ~/.config/weechat avec les options et valeurs par défaut (voir Fichiers et répertoires).

3.1. Options de ligne de commande

-a, --no-connect

Supprimer la connexion automatique aux serveurs lors du démarrage.

-c, --colors

Afficher les couleurs par défaut du terminal.

--daemon

Lancer WeeChat en tâche de fond, comme un daemon (fonctionne seulement avec la commande weechat-headless).

--stdout

Afficher les messages de log sur la sortie standard plutôt que de les écrire dans le fichier de log (fonctionne seulement avec la commande weechat-headless, non compatible avec l’option "--daemon").

-d, --dir <répertoire>

Forcer un unique répertoire pour tous les fichiers WeeChat (le répertoire est créé s’il n’est pas trouvé). Quatre répertoires peuvent être donnés, séparés par ":" (dans cet ordre : config, data, cache, runtime). Si cette option n’est pas donnée, la variable d’environnement WEECHAT_HOME est utilisée (si non vide).

-t, --temp-dir

Créer un répertoire de base WeeChat temporaire et le supprimer en quittant (incompatible avec l’option "-d").
Le nom du répertoire est automatiquement construit par WeeChat, avec ce modèle : "weechat_temp_XXXXXX" (où "XXXXXX" est aléatoire). Il est créé dans le premier répertoire disponible de cette liste : variable d’environnement "TMPDIR", "/tmp" (cela peut être différent selon le système d’exploitation), variable d’environnement "HOME", répertoire courant.
Le répertoire de base temporaire a les permissions 0700 (seul le propriétaire peut lire, écrire et exécuter).

-h, --help

Afficher l’aide.

-i, --build-info

Afficher les informations de construction et quitter.

-l, --license

Afficher la licence de WeeChat.

-p, --no-plugin

Supprimer le chargement automatique des extensions au démarrage.

-P, --plugins <extensions>

Charger uniquement ces extensions au démarrage (voir /help weechat.plugin.autoload). Si cette option est donnée, l’option weechat.plugin.autoload n’est pas utilisée.

-r, --run-command <commande>

Lancer la/les commande(s) après le démarrage ; plusieurs commandes peuvent être séparées par des points-virgules, cette option peut être donnée plusieurs fois.

-s, --no-script

Supprimer le chargement automatique des scripts au démarrage.

--upgrade

Mettre à jour WeeChat en utilisant les fichiers de session générés avec la commande /upgrade -quit.

-v, --version

Afficher la version de WeeChat.

extension:option

Option pour une extension.

Quelques options supplémentaires sont disponibles pour du debug seulement :

Attention
N’utilisez AUCUNE de ces options in production !
--no-dlclose

Do not call the function dlclose after plugins are unloaded. This is useful with tools like Valgrind to display stack for unloaded plugins.

--no-gnutls

Do not call the init and deinit functions of GnuTLS library. This is useful with tools like Valgrind and electric-fence, to prevent GnuTLS memory errors.

--no-gcrypt

Do not call the init and deinit functions of Gcrypt library. This is useful with tools like Valgrind, to prevent Gcrypt memory errors.

3.2. Variables d’environnement

Des variables d’environnement sont utilisées par WeeChat si elles sont définies :

Nom Description

WEECHAT_HOME

Le répertoire "maison" de WeeChat (avec les fichiers de configuration, logs, scripts, etc.). Même comportement que l’option CMake WEECHAT_HOME.

WEECHAT_PASSPHRASE

La phrase secrète utilisée pour déchiffrer les données sécurisées.

WEECHAT_EXTRA_LIBDIR

Un répertoire supplémentaire pour charger les extensions (depuis le répertoire "plugins" sous ce chemin).

3.3. Support des Couleurs

WeeChat peut utiliser jusqu’à 32767 paires de couleur pour afficher le texte dans les barres et la zone de discussion (votre terminal doit supporter 256 couleurs pour pouvoir les utiliser dans WeeChat).

Selon la valeur de la variable d’environnement TERM, vous pouvez avoir les limites suivantes pour les couleurs dans WeeChat :

$TERM Couleurs Paires

"rxvt-unicode", "xterm", …​

88

32767

"rxvt-256color", "xterm-256color", …​

256

32767

"screen"

8

64

"screen-256color"

256

32767

"tmux"

8

64

"tmux-256color"

256

32767

Vous pouvez lancer weechat --colors ou utiliser la commande /color dans WeeChat pour afficher les limites de votre environnement.

Quelques valeurs recommandées pour TERM si vous voulez 256 couleurs :

  • sous screen : screen-256color

  • sous tmux : screen-256color ou tmux-256color

  • en dehors de screen/tmux : xterm-256color, rxvt-256color, putty-256color, …​

Si vous utilisez screen, vous pouvez ajouter cette ligne dans votre ~/.screenrc :

Note
Vous devrez peut-être installer le paquet "ncurses-term" pour utiliser ces valeurs dans la variable TERM.
term screen-256color

Si votre variable TERM a une valeur erronée et que WeeChat est déjà lancé, vous pouvez la changer avec ces deux commandes :

/set env TERM screen-256color
/upgrade

3.4. Fichiers et répertoires

XDG directories

WeeChat utilise les répertoires XDG par défaut (selon la spécification "XDG Base Directory" ).
Un répertoire de base unique pour tous les fichiers peut être forcé par l’option CMake WEECHAT_HOME, la variable d’environnement WEECHAT_HOME ou l’option de ligne de commande -d / --dir.

Lorsqu’un répertoire de base unique n’est pas forcé, les répertoires XDG sont utilisés et déterminés ainsi :

Répertoire Valeur par défaut Valeur de repli si $XDG_XXX n’est pas définie

config

$XDG_CONFIG_HOME/weechat

$HOME/.config/weechat

data

$XDG_DATA_HOME/weechat

$HOME/.local/share/weechat

cache

$XDG_CACHE_HOME/weechat

$HOME/.cache/weechat

runtime

$XDG_RUNTIME_DIR/weechat

Identique au répertoire cache

Les fichiers de configuration sont créés avec les valeurs par défaut la première fois que vous lancez WeeChat.

Répertoires de WeeChat

Les répertoires de WeeChat sont :

Chemin (1) Description

~/.config/weechat/

Fichiers de configuration WeeChat : *.conf, certificats, etc.

~/.local/share/weechat/

Fichiers de données WeeChat : logs, scripts, données des scripts, fichiers xfer, etc.

   logs/

Fichiers de log (un fichier par tampon).

   python/

Scripts Python.

      autoload/

Scripts Python chargés automatiquement au démarrage (2).

   perl/

Scripts Perl.

      autoload/

Scripts Perl chargés automatiquement au démarrage (2).

   ruby/

Scripts Ruby.

      autoload/

Scripts Ruby chargés automatiquement au démarrage (2).

   lua/

Scripts Lua.

      autoload/

Scripts Lua chargés automatiquement au démarrage (2).

   tcl/

Scripts Tcl.

      autoload/

Scripts Tcl chargés automatiquement au démarrage (2).

   guile/

Scripts Guile.

      autoload/

Scripts Guile chargés automatiquement au démarrage (2).

   javascript/

Scripts JavaScript.

      autoload/

Scripts JavaScript chargés automatiquement au démarrage (2).

   php/

Scripts PHP.

      autoload/

Scripts PHP chargés automatiquement au démarrage (2).

~/.cache/weechat/

Fichiers de cache WeeChat : cache des scripts.

/run/user/1000/weechat/

Fichiers "runtime" WeeChat : tube FIFO, sockets UNIX Relay.

Note
(1) Les répertoires XDG peuvent être différents selon vos variables d’environnement XDG_*.
(2) Ce répertoire contient souvent seulement des liens symboliques vers les scripts dans le répertoire parent.

Fichiers de WeeChat

Les fichiers dans le répertoire principal de WeeChat sont :

Fichier Description Données sensibles

weechat.conf

Fichier de configuration principal de WeeChat

Possible (par exemple : liste des canaux sauvés dans la disposition des tampons).

sec.conf

Fichier de configuration avec les données sécurisées

Oui, très sensibles : ce fichier ne doit jamais être partagé avec quiconque.

plugins.conf

Fichier de configuration des extensions

Possible, cela dépend des extensions/scripts.

alias.conf

Fichier de configuration de l’extension alias

Possible, cela dépend des alias.

buflist.conf

Fichier de configuration de l’extension buflist

Non.

charset.conf

Fichier de configuration de l’extension charset

Non.

exec.conf

Fichier de configuration de l’extension exec

Non.

fifo.conf

Fichier de configuration de l’extension fifo

Non.

fset.conf

Fichier de configuration de l’extension fset

Non.

guile.conf

Fichier de configuration de l’extension guile

Non.

irc.conf

Fichier de configuration de l’extension irc

Oui : il peut contenir des mots de passes pour les serveurs, nickserv et les canaux (si non stockés dans sec.conf).

javascript.conf

Fichier de configuration de l’extension javascript

Non.

logger.conf

Fichier de configuration de l’extension logger

Non.

lua.conf

Fichier de configuration de l’extension lua

Non.

perl.conf

Fichier de configuration de l’extension perl

Non.

php.conf

Fichier de configuration de l’extension php

Non.

python.conf

Fichier de configuration de l’extension python

Non.

relay.conf

Fichier de configuration de l’extension relay

Oui : il peut contenir le mot de passe relay et le secret TOTP (si non stockés dans sec.conf), les adresses IP/origines websocket autorisées et les ports ouverts.

ruby.conf

Fichier de configuration de l’extension ruby

Non.

script.conf

Fichier de configuration de l’extension script

Non.

tcl.conf

Fichier de configuration de l’extension tcl

Non.

spell.conf

Fichier de configuration de l’extension spell

Non.

trigger.conf

Fichier de configuration de l’extension trigger

Possible, cela dépend des triggers.

typing.conf

Fichier de configuration de l’extension typing

Non.

xfer.conf

Fichier de configuration de l’extension xfer

Non.

weechat.log

Fichier de log WeeChat

Non.

Important
Il n’est pas recommandé de modifier les fichiers de configuration à la main car WeeChat peut les écrire à tout moment (par exemple sur /quit) et après chaque changement vous devez lancer la commande /reload (avec le risque de perdre d’autres changements qui n’auraient pas été sauvés avec /save).
Vous pouvez utiliser la commande /set, qui vérifie la valeur et applique les changements immédiatement.

4. Mise à jour

Si une nouvelle version stable de WeeChat est disponible, il est temps pour vous de passer à cette version.

Avant toute chose, vous devez installer la nouvelle version de WeeChat, soit via votre gestionnaire de paquets ou en le compilant vous-même, de telle sorte que le nouveau binaire weechat et tous les fichiers requis sont dans les mêmes répertoires.
Cela peut être fait pendant que WeeChat tourne.

4.1. Commande de mise à jour

WeeChat peut redémarrer le nouveau binaire avec la commande /upgrade : le contenu des tampons et les connexions non TLS sont préservées.
Les connexions TLS sont perdues pendant la mise à jour et sont automatiquement rétablies après la mise à jour (le rechargement des sessions TLS n’est pas possible actuellement avec GnuTLS).

La commande peut aussi être utilisée si vous devez redémarrer la machine, par exemple pour mettre à jour le noyau ou déplacer WeeChat vers une autre machine :

/upgrade -quit

Cela sauvegarde l’état actuel dans des fichiers *.upgrade. Vous pouvez soit rebooter ou déplacer les répertoires WeeChat (config, data, cache) vers une autre machine, et redémarrer WeeChat plus tard avec cette commande :

weechat --upgrade

4.2. Redémarrage après mise à jour

Notes de mise à jour

Après une mise à jour, il est fortement recommandé de lire le fichier UPGRADING.md  qui contient des informations importantes sur les changements majeurs et quelques actions manuelles qui pourraient être nécessaires.

Vous devez lire les versions entre votre version ancienne (exclue) et votre nouvelle version (incluse).
Par exemple si vous passez de la version 4.0.0 à 4.3.0, vous devez lire les versions 4.0.1 à 4.3.0.

Mise à jour de la configuration

WeeChat a un système de mise à jour automatique des fichiers de configuration (*.conf) :

  • les nouvelles options sont silencieusement ajoutées avec la valeur par défaut

  • les options obsolètes sont automatiquement supprimées et WeeChat affiche un avertissement avec la valeur lue dans le fichier.

Exemple d’avertissement lorsqu’une option a été supprimée :

=!= Attention : /home/user/.config/weechat/sec.conf, ligne 15 : option inconnue pour la section "crypt" : passphrase_file = ""

Cela signifie que l’option sec.crypt.passphrase_file a été supprimée, et vous aviez la valeur définie à une chaîne vide, ce qui était la valeur par défaut dans la version précédente (dans ce cas aucune action manuelle n’est nécessaire).

5. Interface

5.1. Organisation de l’écran

Exemple de terminal avec WeeChat :

 ▼ barre "buflist"   ▼ barre "title"
┌──────────────────────────────────────────────────────────────────────────────────────┐
│1.libera │Bienvenue sur #test, canal de test                                          │
│  weechat│12:52:27   --> | Flashy (flashcode@weechat.org) a rejoint #test     │@Flashy│
│2.  #test│12:52:27    -- | Pseudos #test: [@Flashy @joe +weebot peter]        │@joe   │
│3.  #abc │12:52:27    -- | Canal #test: 4 pseudos (2 ops, 1 voice, 1 normal)  │+weebot│
│4.  #def │12:52:27    -- | Canal créé le Tue Jan 27 06:30:17 2009             │peter  │
│5.  #ghi │12:54:15 peter | bonjour !                                          │       │
│         │12:55:01  @joe | salut                                              │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │[12:55] [5] [irc/libera] 2:#test(+n){4}* M [H: 3:#abc(2,5), 5]              │
│         │[@Flashy(i)] salut peter !█                                                 │
└──────────────────────────────────────────────────────────────────────────────────────┘
            ▲ barres "status" et "input"                            barre "nicklist" ▲

Par défaut, l’écran est composé des zones suivantes :

  • zone de discussion (milieu de l’écran) avec les lignes de discussion, et pour chaque ligne :

    • heure

    • préfixe (avant "|")

    • message (après "|")

  • barres autour de la zone de discussion, les barres par défaut sont :

    • barre buflist, sur la gauche

    • barre title, au dessus de la zone de discussion

    • barre status, sous la zone de discussion

    • barre input, sous la barre de statut

    • barre nicklist, sur la droite

La barre buflist contient les objets (items) suivants par défaut :

Objet (item) Exemple Description

buflist

1.weechat

Liste des tampons.

La barre title contient les objets (items) suivants par défaut :

Objet (item) Exemple Description

buffer_title

Bienvenue sur #test

Titre du tampon.

La barre status contient les objets (items) suivants par défaut :

Objet (item) Exemple Description

time

12:55

Heure.

buffer_last_number

5

Numéro du dernier tampon (peut être différent de buffer_count si l’option weechat.look.buffer_auto_renumber est off).

buffer_plugin

irc/libera

Extension du tampon courant (l’extension irc peut afficher le nom du serveur IRC auquel est rattaché ce tampon).

buffer_number

2

Numéro du tampon courant.

buffer_name

#test

Nom du tampon courant.

buffer_modes

+n

Modes du canal IRC.

buffer_nicklist_count

4

Nombre de pseudos affichés dans la liste des pseudos.

buffer_zoom

!

! signifie que le tampon mélangé est zoomé, une valeur vide signifie que tous les tampons mélangés sont affichés.

buffer_filter

*

Indicateur de filtrage : * signifie que des lignes sont filtrées (cachées), une valeur vide signifie que toutes les lignes sont affichées.

mouse_status

M

Statut de la souris (vide si la souris est désactivée), voir la commande /mouse et Touches de bascule.

scroll

-PLUS(50)-

Indicateur de scroll, avec le nombre de lignes sous la dernière ligne affichée.

lag

Lag: 2.5

Indicateur de "lag" (ralentissements réseau), en secondes (caché si le lag est faible).

hotlist

H: 3:#abc(2,5), 5

Liste des tampons où il y a de l’activité (messages non lus) (dans cet exemple, 2 highlights et 5 messages non lus sur #abc, un message non lu sur le tampon numéro 5).

typing

Écrit : bob, (alice)

Notification de saisie, voir Notifications de saisie.

completion

abc(2) def(5)

Liste des mots pour la complétion, avec le nombre de complétions possibles pour chaque mot.

La barre input contient les objets (items) suivants par défaut :

Objet (item) Exemple Description

input_prompt

@Flashy(i)

Prompt, pour irc : pseudo et modes (le mode "+i" signifie invisible sur libera).

away

absent

Indicateur d’absence.

input_search

Recherche lignes (~ str,msg)

Indicateur de recherche de texte (voir ci-dessous).

input_paste

Coller 7 lignes ? [ctrl-y] Oui [ctrl-n] Non

Question à l’utilisateur pour coller des lignes.

input_text

salut peter !

Texte entré.

Il y a deux modes de recherche :

  • recherche dans les lignes, par exemple [Recherche lignes (~ str,msg)], avec les informations suivantes :

    • ~ : insensible à la casse

    • == : sensible à la casse

    • str : recherche de chaîne

    • regex : recherche d’expression régulière

    • msg : recherche dans les messages

    • pre : recherche dans les préfixes

    • pre\|msg : recherche dans les préfixes et messages

  • recherche dans l’historique de commandes, par exemple [Recherche commande (~ str,local)], avec les informations suivantes :

    • ~ : insensible à la casse

    • == : sensible à la casse

    • str : recherche de chaîne

    • regex : recherche d’expression régulière

    • local : recherche dans l’historique local du tampon

    • global : recherche dans l’historique global.

La barre nicklist contient les objets (items) suivants par défaut :

Objet (item) Exemple Description

buffer_nicklist

@Flashy

Liste des pseudos sur le tampon courant.

Autres objets (non utilisés dans des barres par défaut) :

Objet (item) Exemple Description

buffer_count

5

Nombre total de tampons ouverts.

buffer_nicklist_count_all

4

Nombre de groupes et pseudos visibles dans la liste de pseudos.

buffer_nicklist_count_groups

0

Nombre de groupes visibles dans la liste de pseudos.

buffer_short_name

#test

Nom court du tampon courant.

buflist2

1.weechat

Liste des tampons, deuxième objet de barre (voir l’option buflist.look.use_items).

buflist3

1.weechat

Liste des tampons, troisième objet de barre (voir l’option buflist.look.use_items).

buflist4

1.weechat

Liste des tampons, quatrième objet de barre (voir l’option buflist.look.use_items).

buflist5

1.weechat

Liste des tampons, cinquième objet de barre (voir l’option buflist.look.use_items).

fset

buflist.look.sort: …

Aide sur l’option sélectionnée dans le tampon fset.

irc_channel

#test

Nom de canal IRC courant.

irc_host

user@host.com

Hôte sur IRC.

irc_nick

Flashy

Pseudo IRC.

irc_nick_host

Flashy!user@host.com

Pseudo et hôte IRC.

irc_nick_modes

i

Modes IRC pour le pseudo.

irc_nick_prefix

@

Préfixe de pseudo IRC sur le canal.

spacer

Objet spécial utilisé pour aligner le texte dans les barres, voir Objet d’espacement.

spell_dict

fr,en

Dictionnaires utilisés pour la vérification de l’orthographe sur le tampon courant.

spell_suggest

print,prone,prune

Suggestions pour le mot sous le curseur (si mal orthographié).

tls_version

TLS1.3

Version de TLS utilisée sur le serveur IRC courant.

window_number

2

Numéro de la fenêtre courante.

Chaque aspect de la disposition peut être configuré par la command appropriée : /bar pour configurer les barres, /buffer et /window pour configurer les tampons et fenêtres, et /layout pour nommer, sauver et restaurer la disposition de l’écran et l’association entre les fenêtres et les tampons.

5.2. Ligne de commande

La ligne de commande WeeChat (située en bas de la fenêtre) permet d’exécuter des commandes ou d’envoyer du texte vers le tampon.

Syntaxe

Les commandes débutent par un caractère "/", suivi du nom de la commande. Par exemple pour afficher la liste de toutes les options :

/set

Le texte envoyé à un tampon est tout texte ne commençant pas par le caractère "/", par exemple pour envoyer bonjour sur le tampon courant :

bonjour

Il est cependant possible de faire débuter un texte par "/" en le doublant. Par exemple pour envoyer le texte /set sur le tampon courant :

//set

Codes couleurs

Pour certaines extensions comme IRC, il est possible d’utiliser des codes couleur et attributs comme suit (appuyer sur Ctrl+c puis sur la lettre qui suit et éventuellement une valeur) :

Touche Description

Ctrl+c, b

Texte gras.

Ctrl+c, c, xx

Couleur du texte xx (voir la liste des couleurs ci-dessous).

Ctrl+c, c, xx, ,, yy

Couleur du texte xx et du fond yy (voir la liste des couleurs ci-dessous).

Ctrl+c, d, xxxxxx

Couleur du texte xxxxxx (RGB en hexadécimal, par exemple FF0000 pour du rouge).

Ctrl+c, d, xxxxxx, ,, yyyyyy

Couleur du texte xxxxxx et du fond yyyyyy (RGB en hexadécimal).

Ctrl+c, i

Texte en italique.

Ctrl+c, o

Désactiver la couleur et tous les attributs.

Ctrl+c, v

Vidéo inverse (inversion de la couleur d’écriture et du fond).

Ctrl+c, _

Texte souligné.

Note
Le même code (sans le numéro pour Ctrl+c, c et Ctrl+c, d) peut être utilisé pour stopper l’attribut défini.

Les codes couleur pour Ctrl+c, c sont :

Couleur IRC Couleur WeeChat

00

white

01

black

02

blue

03

green

04

lightred

05

red

06

magenta

07

brown

08

yellow

09

lightgreen

10

cyan

11

lightcyan

12

lightblue

13

lightmagenta

14

darkgray

15

gray

16

52

17

94

18

100

19

58

20

22

21

29

22

23

23

24

24

17

25

54

26

53

27

89

28

88

29

130

30

142

31

64

32

28

33

35

34

30

35

25

36

18

37

91

38

90

39

125

40

124

41

166

42

184

43

106

44

34

45

49

46

37

47

33

48

19

49

129

50

127

51

161

52

196

53

208

54

226

55

154

56

46

57

86

58

51

59

75

60

21

61

171

62

201

63

198

64

203

65

215

66

227

67

191

68

83

69

122

70

87

71

111

72

63

73

177

74

207

75

205

76

217

77

223

78

229

79

193

80

157

81

158

82

159

83

153

84

147

85

183

86

219

87

212

88

16

89

233

90

235

91

237

92

239

93

241

94

244

95

247

96

250

97

254

98

231

99

default

Note
Pour voir toutes les couleurs disponibles dans votre terminal, vous pouvez taper /color puis Alt+c dans WeeChat ou lancez cette commande dans le terminal : weechat --colors.

Exemple : affichage de "bonjour Alice !" avec "bonjour" en bleu clair gras, et "Alice" en rouge clair souligné :

^Cc12^Cbbonjour ^Cb^Cc04^C_Alice^C_^Cc !

Touches :

Ctrl+c c 1 2 Ctrl+c b
b o n j o u r Espace
Ctrl+c b Ctrl+c c 0 4 Ctrl+c _
A l i c e
Ctrl+c _ Ctrl+c c
Espace !

Note
Dans l’extension irc, vous pouvez réassigner les couleurs en utilisant l’option irc.color.mirc_remap.

5.3. Tampons et fenêtres

Un tampon (buffer) est composé d’un numéro, un nom, des lignes affichées (ainsi que d’autres données).

Exemples de tampons :

  • tampon core (créé par WeeChat au démarrage, ne peut pas être fermé)

  • serveur irc (affiche les messages du serveur)

  • canal irc

  • messages privés irc

Une fenêtre (window) est une zone de l’écran affichant un tampon. Il est possible de découper l’écran horizontalement ou verticalement en plusieurs fenêtres (exemples ci-dessous, voir la commande /window pour plus d’informations).

Chaque fenêtre affiche un tampon. Un tampon peut être caché (affiché par aucune fenêtre) ou affiché par une ou plusieurs fenêtres.

Les dispositions d’écran et l’association entre les fenêtres et les tampons peuvent être sauvées et restaurées.

Exemples

Exemple de découpage horizontal (/window splith) :

                               ▼ fenêtre n°2 (tampon n°4)
┌──────────────────────────────────────────────────────────────────────────────────────┐
│1.libera │Bienvenue sur #def                                                          │
│  weechat│12:55:12     Max | bonjour                                          │@Flashy│
│2.  #test│12:55:20 @Flashy | salut Max !                                      │Max    │
│3.  #abc │                                                                    │       │
│4.  #def │                                                                    │       │
│5.  #ghi │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │[12:55] [5] [irc/libera] 4:#def(+n){2}                                      │
│         │[@Flashy]                                                                   │
│         │────────────────────────────────────────────────────────────────────────────│
│         │Bienvenue sur #abc                                                          │
│         │12:54:15 peter | ohé !                                              │@Flashy│
│         │12:55:01  @joe | salut                                              │@joe   │
│         │                                                                    │+weebot│
│         │                                                                    │peter  │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │[12:55] [5] [irc/libera] 3:#abc(+n){4}                                      │
│         │[@Flashy] salut peter !█                                                    │
└──────────────────────────────────────────────────────────────────────────────────────┘
                               ▲ fenêtre n°1 (tampon n°3)

Exemple de découpage vertical (/window splitv) :

┌──────────────────────────────────────────────────────────────────────────────────────┐
│1.libera │Bienvenue sur #abc                   │Bienvenue sur #def                    │
│  weechat│12:54:15 peter | ohé !       │@Flashy│12:55:12     Max | bonjour    │@Flashy│
│2.  #test│12:55:01  @joe | salut       │@joe   │12:55:20 @Flashy | salut Max  │Max    │
│3.  #abc │                             │+weebot│                              │       │
│4.  #def │                             │peter  │                              │       │
│5.  #ghi │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │[12:55] [5] [irc/libera] 3:#abc(+n)  │[12:55] [5] [irc/libera] 4:#def(+n)   │
│         │[@Flashy] salut peter !█             │[@Flashy]                             │
└──────────────────────────────────────────────────────────────────────────────────────┘
                 ▲ fenêtre n°1 (tampon n°3)            ▲ fenêtre n°2 (tampon n°4)

Exemple de découpage vertical + horizontal :

                                                       ▼ fenêtre n°3 (tampon n°5)
┌──────────────────────────────────────────────────────────────────────────────────────┐
│1.libera │Bienvenue sur #abc                   │Bienvenue sur #ghi                    │
│  weechat│12:54:15 peter | ohé !       │@Flashy│12:55:42 @Flashy | salut      │@Flashy│
│2.  #test│12:55:01  @joe | salut       │@joe   │12:55:56    alex | salut      │alex   │
│3.  #abc │                             │+weebot│                              │       │
│4.  #def │                             │peter  │                              │       │
│5.  #ghi │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │[12:55] [5] [irc/libera] 5:#ghi(+n)   │
│         │                             │       │[@Flashy]                             │
│         │                             │       │──────────────────────────────────────│
│         │                             │       │Bienvenue sur #def                    │
│         │                             │       │12:55:12     Max | bonjour    │@Flashy│
│         │                             │       │12:55:20 @Flashy | salut Max  │Max    │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │                             │       │                              │       │
│         │[12:55] [5] [irc/libera] 3:#abc(+n)  │[12:55] [5] [irc/libera] 4:#def(+n)   │
│         │[@Flashy] salut peter !█             │[@Flashy]                             │
└──────────────────────────────────────────────────────────────────────────────────────┘
                 ▲ fenêtre n°1 (tampon n°3)            ▲ fenêtre n°2 (tampon n°4)

Affichage dépouillé

Un affichage spécial, appelé "dépouillé" (bare display) peut être utilisé pour un clic facile sur les URLs longs et la sélection de texte (avec la souris).

L’affichage dépouillé a les caractéristiques suivantes :

  • Il n’affiche que le contenu du tampon courant : pas de découpage de fenêtres ni de barre (pas de titre, liste de pseudos, statut, ligne de commande, …​).

  • Le support souris de WeeChat est désactivé (s’il avait été activé) : vous pouvez utiliser votre souris comme vous le faites dans le terminal pour cliquer sur les URLs et sélectionner du texte.

  • Ncurses n’est pas utilisé, par conséquent les URLs ne sont pas coupés en fin de ligne.

La touche par défaut pour activer l’affichage dépouillé est Alt+l (L), et la même touche pour en sortir (ou par défaut tout changement dans la ligne de commande sortira de l’affichage dépouillé, voir l’option weechat.look.bare_display_exit_on_input).

Le format de l’heure peut être personnalisé avec l’option weechat.look.bare_display_time_format.

L’affichage dépouillé peut être activé pour un temps donné en utilisant la commande /window.

Si WeeChat ressemble à ceci :

┌──────────────────────────────────────────────────────────────────────────────────────┐
│1.libera │Bienvenue sur #abc                                                          │
│  weechat│12:52:27   --> | Flashy (flashcode@weechat.org) a rejoint #abc      │@Flashy│
│2.  #test│12:52:27    -- | Pseudos #abc: [@Flashy @joe +weebot peter]         │@joe   │
│3.  #abc │12:52:27    -- | Canal #abc: 4 pseudos (2 ops, 1 voice, 1 normal)   │+weebot│
│4.  #def │12:52:27    -- | Canal créé le Tue Jan 27 06:30:17 2009             │peter  │
│5.  #ghi │12:54:15 peter | bonjour !                                          │       │
│         │12:55:01  @joe | peter: hook_process: https://weechat.org/files/doc │       │
│         │               | /weechat/devel/weechat_plugin_api.en.html#_weechat │       │
│         │               | _hook_process                                      │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │                                                                    │       │
│         │[12:55] [5] [irc/libera] 3:#abc(+n){4}                                      │
│         │[@Flashy(i)] salut peter !█                                                 │
└──────────────────────────────────────────────────────────────────────────────────────┘

L’écran ressemblera à ça en mode dépouillé :

┌──────────────────────────────────────────────────────────────────────────────────────┐
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│                                                                                      │
│12:52 --> Flashy (flashcode@weechat.org) a rejoint #abc                               │
│12:52 -- Pseudos #abc: [@Flashy @joe +weebot peter]                                   │
│12:52 -- Canal #abc: 4 pseudos (2 ops, 1 voice, 1 normal)                             │
│12:52 -- Canal créé le Tue Jan 27 06:30:17 2009                                       │
│12:54 <peter> bonjour !                                                               │
│12:55 <@joe> peter: hook_process: https://weechat.org/files/doc/weechat/devel/weechat_│
│plugin_api.en.html#_weechat_hook_process                                              │
└──────────────────────────────────────────────────────────────────────────────────────┘

Donc vous pouvez cliquer l’URL de joe sans problème dans votre terminal (bien entendu cela suppose que votre terminal permet le clic sur les URLs).

5.4. Tampons

Format des lignes

Les lignes affichées dans les tampons formatés ont les champs suivants :

Champ Affiché Description

date/heure (message)

Oui

Date/heure du message (peut être dans le passé).

date/heure (print)

Non

Date/heure lorsque WeeChat affiche le message.

préfixe

Oui

Préfixe du message, couramment un pseudo.

message

Oui

Le message lui-même.

affichée

Non

Booléen : vrai si la ligne est affichée, faux si la ligne est filtrée avec la commande /filter.

highlight

Non

Booléen : vrai si la ligne a un highlight, faux sinon.

étiquettes

Avec /debug tags

Étiquettes associées avec la ligne (voir les étiquettes des lignes).

L’affichage des lignes peut être personnalisé avec des nombreuses options de présentation (weechat.look.*) et de couleur (weechat.color.chat_*).

Étiquettes des lignes

WeeChat utilise des étiquettes (« tags ») dans les lignes pour différentes raisons :

  • highlight

  • niveau de notification

  • enregistrement (« log »)

  • utilisation de la commande /filter

Les étiquettes peuvent être affichées avec la commande /debug tags (même commande pour les cacher).

Les étiquettes couramment utilisées (liste non exhaustive) :

Étiquette Description

no_filter

La ligne ne peut pas être filtrée.

no_highlight

Aucun highlight n’est possible sur cette ligne.

no_log

La ligne n’est pas écrite dans le fichier de log.

log0 … log9

Niveau de log pour la ligne (voir la commande /logger).

notify_none

La ligne ne doit pas être ajoutée à la "hotlist". (1)

notify_message

La ligne est un message utilisateur. (1)

notify_private

La ligne est un message privé. (1)

notify_highlight

La ligne est un message avec un highlight. (1)

self_msg

Message de soi-même.

nick_xxx

Le message vient du pseudo "xxx".

prefix_nick_ccc

Le préfixe est un pseudo avec la couleur "ccc".

host_xxx

Nom d’utilisateur et hôte dans le message.

irc_xxx

Message IRC "xxx" (peut-être une commande ou un numérique sur 3 chiffres).

irc_numeric

Message IRC numérique.

irc_error

Erreur du serveur IRC.

irc_action

Action d’un pseudo (commande /me).

irc_ctcp

Message CTCP.

irc_ctcp_reply

Réponse à un message CTCP.

irc_smart_filter

Message IRC qui peut être filtré avec le "smart filter" (filtre intelligent).

away_info

Message avec une info d’absence.

Note
(1) Lorsque aucune étiquette "notify_xxx" n’est présente, le niveau de notification par défaut est "low". Si une étiquette "notify_xxx" est présente, le niveau de notification réel peut être différent, par exemple si un niveau maximum de hotlist est utilisé pour un pseudo, le niveau de notification peut être inférieur à la valeur de l’étiquette.

Variables locales

Des variables locales peuvent être définies dans les tampons.

Une variable locale a :

  • un nom (chaîne)

  • une valeur (chaîne, peut être vide).

Les variables locales peuvent être définies par WeeChat, les extensions, les scripts, ou manuellement sur la ligne de commande, dans le tampon.

Par exemple pour ajouter la variable locale "completion_default_template" :

/buffer setvar completion_default_template %(my_completion)

Pour afficher les variables locales du tampon courant :

/buffer listvar

Pour supprimer la variable locale "completion_default_template" :

/buffer delvar completion_default_template

Par défaut WeeChat et ses extensions par défaut interprètent ces variables :

Nom Valeur Description

away

toute chaîne

Message d’absence sur le serveur, défini par l’extension irc.

channel

toute chaîne

Nom du canal, défini par les extensions irc/xfer et le tampon de debug des extensions relay/trigger.

charset_modifier

toute chaîne

Modificateur de charset du tampon serveur, défini par l’extension irc.

completion_default_template

toute chaîne

Modèle de complétion par défaut pour le tampon, qui remplace l’option weechat.completion.default_template.

filter

toute chaîne

Filtre défini sur certains tampons comme /fset, /list (irc), /server raw (irc) et /script.

host

toute chaîne

Nom d’hôte personnel (si connu), défini par l’extension irc.

lag

toute chaîne

Lag sur le serveur, défini par l’extension irc.

name

toute chaîne

Nom du tampon (attention, ce n’est pas le nom complet du tampon et ce nom n’est pas suffisant pour identifier ou chercher un tampon).

nick

toute chaîne

Pseudo personnel, défini par les extensions irc et xfer.

no_log

1 (or any non-empty string)

Si défini, l’extension logger n’écrira pas le "log" du tampon sur disque.

plugin

toute chaîne

Nom de l’extension qui a créé le tampon (core pour les tampons WeeChat).

script_close_cb

toute chaîne

Nom de la fonction de rappel pour la fermeture, défini par un script pour le tampon.

script_close_cb_data

toute chaîne

Données pour la fonction de rappel pour la fermeture, définies par un script pour le tampon.

script_input_cb

toute chaîne

Nom de la fonction de rappel d’entrée, défini par un script pour le tampon.

script_input_cb_data

toute chaîne

Données pour la fonction de rappel d’entrée, définies par un script pour le tampon.

script_name

toute chaîne

Nom du script qui a créé le tampon.

server

toute chaîne

Nom du serveur, défini par l’extension irc et le tampon de debug des extensions relay/trigger.

spell_suggest

toute chaîne

Mot mal orthographié et ses suggestions (format : "mot:suggestions"), défini par l’extension spell.

trigger_filter

toute chaîne

Filtre trigger, défini par l’extension trigger.

type

toute chaîne, par exemple : channel, debug, exec, option, private, relay, script, server, user, xfer

Type de tampon, défini par WeeChat et plusieurs extensions.

Note
Les extensions et script externes peuvent définir et utiliser d’autres variables locales.

5.5. Liste des tampons

L’extension Buflist affiche une liste des tampons dans un objet de barre appelé "buflist" (quatre autres objets de barre "buflist2", "buflist3", "buflist4" et "buflist5" sont également disponibles).
Une barre par défaut "buflist" est créée au démarrage avec cet objet de barre.

Commandes

  • buflist: objet de barre avec la liste des tampons

/buflist  enable|disable|toggle
          bar
          refresh [<item>[,<item>...]]

 enable : activer buflist
disable : désactiver buflist
 toggle : activer/désactiver buflist
    bar : ajouter la barre "buflist"
refresh : forcer le rafraîchissement de certains objets de barre (si aucun nom d'objet n'est donné, tous les objets de barre utilisés sont rafraîchis, selon l'option buflist.look.use_items)

Les lignes avec les tampons sont affichées en utilisant l'évaluation de chaînes (voir /help eval pour le format), avec ces options :
  - buflist.look.display_conditions : conditions pour afficher un tampon dans la liste
  - buflist.format.buffer : format pour un tampon qui n'est pas le tampon courant
  - buflist.format.buffer_current : format pour le tampon courant

Les variables suivantes peuvent être utilisées dans ces options :
  - données de l'objet de barre (voir le hdata "bar_item" dans la doc API pour une liste complète), par exemple :
    - ${bar_item.name}
  - données de la fenêtre ("window"), où l'objet de barre est affiché (il n'y a pas de fenêtre pour les barres de type "root", voir le hdata "window" dans la doc API pour une liste complète), par exemple :
    - ${window.number}
    - ${window.buffer.full_name}
  - données du tampon (voir le hdata "buffer" dans la doc API pour une liste complète), par exemple :
    - ${buffer.number}
    - ${buffer.name}
    - ${buffer.full_name}
    - ${buffer.short_name}
    - ${buffer.nicklist_nicks_count}
  - irc_server : données du serveur IRC, défini seulement sur un tampon IRC (voir le hdata "irc_server" dans la doc API)
  - irc_channel : données du canal IRC, défini seulement sur un tampon de canal IRC (voir le hdata "irc_channel" dans la doc API)
  - variables additionnelles ajoutées par buflist pour des raisons pratiques :
    - ${format_buffer} : la valeur évaluée de l'option buflist.format.buffer ; peut être utilisée dans l'option buflist.format.buffer_current pour juste changer la couleur de fond par exemple
    - ${current_buffer} : un booléen ("0" ou "1"), "1" s'il s'agit du tampon courant ; cela peut être utilisé dans une condition : ${if:${current_buffer}?...:...}
    - ${merged} : un booléen ("0" ou "1"), "1" si le tampon est mélangé avec au moins un autre tampon ; cela peut être utilisé dans une condition : ${if:${merged}?...:...}
    - ${format_number} : numéro indenté avec un séparateur (évaluation de l'option buflist.format.number)
    - ${number} : numéro indenté, par exemple " 1" s'il y a entre 10 et 99 tampons ; pour les tampons mélangés, cette variable est définie avec le numéro pour le premier tampon et des espaces pour les tampons suivants avec le même numéro
    - ${number2} : numéro indenté, par exemple " 1" s'il y a entre 10 et 99 tampons
    - ${number_displayed} : "1" si le numéro est affiché, sinon "0"
    - ${indent} : indentation pour le nom (les tampons de canaux, privés et listes sont indentés) (évaluation de l'option buflist.format.indent)
    - ${format_nick_prefix} : le préfixe du pseudo en couleur pour un canal (évaluation de l'option buflist.format.nick_prefix)
    - ${color_nick_prefix} : la couleur du préfixe du pseudo pour un canal (défini seulement si l'option buflist.look.nick_prefix est activée)
    - ${nick_prefix} : le préfixe du pseudo pour un canal (défini seulement si l'option buflist.look.nick_prefix est activée)
    - ${format_name} : le nom formaté (évaluation de l'option buflist.format.name)
    - ${name} : le nom court (si défini), sinon le nom
    - ${color_hotlist} : la couleur qui dépend du niveau de hotlist le plus élevé pour le tampon (évaluation de l'option buflist.format.hotlist_xxx où xxx est le niveau)
    - ${format_hotlist} : la hotlist formatée (évaluation de l'option buflist.format.hotlist)
    - ${hotlist} : la hotlist brute
    - ${hotlist_priority} : "none", "low", "message", "private" ou "highlight"
    - ${hotlist_priority_number} : -1 = none, 0 = low, 1 = message, 2 = private, 3 = highlight
    - ${format_lag} : le lag pour un tampon de serveur IRC, vide s'il n'y a pas de lag (évaluation de l'option buflist.format.lag)
    - ${format_tls_version} : indicateur de la version de TLS pour le serveur courant, vide pour les canaux (évaluation de l'option buflist.format.tls_version)

Options

Sections dans le fichier buflist.conf :

Section Commande de contrôle Description

format

/set buflist.format.*

Formats utilisés pour l’affichage de la liste des tampons.

look

/set buflist.look.*

Aspect/présentation.

Options :

  • buflist.format.buffer

    • description: format pour chaque ligne avec un tampon (note : le contenu est évalué, voir /help buflist) ; exemple : format standard pour l'objet de barre "buflist" et seulement le numéro du tampon entre crochets pour les autres objets de barre ("buflist2" à "buflist5") : "${if:${bar_item.name}==buflist?${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}:[${number}]}"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}"

  • buflist.format.buffer_current

    • description: format pour la ligne avec le tampon courant (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${color:,17}${format_buffer}"

  • buflist.format.hotlist

    • description: format pour la hotlist (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: " ${color:green}(${hotlist}${color:green})"

  • buflist.format.hotlist_highlight

    • description: format pour un tampon avec la hotlist de niveau "highlight" (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${color:magenta}"

  • buflist.format.hotlist_low

    • description: format pour un tampon avec la hotlist de niveau "low" (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${color:white}"

  • buflist.format.hotlist_message

    • description: format pour un tampon avec la hotlist de niveau "message" (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${color:brown}"

  • buflist.format.hotlist_none

    • description: format pour un tampon qui n'est pas dans la hotlist (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${color:default}"

  • buflist.format.hotlist_private

    • description: format pour un tampon avec la hotlist de niveau "private" (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${color:green}"

  • buflist.format.hotlist_separator

    • description: séparateur pour les compteurs dans la hotlist (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${color:default},"

  • buflist.format.indent

    • description: chaîne affichée pour indenter un tampon de canal, privé ou liste (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: " "

  • buflist.format.lag

    • description: format pour le lag sur un tampon de serveur IRC (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: " ${color:green}[${color:brown}${lag}${color:green}]"

  • buflist.format.name

    • description: format pour le nom du tampon (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${name}"

  • buflist.format.nick_prefix

    • description: format pour un préfixe de pseudo sur un canal (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${color_nick_prefix}${nick_prefix}"

  • buflist.format.number

    • description: format pour un numéro de tampon, ${number} est le numéro indenté (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${color:green}${number}${if:${number_displayed}?.: }"

  • buflist.format.tls_version

    • description: format pour la version de TLS sur un serveur IRC (note : le contenu est évalué, voir /help buflist)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: " ${color:default}(${if:${tls_version}==TLS1.3?${color:green}:${if:${tls_version}==TLS1.2?${color:yellow}:${color:red}}}${translate:${tls_version}}${color:default})"

  • buflist.look.add_newline

    • description: ajouter une nouvelle ligne entre les tampons affichés, de sorte que chaque tampon est affiché sur une ligne séparée (recommandé) ; si désactivé, les nouvelles lignes doivent être ajoutées dans les formats avec "${\n}", et les actions de souris ne sont plus possibles

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • buflist.look.auto_scroll

    • description: faire défiler automatiquement la barre buflist pour toujours voir le tampon courant (cela fonctionne seulement avec une barre en position gauche/droite avec un remplissage "vertical") ; cette valeur est un pourcentage de lignes affichées avant le tampon courant lors du défilement (-1 = désactiver le défilement) ; par exemple 50 signifie qu'après un défilement, le tampon courant est au milieu de la barre, 0 signifie en haut de la barre et 100 signifie en bas de la barre

    • type: entier

    • valeurs: -1 .. 100

    • valeur par défaut: 50

  • buflist.look.display_conditions

    • description: conditions pour afficher un tampon (note : le contenu est évalué, voir /help buflist) ; par exemple pour cacher les tampons de serveurs s'ils sont fusionnés avec le tampon "core" : "${buffer.hidden}==0 && ((${type}!=server && ${buffer.full_name}!=core.weechat) || ${buffer.active}==1)"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${buffer.hidden}==0"

  • buflist.look.enabled

    • description: activer buflist ; il est recommandé d'utiliser cette option plutôt que de juste cacher la barre car cela supprime également des hooks internes qui ne sont plus nécessaires lorsque la barre est cachée ; vous pouvez aussi utiliser la commande "/buflist toggle" ou la touche par défaut key alt+shift+b

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • buflist.look.mouse_jump_visited_buffer

    • description: si activé, les clics avec les boutons gauche/droit sur la ligne avec le tampon courant sautent au tampon visité avant/après

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • buflist.look.mouse_move_buffer

    • description: si activé, les gestes de souris (glisser/déposer) déplacent les tampons dans la liste

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • buflist.look.mouse_wheel

    • description: si activé, les actions de roulette de souris haut/bas sautent au tampon précédent/suivant dans la liste

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • buflist.look.nick_prefix

    • description: obtenir le préfixe du pseudo et sa couleur depuis la liste de pseudos de telle sorte que ${nick_prefix} puisse être utilisé dans le format ; cela peut être lent sur les tampons avec beaucoup de pseudos dans la liste, donc cette option est désactivée par défaut

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • buflist.look.nick_prefix_empty

    • description: lorsque le préfixe de pseudo est activé, afficher un espace à la place s'il n'y a pas de préfixe de pseudo sur le tampon

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • buflist.look.signals_refresh

    • description: liste de signaux séparés par des virgules qui sont accrochés et déclenchent l'affichage de la liste des tampons ; cela peut être utile si certaines variables personnalisées sont utilisées dans les formats et nécessitent un rafraîchissement particulier

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • buflist.look.sort

    • description: liste de champs séparés par des virgules pour trier les tampons ; chaque champ est une variable hdata du tampon ("var"), une variable hdata du serveur IRC ("irc_server.var") ou une variable hdata du canal IRC ("irc_channel.var") ; le caractère "-" peut être utilisé pour inverser l'ordre, le caractère "~" peut être utilisé pour effectuer une comparaison insensible à la casse ; exemples : "-~short_name" pour un tri inverse insensible à la casse sur le nom court du tampon, "-hotlist.priority,hotlist.time,hotlist.time_usec,number,-active" pour un tri comme la hotlist puis par numéro de tampon pour les tampons sans activité (note : le contenu est évalué, avant d'être découpé en champs, mais à cet instant "bar_item" est la seule variable qui peut être utilisée, pour distinguer les différents objets de barre buflist, par exemple "${bar_item.name}")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "number,-active"

  • buflist.look.use_items

    • description: nombre d'objets de barre buflist qui peuvent être utilisés ; les objets de barre sont : "buflist", "buflist2", "buflist3", "buflist4" et "buflist5" ; attention, utiliser plus d'un objet de barre ralentit l'affichage de la liste des tampons

    • type: entier

    • valeurs: 1 .. 5

    • valeur par défaut: 1

5.6. Mode curseur

Le mode curseur vous permet de déplacer librement le curseur partout sur l’écran, dans la zone de discussion et les barres, et vous permet d’effectuer des actions à la position donnée.
Vous pouvez entrer dans le mode curseur avec la commande /cursor ou avec un clic du milieu sur la souris (la souris doit avoir été activée avec la touche Alt+m ou la commande /mouse enable).

L’utilisation typique est de citer des messages (zone de discussion) ou d’interagir avec des pseudos (barre avec la liste de pseudos).

Voir la commande /cursor et les touches du contexte curseur pour la liste des actions que vous pouvez effectuer dans ce mode.

6. Raccourcis clavier

WeeChat fournit beaucoup de raccourcis clavier par défaut, listés dans les chapitres suivants.
Ils peuvent être modifiés et de nouveaux peuvent être ajoutés avec la commande /key.

6.1. Ligne de commande

Mouvement du curseur

Touche Description Commande


Shift+
Ctrl+b

Aller au caractère précédent sur la ligne de commande.

/input move_previous_char


Shift+
Ctrl+f

Aller au caractère suivant sur la ligne de commande.

/input move_next_char

Shift+

Aller à la ligne précédente.

/input move_previous_line

Shift+

Aller à la ligne suivante.

/input move_next_line

Ctrl+
Alt+b

Aller au mot précédent sur la ligne de commande.

/input move_previous_word

Ctrl+
Alt+f

Aller au mot suivant sur la ligne de commande.

/input move_next_word

Home
Ctrl+a

Aller au début de la ligne courante.

/input move_beginning_of_line

Shift+Home

Aller au début de la ligne de commande.

/input move_beginning_of_input

End
Ctrl+e

Aller à la fin de la ligne courante.

/input move_end_of_line

Shift+End

Aller à la fin de la ligne de commande.

/input move_end_of_input

Édition

Touche Description Commande

Del
Ctrl+d

Effacer le caractère suivant sur la ligne de commande.

/input delete_next_char

Backspace
Ctrl+h

Effacer le caractère précédent sur la ligne de commande.

/input delete_previous_char

Ctrl+k

Effacer du curseur jusqu’à la fin de la ligne courante (la chaîne supprimée est copiée dans le presse-papiers interne).

/input delete_end_of_line

Alt+Ctrl+k

Effacer du curseur jusqu’à la fin de la ligne de commande (la chaîne supprimée est copiée dans le presse-papiers interne).

/input delete_end_of_input

Ctrl+t

Inverser deux caractères.

/input transpose_chars

Ctrl+u

Effacer du curseur jusqu’au début de la ligne courante (la chaîne supprimée est copiée dans le presse-papiers interne).

/input delete_beginning_of_line

Alt+Ctrl+u

Effacer du curseur jusqu’au début de la ligne de commande (la chaîne supprimée est copiée dans le presse-papiers interne).

/input delete_beginning_of_input

Alt+Backspace

Effacer le mot précédent sur la ligne de commande (la chaîne supprimée est copiée dans le presse-papiers interne).

/input delete_previous_word

Ctrl+w

Effacer le mot précédent sur la ligne de commande jusqu’à un espace (la chaîne supprimée est copiée dans le presse-papiers interne).

/input delete_previous_word_whitespace

Ctrl+y

Coller le contenu du presse-papiers interne.

/input clipboard_paste

Ctrl+_

Défaire la dernière action sur la ligne de commande.

/input undo

Alt+_

Refaire la dernière action sur la ligne de commande.

/input redo

Tab

Compléter la commande ou le pseudo (Tab de nouveau : trouver la complétion suivante).

/input complete_next

Shift+Tab

Sans complétion, effectue une complétion partielle. Avec une complétion en cours, complète avec la complétion précédente.

/input complete_previous

Enter
Ctrl+j
Ctrl+m

Exécuter la commande ou envoyer le message (en mode recherche : arrêter la recherche).

/input return

Alt+Enter

Insérer une nouvelle ligne.

/input insert \n

Alt+d

Effacer le mot suivant (la chaîne supprimée est copiée dans le presse-papiers interne).

/input delete_next_word

Alt+k

Capturer une touche et insérer son code (et la commande associée si la commande existe) sur la ligne de commande.

/input grab_key_command

Alt+r

Effacer la ligne courante.

/input delete_line

Alt+R

Effacer entièrement la ligne de commande.

/input delete_input

Codes couleur

Touche Description Commande

Ctrl+c, b

Insérer le code pour mettre le texte en gras.

/input insert \x02

Ctrl+c, c

Insérer le code pour écrire en couleur.

/input insert \x03

Ctrl+c, d

Insérer le code pour écrire en couleur (couleur RGB, en hexadécimal).

/input insert \x04

Ctrl+c, i

Insérer le code pour mettre le texte en italique.

/input insert \x1D

Ctrl+c, o

Insérer le code pour réinitialiser la couleur.

/input insert \x0F

Ctrl+c, v

Insérer le code pour écrire en couleur inversée.

/input insert \x16

Ctrl+c, _

Insérer le code pour écrire en souligné.

/input insert \x1F

Historique de commandes

Touche Description Commande

Rappeler la commande précédente (en mode recherche : chercher plus haut).

/input history_previous

Rappeler la commande suivante (en mode recherche : chercher plus bas).

/input history_next

Ctrl+

Rappeler la commande précédente dans l’historique global (commun à tous les tampons).

/input history_global_previous

Ctrl+

Rappeler la commande suivante dans l’historique global (commun à tous les tampons).

/input history_global_next

Système

Touche Description Commande

Ctrl+z

Suspendre le processus WeeChat.

/sys suspend

6.2. Tampons

Touche Description Commande

Ctrl+r

Chercher du texte dans l’historique de commandes (voir les touches pour le contexte "histsearch").

/input search_history

Ctrl+s

Chercher du texte dans les lignes du tampon (voir les touches pour le contexte "search").

/input search_text_here

Ctrl+x

Changer de tampon courant si plusieurs tampons sont mélangés avec le même numéro, par exemple basculer vers un autre tampon serveur IRC.

/buffer switch

Alt+x

Zoomer sur le tampon mélangé (Alt+x de nouveau : afficher tous les tampons mélangés).

/buffer zoom

PgUp

Monter d’une page dans l’historique du tampon.

/window page_up

PgDn

Descendre d’une page dans l’historique du tampon.

/window page_down

Alt+PgUp

Monter de quelques lignes dans l’historique du tampon.

/window scroll_up

Alt+PgDn

Descendre de quelques lignes dans l’historique du tampon.

/window scroll_down

Alt+Home

Aller au début du tampon.

/window scroll_top

Alt+End

Aller à la fin du tampon.

/window scroll_bottom

Alt+
Alt+
Ctrl+p
F5

Aller au tampon précédent.

/buffer -1

Alt+
Alt+
Ctrl+n
F6

Aller au tampon suivant.

/buffer +1

Alt+j, Alt+f

Sauter au premier tampon.

/buffer -

Alt+j, Alt+l (L)

Sauter au dernier tampon.

/buffer +

Alt+j, Alt+r

Sauter au tampon IRC de données brutes.

/server raw

Alt+j, Alt+s

Sauter au tampon IRC du serveur.

/server jump

Alt+0…​9

Sauter au tampon qui porte ce numéro (0 = 10).

/buffer *N

Alt+j, 01…​99

Sauter au tampon qui porte ce numéro.

/buffer *NN

Alt+n

Se positionner sur le highlight suivant.

/window scroll_next_highlight

Alt+p

Se positionner sur le highlight précédent.

/window scroll_previous_highlight

Alt+u

Se positionner sur la première ligne non lue du tampon.

/window scroll_unread

Alt+Shift+U

Positionner le marqueur de données non lues sur tous les tampons.

/allbuf /buffer set unread

Alt+<

Sauter au tampon précédent dans la liste des tampons visités.

/buffer jump prev_visited

Alt+>

Sauter au tampon suivant dans la liste des tampons visités.

/buffer jump next_visited

Alt+/

Sauter au dernier tampon affiché (avant le dernier saut vers un tampon).

/buffer jump last_displayed

6.3. Fenêtres

Touche Description Commande

Ctrl+l (L)

Réafficher toute la fenêtre.

/window refresh

Alt+l (L)

Activer/désactiver le mode d’affichage dépouillé.

/window bare

F7

Aller à la fenêtre précédente.

/window -1

F8

Aller à la fenêtre suivante.

/window +1

Alt+w, Alt+

Sauter à la fenêtre au dessus.

/window up

Alt+w, Alt+

Sauter à la fenêtre en dessous.

/window down

Alt+w, Alt+

Sauter à la fenêtre de gauche.

/window left

Alt+w, Alt+

Sauter à la fenêtre de droite.

/window right

Alt+w, Alt+b

Équilibrer la taille de toutes les fenêtres.

/window balance

Alt+w, Alt+s

Échanger les tampons de deux fenêtres.

/window swap

Alt+z

Zoomer sur la fenêtre courante (Alt+z de nouveau : restaurer l’état initial des fenêtres, avant le zoom).

/window zoom

6.4. Barres

Touche Description Commande

F1
Ctrl+F1

Monter d’une page dans la liste des tampons.

/bar scroll buflist * -100%

F2
Ctrl+F2

Descendre d’une page dans la liste des tampons.

/bar scroll buflist * +100%

Alt+F1

Aller au début de la liste des tampons.

/bar scroll buflist * b

Alt+F2

Aller à la fin de la liste des tampons.

/bar scroll buflist * e

F9

Faire défiler le titre du tampon vers la gauche.

/bar scroll title * -30%

F10

Faire défiler le titre du tampon vers la droite.

/bar scroll title * +30%

F11
Ctrl+F11

Monter d’une page dans la liste des pseudos.

/bar scroll nicklist * -100%

F12
Ctrl+F12

Descendre d’une page dans la liste des pseudos.

/bar scroll nicklist * +100%

Alt+F11

Aller au début de la liste des pseudos.

/bar scroll nicklist * b

Alt+F12

Aller à la fin de la liste des pseudos.

/bar scroll nicklist * e

Alt+Shift+B

Activer/désactiver buflist.

/buflist toggle

Alt+Shift+N

Activer/désactiver la barre nicklist.

/bar toggle nicklist

6.5. Hotlist

Touche Description Commande

Alt+a

Sauter au prochain tampon avec activité (avec priorité : highlight, message, autre).

/buffer jump smart

Alt+h, Alt+c

Vider la hotlist (notification d’activité sur les tampons).

/hotlist clear

Alt+h, Alt+m

Supprimer le tampon courant de la hotlist.

/hotlist remove

Alt+h, Alt+r

Restaurer la dernière hotlist supprimée dans le tampon courant.

/hotlist restore

Alt+h, Alt+Shift+R

Restaurer la dernière hotlist supprimée dans tous les tampons.

/hotlist restore -all

6.6. Touches de bascule

Touche Description Commande

Alt+m

Activer/désactiver la souris.

/mouse toggle

Alt+s

Activer/désactiver la vérification de l’orthographe.

/mute spell toggle

Alt+=

Activer/désactiver les filtres.

/filter toggle

Alt+-

Activer/désactiver les filtres dans le tampon courant.

/filter toggle @

6.7. Contexte de recherche

Ces touches sont utilisées dans le contexte "search" (lorsque Ctrl+s est pressé pour chercher du texte dans les lignes du tampon).

Touche Description Commande

Ctrl+x

Basculer le type de recherche : chaîne (par défaut), expression régulière.

/input search_switch_regex

Alt+c

Basculer la casse exacte pour la recherche.

/input search_switch_case

Tab

Basculer la recherche dans : les messages (par défaut), les préfixes, les préfixes + messages.

/input search_switch_where

Ctrl+r

Chercher la ligne précédente.

/input search_previous

Ctrl+s

Chercher la ligne suivante.

/input search_next

Enter
Ctrl+j
Ctrl+m

Arrêter la recherche à la position courante.

/input search_stop_here

Ctrl+q

Arrêter la recherche et réinitialiser le défilement à l’état antérieur à la recherche de texte.

/input search_stop

6.8. Contexte de recherche dans l’historique

Ces touches sont utilisées dans le contexte "histsearch" (lorsque Ctrl+r est pressé pour chercher du texte dans l’historique des commandes).

Touche Description Commande

Ctrl+x

Basculer le type de recherche : chaîne (par défaut), expression régulière.

/input search_switch_regex

Alt+c

Basculer la casse exacte pour la recherche.

/input search_switch_case

Tab

Basculer la recherche dans : l’historique local du tampon (par défaut), l’historique global.

/input search_switch_where

Ctrl+r

Chercher dans les entrées précédentes (plus anciennes) de l’historique.

/input search_previous

Ctrl+s

Chercher dans les entrées suivantes (plus récentes) de l’historique.

/input search_next

Enter
Ctrl+j
Ctrl+m

Arrêter la recherche et utiliser la commande trouvée.

/input search_stop_here

Ctrl+o

Exécuter la commande trouvée dans l’historique et insérer la suivante sur la ligne de commande.

/input history_use_get_next

Ctrl+q

Arrêter la recherche et restaurer la ligne de commande à sa valeur initiale.

/input search_stop

6.9. Contexte curseur

Ces touches sont utilisées dans le contexte "cursor" (mouvement libre du curseur à l’écran), voir le Mode curseur.

Touche Zone Description Commande

-

Déplacer le curseur d’une ligne vers le haut.

/cursor move up

-

Déplacer le curseur d’une ligne vers le bas.

/cursor move down

-

Déplacer le curseur d’une colonne vers la gauche.

/cursor move left

-

Déplacer le curseur d’une colonne vers la droite.

/cursor move right

Alt+

-

Déplacer le curseur vers la première ligne de la zone.

/cursor move edge_top

Alt+

-

Déplacer le curseur vers la dernière ligne de la zone.

/cursor move edge_bottom

Alt+

-

Déplacer le curseur vers la première colonne de la zone.

/cursor move edge_left

Alt+

-

Déplacer le curseur vers la dernière colonne de la zone.

/cursor move edge_right

Alt+Home

-

Déplacer le curseur vers le coin supérieur gauche de la zone.

/cursor move top_left

Alt+End

-

Déplacer le curseur vers la coin inférieur droit de la zone.

/cursor move bottom_right

Alt+Shift+

-

Déplacer le curseur vers la zone au dessus.

/cursor move area_up

Alt+Shift+

-

Déplacer le curseur vers la zone en dessous.

/cursor move area_down

Alt+Shift+

-

Déplacer le curseur vers la zone sur la gauche.

/cursor move area_left

Alt+Shift+

-

Déplacer le curseur vers la zone sur la droite.

/cursor move area_right

m

chat

Citer le message.

hsignal:chat_quote_message;/cursor stop

l

chat

Citer la ligne ciblée.

hsignal:chat_quote_focused_line;/cursor stop

q

chat

Citer le préfixe + le message.

hsignal:chat_quote_prefix_message;/cursor stop

Q

chat

Citer l’heure + le préfixe + le message.

hsignal:chat_quote_time_prefix_message;/cursor stop

b

liste des pseudos

Bannir le pseudo.

/window ${_window_number};/ban ${nick}

k

liste des pseudos

Retirer par la force le pseudo.

/window ${_window_number};/kick ${nick}

K

liste des pseudos

Retirer par la force et bannir le pseudo.

/window ${_window_number};/kickban ${nick}

q

liste des pseudos

Ouvrir une discussion avec le pseudo.

/window ${_window_number};/query ${nick};/cursor stop

w

liste des pseudos

Effectuer un whois sur le pseudo.

/window ${_window_number};/whois ${nick}

Enter
Ctrl+j
Ctrl+m

-

Arrêter le mode curseur ("cursor").

/cursor stop

6.10. Souris

Ces actions avec la souris sont possibles seulement si la souris est activée avec la touche Alt+m (commande : /mouse toggle).

Bouton/Roulette (1) Geste Zone Description Commande

■ □ □

-

chat

Aller à la fenêtre.

/window ${_window_number}

■ □ □

gauche

chat

Aller au tampon précédent.

/window ${_window_number};/buffer +1

■ □ □

droit

chat

Aller au tampon suivant.

/window ${_window_number};/buffer +1

■ □ □

gauche (long)

chat

Aller au premier tampon.

/window ${_window_number};/buffer 1

■ □ □

droit (long)

chat

Aller au dernier tampon.

/window ${_window_number};/buffer +

-

chat

Monter de quelques lignes dans l’historique du tampon.

/window scroll_up -window ${_window_number}

-

chat

Descendre de quelques lignes dans l’historique du tampon.

/window scroll_down -window ${_window_number}

Ctrl+

-

chat

Faire défiler horizontalement vers la gauche.

/window scroll_horiz -window ${_window_number} -10%

Ctrl+

-

chat

Faire défiler horizontalement vers la droite.

/window scroll_horiz -window ${_window_number} +10%

-

chat : tampon fset

Monter de cinq lignes dans le tampon fset.

/fset -up 5

-

chat : tampon fset

Descendre de cinq lignes dans le tampon fset.

/fset -down 5

■ □ □

-

chat : tampon fset

Sélectionner la ligne dans le tampon fset.

/window ${_window_number};/fset -go ${fset_option_index}

□ □ ■

-

chat : tampon fset

Basculer le booléen (on/off) ou éditer la valeur de l’option.

hsignal:fset_mouse

□ □ ■

gauche

chat : tampon fset

Décrémenter la valeur de l’entier/couleur/énuméré, définir/ajouter à la valeur pour les autres types.

hsignal:fset_mouse

□ □ ■

droit

chat : tampon fset

Incrémenter la valeur de l’entier/couleur/énuméré, définir/ajouter à la valeur pour les autres types.

hsignal:fset_mouse

□ □ ■

haut / bas

chat : tampon fset

Marquer/démarquer de multiples options.

hsignal:fset_mouse

-

chat : tampon /list

Monter de cinq lignes dans le tampon /list.

/list -up 5

-

chat : tampon /list

Descendre de cinq lignes dans le tampon /list.

/list -down 5

■ □ □

-

chat : tampon /list

Sélectionner la ligne dans le tampon /list.

/window ${_window_number};/list -go ${_chat_line_y}

□ □ ■

-

chat : tampon /list

Rejoindre le canal IRC sur la ligne sélectionnée.

hsignal:irc_list_mouse

-

chat : tampon script

Monter de 5 lignes dans le tampon script.

/script -up 5

-

chat : tampon script

Descendre de 5 lignes dans le tampon script.

/script -down 5

■ □ □

-

chat : tampon script

Sélectionner la ligne dans le tampon script.

/script -go ${_chat_line_y}

□ □ ■

-

chat : tampon script

Installer/supprimer un script.

/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}

■ □ □

haut / gauche

buflist

Déplacer le tampon vers un numéro inférieur.

Signal buflist_mouse.

■ □ □

bas / droit

buflist

Déplacer le tampon vers un numéro supérieur.

Signal buflist_mouse.

■ □ □

-

buflist

Aller au tampon (tampon précédent dans la liste des tampons visités si le tampon est le courant).

Signal buflist_mouse.

□ □ ■

-

buflist

Aller au tampon suivant dans la liste des tampons visités si le tampon est le courant.

Signal buflist_mouse.

Ctrl+

-

buflist

Aller au tampon précédent.

Signal buflist_mouse.

Ctrl+

-

buflist

Aller au tampon suivant.

Signal buflist_mouse.

■ □ □

haut

liste des pseudos

Monter d’une page dans la liste des pseudos.

/bar scroll nicklist ${_window_number} -100%

■ □ □

bas

liste des pseudos

Descendre d’une page dans la liste des pseudos.

/bar scroll nicklist ${_window_number} +100%

■ □ □

haut (long)

liste des pseudos

Aller au début de la liste des pseudos.

/bar scroll nicklist ${_window_number} b

■ □ □

bas (long)

liste des pseudos

Aller à la fin de la liste des pseudos.

/bar scroll nicklist ${_window_number} e

■ □ □

-

liste des pseudos

Ouvrir une discussion avec le pseudo.

/window ${_window_number};/query ${nick}

□ □ ■

-

liste des pseudos

Effectuer un whois sur le pseudo.

/window ${_window_number};/whois ${nick}

■ □ □

gauche

liste des pseudos

Retirer par la force le pseudo.

/window ${_window_number};/kick ${nick}

■ □ □

gauche (long)

liste des pseudos

Retirer par la force et bannir le pseudo.

/window ${_window_number};/kickban ${nick}

□ □ ■

gauche

liste des pseudos

Bannir le pseudo.

/window ${_window_number};/ban ${nick}

□ □ ■

-

ligne de commande

Capturer un évènement de la souris et insérer son code sur la ligne de commande.

/input grab_mouse_area

-

toute barre

Faire défiler la barre de -20%.

/bar scroll ${_bar_name} ${_window_number} -20%

-

toute barre

Faire défiler la barre de +20%.

/bar scroll ${_bar_name} ${_window_number} +20%

□ ■ □

-

n’importe où

Démarrer le mode curseur ("cursor") à ce point.

/cursor go ${_x},${_y}

Note
(1) Boutons :
◼ □ □ : clic sur le bouton de gauche
□ ◼ □ : clic sur le bouton du milieu
□ □ ◼ : clic sur le bouton de droite
Roulette :
 : roulette vers le haut
 : roulette vers le bas

6.11. Tampon fset

Ces touches et actions sont utilisées sur le tampon fset (voir l’extension Fset).

Touche Action (1) Description Commande

Monter d’une ligne.

/fset -up

Descendre d’une ligne.

/fset -down

PgUp

Monter d’une page.

/window page_up

PgDn

Descendre d’une page.

/window page_down

Alt+Home

<<

Aller à la première ligne.

/fset -go 0

Alt+End

>>

Aller à la dernière ligne.

/fset -go end

F11

<

Faire défiler horizontalement vers la gauche.

/fset -left

F12

>

Faire défiler horizontalement vers la droite.

/fset -right

Alt+Space

t

Basculer la valeur booléenne.

/fset -toggle

Alt+-

-

Soustraire 1 de la valeur de l’entier/couleur/énuméré, définir la valeur pour les autres types.

/fset -add -1

Alt++

+

Ajouter 1 à la valeur de l’entier/couleur/énuméré, ajouter à la valeur pour les autres types.

/fset -add 1

Alt+f, Alt+r

r

Réinitialiser la valeur.

/fset -reset

Alt+f, Alt+u

u

Supprimer/réinitialiser la valeur.

/fset -unset

Alt+Enter

s

Définir la valeur.

/fset -set

Alt+f, Alt+n

n

Définir une nouvelle valeur.

/fset -setnew

Alt+f, Alt+a

a

Ajouter à la valeur.

/fset -append

Alt+,

,

Marquer/démarquer l’option.

/fset -mark 1

Shift+

Se déplacer d’une ligne vers le haut et marquer/démarquer l’option.

/fset -up; /fset -mark

Shift+

Marquer/démarquer l’option et se déplacer d’une ligne vers le bas.

/fset -mark; /fset -down

m:xxx

Marquer les options affichées qui correspondent au filtre "xxx" (tout filtre sur une option ou valeur est autorisé, voir la commande /fset).

u:xxx

Démarquer les options affichées qui correspondent au filtre "xxx" (tout filtre sur une option ou valeur est autorisé, voir la commande /fset).

Ctrl+l (L)

Rafraîchir les options et l’écran entier.

/fset -refresh

$

Rafraîchir les options (garder les options marquées).

$$

Rafraîchir les options (démarquer toutes les options).

Alt+p

p

Activer/désactiver la description des options d’extensions (plugins.desc.*).

/mute /set fset.look.show_plugins_desc toggle

Alt+v

v

Activer/désactiver la barre d’aide.

/bar toggle fset

s:x,y

Trier les options par les champs x,y (voir l’option fset.look.sort).

/mute /set fset.look.sort x,y

s:

Réinitialiser le tri à sa valeur par défaut (voir l’option fset.look.sort).

/mute /unset fset.look.sort

w:xxx

Exporter les options dans le fichier "xxx".

/fset -export xxx

w-:xxx

Exporter les options dans le fichier "xxx" sans aide.

/fset -export -nohelp xxx

w+:xxx

Exporter les options dans le fichier "xxx" avec aide.

/fset -export -help xxx

Ctrl+x

x

Basculer le format utilisé pour afficher les options.

/fset -format

q

Fermer le tampon fset.

/buffer close

Note
(1) L’action doit être tapée comme entrée dans la ligne de commande, suivie de Enter.

6.12. Tampon IRC /list

Ces touches et actions sont utilisées sur le tampon IRC /list (voir la commande /list).

Touche Action (1) Description Commande

Monter d’une ligne.

/list -up

Descendre d’une ligne.

/list -down

PgUp

Monter d’une page.

/window page_up

PgDn

Descendre d’une page.

/window page_down

Alt+Home

<<

Aller à la première ligne.

/list -go 0

Alt+End

>>

Aller à la dernière ligne.

/list -go end

F11

<

Faire défiler horizontalement vers la gauche.

/list -left

F12

>

Faire défiler horizontalement vers la droite.

/list -right

Ctrl+j

j

Rejoindre le canal IRC sur la ligne sélectionnée.

/list -join

xxx

Afficher seulement les canaux avec "xxx" dans le nom ou le titre (insensible à la casse).

n:xxx

Afficher seulement les canaux avec "xxx" dans le nom (insensible à la casse).

t:xxx

Afficher seulement les canaux avec "xxx" dans le titre (insensible à la casse).

u:n

Afficher seulement les canaux avec au moins "n" utilisateurs.

u:>n

Afficher seulement les canaux avec plus de "n" utilisateurs.

u:<n

Afficher seulement les canaux avec moins de "n" utilisateurs.

c:xxx

Afficher seulement les canaux qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : name, name2, users, topic.

s:x,y

Trier les canaux par les champs x,y (voir la commande /list).

s:

Réinitialiser le tri à sa valeur par défaut (voir la commande /list).

$

Rafraîchir la liste (relancer la commande /list).

q

Fermer le tampon.

/buffer close

Note
(1) L’action doit être tapée comme entrée dans la ligne de commande, suivie de Enter.

6.13. Tampon script

Ces touches et actions sont utilisées sur le tampon script (voir le gestionnaire de scripts).

Touche Action (1) Description Commande

Monter d’une ligne.

/script -up

Descendre d’une ligne.

/script -down

PgUp

Monter d’une page.

/window page_up

PgDn

Descendre d’une page.

/window page_down

Alt+i

i

Installer le script.

/script install

Alt+r

r

Supprimer le script.

/script remove

Alt+l

l

Charger le script.

/script load

Alt+L

L

Recharger le script.

/script reload

Alt+u

u

Décharger le script.

/script unload

Alt+Shift+A

A

Charger automatiquement le script.

/script toggleautoload

Alt+h

h

Figer/défiger le script.

/script hold

Alt+v

v

Voir le script.

/script show

s:x,y

Trier les scripts par les champs x,y (voir l’option script.look.sort).

s:

Reset sort to its default value (voir l’option script.look.sort).

$

Rafraîchir la liste.

q

Fermer le tampon.

/buffer close

Note
(1) L’action doit être tapée comme entrée dans la ligne de commande, suivie de Enter.

7. Configuration

7.1. Fset

L’extension Fset affiche une liste des options dans un tampon et aide à définir les options de WeeChat et des extensions.

Exemple de tampon fset affichant les options commençant par weechat.look :

┌──────────────────────────────────────────────────────────────────────────────────────┐
│1.weechat│7/125 | Filtre : weechat.look.* | Tri : ~name | Touche(entrée) : alt+space>>│
│2.fset   │weechat.look.bare_display_exit_on_input : sortir du mode d'affichage dépouil│
│         │lé ("bare") sur tout changement dans la ligne de commande [défaut : on]     │
│         │----------------------------------------------------------------------------│
│         │  weechat.look.align_end_of_lines              énuméré  message             │
│         │  weechat.look.align_multiline_words           booléen  on                  │
│         │  weechat.look.bar_more_down                   chaîne   "++"                │
│         │  weechat.look.bar_more_left                   chaîne   "<<"                │
│         │  weechat.look.bar_more_right                  chaîne   ">>"                │
│         │  weechat.look.bar_more_up                     chaîne   "--"                │
│         │  weechat.look.bare_display_exit_on_input      booléen  on                  │
│         │  weechat.look.bare_display_time_format        chaîne   "%H:%M"             │
│         │  weechat.look.buffer_auto_renumber            booléen  on                  │
│         │  weechat.look.buffer_notify_default           énuméré  all                 │
│         │  weechat.look.buffer_position                 énuméré  end                 │
│         │  weechat.look.buffer_search_case_sensitive    booléen  off                 │
│         │  weechat.look.buffer_search_force_default     booléen  off                 │
│         │  weechat.look.buffer_search_history           énuméré  local               │
│         │  weechat.look.buffer_search_regex             booléen  off                 │
│         │  weechat.look.buffer_search_where             énuméré  prefix_message      │
│         │  weechat.look.buffer_time_format              chaîne   "%H:%M:%S"          │
│         │[12:55] [2] [fset] 2:fset                                                   │
│         │█                                                                           │
└──────────────────────────────────────────────────────────────────────────────────────┘

Commandes

  • fset: définir rapidement des options WeeChat et des extensions

/fset  -bar
       -refresh
       -up|-down [<nombre>]
       -left|-right [<pourcentage>]
       -go <ligne>|end
       -toggle
       -add [<valeur>]
       -reset
       -unset
       -set
       -setnew
       -append
       -mark
       -format
       -export [-help|-nohelp] <fichier>
       -import <fichier>
       <filtre>

    -bar : ajouter la barre d'aide
-refresh : rafraîchir la liste des options, puis l'écran entier (commande : /window refresh)
     -up : déplacer la ligne sélectionnée de "nombre" lignes vers le haut
   -down : déplacer la ligne sélectionnée de "nombre" lignes vers le bas
   -left : faire défiler le tampon de "pourcentage" de largeur vers la gauche
  -right : faire défiler le tampon de "pourcentage" de largeur vers la droite
     -go : sélectionner une ligne par numéro, la première ligne est 0 ("end" pour sélectionner la dernière ligne)
 -toggle : basculer la valeur booléenne
    -add : ajouter "valeur" (qui peut être un nombre négatif) pour les entiers, couleurs et enumérés, définir/ajouter à la valeur pour les autres types (définir pour une valeur négative, ajouter pour un nombre positif)
  -reset : réinitialiser la valeur de l'option
  -unset : supprimer/réinitialiser l'option
    -set : ajouter la commande /set dans l'entrée pour éditer la valeur de l'option (déplacer le curseur au début de la valeur)
 -setnew : ajouter la commande /set dans l'entrée pour éditer une nouvelle valeur pour l'option
 -append : ajouter la commande /set pour ajouter quelque chose dans la valeur de l'option (déplacer le curseur à la fin de la valeur)
   -mark : marquer/démarquer
 -format : exporter les options et valeurs affichées dans un fichier (chaque ligne a le format : "/set nom valeur" ou "/unset nom")
 -export : exporter les options et valeurs affichées dans un fichier (chaque ligne a le format : "/set nom valeur" ou "/unset nom")
 -import : importer les options depuis un fichier (toutes les lignes qui contiennent des commandes sont exécutées)
   -help : forcer l'écriture de l'aide sur les options dans le fichier exporté (voir /help fset.look.export_help_default)
 -nohelp : ne pas écrire l'aide sur les options dans le fichier exporté (voir /help fset.look.export_help_default)
  filtre : définir un nouveau filtre pour voir seulement les options correspondantes (ce filtre peut aussi être utilisé en entrée du tampon fset) ; les formats autorisés sont :
           `*` : afficher toutes les options (pas de filtre)c
           `xxx` : afficher seulement les options avec "xxx" dans le nom
           `f:xxx` : afficher seulement le fichier de configuration "xxx"
           `t:xxx` : afficher seulement le type "xxx" (bool/int/str/col/enum ou boolean/integer/string/color/enum)
           `d` : afficher seulement les options changées
           `d:xxx` : afficher seulement les options changées avec "xxx" dans le nom
           `d=xxx` : afficher seulement les options changées avec "xxx" dans la valeur
           `d==xxx` : afficher seulement les options changées avec la valeur exacte "xxx"
           `h=xxx` : afficher seulement les options avec "xxx" dans la description (traduite)
           `he=xxx` : afficher seulement les options avec "xxx" dans la description (en Anglais)
           `=xxx` : afficher seulement les options avec "xxx" dans la valeur
           `==xxx` : afficher seulement les options avec la valeur exacte "xxx"
           `c:xxx` : afficher seulement les options qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : file, section, option, name, parent_name, type, type_en, type_short (bool/int/str/col/enum), type_tiny (b/i/s/c/e), default_value, default_value_undef, value, quoted_value, value_undef, value_changed, parent_value, min, max, description, description2, description_en, description_en2, string_values, allowed_values

Les lignes avec des options sont affichées en utilisant l'évaluation de chaîne (voir /help eval pour le format), avec ces options :
  - fset.format.option1 : premier format pour une option
  - fset.format.option2 : second format pour une option

Les variables suivantes peuvent être utilisées dans ces options :
  -  données de l'option, avec couleur et alignées avec des espaces sur la droite :
    - ${file} : fichier de configuration (par exemple "weechat" ou "irc")
    - ${section} : section
    - ${option} : nom de l'option
    - ${name} : nom complet de l'option (fichier.section.option)
    - ${parent_name} : nom de l'option parente
    - ${type} : type de l'option (traduit)
    - ${type_en} : type de l'option (en Anglais)
    - ${type_short} : type court de l'option (bool/int/str/col/enum)
    - ${type_tiny} : type très court de l'option (b/i/s/c/e)
    - ${default_value} : valeur par défaut de l'option
    - ${default_value_undef} : "1" si la valeur par défaut est null, sinon "0"
    - ${value} : valeur de l'option
    - ${value_undef} : "1" si la valer est null, sinon "0"
    - ${value_changed} : "1" si la valeur est différente de la valeur par défaut, sinon "0"
    - ${value2} : valeur de l'option, avec la valeur héritée si null
    - ${parent_value} : valeur de l'option parente
    - ${min} : valeur minimale
    - ${max} : valeur maximale
    - ${description} : description de l'option (traduite)
    - ${description2} : description de l'option (traduite), "(pas de description)" s'il n'y a pas de description
    - ${description_en} : description de l'option (en Anglais)
    - ${description_en2} : description de l'option (en Anglais), "(no description)" s'il n'y a pas de description
    - ${string_values} : valeurs chaîne autorisées pour définir une option de type énuméré
    - ${allowed_values} : valeurs autorisées
    - ${marked} : "1" si l'option est marquée, sinon "0"
    - ${index} : index de l'option dans la liste
  - données de l'option, avec couleur mais sans espaces :
    - mêmes noms préfixés par un underscore, par exemple : ${_name}, ${_type}, ...
  - données de l'option, format brut (par de couleurs/espaces) :
    - mêmes noms préfixés par deux underscores, par exemple : ${__name}, ${__type}, ...
  - données de l'option, seulement des espaces :
    - mêmes noms préfixés par "empty_", par exemple : ${empty_name}, ${empty_type}
  - autres données :
    - ${selected_line} : "1" si la ligne est sélectionnée, sinon "0"
    - ${newline} : insérer une nouvelle ligne à cet endroit, pour afficher l'option sur plusieurs lignes

Pour les touches, entrée et actions de la souris sur le tampon, voir les raccourcis clavier dans le Guide utilisateur.

Note : si l'entrée comporte un ou plusieurs espaces en tête, le texte suivant est interprété comme un filtre, sans les espaces. Par exemple " q" cherche toutes les options avec "q" dans le nom, tandis que "q" ferme le tampon fset.

Exemples :
  /fset d:irc.*
  /fset nicklist
  /fset =red
  /fset ==red
  /fset c:${file} == irc && ${type_en} == integer

Options

Sections dans le fichier fset.conf :

Section Commande de contrôle Description

color

/set fset.color.*

Couleurs.

format

/set fset.format.*

Formats utilisés pour afficher la liste des options.

look

/set fset.look.*

Aspect/présentation.

Options :

  • fset.color.allowed_values

    • description: couleur pour les valeurs autorisées

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.allowed_values_selected

    • description: couleur pour les valeurs autorisées sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.color_name

    • description: couleur pour le nom de la couleur lorsque l'option fset.look.use_color_value est activée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 246

  • fset.color.color_name_selected

    • description: couleur pour le nom de la couleur sur la ligne sélectionnée lorsque l'option fset.look.use_color_value est activée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.default_value

    • description: couleur pour la valeur par défaut

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.default_value_selected

    • description: couleur pour la valeur par défaut sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.description

    • description: couleur pour la description

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 242

  • fset.color.description_selected

    • description: couleur pour la description sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.file

    • description: couleur pour le fichier

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.file_changed

    • description: couleur pour le fichier si la valeur est changée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • fset.color.file_changed_selected

    • description: couleur pour le fichier si la valeur est changée sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • fset.color.file_selected

    • description: couleur pour le fichier sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.help_default_value

    • description: couleur pour la valeur par défaut dans la barre d'aide

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.help_description

    • description: couleur pour la description dans la barre d'aide

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.help_name

    • description: couleur pour le nom dans la barre d'aide

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.help_quotes

    • description: couleur pour les guillemets autour des valeurs de type chaîne

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: darkgray

  • fset.color.help_values

    • description: couleur pour les valeurs autorisées

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.index

    • description: couleur pour l'index de l'option

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • fset.color.index_selected

    • description: couleur pour l'index de l'option sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightcyan

  • fset.color.line_marked_bg1

    • description: couleur du fond pour une ligne marquée (utilisé avec le premier format, voir l'option fset.format.option1)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 17

  • fset.color.line_marked_bg2

    • description: couleur du fond pour une ligne marquée (utilisé avec le second format, voir l'option fset.format.option2)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 17

  • fset.color.line_selected_bg1

    • description: couleur du fond pour la ligne sélectionnée (utilisé avec le premier format, voir l'option fset.format.option1)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 24

  • fset.color.line_selected_bg2

    • description: couleur du fond pour la ligne sélectionnée (utilisé avec le second format, voir l'option fset.format.option2)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 24

  • fset.color.marked

    • description: couleur pour l'indicateur de marquage

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • fset.color.marked_selected

    • description: couleur pour l'indicateur de marquage sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • fset.color.max

    • description: couleur pour la valeur maximale

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.max_selected

    • description: couleur pour la valeur maximale sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.min

    • description: couleur pour la valeur minimale

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.min_selected

    • description: couleur pour la valeur minimale sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.name

    • description: couleur pour le nom

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.name_changed

    • description: couleur pour le nom si la valeur est changée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 185

  • fset.color.name_changed_selected

    • description: couleur pour le nom si la valeur est changée sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • fset.color.name_selected

    • description: couleur pour le nom sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.option

    • description: couleur pour l'option

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.option_changed

    • description: couleur pour l'option si la valeur est changée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • fset.color.option_changed_selected

    • description: couleur de l'option si la valeur est changée sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • fset.color.option_selected

    • description: couleur pour l'option sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.parent_name

    • description: couleur pour le nom de l'option parente

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.parent_name_selected

    • description: couleur pour le nom de l'option parente sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.parent_value

    • description: couleur pour la valeur de l'option parente

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • fset.color.parent_value_selected

    • description: couleur pour la valeur de l'option parente sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightcyan

  • fset.color.quotes

    • description: couleur pour les guillemets autour des valeurs de type chaîne

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: darkgray

  • fset.color.quotes_changed

    • description: couleur pour les guillemets autour des valeurs de chaîne qui sont changées

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.quotes_changed_selected

    • description: couleur des guillemets autour des valeurs de chaîne qui sont changées sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.quotes_selected

    • description: couleur pour les guillemets autour des valeurs de chaîne sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.section

    • description: couleur pour la section

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.section_changed

    • description: couleur pour la section si la valeur est changée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • fset.color.section_changed_selected

    • description: couleur pour la section si la valeur est changée sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • fset.color.section_selected

    • description: couleur pour la section sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.string_values

    • description: couleur pour les valeurs de chaîne

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.string_values_selected

    • description: couleur pour les valeurs de chaîne sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.title_count_options

    • description: couleur pour le nombre d'options trouvées avec le filtre courant dans le titre du tampon

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • fset.color.title_current_option

    • description: couleur pour le numéro de l'option courante dans le titre du tampon

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightcyan

  • fset.color.title_filter

    • description: couleur pour le filtre dans le titre du tampon

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • fset.color.title_marked_options

    • description: couleur pour le nombre d'options marquées dans le titre du tampon

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightgreen

  • fset.color.title_sort

    • description: couleur pour le tri dans le titre du tampon

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.type

    • description: couleur pour le type

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 138

  • fset.color.type_selected

    • description: couleur pour le type sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 216

  • fset.color.unmarked

    • description: couleur pour l'indicateur de marquage lorsque l'option n'est pas marquée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • fset.color.unmarked_selected

    • description: couleur pour l'indicateur de marquage lorsque l'option n'est pas marquée sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • fset.color.value

    • description: couleur pour la valeur

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 38

  • fset.color.value_changed

    • description: couleur pour une valeur changée (différente de la valeur par défaut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 185

  • fset.color.value_changed_selected

    • description: couleur pour la valeur changée (différente de la valeur par défaut) sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • fset.color.value_selected

    • description: couleur pour la valeur sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 159

  • fset.color.value_undef

    • description: couleur pour une valeur non définie

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: magenta

  • fset.color.value_undef_selected

    • description: couleur pour une valeur non définie sur la ligne sélectionnée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightmagenta

  • fset.format.export_help

    • description: format pour l'aide sur l'option écrite avant chaque option dans le fichier exporté (note : le contenu est évalué, voir /help fset)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "# ${description2}"

  • fset.format.export_option

    • description: format pour chaque option exportée dans un fichier (note : le contenu est évalué, voir /help fset)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/set ${name} ${quoted_value}"

  • fset.format.export_option_null

    • description: format pour chaque option avec la valeur "null" exportée dans un fichier (note : le contenu est évalué, voir /help fset)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/unset ${name}"

  • fset.format.option1

    • description: premier format de chaque ligne, utilisé lorsque l'option fset.look.format_number est définie à 1 (note : le contenu est évalué, voir /help fset) ; un format vide utilise le format par défaut ("${marked} ${name} ${type} ${value2}"), qui se fait sans évaluation de chaîne et donc plus rapide ; les formats peuvent être changés avec la touche ctrl+x

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • fset.format.option2

    • description: second format de chaque ligne, utilisé lorsque l'option fset.look.format_number est définie à 2 (note : le contenu est évalué, voir /help fset) ; un format vide utilise le format par défaut ("${marked} ${name} ${type} ${value2}"), qui se fait sans évaluation de chaîne et donc plus rapide ; les formats peuvent être changés avec la touche ctrl+x

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${marked} ${name} ${type} ${value2}${newline} ${empty_name} ${_default_value}${color:244} -- ${_allowed_values}${newline} ${empty_name} ${_description}"

  • fset.look.auto_refresh

    • description: liste des options à rafraichir automatiquement sur le tampon fset (s'il est ouvert) ; "*" signifie toutes les options (recommandé), un nom commençant par "!" est une valeur négative pour empêcher une option d'être rafraichie, le caractère joker "*" est autorisé dans les noms (exemple : "*,!plugin.section.*")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "*"

  • fset.look.auto_unmark

    • description: démarquer automatiquement toutes les options après une action sur les options marquées ou après un rafraichissement

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • fset.look.condition_catch_set

    • description: condition pour capturer la commande /set et afficher les résultats dans le tampon fset ; les variables suivantes peuvent être utilisées : ${name} (nom de l'option donné pour la commande /set), ${count} (nombre d'options trouvées avec le paramètre de /set) ; une chaîne vide désactive la capture de la commande /set ; avec la valeur "1", le tampon fset est toujours utilisé avec la commande /set

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${count} >= 1"

  • fset.look.export_help_default

    • description: afficher l'aide de chaque option exportée par défaut (cela peut être passé outre avec les paramètres "-help" et "-nohelp" pour la commande /fset -export)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • fset.look.format_number

    • description: numéro du format utilisé pour afficher les options ; cela est dynamiquement changé par la touche ctrl-x sur le tampon fset

    • type: entier

    • valeurs: 1 .. 2

    • valeur par défaut: 1

  • fset.look.marked_string

    • description: chaîne affichée lorsqu'une option est marquée (pour effectuer une action sur plusieurs options)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "*"

  • fset.look.scroll_horizontal

    • description: défilement gauche/droite dans le tampon fset (pourcentage de la largeur)

    • type: entier

    • valeurs: 1 .. 100

    • valeur par défaut: 10

  • fset.look.show_plugins_desc

    • description: afficher les options de description des extensions (plugins.desc.*)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • fset.look.sort

    • description: liste de champs séparés par des virgules pour trier les options (voir /help fset pour la liste des champs) ; le caractère "-" peut être utilisé pour inverser l'ordre, le caractère "~" peut être utilisé pour effectuer une comparaison insensible à la casse ; exemple : "-~name" pour un tri inverse insensible à la casse sur le nom de l'option

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "~name"

  • fset.look.unmarked_string

    • description: chaîne affichée lorsqu'un option n'est pas marquée

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: " "

  • fset.look.use_color_value

    • description: utiliser la couleur pour afficher la valeur des options de couleur

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • fset.look.use_keys

    • description: utiliser les touches alt+X sur le tampon fset pour effectuer les actions sur les options ; si désactivé, seule l'entrée est autorisée

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • fset.look.use_mute

    • description: utiliser la commande /mute pour définir les options

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

7.2. Couleurs

Couleurs de base

Les couleurs de base dans WeeChat sont :

Nom Couleur

default

Couleur par défaut du terminal (transparent pour le fond)

black

Noir

darkgray

Gris foncé

red

Rouge foncé

lightred

Rouge clair

green

Vert foncé

lightgreen

Vert clair

brown

Marron

yellow

Jaune

blue

Bleu foncé

lightblue

Bleu clair

magenta

Violet foncé

lightmagenta

Violet clair

cyan

Cyan foncé

lightcyan

Cyan clair

gray

Gris

white

Blanc

Couleurs étendues

WeeChat alloue dynamiquement les paires de couleurs quand elles sont utilisées sur l’écran (pour afficher les tampons et les barres).

En plus des couleurs de base, vous pouvez utiliser un numéro de couleur entre 1 et la limite de votre terminal.

Utilisez la commande /color pour voir les couleurs et les limites. Avec la touche Alt+c, vous pouvez basculer temporairement vers les couleurs du terminal pour choisir une couleur.

Par exemple si vous souhaitez afficher l’heure en orange dans le tampon, faites :

/set weechat.color.chat_time 214

Ou si vous voulez un fond vert très foncé pour la barre de statut :

/set weechat.bar.status.color_bg 22

Alias

Vous pouvez ajouter des alias de couleur avec la commande /color alias puis utiliser cet alias dans n’importe quelle option de couleur.

Par exemple :

/color alias 214 orange
/set weechat.color.chat_delimiters orange

Attributs

Il est possible d’utiliser des attributs pour les couleurs. Un ou plusieurs attributs peuvent être ajoutés avant le nom ou le numéro de la couleur :

  • % : clignotement

  • . : "dim" (demi-intensité)

  • * : texte gras

  • ! : mode vidéo inverse

  • / : italique

  • _ : texte souligné

  • | : garder les attributs : ne pas réinitialiser clignotement/dim/gras/inverse/souligné lors du changement de couleur

Par exemple si vous voulez votre pseudo en blanc souligné, faites :

/set weechat.color.chat_nick_self _white

Ou si vous voulez l’heure dans la barre de statut en orange souligné avec gras :

/set weechat.color.status_time *_214

Pour utiliser un attribut avec la couleur par défaut du terminal (-1), vous devez utiliser un nombre supérieur à la dernière couleur du terminal, par exemple la couleur maximum de WeeChat : 99999.

Exemple de gras avec la couleur de texte du terminal :

/set weechat.color.status_time *99999

7.3. Charset

L’extension Charset vous permet de décoder et encoder les données en utilisant un jeu de caractères.

Il y a un jeu de caractère par défaut pour le décodage/encodage, et un spécifique pour les tampons (ou groupes de tampons).

Cette extension est facultative, mais recommandée : si elle n’est pas chargée, WeeChat pourra uniquement lire/écrire des données UTF-8.

L’extension Charset devrait être automatiquement chargée par WeeChat au démarrage. Pour s’assurer que l’extension est bien chargée, essayez :

/charset

Si la commande n’est pas trouvée, alors chargez l’extension avec la commande :

/plugin load charset

Si l’extension n’est pas trouvée, alors vous devriez recompiler WeeChat avec les extensions et le support de Charset.

Lorsque l’extension Charset démarre, elle affiche le jeu de caractères du terminal et l’interne. Le jeu de caractères du terminal dépend de votre locale, et l’interne est UTF-8.

Par exemple :

charset : terminal : ISO-8859-15, interne : UTF-8

Définir le jeu de caractère

Pour modifier les jeux de caractères de décodage et d’encodage globaux, utilisez la commande /set.

Par exemple :

/set charset.default.decode ISO-8859-15
/set charset.default.encode ISO-8859-15

Si le jeu de caractères de décodage global n’est pas renseigné (par exemple pendant le premier chargement de Charset), il sera renseigné automatiquement avec le jeu de caractères du terminal (s’il est différent de UTF-8) ou par défaut à ISO-8859-1.

La valeur d’encodage par défaut est vide, donc WeeChat envoie par défaut avec le jeu de caractères interne (UTF-8).

Pour modifier le jeu de caractères d’un serveur IRC, utilisez la commande /charset sur le tampon serveur. Si vous donnez seulement le jeu de caractères, alors vous modifiez en même temps les valeurs de décodage et d’encodage.

Par exemple :

/charset ISO-8859-15

Ce qui est équivalent à :

/charset decode ISO-8859-15
/charset encode ISO-8859-15

Pour modifier le jeu de caractères d’un canal IRC (ou d’une conversation privée), utilisez la même commande que pour le serveur, mais sur le tampon du canal (ou du privé).

Pour définir le jeu de caractères pour tous les canaux/privés d’un serveur IRC :

/set charset.encode.irc.libera ISO-8859-15

Pour voir tous les jeux de caractères utilisés, utilisez la commande suivante :

/set charset.*

En cas de problème

Pour tout problème avec les jeux de caractères, merci de consulter la FAQ WeeChat / Accents .

Commandes

  • charset: changer le charset pour le tampon courant

/charset  decode|encode <charset>
          reset

 decode : changer le charset de décodage
 encode : changer le charset d'encodage
charset : nouveau charset pour le tampon courant
  reset : réinitialiser les charsets pour le tampon courant

Options

Sections dans le fichier charset.conf :

Section Commande de contrôle Description

default

/set charset.default.*

Jeu de caractère d’encodage/décodage par défaut.

decode

/charset decode
/set charset.decode.*

Jeu de caractère d’encodage par tampon (les options peuvent être ajoutées/supprimées dans la section).

encode

/charset encode
/set charset.encode.*

Jeu de caractère de décodage par tampon (les options peuvent être ajoutées/supprimées dans la section).

Options :

  • charset.default.decode

    • description: charset de décodage global : charset utilisé pour décoder les messages entrants lorsqu'ils ne sont pas valides UTF-8

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "iso-8859-1"

  • charset.default.encode

    • description: charset d'encodage global : charset utilisé pour encoder les messages sortants (si vide, le défaut est UTF-8 car c'est le charset interne de WeeChat)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

7.4. Niveaux de notification

Configurer les niveaux de notification

Quatre niveaux sont possibles dans les messages affichés dans les tampons, du moins important au plus important :

  • low : message avec faible importance (par exemple un join/part/quit irc)

  • message : message d’un utilisateur

  • private : message dans un tampon privé

  • highlight : message avec highlight

Chaque tampon a un niveau de notification, qui est utilisé pour décider quels messages ajouteront le tampon dans la hotlist.

Le niveau de notification par défaut peut être défini avec l’option weechat.look.buffer_notify_default, la valeur par défaut est all.

Niveau de notification Niveau des messages ajoutés à la hotlist

none

(aucun)

highlight

highlight + private

message

highlight + private + message

all

highlight + private + message + low

Le niveau de notification peut être défini pour un ensemble de tampons, par exemple tous les tampons du serveur irc "libera" :

/set weechat.notify.irc.libera message

Définir le niveau de notification highlight sur le canal "#weechat" seulement :

/set weechat.notify.irc.libera.#weechat highlight

Le niveau de notification pour un tampon peut aussi être défini avec la commande /buffer :

/buffer notify highlight

Niveau maximal de hotlist pour des pseudos

Il est possible de définir un niveau maximal de hotlist pour certains pseudos, par tampon ou groupe de tampons (comme des serveurs IRC).

La propriété de tampon "hotlist_max_level_nicks" peut être définie avec une liste de pseudos et pour chaque pseudo le niveau maximal de hotlist à déclencher, les niveaux possibles sont :

  • -1 : pas de changement dans la hotlist pour ce pseudo

  • 0 : faible priorité (comme les messages join/part)

  • 1 : message

  • 2 : message privé

  • 3 : highlight (en réalité inutile, car il s’agit déjà du niveau maximal par défaut pour tous les messages)

Par exemple pour désactiver les « highlights » de "joe" et "mike" sur le tampon courant :

/buffer setauto hotlist_max_level_nicks_add joe:2,mike:2

7.5. Highlights

Désactiver les highlights

Vous pouvez désactiver les highlights avec l’option weechat.look.highlight_disable_regex (expression régulière).
Lorsqu’un highlight est désactivé avec cette option, les autres options de highlight sont ignorées.

Par exemple pour désactiver tout highlight sur les messages avec un mot commençant par "flash" entre chevrons :

/set weechat.look.highlight_disable_regex "<flash.*>"

Ceci peut aussi être défini avec la propriété de tampon "highlight_disable_regex".

Même exemple, spécifique au tampon courant :

/buffer setauto highlight_disable_regex <flash.*>

Ajouter des mots pour le « highlight »

Par défaut, WeeChat met en valeur les messages des autres utilisateurs qui contiennent votre pseudo, par conséquent le highlight dépend du tampon (le pseudo peut être différent d’un tampon à l’autre).

Vous pouvez ajouter d’autres mots à mettre en valeur avec l’option weechat.look.highlight, par exemple pour mettre en valeur votre pseudo, "mot1", "mot2" et tous les mots commençants par "test" :

/set weechat.look.highlight "mot1,mot2,test*"

Si vous avez besoin d’une règle plus spécifique pour un mot, vous pouvez utiliser des expressions régulières avec l’option weechat.look.highlight_regex, par exemple pour mettre en valeur les mots "flashcode", "flashcöde" et "flashy" :

/set weechat.look.highlight_regex "flashc[oö]de|flashy"

Les délimiteurs autour des mots à mettre en valeur peuvent être paramétrés avec l’option weechat.look.word_chars_highlight.

Ajouter des étiquettes pour le « highlight »

Les lignes affichées contiennent des étiquettes (« tags »), qui donnent des informations sur l’origine du message ou le message lui-même.
Vous pouvez afficher les étiquettes avec la commande /debug tags (même commande pour les cacher).

Vous pouvez ajouter des étiquettes à mettre en valeur avec l’option weechat.look.highlight_tags. Les étiquettes sont séparées par des virgules, et plusieurs étiquettes peuvent être séparées par + pour faire un "et" logique entre elles.

Par exemple pour mettre en valeur tous les messages du pseudo "FlashCode" et toutes les notices des pseudos commençant par "toto" :

/set weechat.look.highlight_tags "nick_flashcode,irc_notice+nick_toto*"

Définir des highlights supplémentaires sur le tampon

Vous pouvez forcer le highlight en utilisant une expression regulière avec la propriété de tampon "highlight_regex".

Par exemple pour forcer le highlight sur tous les messages dans le canal courant :

/buffer setauto highlight_regex .*

7.6. Enregistrement des tampons

L’extension Logger permet de sauvegarder le contenu des tampons dans des fichiers, avec des options sur comment et quoi sauvegarder.

Niveaux d’enregistrement

L’enregistrement est fait selon un niveau pour chaque tampon. Le niveau par défaut est 9 (enregistrer tous les messages affichés dans le tampon). Vous pouvez changer ce niveau pour un tampon, ou un groupe de tampons.

Les niveaux possibles vont de 0 à 9. Zéro signifie "ne rien enregistrer" et 9 signifie "enregistrer tous les messages".

Les extensions utilisent différent niveaux pour les messages affichés. L’extension IRC utilise les niveaux suivants :

  • niveau 1 : message d’un utilisateur (sur un canal ou en privé)

  • niveau 2 : changement de pseudo (vous ou quelqu’un d’autre)

  • niveau 3 : tout message du serveur (sauf join/part/quit)

  • niveau 4 : message join/part/quit du serveur

Donc si vous affectez le niveau 3 pour un canal IRC, WeeChat enregistrera tous les messages sauf les join/part/quit.

Quelques exemples :

  • Affecter le niveau 3 pour le canal IRC #weechat :

/set logger.level.irc.libera.#weechat 3
  • Affecter le niveau 3 pour le tampon serveur libera :

/set logger.level.irc.server.libera 3
  • Affecter le niveau 3 pour tous les canaux sur le serveur libera :

/set logger.level.irc.libera 3
  • Affecter le niveau 2 pour tous les tampons IRC :

/set logger.level.irc 2

Masques de noms de fichiers

Il est possible de définir un masque de nom de fichier pour chaque tampon, et d’utiliser les variables locales du tampon pour construire le nom de fichier. Pour voir les variables disponibles sur le tampon courant :

/buffer listvar

Les masques seront utilisés par ordre de priorité descendante sur logger.mask.$plugin.*, avec logger.file.mask comme option par défaut.

Par exemple, sur le tampon "irc.libera.#weechat", WeeChat cherchera un masque avec le nom de l’option, dans cet ordre :

logger.mask.irc.libera.#weechat
logger.mask.irc.libera
logger.mask.irc
logger.file.mask

Cela signifie que vous pouvez avoir un masque spécifique pour certaines serveurs IRC ("logger.mask.irc.libera") ou pour une extension ("logger.mask.irc").

Fichiers de log par date

Pour avoir des fichiers de log par date, vous pouvez utiliser des marqueurs dans le masque (voir man strftime pour le format), par exemple :

/set logger.file.mask "%Y/%m/$plugin.$name.weechatlog"

Vous obtiendrez les fichiers suivants :

~/.local/share/weechat
└── logs
    ├── 2010
    │   ├── 11
    │   │   ├── irc.server.libera.weechatlog
    │   │   └── irc.libera.#weechat.weechatlog
    │   └── 12
    │       ├── irc.server.libera.weechatlog
    │       └── irc.libera.#weechat.weechatlog
    ├── 2011
    │   ├── 01
    │   │   ├── irc.server.libera.weechatlog
    │   │   └── irc.libera.#weechat.weechatlog
    │   ├── 02
    ...
Fichiers de log IRC par serveur et canal

Si vous voulez un répertoire par serveur IRC et un fichier par canal dedans :

/set logger.mask.irc "irc/$server/$channel.weechatlog"

Vous obtiendrez les fichiers suivants :

~/.local/share/weechat
└── logs
    └── irc
        ├── libera
        │   ├── libera.weechatlog
        │   ├── #weechat.weechatlog
        │   └── #moncanal.weechatlog
        ├── oftc
        │   ├── oftc.weechatlog
        │   ├── #canal1.weechatlog
        │   └── #canal2.weechatlog
        ...

Rotation et compression

Il est possible de définir une taille maximale pour les fichiers de logs, et lorsqu’elle est atteinte, il y a une rotation automatique du fichier de log.

Les fichiers de logs qui ont tourné peuvent être compressés avec gzip ou zstd .

Note
La compression du fichier pouvant prendre du temps, elle est exécutée en tâche de fond.

Exemple avec une taille maximale de 2 Go et la compression avec gzip, en utilisant un bon niveau de compression (plus lent que celui par défaut) :

/set logger.file.rotation_compression_type gzip
/set logger.file.rotation_compression_level 80
/set logger.file.rotation_size_max "2g"

Si vous voulez utiliser un nombre décimal, vous pouvez utiliser l’unité en dessous et multiplier par 1000, par exemple pour une taille maximale de 2,5 Go :

/set logger.file.rotation_size_max "2500m"

Avec cette configuration, vous aurez des fichiers comme ceux-ci (dans cet exemple il y a eu une rotation seulement pour le log du canal "#weechat"):

~/.local/share/weechat
└── logs
    ├── core.weechat.weechatlog
    ├── irc.server.libera.weechatlog
    ├── irc.libera.#weechat.weechatlog
    ├── irc.libera.#weechat.weechatlog.1.gz
    ├── irc.libera.#weechat.weechatlog.2.gz
    └── irc.libera.#weechat.weechatlog.3.gz

Commandes

  • logger: configuration de l’extension logger

/logger  list
         set <niveau>
         flush
         disable

   list : afficher le statut d'enregistrement pour les tampons ouverts
    set : définir le niveau d'enregistrement pour le tampon courant
 niveau : niveau pour les messages à enregistrer (0 = pas d'enregistrement, 1 = quelques messages (les plus importants) .. 9 = tous les messages)
  flush : écrire tous les fichiers de log maintenant
disable : désactiver l'enregistrement pour le tampon courant (définir le niveau à 0)

Les options "logger.level.*" et "logger.mask.*" peuvent être utilisées pour définir le niveau ou le masque de nom de fichier pour un tampon, ou plusieurs tampons commençant par un nom.

Niveaux de log utilisés par l'extension IRC :
  1 : message d'utilisateur (canal et privé), notice (serveur et canal)
  2 : changement de pseudo
  3 : message du serveur
  4 : join/part/quit
  9 : tous les autres messages

Exemples :
  définir le niveau d'enregistrement à 5 pour le tampon courant :
    /logger set 5
  désactiver l'enregistrement pour le tampon courant :
    /logger disable
  définir le niveau à 3 pour les tampons IRC :
    /set logger.level.irc 3
  désactiver l'enregistrement pour le tampon principal de WeeChat :
    /set logger.level.core.weechat 0
  utiliser un répertoire par serveur IRC et un fichier par canal dedans :
    /set logger.mask.irc "$server/$channel.weechatlog"

Options

Sections dans le fichier logger.conf :

Section Commande de contrôle Description

look

/set logger.look.*

Aspect/présentation.

color

/set logger.color.*

Couleurs.

file

/set logger.file.*

Options pour les fichiers de log.

level

/set logger.level.*

Niveau de log par tampon (les options peuvent être ajoutées/supprimées dans la section).

mask

/set logger.mask.*

Masque de nom de fichier par tampon (les options peuvent être ajoutées/supprimées dans la section).

Options :

  • logger.color.backlog_end

    • description: couleur pour la ligne de fin de l'historique

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 246

  • logger.color.backlog_line

    • description: couleur pour les lignes de l'historique, utilisée seulement si l'option logger.file.color_lines est désactivée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 246

  • logger.file.auto_log

    • description: sauve automatiquement le contenu des tampons dans des fichiers (sauf si un tampon désactive le log) ; si désactivé, l'enregistrement est désactivé sur tous les tampons

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • logger.file.color_lines

    • description: utiliser des codes de couleurs ANSI dans les lignes écrites dans les fichiers de log et afficher les lignes de l'historique avec ces couleurs

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • logger.file.flush_delay

    • description: nombre de secondes entre les "flush" (écriture) dans les fichiers de log (0 = écrire immédiatement dans les fichiers de log pour chaque ligne affichée)

    • type: entier

    • valeurs: 0 .. 3600

    • valeur par défaut: 120

  • logger.file.fsync

    • description: utiliser fsync pour synchroniser le fichier de log avec le périphérique de stockage après le flush (voir man fsync) ; cela est plus lent mais devrait éviter toute perte de données en cas de panne de courant durant la sauvegarde du fichier de log

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • logger.file.info_lines

    • description: écrire une ligne d'information dans le fichier log quand le log démarre ou se termine pour un tampon

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • logger.file.log_conditions

    • description: conditions pour sauver le contenu des tampons dans des fichiers (note : le contenu est évalué, voir /help eval) ; une valeur vide sauve le contenu de tous les tampons ; par exemple pour sauver uniquement les tampons privés : "${type} == private"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • logger.file.mask

    • description: masque de fichier par défaut pour les fichiers de log (le format est "repertoire/vers/fichier" ou "fichier", sans le premier "/" car l'option "path" est utilisée pour construire le chemin complet vers le fichier) ; les variables locales du tampon sont permises (vous ne devriez utiliser que des variables qui sont définies sur tous les tampons, donc par exemple vous ne devriez PAS utiliser $server ou $channel) ; les caractères de formatage de date sont autorisés (voir man strftime)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "$plugin.$name.weechatlog"

  • logger.file.name_lower_case

    • description: utiliser seulement des minuscules dans le nom des fichiers de log

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • logger.file.nick_prefix

    • description: texte à écrire avant le pseudo dans le préfixe du message, par exemple : "<"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • logger.file.nick_suffix

    • description: texte à écrire après le pseudo dans le préfixe du message, par exemple : ">"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • logger.file.path

    • description: chemin pour les fichiers de log WeeChat ; les caractères de formatage de date sont autorisés (voir man strftime) (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${weechat_data_dir}/logs"

  • logger.file.replacement_char

    • description: caractère de remplacement dans le nom de fichier construit avec le masque (comme le délimiteur de répertoire)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "_"

  • logger.file.rotation_compression_level

    • description: niveau de compression pour les fichiers de log qui tournent (avec extension ".1", ".2", etc.), si l'option logger.file.rotation_compression_type est activée ; 1 = peu de compression / rapide ... 100 = meilleure compression / lent ; la valeur est un pourcentage converti de 1 à 9 pour gzip et de 1 à 19 pour zstd ; la valeur par défaut est recommandée, elle offre un bon compromis compression/vitesse

    • type: entier

    • valeurs: 1 .. 100

    • valeur par défaut: 20

  • logger.file.rotation_compression_type

    • description: type de compression pour les fichiers de log qui tournent ; si défini à "none", les fichiers de logs qui tournent ne sont pas compressés ; ATTENTION : si la rotation est activée avec un autre type de compression (ou pas de compression), vous devez d'abord décharger l'extension logger, compresser les fichiers avec le nouveau type (ou décompresser les fichiers), puis changer l'option dans logger.conf, puis charger l'extension logger

    • type: énuméré

    • valeurs: none, gzip, zstd

    • valeur par défaut: none

  • logger.file.rotation_size_max

    • description: lorsque cette taille est atteinte, une rotation des fichiers est effectuée : les fichiers de log existants sont renommés (.1 devient .2, .2 devient .3, etc.) et le fichier courant est renommé avec l'extension .1 ; un nombre entier avec un suffixe est accepté : b = octets (par défaut si pas d'unité spécifiée), k = kilo-octets, m = méga-octets, g = giga-octets, t = téra-octets ; exemple : "2g" provoque une rotation si la taille du fichier est > 2 000 000 000 octets ; si défini à "0", aucune rotation n'est effectuée (taille de log illimitée) ; ATTENTION : avant de changer cette option, vous devriez d'abord définir le type de compression via l'option logger.file.rotation_compression_type

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "0"

  • logger.file.time_format

    • description: format de date/heure utilisé dans les fichiers log (voir man strftime pour le format de date/heure, des caractères de conversion supplémentaires sont supportés, voir la fonction util_strftimeval dans la Référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "%Y-%m-%d %H:%M:%S"

  • logger.look.backlog

    • description: nombre maximum de lignes à afficher du fichier de log lors de l'ouverture du tampon (0 = ne rien afficher)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 20

  • logger.look.backlog_conditions

    • description: conditions pour afficher l'historique (note : le contenu est évalué, voir /help eval) ; une valeur vide affiche l'historique sur tous les tampons ; par exemple pour afficher l'historique seulement sur les tampons privés : "${type} == private"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

7.7. Support souris

WeeChat supporte les clics et mouvements avec la souris. Cela fonctionne avec un terminal local, et à distance via une connexion ssh, avec ou sans screen/tmux.

Activer la souris

Pour activer la souris au démarrage :

/set weechat.look.mouse on

Pour activer la souris maintenant, appuyez sur Alt+m ou lancez la commande suivante :

/mouse enable

Il est possible de désactiver temporairement la souris, et associer ça à une touche. Par exemple la touche Alt+% pour désactiver la souris pendant 10 secondes :

/key bind meta-% /mouse toggle 10
Important
Lorsque la souris est activée dans WeeChat, tous les évènements souris sont capturés par WeeChat, donc les actions comme le copier/coller et les clics sur les URLs ne sont pas envoyées au terminal.
Utiliser la touche Shift permet d’envoyer directement les évènements au terminal, comme si la souris était désactivée (sous certains terminaux comme iTerm, vous devez utiliser Alt au lieu de Shift).
Note
Pour tout problème avec la souris, merci de consulter la FAQ WeeChat / Souris .

Associer des évènements souris à des commandes

De nombreux évènements souris sont déjà définis par WeeChat (voir les actions souris).

Vous pouvez modifier ou ajouter des associations avec la commande /key en utilisant le contexte "mouse" (pour la syntaxe voir la commande /key).

Un nom d’évènement consiste en un modificateur (facultatif), un bouton/roulette et un geste (facultatif). Les différents éléments sont séparés par -.

Liste des modificateurs (par ordre dans le nom de l’évènement) :

Modificateur Description

alt

Touche Alt

ctrl

Touche Ctrl

shift

Touche Shift (1)

Note
(1) Le modificateur shift peut rarement être utilisé dans WeeChat car beaucoup de terminaux utilisent ce modificateur pour attraper directement les évènements souris.

Plusieurs modificateurs peuvent être combinés, par exemple :

  • alt-ctrl

  • ctrl-shift

  • alt-ctrl-shift

Liste des boutons/roulette :

Bouton/roulette Description

button1

Clic sur le bouton gauche

button2

Clic sur le bouton droit

button3

Clic sur le bouton du milieu (souvent clic sur la roulette)

button4 …​ button11

Clic sur un bouton additionnel

wheelup

Roulette (haut)

wheeldown

Roulette (bas)

Liste des gestes (seulement pour les boutons, pas la roulette) :

Geste Distance

gesture-up

3 …​ 19

gesture-up-long

≥ 20

gesture-down

3 …​ 19

gesture-down-long

≥ 20

gesture-left

3 …​ 39

gesture-left-long

≥ 40

gesture-right

3 …​ 39

gesture-right-long

≥ 40

Liste des évènements incomplets (seulement pour les boutons, pratique pour les extensions/scripts) :

Évènement Description

event-down

Le bouton a été pressé mais pas encore relâché

event-drag

La souris a bougé avec le bouton pressé

Exemples d’évènements :

  • button1

  • ctrl-button1

  • button1-gesture-right

  • button1-event-down

  • button1-event-drag

  • alt-button2-gesture-down-long

  • wheelup

  • alt-ctrl-wheeldown

  • …​

Astuce
Lors de l’association d’une touche dans le contexte "mouse", il est possible d’adresser plusieurs évènements en utilisant * au début ou la fin du nom, par exemple button1-gesture-* qui correspond à n’importe quel geste effectué avec le bouton gauche.
Astuce
Vous pouvez trouver le nom de l’évènement avec la commande /input grab_mouse puis en faisant l’action avec la souris. Cela insérera le nom de l’évènement sur la ligne de commande.

7.8. Vérification orthographique

L’extension Spell permet de vérifier l’orthographe de la ligne de commande. Il est possible d’utiliser plusieurs langages par tampon.

La vérification de l’orthographe est désactivée par défaut et peut être activée/désactivée avec la touche Alt+s.

Dictionnaires

Avant d’utiliser la vérification de l’orthographe, les dictionnaires doivent être définis soit globalement, soit spécifiquement sur un tampon.

Plusieurs dictionnaires peuvent être utilisés en même temps : WeeChat vérifiera les mots dans tous les dictionnaires.

Par exemple pour utiliser l’anglais et le français :

/set spell.check.default_dict "en,fr"

Il est possible d’utiliser un dictionnaire différent sur un tampon spécifique, par exemple sur un canal allemand :

/spell setdict de

Vous pouvez aussi spécifier un dictionnaire pour un groupe de tampons, par exemple l’anglais pour tous les canaux du serveur IRC libera :

/set spell.dict.irc.libera en

Pour plus d’informations, voir la commande /spell.

Options du vérificateur d’orthographe

Les options du vérificateur d’orthographe peuvent être définies en ajoutant des options dans la section "option" de la configuration aspell.

Le nom de l’option est une option de configuration aspell. La liste des options peut être trouvée par la commande suivante sous le shell :

aspell config

Par exemple, pour activer l’option "ignore-case" :

/set spell.option.ignore-case "true"

Suggestions

Les suggestions sont affichées dans un objet de barre appelé "spell_suggest". Le nombre de suggestions est défini dans l’option spell.check.suggestions.

Pour activer les suggestions, vous devez modifier l’option spell.check.suggestions avec un entier ≥ 0 et ajouter l’objet de barre "spell_suggest" à une barre, par exemple status.

Exemple de suggestions avec un dictionnaire anglais (en) :

│[12:55] [6] [irc/libera] 3:#test(+n){4} [print,prone,prune]                      │
│[@Flashy] prinr █                                                                │
└─────────────────────────────────────────────────────────────────────────────────┘

Exemple de suggestions avec des dictionnaires anglais et français (en,fr) :

│[12:55] [6] [irc/libera] 3:#test(+n){4} [print,prone,prune/prime,primer,primé]   │
│[@Flashy] prinr █                                                                │
└─────────────────────────────────────────────────────────────────────────────────┘

Commandes

  • spell: configuration de l’extension spell

/spell  enable|disable|toggle
        listdict
        setdict -|<dict>[,<dict>...]
        deldict
        addword [<dict>] <mot>

  enable : activer le vérificateur d'orthographe
 disable : désactiver le vérificateur d'orthographe
  toggle : activer/désactiver le vérificateur d'orthographe
listdict : afficher les dictionnaires installés
 setdict : définir le dictionnaire pour le tampon courant (plusieurs dictionnaires peuvent être séparés par une virgule, la valeur spéciale "-" désactive la vérification orthographique sur le tampon courant)
 deldict : supprimer le dictionnaire utilisé sur le tampon courant
 addword : ajouter un mot dans le dictionnaire personnel

Les lignes d'entrée commençant par "/" ne sont pas vérifiées, sauf pour certaines commandes (voir /set spell.check.commands).

Pour activer le vérificateur d'orthographe sur tous les tampons, utilisez l'option "default_dict", par exemple :
  /set spell.check.default_dict "en"
  /spell enable

Pour afficher une liste des suggestions dans une barre, utilisez l'objet "spell_suggest".

La touche par défaut pour activer/désactiver le vérificateur d'orthographe est alt-s.

Options

Sections dans le fichier spell.conf :

Section Commande de contrôle Description

color

/set spell.color.*

Couleurs.

check

/set spell.check.*

Options pour contrôler la vérification orthographique.

dict

/spell setdict
/set spell.dict.*

Dictionnaires utilisés par tampon (les options peuvent être ajoutées/supprimées dans la section).

look

/set spell.look.*

Aspect/présentation.

option

/set spell.option.*

Options du vérificateur d’orthographe (les options peuvent être ajoutées/supprimées dans la section).

Options :

  • spell.check.commands

    • description: liste de commandes (séparées par des virgules) pour lesquelles la vérification orthographique est activée (la vérification est désactivée pour toutes les autres commandes)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"

  • spell.check.default_dict

    • description: dictionnaire par défaut (ou liste de dictionnaires séparés par une virgule) à utiliser quand le tampon courant n'a pas de dictionnaire défini (laissez blanc pour désactiver le vérificateur d'orthographe sur les tampons pour lesquels vous ne l'avez pas explicitement activé)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • spell.check.during_search

    • description: vérifier les mots pendant la recherche de texte dans le tampon

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • spell.check.enabled

    • description: activer le vérificateur d'orthographe pour la ligne de commande

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • spell.check.real_time

    • description: vérification orthographique des mots en temps réel (plus lent, désactivé par défaut : les mots sont vérifiés seulement s'il y a un délimiteur après)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • spell.check.suggestions

    • description: nombre de suggestions à afficher dans l'objet de barre "spell_suggest" pour chaque dictionnaire du tampon (-1 = désactiver les suggestions, 0 = afficher toutes les suggestions possibles dans toutes les langues)

    • type: entier

    • valeurs: -1 .. 2147483647

    • valeur par défaut: -1

  • spell.check.word_min_length

    • description: longueur minimum d'un mot pour que l'orthographe soit vérifiée (utilisez 0 pour vérifier tous les mots)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 2

  • spell.color.misspelled

    • description: couleur du texte pour les mots mal orthographiés (barre de saisie)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightred

  • spell.color.suggestion

    • description: couleur du texte pour la suggestion sur un mot mal orthographié dans l'objet de barre "spell_suggest"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • spell.color.suggestion_delimiter_dict

    • description: couleur du texte pour les séparateurs affichés entre deux dictionnaires dans l'objet de barre "spell_suggest"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • spell.color.suggestion_delimiter_word

    • description: couleur du texte pour les séparateurs affichés entre deux mots dans l'objet de barre "spell_suggest"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • spell.look.suggestion_delimiter_dict

    • description: séparateur affiché entre deux dictionnaires dans l'objet de barre "spell_suggest"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: " / "

  • spell.look.suggestion_delimiter_word

    • description: séparateur affiché entre deux mots dans l'objet de barre "spell_suggest"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ","

7.9. Barres

Une barre est une zone à côté de la discussion qui peut contenir tout type de texte.

Les options de barre sont définies avec les options weechat.bar.nom.optionnom et le nom de la barre et option l’option pour cette barre.

Liste des options de barre :

Option Valeurs Description

type

root, window

Une barre avec le type root est affichée exactement une fois à l’écran, en dehors de toutes les fenêtres. La barre par défaut buflist est de type root.
Une barre avec le type window est affichée dans chaque fenêtre, par exemple si vous découpez l’écran (avec /window splith ou /window splitv), vous aurez une barre dans chaque fenêtre. Les barres par défaut title, status, input et nicklist sont de type window.

position

top, bottom, left, right

Position de la barre : au dessus/en dessous de la discussion, sur la gauche/droite.

priority

entier ≥ 0

Priorité de la barre : elle est utilisée pour ordonner les barres à l’écran, quand plusieurs barres utilisent le même type et position.
Les barres sont affichées depuis le bord de l’écran vers le centre. Une priorité plus haute affichera la barre au début, donc près du bord.
Exemple : la barre input a une priorité de 1000, donc elle est affichée avant la barre status, qui a une priorité de 500.

size

entier ≥ 0

La taille de la barre : nombre de colonnes pour une position left/right, nombre de lignes pour une position top/bottom. Une taille de 0 signifie automatique, donc la taille sera calculée en fonction du contenu affiché dans la barre.

size_max

entier ≥ 0

La taille maximum pour la barre, 0 = pas de limite (cette option est utilisée seulement si size = 0).

color_bg

couleur

La couleur par défaut du fond de la barre.

color_fg

couleur

La couleur par défaut du texte dans la barre.

color_delim

couleur

La couleur des délimiteurs dans la barre.

hidden

on, off

Lorsque l’option est on, la barre est cachée.
Note : plutôt que de changer cette option, il est préférable d’utiliser la commande /bar, par exemple : /bar toggle nicklist (voir la commande /bar).

separator

on, off

Lorsque l’option est on, un séparateur (ligne) est affiché entre la barre et les autres barres (ou la discussion).

items

chaîne

Une liste d’objets (voir objets pour plus d’infos).

filling_left_right

horizontal, vertical, columns_horizontal, columns_vertical

Type de remplissage pour la barre lorsqu’elle a une position left ou right (voir remplissage pour plus d’infos).

filling_top_bottom

horizontal, vertical, columns_horizontal, columns_vertical

Type de remplissage pour la barre lorsqu’elle a une position top ou bottom (voir remplissage pour plus d’infos).

conditions

chaîne

Les conditions pour afficher la barre (voir conditions pour plus d’infos).

Objets

L’option items est une chaîne avec une liste d’objets de barre, séparés par une virgule (espace entre les objets à l’écran) ou un + (objets collés).

La liste des objets de barre est affichée avec la commande /bar listitems.

Avant ou après l’objet de barre, vous pouvez utiliser des caractères (qui ne sont pas alphanumériques, - ou _). Ils seront affichés avant/après l’objet de barre avec la couleur des délimiteurs définie dans la barre (option color_delim).

Exemple de barre avec les objets "[time],buffer_number+:+buffer_plugin+.+buffer_name,[buffer_last_number]" :

┌───────────────────────────────────────────────────────────────────────────┐
│[12:55] 3:irc/libera.#weechat [9]                                          │
└───────────────────────────────────────────────────────────────────────────┘
Objet d’espacement

Un objet appelé spacer peut être utilisé pour aligner les objets (gauche, centre, droite).

Lorsqu’au moins un objet spacer est utilisé dans une barre, la largeur totale de la barre est utilisée : les espacements sont automatiquement étendus avec la même taille (ou presque).
Lorsque la barre n’est pas assez large pour afficher tous les objets, les espacements ne sont pas affichés.

Note
L’objet de barre spacer ne peut être utilisé que dans les barres avec position top ou bottom, remplissage horizontal et taille 1.

Exemple de barre avec les objets "[time],spacer,buffer_number+:+buffer_plugin+.+buffer_name,spacer,[buffer_last_number]" :

┌───────────────────────────────────────────────────────────────────────────┐
│[12:55]                      3:irc/libera.#weechat                      [9]│
└───────────────────────────────────────────────────────────────────────────┘
Tampon forcé

Une syntaxe spéciale peut être utilisée pour forcer le tampon utilisé lors de l’affichage de l’objet de barre : "@tampon:objet" (où "tampon" est le nom complet du tampon et "objet" est le nom d’un objet de barre).

Ceci peut être pratique dans les barres "root", pour afficher un objet de barre pour un tampon qui n’est pas affiché dans la fenêtre courante (ou même pas affiché du tout).

Exemple : liste de pseudos de bitlbee dans une barre "root" (si la barre s’appelle bitlist et si le serveur bitlbee s’appelle bitlbee) :

/set weechat.bar.bitlist.items "@irc.bitlbee.&bitlbee:buffer_nicklist"
Objets de barre personnalisés

Des objets de barre personnalisés peuvent être ajoutés avec la commande /item, chaque nouvel objet ayant deux propriétés définies via des options de configuration :

  • conditions : conditions évaluées pour afficher l’objet de barre, par exemple pour restreindre l’objet de barre à certains tampons (si vide, l’objet de barre est affiché partout)

  • content : contenu évalué de l’objet de barre.

Dans chacune des options, les variables suivantes peuvent être utilisées :

  • window : pointeur vers la fenêtre où la barre est affichée (NULL pour une barre de type "root")

  • buffer : pointeur vers le tampon où la barre est affichée (tampon courant pour les barres de type "root").

Exemples de conditions :

Condition Description

${window}

Affiché seulement dans les barres de type "window"

${buffer.number} == 1

Affiché dans tous les tampons avec "number" = 1

${buffer.plugin.name} == irc

Affiché dans tous les tampons IRC

${type} == channel

Affiché dans tous les tampons où la variable locale type est channel (exemple : tous les canaux IRC)

${type} == private

Affiché dans tous les tampons où la variable locale type est private (exemple : tous les tampons privés IRC)

Note
Il n’y a pas de moyen intégré de rafraîchir les objets de barre personnalisés. Vous pouvez utiliser l’extension Trigger pour forcer un rafraîchissement, par exemple sur un ou plusieurs signaux reçus.

Pour plus d’informations et des exemples, voir la commande /item.

Remplissage

Il y a quatre types de remplissage :

  • horizontal : les objets sont affichés horizontalement, de gauche à droite. S’il y a des retours à la ligne dans les objets, un espace est utilisé pour séparer les lignes.

  • vertical : les objets sont affichés de haut en bas. S’il y a des retours à la ligne dans les objets, une nouvelle ligne est utilisée pour séparer les lignes.

  • columns_horizontal : les objets sont affichés en utilisant des colonnes, où le texte est aligné à gauche. Le premier objet est en haut à gauche, le second est sur la même ligne, sur la droite.

  • columns_vertical : les objets sont affichés en utilisant des colonnes, où le texte est aligné à gauche. Le premier objet est en haut à gauche, le second est sur la ligne en dessous.

Les barres par défaut title, status et input ont un remplissage horizontal, et la barre par défaut nicklist a un remplissage vertical.

Quelques exemples de remplissage pour la barre nicklist :

┌───────────────────────────────────────────────────────────────────────┐
│Welcome to #test, this is a test channel                               │
│12:54:15 peter | hey!                                         │@carl   │
│12:55:01  +Max | hello                                        │@jessika│
│                                                              │@maddy  │
│                                                              │%Diego  │
│                                                              │%Melody │
│                                                              │+Max    │
│                                                              │ celia  │
│                                                              │ Eva    │
│                                                              │ freddy │
│                                                              │ Harold^│
│                                                              │ henry4 │
│                                                              │ jimmy17│
│                                                              │ jodie ▼│
│[12:55] [6] [irc/libera] 3:#test(+n){24}                               │
│[@carl] █                                                              │
└───────────────────────────────────────────────────────────────────────┘
                                     filling_left_right = vertical ▲

┌───────────────────────────────────────────────────────────────────────┐
│Welcome to #test, this is a test channel                               │
│12:54:15 peter | hey!                                │@carl     lee    │
│12:55:01  +Max | hello                               │@jessika  louise │
│                                                     │@maddy    mario  │
│                                                     │%Diego    mark   │
│                                                     │%Melody   peter  │
│                                                     │+Max      Rachel │
│                                                     │ celia    richard│
│                                                     │ Eva      sheryl │
│                                                     │ freddy   Vince  │
│                                                     │ Harold^  warren │
│                                                     │ henry4   zack   │
│                                                     │ jimmy17         │
│                                                     │ jodie           │
│[12:55] [6] [irc/libera] 3:#test(+n){24}                               │
│[@carl] █                                                              │
└───────────────────────────────────────────────────────────────────────┘
                             filling_left_right = columns_vertical ▲

┌───────────────────────────────────────────────────────────────────────┐
│@carl    %Diego    celia    Harold^  jodie    mario    Rachel   Vince  │
│@jessika %Melody   Eva      henry4   lee      mark     richard  warren │
│@maddy   +Max      freddy   jimmy17  louise   peter    sheryl   zack   │
│───────────────────────────────────────────────────────────────────────│
│                                                                       │
        filling_top_bottom = columns_vertical ▲

┌───────────────────────────────────────────────────────────────────────┐
│@carl    @jessika @maddy   %Diego   %Melody  +Max      celia    Eva    │
│ freddy   Harold^  henry4   jimmy17  jodie    lee      louise   mario  │
│ mark     peter    Rachel   richard  sheryl   Vince    warren   zack   │
│───────────────────────────────────────────────────────────────────────│
│                                                                       │
      filling_top_bottom = columns_horizontal ▲

Conditions

L’option conditions est une chaîne qui est évaluée pour savoir si la barre doit être affichée ou non.

La chaîne peut être :

  • active : la fenêtre doit être active

  • inactive : la fenêtre doit être inactive

  • nicklist : le tampon affiché dans la fenêtre doit avoir une liste de pseudos

  • une expression : elle est évaluée comme booléen (voir la commande /eval)

Pour une expression, les variables suivantes sont disponibles :

  • ${active} : vrai si la fenêtre est active

  • ${inactive} : vrai si la fenêtre est inactive

  • ${nicklist} : vrai si le tampon affiché dans la fenêtre a une liste de pseudos

Les pointeurs suivants sont disponibles :

  • ${window} : la fenêtre où la condition est évaluée

  • ${buffer} : le tampon de la fenêtre où la condition est évaluée

Exemple pour afficher la liste de pseudos dans tous les tampons possédant une liste de pseudos, et seulement si la largeur du terminal est supérieure à 100 :

/set weechat.bar.nicklist.conditions "${nicklist} && ${info:term_width} > 100"

Même condition, mais afficher toujours la liste de pseudos sur le tampon &bitlbee (même si le terminal est petit) :

/set weechat.bar.nicklist.conditions "${nicklist} && (${info:term_width} > 100 || ${buffer.full_name} == irc.bitlbee.&bitlbee)"

7.10. Données sécurisées

Stockage

WeeChat peut chiffrer les mots de passe ou les données sensibles en utilisant des données sécurisées, stockées dans le fichier sec.conf.

Ce fichier de configuration est lu avant tout autre fichier, et les valeurs ici stockées peuvent être utilisées dans diverses options de WeeChat ou des extensions/scripts.

Vous pouvez définir une phrase secrète pour chiffrer les données dans le fichier sec.conf. Ce n’est pas obligatoire, mais fortement recommandé, sinon les données sont stockées sous forme de texte en clair dans le fichier.

/secure passphrase ceci est ma phrase secrète
Phrase secrète au démarrage

Lorsqu’une phrase secrète est définie, WeeChat vous demandera de la saisir lors du démarrage (mais pas sur /upgrade).

Si vous utilisez un gestionnaire de mots de passe, vous pouvez lancer un programme externe pour lire la phrase secrète au lieu d’avoir à l’entrer manuellement au démarrage de WeeChat.
Par exemple avec password-store (command pass) :

/set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase"

Le programme peut vous demander de déverrouiller votre clé GPG ou d’entrer une autre phrase secrète. WeeChat attendra la fin de la commande pour lire la phrase secrète sur la sortie standard (elle doit être sur la première ligne et sans caractère supplémentaire).
Si la sortie ne contient pas de phrase secrète ou si celle-ci est erronée, WeeChat vous demandera alors de la saisir.

Chiffrement

Le chiffrement des données se fait en 3 étapes :

  1. Dériver une clé de la phrase secrète (avec du salage en option).

  2. Calculer la somme de contrôle des données à chiffrer.

  3. Chiffrer la somme de contrôle + les données (la sortie est : sel + somme de contrôle et données chiffrées).

Note
Le mode de chiffrement par bloc est CFB.

Le résultat est stocké sous forme d’une chaîne hexadécimale dans le fichier sec.conf, par exemple :

[data]
__passphrase__ = on
libera = "53B1C86FCDA28FC122A95B0456ABD79B5AB74654F21C3D099A6CCA8173239EEA59533A1D83011251F96778AC3F5166A394"
Déchiffrement

Le déchiffrement des données se fait en 3 étapes :

  1. Dériver une clé en utilisant le sel et la phrase secrète.

  2. Déchiffrer la somme de contrôle et les données.

  3. Vérifier que la somme de contrôle déchiffrée correspond à la somme de contrôle des données.

Gérer les données sécurisées

Pour ajouter une donnée sécurisée, utilisez la commande /secure set, par exemple un mot de passe pour le serveur IRC libera :

/secure set libera motdepasse

Pour plus de confort, les données sécurisées peuvent être affichées dans un tampon dédié (touche Alt+v sur le tampon pour voir les valeurs), faites simplement :

/secure

Les données sécurisées peuvent être utilisées dans quelques options qui peuvent contenir des données sensibles comme un mot de passe, en utilisant ce format : "${sec.data.xxx}" où "xxx" est le nom de la donnée sécurisée (utilisé dans la commande /secure set xxx …​).
Pour une liste complète des options supportées, voir la commande /secure.

Pour utiliser le mot de passe libera, par exemple avec l’authentification SASL :

/set irc.server.libera.sasl_password "${sec.data.libera}"

7.11. Alias de commandes

L’extension Alias permet de définir des alias pour des commandes (WeeChat ou d’autres extensions).

Des alias sont créés par défaut, avec le nom en lettres majuscules (pour les différencier des commandes standard) ; les commandes ne sont pas sensibles à la casse dans WeeChat, donc par exemple /close lance l’alias /CLOSE.

Liste des alias par défaut :

Alias Commande Complétion

/aaway

/allserv /away

-

/anick

/allserv /nick

-

/beep

/print -beep

-

/bye

/quit

-

/c

/buffer clear

-

/cl

/buffer clear

-

/close

/buffer close

-

/chat

/dcc chat

-

/exit

/quit

-

/ig

/ignore

-

/j

/join

-

/k

/kick

-

/kb

/kickban

-

/leave

/part

-

/m

/msg

-

/mub

/unban *

-

/msgbuf

/command -buffer $1 * /input send $2-

%(buffers_plugins_names)

/n

/names

-

/q

/query

-

/redraw

/window refresh

-

/say

/msg *

-

/signoff

/quit

-

/t

/topic

-

/ub

/unban

-

/umode

/mode $nick

-

/v

/command core version

-

/w

/who

-

/wc

/window close

-

/wi

/whois

-

/wii

/whois $1 $1

-

/wm

/window merge

-

/ww

/whowas

-

Commandes

  • alias: lister, ajouter ou retirer des alias de commande

/alias  list [<nom>]
        add|addreplace <nom> [<commande>[;<commande>...]]
        addcompletion|addreplacecompletion <complétion> <nom> [<commande>[;<commande>...]]
        del <nom>|<masque>...
        rename <nom> <nouveau_nom>
        missing

                list : afficher les alias (sans paramètre, cette liste est affichée)
                 add : ajouter un alias
          addreplace : ajouter ou remplacer un alias existant
       addcompletion : ajouter un alias avec une complétion personnalisée
addreplacecompletion : ajouter ou remplacer un alias existant avec une complétion personnalisée
                 nom : nom de l'alias
          complétion : complétion pour l'alias : par défaut la complétion se fait avec la commande cible (vous pouvez utiliser "%%commande" pour utiliser la complétion d'une commande existante)
            commande : nom de la commande avec les paramètres (plusieurs commandes peuvent être séparées par des points-virgules)
                 del : supprimer des alias
              masque : nom où le caractère joker "*" est autorisé
              rename : renommer un alias
             missing : ajouter les alias manquants (en utilisant les alias par défaut)

Dans la commande, les variables spéciales sont remplacées :
  $n : paramètre "n" (entre 1 et 9)
  $-m : paramètres de 1 à "m"
  $n- : paramètres de "n" au dernier
  $n-m : paramètres de "n" à "m"
  $* : tous les paramètres
  $& : tous les paramètres, avec " remplacés par \"
  $~ : le dernier paramètre
  $var : où "var" est une variable locale du tampon (voir /buffer listvar), exemples : $nick, $channel, $server, $plugin, $name

Exemples :
  /alias add split /window splith
  /alias add hello /allchan -exclude=#weechat hello
  /alias rename hello Hello
  /alias addcompletion %%sajoin forcejoin /quote forcejoin

Options

Sections dans le fichier alias.conf :

Section Commande de contrôle Description

cmd

/alias
/set alias.cmd.*

Commandes pour les alias.

completion

/alias
/set alias.completion.*

Complétions pour les alias.

7.12. Commandes et options

Commandes WeeChat

  • allbuf: exécuter une commande sur tous les tampons

/allbuf  <commande>

commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par "/")

Exemple :
  définir le marqueur de lecture sur tous les tampons :
    /allbuf /buffer set unread
  • away: définir ou supprimer le statut d’absence

/away  [-all] [<message>]

    -all: définir ou supprimer le statut d'absence sur tous les serveurs connectés
message : message pour l'absence (si pas de message donné, le statut d'absence est supprimé)
  • bar: gestion des barres

/bar  list|listfull|listitems
      add|addreplace <nom> <type>[,<conditions>] <position> <taille> <séparateur> <objet1>[,<objet2>...]
      default [input|title|status|nicklist]
      rename <nom> <nouveau_nom>
      del <nom>|<masque>...
      set <nom> <option> <valeur>
      hide|show|toggle <nom>
      scroll <nom> <fenêtre> <valeur_scroll>

         list : lister toutes les barres
     listfull : lister toutes les barres (verbeux)
    listitems : lister tous les objets de barre
          add : ajouter une nouvelle barre
   addreplace : ajouter ou remplacer une barre existante
          nom : nom de la barre (doit être unique)
         type : type de barre :
                root : en dehors des fenêtres
                window : dans les fenêtres, avec condition(s) optionnelle(s) (voir ci-dessous)
   conditions : les conditions pour afficher la barre (sans condition, la barre est toujours affichée) :
                active : sur la fenêtre active
                inactive : sur les fenêtres inactives
                nicklist : sur les fenêtres avec liste de pseudos
                autre condition : voir /help weechat.bar.xxx.conditions et /help eval
     position : bottom (bas), top (haut), left (gauche) ou right (droite)
       taille : taille de la barre (en caractères)
   séparateur : 1 pour utiliser un séparateur (ligne), 0 ou rien signifie sans séparateur
   objet1,... : objets pour cette barre (les objets peuvent être séparés par une virgule (espace entre les objets) ou "+" (objets collés))
      default : créer une barre par défaut (toutes les barres par défaut si aucun nom de barre n'est donné)
       rename : renommer une barre
          del : supprimer des barres
       masque : nom où le caractère joker "*" est autorisé
          set : changer la valeur d'une propriété de la barre
       option : option à modifier (pour la liste des options, voir /set weechat.bar.<nombarre>.*)
       valeur : nouvelle valeur pour l'option
         hide : cacher une barre
         show : montrer une barre cachée
       toggle : cacher/montrer une barre
       scroll : faire défiler une barre
      fenêtre : numéro de fenêtre ("*" pour la fenêtre courante ou une barre de type root)
valeur_scroll : valeur pour le défilement : "x" ou "y" (optionnel), suivi par "+", "-", "b" (début) ou "e" (fin), valeur (pour +/-), et un "%" optionnel (pour faire défiler par % de la largeur/hauteur, sinon la valeur est un nombre de caractères)

Exemples :
  créer une barre avec l'heure, numéro + nom de tampon, et la complétion :
    /bar add mybar root bottom 1 0 [time],buffer_number+:+buffer_name,completion
  faire défiler la liste des pseudos de 10 lignes vers le bas sur le tampon courant :
    /bar scroll nicklist * y+10
  faire défiler la liste des pseudos à la fin sur le tampon courant :
    /bar scroll nicklist * ye
  • buffer: gestion des tampons

/buffer  list
         add [-free] [-switch] <nom>
         clear [<id>|<numéro>|<nom>|-merged|-all [<id>|<numéro>|<nom>...]]
         move <numéro>|-|+
         swap <id1>|<numéro1>|<nom1> [<id2>|<numéro2>|<nom2>]
         cycle <id>|<numéro>|<nom>...
         merge <id>|<numéro>|<nom>
         unmerge [<id>|<numéro>|-all]
         hide [<id>|<numéro>|<nom>|-all [<id>|<numéro>|<nom>...]]
         unhide [<id>|<numéro>|<nom>|-all [<id>|<numéro>|<nom>...]]
         switch [-previous]
         zoom
         renumber <numéro1> [<numéro2> [<départ>]]
         close [<n1>[-<n2>]|<nom>...]
         notify [<niveau>]
         listvar [<id>|<numéro>|<nom>]
         setvar <nom> [<valeur>]
         delvar <nom>
         set <propriété> [<valeur>]
         setauto <propriété> [<valeur>]
         get <propriété>
         jump smart|last_displayed|prev_visited|next_visited
         <id>|<numéro>|-|+|<nom>

    list : lister les tampons ouverts (sans paramètre, cette liste est affichée)
     add : ajouter un nouveau tampon (il peut être fermé avec "/buffer close" ou l'entrée "q")
   clear : effacer le contenu du tampon (un numéro pour un tampon, "-merged" pour les tampons mélangés, "-all" pour tous les tampons, ou rien pour le tampon courant)
    move : déplacer le tampon dans la liste (peut être relatif, par exemple -1) ; "-" = déplacer vers le premier numéro de tampon, "+" = déplacer vers le dernier numéro de tampon + 1
    swap : échanger deux tampons (échanger avec le tampon courant si un seul numéro/nom donné)
   cycle : sauter en boucle entre une liste de plusieurs tampons
   merge : mélanger le tampon courant avec un autre tampon (la zone de discussion sera un mélange des deux tampons) ; par défaut ctrl-x bascule entre les tampons mélangés
 unmerge : détacher le tampon courant des autres tampons portant le même numéro
    hide : masquer le tampon
  unhide : démasquer le tampon
  switch : basculer vers le tampon mélangé suivant (ou vers le tampon précédent avec "-previous")
    zoom : zoomer sur le tampon mélangé
renumber : renuméroter des tampons (fonctionne seulement si l'option weechat.look.buffer_auto_renumber est désactivée)
   close : fermer le tampon (le numéro/intervalle ou nom est optionnel)
  notify : afficher ou définir le niveau de notification pour le tampon courant : ce niveau détermine si le tampon doit être ajouté à la hotlist ou pas :
           none : jamais
           highlight : pour les highlights seulement
           message : pour les messages d'utilisateurs + highlights
           all : pour tous les messages
           reset : réinitialiser à la valeur par défaut (all)
 listvar : afficher la liste des variables locales d'un tampon
  setvar : modifier une variable locale du tampon courant
  delvar : supprimer une variable locale du tampon courant
     set : modifier une propriété du tampon courant
 setauto : comme "set" et définit également l'option "weechat.buffer.<nom>.<propriété>" pour que la propriété soit sauvée dans la configuration et appliquée à chaque fois que le tampon est ouvert
     get : afficher une propriété du tampon courant
    jump : sauter vers un autre tampon :
           smart : prochain tampon avec de l'activité
           last_displayed : dernier tampon affiché (avant le dernier saut vers un tampon)
           prev_visited : tampon visité précédemment
           next_visited : tampon visité après
      id : sauter au tampon qui a cet identifiant
  numéro : sauter au tampon qui a ce numéro, préfixe possible :
           "+" : saut relatif, ajoute le numéro au courant
           "-" : saut relatif, soustrait le numéro au courant
           "*" : saut au numéro en utilisant l'option "jump_current_to_previous_buffer"
       - : sauter au premier numéro de tampon
       + : sauter au dernier numéro de tampon
     nom : sauter au tampon par nom (partiel) ; si le nom commence par "(?i)", la recherche est insensible à la casse (par exemple "(?i)upper" trouvera le tampon "irc.libera.#UPPERCASE)

Exemples :
  /buffer move 5
  /buffer swap 1 3
  /buffer swap #weechat
  /buffer cycle #chan1 #chan2 #chan3
  /buffer merge 1
  /buffer merge #weechat
  /buffer close 5-7
  /buffer #weechat
  /buffer +1
  /buffer +
  • color: définir des alias de couleurs et afficher la palette des couleurs

/color  alias <couleur> <nom>
        unalias <couleur>
        reset
        term2rgb <color>
        rgb2term <rgb> [<limit>]
        -o

   alias : ajouter un alias pour une couleur
 unalias : supprimer un alias
 couleur : numéro de couleur (supérieur ou égal à 0, le max dépend du terminal, généralement 63 ou 255)
     nom : nom d'alias pour la couleur (par exemple : "orange")
   reset : réinitialiser toutes les paires de couleurs (requis quand il n'y a plus de paires de couleurs disponibles si la réinitialisation automatique est désactivée, voir l'option "weechat.look.color_pairs_auto_reset")
term2rgb : convertir une couleur du terminal (0-255) en couleur RGB
rgb2term : convertir une couleur RGB en couleur du terminal (0-255)
  limite : nombre de couleurs à utiliser dans la table du terminal (en démarrant de 0) ; par défaut 256
      -o : envoyer les infos terminal/couleurs sur le tampon courant comme entrée

Sans paramètre, cette commande affiche les couleurs dans un nouveau tampon.

Exemples :
  /color alias 214 orange
  /color unalias 214
  • command: lancer explicitement une commande WeeChat ou d’une extension

/command  [-buffer <nom>] <extension> <commande>
          -s <commande>[;<commande>...]

  -buffer : exécuter la commande sur ce tampon
extension : exécuter la commande de cette extension ; "core" pour une commande WeeChat, "*" pour une extension automatique (cela dépend sur quel tampon est exécutée la commande)
 commande : commande à exécuter (un "/" est automatiquement ajouté s'il n'est pas trouvé au début de la commande)
       -s : exécuter une ou plusieurs commandes séparées par des points-virgules (le point-virgule peut être échappé avec "\;")
  • cursor: mouvement libre du curseur sur l’écran pour exécuter des actions sur des zones spécifiques de l’écran

/cursor  go chat|<barre> [top_left|top_right|bottom_left|bottom_right]
         go <x>,<y>
         move up|down|left|right|top_left|top_right|bottom_left|bottom_right|edge_top|edge_bottom|edge_left|edge_right|area_up|area_down|area_left|area_right
         stop

  go : déplacer le curseur vers la zone de discussion ("chat"), une barre (en utilisant son nom) ou les coordonnées "x,y"
move : déplacer le curseur dans une direction
stop : arrêter le mode curseur

Sans paramètre, cette commande active/désactive le mode curseur.

Lorsque la souris est activée (voir /help mouse), par défaut un clic du milieu démarre le mode curseur à ce point.

Voir le chapitre sur les raccourcis clavier dans le Guide utilisateur pour une liste des touches qui peuvent être utilisées dans le mode curseur.

Exemples :
  /cursor go chat bottom_left
  /cursor go nicklist
  /cursor go 10,5
  • debug: fonctions de debug

/debug  list
        set <extension> <niveau>
        dump [<extension>]
        hooks [<masque_extension> [<type_hook>...]]
        buffer|certs|color|dirs|infolists|libs|memory|tags|term|url|windows
        cllbacks <durée>[<unité>]
        mouse|cursor [verbose]
        hdata [free]
        time <commande>
        unicode <chaîne>

            list : lister les extensions avec leur niveau de debug
             set : définir le niveau de debug pour l'extension
       extension : nom de l'extension ("core" pour le cœur de WeeChat)
          niveau : niveau de debug pour l'extension (0 = désactiver le debug)
            dump : afficher les variables en mémoire dans le fichier de log WeeChat (les mêmes messages sont affichés lorsque WeeChat plante)
           hooks : afficher des infos sur les hooks (avec une extension : afficher les infos détaillées sur les hooks créés par l'extension)
masque_extension : masque d'extension, "*" pour toutes les extensions
       type_hook : type de hook
          buffer : afficher le contenu du tampon en valeurs hexadécimales dans le fichier de log WeeChat
       callbacks : écrire les fonctions de rappel des hooks et objet de barre qui durent plus longtemps que la "durée" dans le fichier de log WeeChat (0 = désactiver), où l'unité optionnelle est l'une de celles-ci :
                   us : microsecondes (par défaut)
                   ms : millisecondes
                   s : secondes
                   m : minutes
                   h : heures
           certs : afficher le nombre de certificats des autorités de certification chargés
           color : afficher des infos sur les paires de couleur courantes
          cursor : activer/désactiver le debug pour le mode curseur
            dirs : afficher les répertoires
           hdata : afficher des infos sur les hdata (avec free : supprimer tous les hdata en mémoire)
       infolists : afficher des infos sur les infolists
             key : activer le debug pour le clavier et la souris : afficher les codes bruts, le nom étendu et la commande associée ("q" pour quitter ce mode)
            libs : afficher des infos sur les bibliothèques externes utilisées
          memory : afficher des infos sur l'utilisation de la mémoire
           mouse : activer/désactiver le debug pour la souris
            tags : afficher les étiquettes pour les lignes
            term : afficher des infos sur le terminal
             url : activer/désactiver le debug pour les appels à hook_url (afficher la table de hachage en sortie)
         windows : afficher l'arbre des fenêtres
            time : mesurer le temps pour exécuter une commande ou pour envoyer du texte au tampon courant
         unicode : afficher des informations sur la chaîne et les caractères unicode (évaluée, voir /help eval)

Exemples :
  /debug set irc 1
  /debug mouse verbose
  /debug time /filter toggle
  /debug hooks * process connect url
  /debug unicode ${chars:${\u26C0}-${\u26CF}}
  • eval: évaluer une expression

/eval  [-n|-s] [-d [-d]] <expression>
       [-n] [-d] -c <expression1> <opérateur> <expression2>

        -n : afficher le résultat sans envoyer au tampon (mode debug)
        -s : découper l'expression avant de l'évaluer (plusieurs commandes peuvent être séparées par des points-virgules)
        -d : afficher la sortie de debug après l'évaluation (avec deux -d : mode debug plus verbeux)
        -c : évaluer comme une condition : utiliser les opérateurs et les parenthèses, retourner une valeur booléenne ("0" ou "1")
expression : expression à évaluer, les variables avec le format ${variable} sont remplacées (voir ci-dessous)
 opérateur : un opérateur logique ou de comparaison (voir ci-dessous)

Une expression est considérée comme "vraie" si elle est non NULL, non vide, et différente de "0".
La comparaison est faite en utilisant des nombres à virgule si les deux expressions sont des nombres valides, avec l'un de ces formats : entier (exemples : 5, -7), nombre à virgule (exemples : 5.2, -7.5, 2.83e-2), nombre hexadécimal (exemples : 0xA3, -0xA3).
Pour forcer une comparaison de chaînes, vous pouvez ajouter des guillemets autour de chaque expression, par exemple : 50 > 100 == 0 et "50" > "100" == 1

Des variables sont remplacées dans l'expression, en utilisant le format ${variable}, qui peut être, par ordre de priorité :
  - ${raw_hl:chaîne} : la chaîne elle-même sans évaluation mais avec mise en valeur de la syntaxe
  - ${raw:chaîne} : la chaîne elle-même sans évaluation
  - ${hl:chaîne} : la chaîne avec mise en valeur de la syntaxe
  - ${nom} : la variable définie par l'utilisateur
  - ${weechat_config_dir} : le répertoire de la configuration WeeChat
  - ${weechat_data_dir} : le répertoire des données WeeChat
  - ${weechat_state_dir} : le répertoire d'état ("state") de WeeChat
  - ${weechat_cache_dir} : le répertoire du cache WeeChat
  - ${weechat_runtime_dir} : le répertoire de "runtime" WeeChat
  - ${eval:chaîne} : la chaîne évaluée
  - ${eval_cond:chaîne} : la condition évaluée
  - ${esc:chaîne} ou ${\chaîne} : la chaîne avec des caractères échappés
  - ${chars:intervalle} : la chaîne avec un intervalle de caractères, "intervalle" est parmi : "digit", "xdigit", "lower", "upper", "alpha", "alnum" ou "c1-c2" ("c1" et "c2" sont des codes de caractères avec c1 ≤ c2)
  - ${lower:chaîne} : la chaîne convertie en minuscules
  - ${upper:chaîne} : la chaîne convertie en majuscules
  - ${hide:caractère,chaîne} : la chaîne avec des caractères cachés
  - ${cut:max,suffixe,chaîne} : la chaîne avec max caractères (en excluant le suffixe)
  - ${cut:+max,suffixe,chaîne} : la chaîne avec max caractères (en incluant le suffixe)
  - ${cutscr:max,suffixe,chaîne} : la chaîne avec max caractères affichés à l'écran (en excluant le suffixe)
  - ${cutscr:+max,suffixe,chaîne} : la chaîne avec max caractères affichés à l'écran (en incluant le suffixe)
  - ${rev:chaîne} : la chaîne inversée
  - ${revscr:chaîne} : la chaîne inversée pour affichage (les codes couleur ne sont pas inversés)
  - ${repeat:nombre,chaîne} : la chaîne répétée
  - ${length:chaîne} : la longueur de la chaîne (nombre de caractères UTF-8)
  - ${lengthscr:chaîne} : la longueur de la chaîne à l'écran (somme de la largeur de chaque caractère UTF-8 affiché à l'écran, les codes couleur sont ignorés)
  - ${split:N,séparateurs,drapeaux,chaîne} : élément numéro N de la chaîne découpée (N est un entier ≥ 1 ou ≤ -1, si négatif, le numéro de l'élément est calculé depuis le dernier)
  - ${split:random,séparateurs,drapeaux,chaîne} : élément au hasard de la chaîne découpée
  - ${split:count,séparateurs,drapeaux,chaîne} : nombre d'éléments de la chaîne découpée
  - ${split_shell:N,chaîne} : élément numéro N des paramètres shell découpés (N est un entier ≥ 1 ou ≤ -1, si négatif, le numéro de l'élément est calculé depuis le dernier)
  - ${split_shell:random,chaîne} : élément au hasard des paramètres shell découpés
  - ${split_shell:count,chaîne} : nombre d'éléments des paramètres shell découpés
  - ${color:nom} : la couleur (voir la "Référence API extension", fonction "color")
  - ${modifier:nom,données,chaîne} : le modificateur
  - ${info:nom,paramètres} : l'info (les paramètres sont optionnels)
  - ${base_encode:base,chaîne} : la chaîne encodée en base : 16, 32, 64 ou 64url
  - ${base_decode:base,chaîne} : la chaîne décodée de base : 16, 32, 64 ou 64url
  - ${date} ou ${date:format} : la date/heure courante
  - ${env:NOM} : valeur de la variable d'environnement
  - ${if:condition?valeur_si_vraie:valeur_si_fausse} : le résultat de l'opérateur ternaire
  - ${calc:expression} : le résultat de l'expression avec des parenthèses et opérateurs (+, -, *, /, //, %, **)
  - ${random:min,max} : un nombre aléatoire compris entre "min" et "max" (inclus)
  - ${translate:chaîne} : la chaîne traduite
  - ${define:nom,valeur} : déclaration d'une variable utilisateur (retourne une chaîne vide)
  - ${hdata_count:name[list]} : nombre d'éléments dans le hdata avec la liste
  - ${hdata_count:name[ptr]} : nombre d'éléments dans le hdata avec le pointeur
  - ${sec.data.xxx} : la valeur de la donnée sécurisée "xxx"
  - ${fichier.section.option} : la valeur de l'option de configuration
  - ${nom} : la variable locale du tampon
  - le nom/variable hdata (la valeur est automatiquement convertie en chaîne), par défaut "window" et "buffer" pointent vers la fenêtre et le tampon courant.

Le format pour hdata peut être l'un des suivants :
  - ${hdata.var1.var2...} : démarrer avec un hdata (le pointeur doit être connu), et demander des variables, l'une après l'autre (d'autres hdata peuvent être suivis)
  - ${hdata[list].var1.var2...} : démarrer avec un hdata en utilisant une liste/pointeur/nom de pointeur, par exemple :
    - ${buffer[gui_buffers].full_name} : nom complet du premier tampon dans la liste chaîne des tampons
    - ${plugin[weechat_plugins].name} : nom de la première extension dans la liste chaîne des extensions
  - ${hdata[pointer].var1.var2...} : démarrer avec un hdata en utilisant un pointeur, par exemple :
    - ${buffer[0x1234abcd].full_name} : nom complet du tampon avec ce pointeur (peut être utilisé dans les triggers)
    - ${buffer[my_pointer].full_name} : nom complet du tampon en utilisant ce nom de pointeur (peut être utilisé dans les triggers)
  - ${hdata[pointer].var1.method()} : lorsque var1 est une table de hachage, les méthodes peuvent être appelées : "keys()", "values()", "keys_sorted()", "keys_values()" et "keys_values_sorted()"
Pour le nom du hdata et des variables, voir la "Référence API extension", fonction "weechat_hdata_get".

Opérateurs logiques (par ordre de priorité) :
  &&   "et" booléen
  ||   "ou" booléen

Opérateurs de comparaison (par ordre de priorité) :
  =~   correspond à l'expression régulière POSIX étendue
  !~   ne correspond PAS à l'expression régulière POSIX étendue
  ==*  correspond au masque, sensible à la casse (le caractère joker "*" est autorisé)
  !!*  ne correspond PAS au masque, sensible à la casse (le caractère joker "*" est autorisé)
  =*   correspond au masque, insensible à la casse (le caractère joker "*" est autorisé)
  !*   ne correspond PAS au masque, insensible à la casse (le caractère joker "*" est autorisé)
  ==-  est inclus, sensible à la casse
  !!-  n'est PAS inclus, sensible à la casse
  =-   est inclus, insensible à la casse
  !-   n'est PAS inclus, insensible à la casse
  ==   égal
  !=   non égal
  <=   inférieur ou égal
  <    inférieur
  >=   supérieur ou égal
  >    supérieur

Exemples (chaînes simples) :
  /eval -n ${raw:${info:version}}                  ==> ${info:version}
  /eval -n ${eval_cond:${window.win_width}>100}    ==> 1
  /eval -n ${info:version}                         ==> 4.5.0-dev
  /eval -n ${env:HOME}                             ==> /home/user
  /eval -n ${weechat.look.scroll_amount}           ==> 3
  /eval -n ${sec.data.password}                    ==> secret
  /eval -n ${window}                               ==> 0x2549aa0
  /eval -n ${window.buffer}                        ==> 0x2549320
  /eval -n ${window.buffer.full_name}              ==> core.weechat
  /eval -n ${window.buffer.number}                 ==> 1
  /eval -n ${buffer.local_variables.keys_values()} ==> plugin:core,name:weechat
  /eval -n ${buffer.local_variables.plugin}        ==> core
  /eval -n ${hdata_count:buffer[gui_buffers]}      ==> 15
  /eval -n ${\t}                                   ==> <tab>
  /eval -n ${chars:digit}                          ==> 0123456789
  /eval -n ${chars:J-T}                            ==> JKLMNOPQRST
  /eval -n ${lower:TEST}                           ==> test
  /eval -n ${upper:test}                           ==> TEST
  /eval -n ${hide:-,${relay.network.password}}     ==> --------
  /eval -n ${cut:3,+,test}                         ==> tes+
  /eval -n ${cut:+3,+,test}                        ==> te+
  /eval -n ${date:%H:%M:%S}                        ==> 07:46:40
  /eval -n ${if:${info:term_width}>80?big:small}   ==> big
  /eval -n ${rev:Hello}                            ==> olleH
  /eval -n ${repeat:5,-}                           ==> -----
  /eval -n ${length:test}                          ==> 4
  /eval -n ${split:1,,,abc,def,ghi}                ==> abc
  /eval -n ${split:-1,,,abc,def,ghi}               ==> ghi
  /eval -n ${split:count,,,abc,def,ghi}            ==> 3
  /eval -n ${split:random,,,abc,def,ghi}           ==> def
  /eval -n ${split_shell:1,"arg 1" arg2}           ==> arg 1
  /eval -n ${split_shell:-1,"arg 1" arg2}          ==> arg2
  /eval -n ${split_shell:count,"arg 1" arg2}       ==> 2
  /eval -n ${split_shell:random,"arg 1" arg2}      ==> arg2
  /eval -n ${calc:(5+2)*3}                         ==> 21
  /eval -n ${random:0,10}                          ==> 3
  /eval -n ${base_encode:64,test}                  ==> dGVzdA==
  /eval -n ${base_decode:64,dGVzdA==}              ==> test
  /eval -n ${define:len,${calc:5+3}}${len}x${len}  ==> 8x8

Exemples (conditions) :
  /eval -n -c ${window.buffer.number} > 2 ==> 0
  /eval -n -c ${window.win_width} > 100   ==> 1
  /eval -n -c (8 > 12) || (5 > 2)         ==> 1
  /eval -n -c (8 > 12) && (5 > 2)         ==> 0
  /eval -n -c abcd =~ ^ABC                ==> 1
  /eval -n -c abcd =~ (?-i)^ABC           ==> 0
  /eval -n -c abcd =~ (?-i)^abc           ==> 1
  /eval -n -c abcd !~ abc                 ==> 0
  /eval -n -c abcd =* a*d                 ==> 1
  /eval -n -c abcd =- bc                  ==> 1
  • filter: filtrer les messages dans les tampons, pour les cacher/afficher selon des étiquettes ou expressions régulières

/filter  list
         enable|disable|toggle [<nom>|<masque>|@...]
         add|addreplace <nom> <tampon>[,<tampon>...] <étiquettes> <regex>
         rename <nom> <nouveau_nom>
         recreate <nom>|<masque>
         del <nom>|<masque>...

      list : lister tous les filtres
    enable : activer les filtres (par défaut les filtres sont activés)
   disable : désactiver les filtres
    toggle : activer/désactiver les filtres
    masque : nom où le caractère joker "*" est accepté ("@" = activer/désactiver tous les filtres sur le tampon courant)
       add : ajouter un filtre
addreplace : ajouter ou remplacer un filtre existant
       nom : nom de filtre
    rename : renommer un filtre
  recreate : définir la ligne de commande utilisée pour modifier le filtre
       del : supprimer des filtres
    tampon : liste des tampons, séparés par des virgules, où le filtre est actif :
             - il s'agit du nom complet incluant l'extension (exemple : "irc.libera.#weechat" ou "irc.server.libera")
             - "*" signifie tous les tampons
             - un nom commençant par "!" est exclu
             - le caractère joker "*" est autorisé
étiquettes : liste d'étiquettes, séparées par des virgules (par exemple : "irc_join,irc_part,irc_quit") :
             - "et" logique : "+" entre les étiquettes (par exemple : "nick_toto+irc_action")
             - le caractère joker "*" est autorisé
             - si l'étiquette commence par "!", alors elle est exclue et ne doit PAS être dans le message
     regex : expression régulière POSIX étendue à rechercher dans la ligne :
             - "\t" pour séparer le préfixe du message, les caractères spéciaux comme "|" doivent être échappés : "\|"
             - si l'expression régulière commence par "!" alors le résultat est inversé (utiliser "\!" pour démarrer par "!")
             - deux expressions régulières sont créées : une pour le préfixe et une pour le message
             - les expressions régulières sont insensibles à la casse, elles peuvent commencer par "(?-i)" pour devenir sensibles à la casse

La touche par défaut alt+"=" active/désactive le filtrage globalement et alt+"-" active/désactive le filtrage sur le tampon courant.

Les étiquettes les plus couramment utilisées : no_filter, no_highlight, no_log, log0..log9 (niveau de log), notify_none, notify_message, notify_private, notify_highlight, self_msg, nick_xxx (xxx est le pseudo dans le message), prefix_nick_ccc (ccc est la couleur du pseudo), host_xxx (xxx est le nom d'utilisateur + hôte dans le message), irc_xxx (xxx est un nom de commande ou un nombre, voir /server raw ou /debug tags), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
Pour voir les étiquettes des lignes affichées : /debug tags

Exemples :
  utiliser le filtre intelligent IRC sur tous les tampons :
    /filter add irc_smart * irc_smart_filter *
  utiliser le filtre intelligent IRC sur tous les tampons sauf ceux avec "#weechat" dans le nom :
    /filter add irc_smart *,!*#weechat* irc_smart_filter *
  filtrer tous les messages IRC join/part/quit :
    /filter add joinquit * irc_join,irc_part,irc_quit *
  filtrer les pseudos afficher en rejoignant les canaux ou avec /names :
    /filter add nicks * irc_366 *
  filtrer le pseudo "toto" sur le canal IRC #weechat :
    /filter add toto irc.libera.#weechat nick_toto *
  filtrer les messages IRC join/action du pseudo "toto" :
    /filter add toto * nick_toto+irc_join,nick_toto+irc_action *
  filtrer les lignes contenant "weechat sucks" sur le canal IRC #weechat :
    /filter add sucks irc.libera.#weechat * weechat sucks
  filtrer les lignes qui sont strictement égales à "WeeChat sucks" sur tous les tampons :
    /filter add sucks2 * * (?-i)^WeeChat sucks$
  • help: afficher l’aide sur les commandes et les options

/help  -list|-listfull [<extension>...]
       <commande>
       <option>

    -list : lister les commandes, par extension (sans paramètre, cette liste est affichée)
-listfull : lister les commandes avec description, par extension
extension : lister les commandes de cette extension
 commande : un nom de commande
   option : un nom d'option (utilisez /set pour voir la liste)
  • history: afficher l’historique des commandes du tampon

/history  clear
          <valeur>

 clear : effacer l'historique
valeur : nombre d'entrées dans l'historique à afficher
  • hotlist: gestion de la hotlist

/hotlist  add [low|message|private|highlight]
          clear [<niveau>]
          remove
          restore [-all]

    add : ajouter le tampon courant dans la hotlist (niveau par défaut : "low", les conditions définies dans l'option weechat.look.hotlist_add_conditions ne sont PAS vérifiées)
  clear : effacer la hotlist
 niveau : "lowest" pour effacer seulement le plus petit niveau dans la hotlist, "highest" pour effacer seulement le niveau le plus haut dans la hotlist, ou un masque de niveaux : entier qui est une combinaison de 1=join/part, 2=message, 4=privé, 8=highlight
 remove : supprimer le tampon courant de la hotlist
restore : restaurer la dernière hotlist supprimée dans le tampon courant (ou tous les tampons avec "-all")
  • input: fonctions pour la ligne de commande

/input  <action> [<paramètres>]

    action : une action parmi celles-ci :
             return : simuler la touche "entrée"
             split_return : découper la ligne de commande sur les caractères de retour chariot puis simuler la touche "entrée" pour chaque ligne
             complete_next : compléter le mot avec la complétion suivante
             complete_previous : compléter le mot avec la complétion précédente
             search_text_here : chercher du texte dans le tampon à la position courante
             search_text : chercher du texte dans le tampon
             search_history : chercher du texte dans l'historique de la ligne de commande
             search_switch_case : basculer la casse exacte pour la recherche
             search_switch_regex : basculer le type de recherche : chaîne/expression régulière
             search_switch_where : basculer la recherche dans les messages/préfixes
             search_previous : chercher la ligne précédente
             search_next : chercher la ligne suivante
             search_stop_here : arrêter la recherche à la position courante
             search_stop : arrêter la recherche
             delete_previous_char : effacer le caractère précédent
             delete_next_char : effacer le caractère suivant
             delete_previous_word : effacer le mot précédent
             delete_previous_word_whitespace : effacer le mot précédent (jusqu'à un espace)
             delete_next_word : effacer le mot suivant
             delete_beginning_of_line : effacer du début de la ligne jusqu'au curseur
             delete_beginning_of_input : effacer du début de la ligne de commande jusqu'au curseur
             delete_end_of_line : effacer du curseur jusqu'à la fin de la ligne
             delete_end_of_input : effacer du curseur jusqu'à la fin de la ligne de commande
             delete_line : effacer la ligne courante
             delete_input : effacer la ligne de commande entière
             clipboard_paste : coller depuis le presse-papiers interne
             transpose_chars : inverser deux caractères
             undo : défaire la dernière action de la ligne de commande
             redo : refaire la dernière action de la ligne de commande
             move_beginning_of_line : déplacer le curseur au début de la ligne
             move_beginning_of_input : déplacer le curseur au début de la ligne de commande
             move_end_of_line : déplacer le curseur à la fin de la ligne
             move_end_of_input : déplacer le curseur à la fin de la ligne de commande
             move_previous_char : déplacer le curseur sur le caractère précédent
             move_next_char : déplacer le curseur sur le caractère suivant
             move_previous_word : déplacer le curseur sur le mot précédent
             move_next_word : déplacer le curseur sur le mot suivant
             move_previous_line : déplacer le curseur sur la ligne précédente
             move_next_line : déplacer le curseur sur la ligne suivante
             history_previous : rappeler la commande précédente dans l'historique du tampon courant
             history_next : rappeler la commande suivante dans l'historique du tampon courant
             history_global_previous : rappeler la commande précédente dans l'historique global
             history_global_next : rappeler la commande suivante dans l'historique global
             history_use_get_next : envoyer l'entrée d'historique courante (trouvée avec la recherche ou rappelée avec la touche "haut") et insérer l'entrée suivante de l'historique dans la ligne de commande sans l'envoyer
             grab_key : capturer une touche (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes)
             grab_key_command : capturer une touche avec sa commande associée (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes)
             grab_mouse : capturer un évènement de la souris
             grab_mouse_area : capturer un évènement de la souris avec la zone
             insert : insérer du texte dans la ligne de commande (les caractères échappés sont autorisés, voir /help print)
             send : envoyer du texte au tampon
paramètres : paramètres optionnels pour l'action

Cette commande est utilisée par les associations de touches ou les extensions.
  • item: gestion des objets de barre personnalisés

/item  list
       add|addreplace <nom> "<conditions>" "<contenu>"
       rename <nom> <nouveau_nom>
       refresh <nom>|<masque>...
       recreate <nom>
       del <nom>|<masque>...

      list : lister tous les objets de barre personnalisés
       add : ajouter un objet de barre personnalisé
addreplace : ajouter ou remplacer un objet de barre personnalisé existant
       nom : nom de l'objet de barre personnalisé
    masque : nom où le caractère joker "*" est autorisé
conditions : conditions évaluées pour afficher l'objet de barre (par exemple pour afficher l'objet de barre seulement sur certains tampons)
   contenu : contenu (évalué, voir /help eval)
    rename : renommer un objet de barre personnalisé
   refresh : mettre à jour le contenu d'un objet de barre dans toutes les barres où l'objet est affiché ; tout objet peut être rafraîchi : défaut/extension/objets de barre personnalisés
  recreate : définir la ligne de commande utilisée pour éditer l'objet de barre personnalisé
       del : supprimer des objets de barre personnalisés

Exemples :
  ajouter un objet avec la taille du terminal, affiché seulement sur les tampons avec numéro = 1 :
    /item add terminfo "${buffer.number} == 1" "term:${info:term_width}x${info:term_height}"
  ajouter un objet avec des informations sur le tampon :
    /item add bufinfo "" "${buffer.number}:${buffer.name}${if:${buffer.zoomed}?(Z)}"
  ajouter un objet avec la date/heure en utilisant le format "Dec 25, 12:34 +0100", rafraîchi chaque minute :
    /item add datetime "" "${date:%b %d, %H:%M %z}"
    /trigger add datetime_refresh timer "60000;60" "" "" "/item refresh datetime"
  ajouter un objet avec le nombre de lignes dans le tampon (affichées/total), rafraîchi à chaque nouvelle ligne affichée ou si les lignes filtrées ont changé :
    /item add lines_count "" "${calc:${buffer.lines.lines_count}-${buffer.lines.lines_hidden}}/${buffer.lines.lines_count} lines"
    /trigger add lines_count_refresh_print print "" "" "" "/item refresh lines_count"
    /trigger add lines_count_refresh_signal signal "window_switch;buffer_switch;buffer_lines_hidden;filters_*" "" "" "/item refresh lines_count"
  forcer le rafraîchissement de l'objet "lines_count" :
    /item refresh lines_count
  recréer l'objet "lines_count" avec différentes conditions ou contenu :
    /item recreate lines_count
  supprimer l'objet "lines_count" :
    /item del lines_count
  • key: associer/libérer des touches

/key  [list|listdefault|listdiff] [<contexte>]
      bind <touche> [<commande> [<args>]]
      bindctxt <contexte> <touche> [<commande> [<args>]]
      unbind <touche>
      unbindctxt <contexte> <touche>
      reset <touche>
      resetctxt <contexte> <touche>
      resetall -yes [<contexte>]
      missing [<contexte>]
      legacy <touche>...

       list : afficher toutes les touches courantes
listdefault : afficher les touches par défaut
   listdiff : afficher les différences entre les touches courantes et celles par défaut (touches ajoutées, redéfinies ou supprimées)
   contexte : nom du contexte ("default" ou "search")
       bind : associer une commande à une touche ou affiche la commande associée à la touche
   bindctxt : associer une commande à une touche ou affiche la commande associée à la touche pour le contexte donné
   commande : commande (plusieurs commandes peuvent être séparées par des points-virgules) ; des guillemets peuvent être utilisés pour préserver les espaces au début et à la fin de la commande
     unbind : supprimer l'association à une touche
 unbindctxt : supprimer l'association à une touche pour le contexte donné
      reset : réinitialiser une touche à son association par défaut
  resetctxt : réinitialiser une touche à son association par défaut pour le contexte donné
   resetall : restaurer les touches aux valeurs par défaut et supprimer TOUTES les touches personnelles (utiliser avec précaution !)
    missing : ajouter les touches manquantes (en utilisant les touches par défaut), pratique après installation d'une nouvelle version de WeeChat
     legacy : afficher le nouveau nom pour des anciennes touches

Lors de l'association d'une commande à une touche, il est recommandé d'utiliser la touche alt+k (ou Échap puis k), et puis de presser la touche à associer : cela insère le code de la touche dans la ligne de commande.

Pour certaines touches vous pourriez avoir besoin d'utiliser /debug key, cela affiche le code brut de la touche qui peut être utilisé (par exemple ctrl+backspace pourrait être "ctrl-h" ou "ctrl-?", selon votre terminal et d'autres paramètres).

Modificateurs autorisés (dans cet ordre lorsque plusieurs sont utilisés) :
  "meta-" : touche alt
  "ctrl-" : touche control
  "shift-" : touche shift, peut être utilisé seulement avec les noms de touches ci-dessous

Noms de touches autorisés : f0 à f20, home, insert, delete, end, backspace, pgup, pgdn, up, down, right, left, tab, return, comma, space.

La virgule est utilisée pour séparer plusieurs touches.

Pour le contexte "mouse" (possible aussi pour le contexte "cursor"), la touche a le format : "@zone:touche" ou "@zone1>zone2:touche" où la zone peut être :
  * : n'importe quelle zone à l'écran
  chat : la zone de discussion (n'importe quel tampon)
  chat(xxx) : la zone de discussion pour le tampon avec le nom "xxx" (nom complet incluant l'extension)
  bar(*) : n'importe quelle barre
  bar(xxx) : la barre "xxx"
  item(*) : n'importe quel objet de barre
  item(xxx) : l'objet de barre "xxx"
Le caractère joker "*" est autorisé pour plusieurs évènements de la souris.
Une valeur spéciale pour la commande avec le format "hsignal:nom" peut être utilisée dans le contexte "mouse", cela enverra le signal "nom" avec la table de hachage du focus comme paramètre.
Une autre valeur spéciale "-" peut être utilisée pour désactiver la touche (elle sera ignorée lors de la recherche de touches).

Exemples :
  /key bind meta-r /buffer #weechat
  /key reset meta-r
  /key bind meta-v,f1 /help
  /key bindctxt search f12 /input search_stop
  /key bindctxt mouse @item(buffer_nicklist):button3 /msg nickserv info ${nick}
  • layout: gestion des dispositions de tampons/fenêtres

/layout  store [<nom>] [buffers|windows]
         apply [<nom>] [buffers|windows]
         leave
         del [<nom>] [buffers|windows]
         rename <nom> <nouveau_nom>

  store : stocker les tampons/fenêtres courants dans une disposition
  apply : appliquer une disposition stockée
  leave : quitter la disposition courante (ne met à jour aucune disposition)
    del : supprimer les tampons et/ou fenêtres dans une disposition stockée (si ni "buffers" ni "windows" n'est donné après le nom, la disposition est supprimée)
 rename : renommer une disposition
    nom : nom pour la disposition stockée (par défaut "default")
buffers : stocker/appliquer seulement pour les tampons (ordre des tampons)
windows : stocker/appliquer seulement pour les fenêtres (le tampon affiché par chaque fenêtre)

Sans paramètre, cette commande affiche les dispositions stockées.

La disposition courante peut être sauvegardée sur la commande /quit avec l'option "weechat.look.save_layout_on_exit".

Note : la disposition se souvient seulement de la division des fenêtres et des numéros de tampons. Elle n'ouvre pas les tampons. Cela signifie par exemple que vous devez toujours automatiquement rejoindre les canaux IRC pour ouvrir les tampons, la disposition sauvée ne s'applique qu'une fois les tampons ouverts.
  • mouse: contrôle de la souris

/mouse  enable|disable|toggle [<délai>]

 enable : activer la souris
disable : désactiver la souris
 toggle : activer/désactiver la souris
  délai : délai (en secondes) après lequel l'état initial de la souris est restauré (pratique pour désactiver temporairement la souris)

L'état de la souris est sauvé dans l'option "weechat.look.mouse".

Exemples :
  /mouse enable
  /mouse toggle 5
  • mute: exécuter une commande silencieusement

/mute  [-core | -current | -buffer <nom>] <commande>

   -core : pas d'affichage sur le tampon core WeeChat
-current : pas d'affichage sur le tampon courant
 -buffer : pas d'affichage sur le tampon spécifié
     nom : nom complet du tampon (exemples : "irc.server.libera", "irc.libera.#weechat")
commande : commande à exécuter silencieusement (un "/" est automatiquement ajouté s'il n'est pas trouvé au début de la commande)

Si aucune cible n'est spécifiée ("-core", "-current" ou "-buffer"), alors par défaut tous les tampons seront silencieux.

Exemples :
  /mute save
  /mute -current msg * hi!
  /mute -buffer irc.libera.#weechat msg #weechat hi!
  • plugin: lister/charger/décharger des extensions

/plugin  list [-o|-ol|-i|-il|<nom>]
         listfull [<nom>]
         load <fichier> [<paramètres>]
         autoload [<paramètres>]
         reload [<nom>|* [<paramètres]]
         unload [<nom>]

      list : lister les extensions chargées
        -o : envoyer la liste des extensions chargées au tampon (chaîne en anglais)
       -ol : envoyer la liste des extensions chargées au tampon (chaîne traduite)
        -i : copier la liste des extensions chargées dans la ligne de commande (pour envoi au tampon) (chaîne en anglais)
       -il : copier la liste des extensions chargées dans la ligne de commande (pour envoi au tampon) (chaîne traduite)
       nom : nom d'extension
  listfull : lister les extensions chargées (verbeux)
      load : charger une extension
   fichier : extension (fichier) à charger
paramètres : paramètres donnés à l'extension lors de son chargement
  autoload : charger automatiquement les extensions dans un répertoire système ou utilisateur
    reload : recharger une extension (si pas de nom donné, décharger toutes les extensions, puis recharger automatiquement les extensions)
    unload : décharger une extension (si pas de nom donné, décharger toutes les extensions)

Sans paramètre, cette commande liste les extensions chargées.
  • print: afficher du texte dans un tampon

/print  [-buffer <id>|<numéro>|<nom>] [-newbuffer <nom>] [-free] [-switch] [-core|-current] [-y <ligne>] [-escape] [-date <date>] [-tags <étiquettes>] [-action|-error|-join|-network|-quit] [<texte>]
        -stdout|-stderr [<texte>]
        -beep

   -buffer : afficher le texte dans ce tampon (par défaut : tampon où est exécutée la commande)
-newbuffer : créer un nouveau tampon et afficher le texte dans ce tampon
     -free : créer un tampon avec contenu libre (avec -newbuffer seulement)
   -switch : basculer vers le tampon
     -core : alias de "-buffer core.weechat"
  -current : afficher le texte dans le tampon courant
        -y : afficher sur une ligne personnalisée (pour un tampon avec contenu libre seulement)
     ligne : numéro de ligne pour un tampon avec contenu libre (la première ligne est 0, un nombre négatif affiche après la dernière ligne : -1 = après la dernière ligne, -2 = deux lignes après la dernière ligne, etc.)
   -escape : interpréter les caractères échappés (par exemple \a, \07, \x07)
     -date : date du message, le format peut être :
             -n : "n" secondes avant maintenant
             +n : "n" secondes dans le futur
             n : "n" secondes depuis l'époque (voir man time)
             date et/ou heure (ISO 8601) : voir la fonction "util_parse_time" dans la Référence API extension (exemples : "11:29:09", "2023-12-25T10:29:09.456789Z")
     -tags : liste d'étiquettes séparées par des virgules (voir /help filter pour une liste des étiquettes couramment utilisées)
     texte : texte à afficher (le préfixe et le message doivent être séparés par "\t", si le texte commence par "-", ajoutez "\" avant)
   -stdout : afficher le texte sur stdout (les caractères échappés sont interprétés)
   -stderr : afficher le texte sur stderr (les caractères échappés sont interprétés)
     -beep : alias de "-stderr \a"

Les options -action ... -quit utilisent le préfixe défini dans les options "weechat.look.prefix_*".

Les caractères échappés suivants sont supportés :
  \" \\ \a \b \e \f \n \r \t \v \0ooo \xhh \uhhhh \Uhhhhhhhh

Exemples :
  afficher un pense-bête sur le tampon core avec un highlight :
    /print -core -tags notify_highlight Pense-bête : acheter du lait
  afficher une erreur sur le tampon core :
    /print -core -error Une erreur ici
  afficher un message sur le tampon core avec le préfixe "abc" :
    /print -core abc\tLe message
  afficher un message sur le canal #weechat :
    /print -buffer irc.libera.#weechat Message sur #weechat
  afficher un bonhomme de neige (U+2603) :
    /print -escape \u2603
  envoyer une alerte (BEL) :
    /print -beep
  • proxy: gestion des proxies

/proxy  list
        add|addreplace <nom> <type> <adresse> <port> [<utilisateur> [<mot_de_passe>]]
        del <nom>|<masque>...
        set <nom> <option> <valeur>

        list : lister tous les proxies
         add : ajouter un nouveau proxy
  addreplace : ajouter ou remplacer un proxy existant
         nom : nom du proxy (doit être unique)
        type : http, socks4 ou socks5
     adresse : IP ou nom de machine
        port : numéro de port
 utilisateur : nom d'utilisateur (optionnel)
mot_de_passe : mot de passe (optionnel)
         del : supprimer des proxies
      masque : nom où le caractère joker "*" est autorisé
         set : changer la valeur d'une propriété d'un proxy
      option : option à modifier (pour la liste des options, voir /set weechat.proxy.<proxyname>.*)
      valeur : nouvelle valeur pour l'option

Exemples :
  ajouter un proxy http, tournant en local, port 8888 :
    /proxy add local http 127.0.0.1 8888
  ajouter un proxy http en utilisant seulement le protocole IPv6 :
    /proxy add local http ::1 8888
    /proxy set local ipv6 force
  ajouter un proxy socks5 avec un utilisateur/mot de passe :
    /proxy add myproxy socks5 sample.host.org 3128 myuser mypass
  supprimer un proxy :
    /proxy del myproxy
  • quit: quitter WeeChat

/quit  [-yes] [<paramètres>]

      -yes : requis si l'option "weechat.look.confirm_quit" est activée
paramètres : texte envoyé avec le signal "quit" (par exemple l'extension irc utilise ce texte pour envoyer le message de quit au serveur)

Par défaut en quittant les fichiers de configuration sont sauvegardés (voir l'option "weechat.look.save_config_on_exit") et la disposition courante peut être sauvegardée (voir l'option "weechat.look.save_layout_on_exit").
  • reload: recharger les fichiers de configuration depuis le disque

/reload  [<fichier>...]

fichier : fichier de configuration à recharger (sans l'extension ".conf")

Sans paramètre, tous les fichiers (WeeChat et extensions) sont rechargés.
  • repeat: exécuter une commande plusieurs fois

/repeat  [-interval <délai>[<unité>]] <nombre> <commande>

   délai : délai entre l'exécution des commandes (minimum : 1 milliseconde)
   unité : optionnelle, valeurs possibles :
           us : microsecondes
           ms : millisecondes
           s : secondes (par défaut)
           m : minutes
           h : heures
  nombre : nombre de fois que la commande sera exécutée
commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par "/"), évaluée et les variables suivantes sont définies à chaque exécution de commande :
           ${buffer} : pointeur vers le tampon
           ${repeat_count} : nombre de fois que la commande est exécutée
           ${repeat_index} : index courant (de 1 à "nombre")
           ${repeat_index0} : index courant (de 0 à "nombre" - 1)
           ${repeat_revindex} : index courant depuis la fin (de "nombre" à 1)
           ${repeat_revindex0} : index courant depuis la fin (de "nombre" - 1 à 0)
           ${repeat_first} : "1" pour la première exécution, "0" pour les autres
           ${repeat_last} : "1" pour la dernière exécution, "0" pour les autres

Note : la commande est exécutée sur le tampon où /repeat a été exécuté (si le tampon n'existe plus, la commande n'est pas exécutée).

Exemples :
  faire défiler de 2 pages vers le haut :
    /repeat 2 /window page_up
  afficher un compte à rebours, en démarrant à 5 :
    /repeat -interval 1 6 /print ${if:${repeat_last}?Boom!:${repeat_revindex0}}
  • reset: réinitialiser des options de configuration

/reset  <option>
        -mask <option>

option : nom d'une option
 -mask : utiliser un masque pour l'option (le caractère joker "*" est autorisé pour réinitialiser plusieurs options, à utiliser avec prudence !)

Exemples :
  /reset weechat.look.item_time_format
  /reset -mask weechat.color.*
  • save: sauvegarder les fichiers de configuration sur disque

/save  [<fichier>...]

fichier : fichier de configuration à sauvegarder (sans l'extension ".conf")

Sans paramètre, tous les fichiers (WeeChat et extensions) sont sauvegardés.

Par défaut tous les fichiers de configuration sont sauvegardés sur disque sur la commande /quit (voir l'option "weechat.look.save_config_on_exit").
  • secure: gestion des données sécurisées (mots de passe ou données privées chiffrés dans le fichier sec.conf)

/secure  passphrase <phrase de chiffrement>|-delete
         decrypt <phrase de chiffrement>|-discard
         set <nom> <valeur>
         del <nom>

passphrase : modifier la phrase de chiffrement (sans phrase de chiffrement, les données sont stockées en texte brut dans le fichier sec.conf)
   -delete : supprimer la phrase de chiffrement
   decrypt : déchiffrer les données toujours chiffrées
  -discard : jeter toutes les données encore chiffrées
       set : ajouter ou modifier une donnée sécurisée
       del : supprimer une donnée sécurisée

Sans paramètre, cette commande affiche les données sécurisées dans un nouveau tampon.

Les touches sur le tampon des données sécurisées :
  alt+v  afficher/cacher les valeurs

Lorsqu'une phrase de chiffrement est utilisée (données chiffrées), elle est demandée au démarrage de WeeChat.
Il est possible de définir la variable d'environnement WEECHAT_PASSPHRASE pour éviter la demande (cette même variable est utilisée par WeeChat sur le /upgrade) ou de définir l'option sec.crypt.passphrase_command pour lire la phrase de chiffrement depuis la sortie d'une commande externe comme un coffre-fort à mots de passe (voir /help sec.crypt.passphrase_command).

Les données sécurisées avec le format ${sec.data.xxx} peuvent être utilisées dans :
  - la commande /eval
  - le paramètre de ligne de commande "--run-command"
  - les options weechat.startup.command_{before|after}_plugins
  - d'autres options qui peuvent contenir un mot de passe ou des données sensibles (par exemple proxy, serveur irc et relay) ; voir /help sur les options pour vérifier si elles sont évaluées.

Exemples :
  définir une phrase de chiffrement :
    /secure passphrase ceci est ma phrase de chiffrement
  utiliser le programme "pass" pour lire la phrase de chiffrement au démarrage :
    /set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase"
  chiffrer le mot de passe libera SASL :
    /secure set libera motdepasse
    /set irc.server.libera.sasl_password "${sec.data.libera}"
  chiffrer le mot de passe oftc pour nickserv :
    /secure set oftc motdepasse
    /set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}"
  alias pour ghost du pseudo "pseudo" :
    /alias add ghost /eval /msg -server libera nickserv ghost monpseudo ${sec.data.libera}
  • set: définir des options de configuration et des variables d’environnement

/set  [<option> [<valeur>]]
      diff [<option>...]
      env [<variable> [<valeur>]]

option : nom d'une option (le caractère joker "*" est autorisé pour lister les options, si aucune valeur n'est spécifiée)
valeur : nouvelle valeur pour l'option, selon le type :
         booléen : on, off ou toggle
         entier : nombre, ++nombre ou --nombre
         chaîne : toute chaîne ("" pour une chaîne vide)
         couleur : nom de couleur, ++nombre ou --nombre
  diff : afficher seulement les options modifiées
   env : afficher ou définir une variable d'environnement ("" pour supprimer une variable)

Note : la valeur "null" (sans guillemets) peut être utilisée pour supprimer la valeur d'une option (valeur non définie). Cela fonctionne seulement pour quelques variables des extensions.

Exemples :
  /set *highlight*
  /set weechat.look.highlight "word"
  /set diff
  /set diff irc.*
  /set env LANG
  /set env LANG fr_FR.UTF-8
  /set env ABC ""
  • sys: actions système

/sys  get rlimit|rusage
      malloc_trim [<taille>]
      suspend
      waitpid <nombre>

        get : afficher des informations système
     rlimit : afficher les limites de ressource (voir /help weechat.startup.sys_rlimit et "man getrlimit")
     rusage : afficher l'utilisation des ressources (voir "man getrusage")
malloc_trim : appeler la fonction malloc_trim pour libérer de la mémoire du tas
     taille : quantité d'espace libre à laisser non rogné au sommet du tas (la valeur par défaut est 0 : seule la quantité minimale de mémoire est maintenue au sommet du tas)
    suspend : suspendre WeeChat et retourner au shell, en envoyant le signal SIGTSTP au processus WeeChat
    waitpid : prendre connaissance des processus fils qui sont terminés (pour éviter les processus "zombies")
     nombre : nombre de processus à nettoyer
  • toggle: basculer la valeur d’une option de configuration

/toggle  <option> [<valeur>...]

option : nom d'une option
valeur : valeurs possibles pour l'option (les valeurs sont découpées comme le les paramètres d'une commande par le shell : des guillemets peuvent être utilisés pour préserver les espaces au début et à la fin des valeurs)

Comportement :
  - seule une option de type booléen ou chaîne peut être basculée sans valeur :
    - booléen : basculer on/off selon la valeur courante
    - chaîne : basculer entre chaîne vide et la valeur par défaut (fonctionne seulement si une chaîne vide est autorisée pour l'option)
  - avec une seule valeur donnée, basculer entre cette valeur et la valeur par défaut de l'option
  - avec plusieurs valeurs données, basculer entre les valeurs : la valeur utilisée est celle qui suit la valeur courante de l'option ; si la valeur courante n'est pas dans la liste, la première valeur de la liste est utilisée
  - la valeur spéciale "null" peut être donnée, mais seulement comme première valeur dans la liste et sans guillemets autour.

Exemples :
  basculer l'affichage de l'heure dans la zone de discussion (sans afficher la nouvelle valeur utilisée) :
    /mute /toggle weechat.look.buffer_time_format
  basculer le format de l'heure dans la zone de discussion (avec secondes, sans secondes, désactivé) :
    /toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
  basculer le "join" automatique du canal #weechat sur le serveur libera :
    /toggle irc.server.libera.autojoin null #weechat
  • unset: supprimer/réinitialiser des options de configuration

/unset  <option>
        -mask <option>

option : nom d'une option
 -mask : utiliser un masque pour l'option (le caractère joker "*" est autorisé pour réinitialiser plusieurs options, à utiliser avec prudence !)

Selon l'option, elle est réinitialisée (pour les options standards) ou supprimée (pour les options facultatives, comme les valeurs pour les serveurs).

Exemples :
  /unset weechat.look.item_time_format
  /unset -mask weechat.color.*
  • upgrade: sauvegarder la session WeeChat et relancer le binaire WeeChat sans se déconnecter des serveurs

/upgrade  [-yes] [<chemin_vers_binaire>|-save|-quit]
          -o|-ol

               -yes : requis si l'option "weechat.look.confirm_upgrade" est activée
chemin_vers_binaire : chemin vers le binaire WeeChat (par défaut le binaire courant)
             -dummy : ne rien faire (option utilisée pour éviter une complétion accidentelle avec "-quit")
              -save : sauvegarder seulement la session, ne pas quitter ni relancer WeeChat ; les fichiers de configuration ne sont pas sauvegardés (si besoin vous pouvez utiliser /save avant cette commande)
              -quit : fermer *TOUTES* les connexions, sauvegarder la session et quitter, ce qui rend possible une restauration différée (voir ci-dessous)
                 -o : envoyer le nombre de mises à jour et la date de premier/dernier démarrage de WeeChat sur le tampon courant comme entrée (chaîne en anglais)
                -ol : envoyer le nombre de mises à jour et la date de premier/dernier démarrage de WeeChat sur le tampon courant comme entrée (chaîne traduite)

Cette commande met à jour et recharge une session de WeeChat qui tourne. Le nouveau binaire WeeChat doit avoir été compilé ou installé via un gestionnaire de paquet avant de lancer cette commande.

Note : les connexions TLS sont perdues durant la mise à jour, car le rechargement de session TLS n'est pas possible actuellement avec GnuTLS. Il y a une reconnexion automatique après la mise à jour.

Important : l'utilisation de l'option "-save" peut être dangereuse, il est recommandé d'utiliser seulement /upgrade (ou avec "-quit") pour une mise à jour standard et un redémarrage ; l'option "-save" peut être utilisée pour sauvegarder régulièrement la session et la restaurer en cas de sortie anormale (panne de courant, crash, etc.).

Le processus de mise à jour comporte 4 étapes :
  1. sauvegarder la session pour le cœur et les extensions (tampons, historique, ...)
  2. décharger toutes les extensions (les fichiers de configuration (*.conf) sont écrits sur disque)
  3. sauvegarder la configuration WeeChat (weechat.conf)
  4. exécuter le nouveau binaire WeeChat et recharger la session.

Avec l'option "-quit", le processus est le suivant :
  1. fermer *TOUTES* les connexions
  2. sauvegarder la session (fichiers *.upgrade)
  3. décharger les extensions
  4. sauvegarder la configuration WeeChat
  5. quitter WeeChat

Avec l'option "-save", le processus est le suivant :
  1. sauvegarder la session (fichiers *.upgrade) avec un état déconnecté pour les serveurs IRC et les clients Relay (mais aucune déconnexion n'est faite)

Avec "-quit" ou "-save", vous pouvez restaurer la session plus tard avec cette commande : weechat --upgrade
IMPORTANT : vous devez restaurer la session avec exactement la même configuration (fichiers *.conf) et si possible la même version de WeeChat (ou une plus récente).
Il est également possible de restaurer la session WeeChat sur une autre machine si vous y copiez le contenu des répertoires personnels de WeeChat (voir /debug dirs).
  • uptime: montrer la durée de fonctionnement de WeeChat

/uptime  [-o|-ol]

 -o : envoyer la durée de fonctionnement sur le tampon courant comme entrée (chaîne en anglais)
-ol : envoyer la durée de fonctionnement sur le tampon courant comme entrée (chaîne traduite)
  • version: afficher la version de WeeChat et la date de compilation

/version  [-o|-ol]

 -o : envoyer la version sur le tampon courant comme entrée (chaîne en anglais)
-ol : envoyer la version sur le tampon courant comme entrée (chaîne traduite)

L'alias par défaut /v peut être utilisé pour exécuter cette commande sur tous les tampons (sinon la commande irc /version est utilisée sur les tampons irc).
  • wait: planifier l’exécution d’une commande dans le futur

/wait  <nombre>[<unité>] <commande>

  nombre : temps à attendre (minimum : 1 milliseconde)
   unité : optionnelle, valeurs possibles :
           us : microsecondes
           ms : millisecondes
           s : secondes (par défaut)
           m : minutes
           h : heures
commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par "/")

Note : la commande est exécutée sur le tampon où /wait a été exécuté (si le tampon n'existe plus, la commande n'est pas exécutée).

Exemples :
  rejoindre le canal #test dans 10 secondes :
    /wait 10 /join #test
  passer absent dans 15 minutes :
    /wait 15m /away -all Je suis absent
  dire "bonjour" dans 2 minutes :
    /wait 2m bonjour
  • window: gestion des fenêtres

/window  list
         -1|+1|b#|up|down|left|right [-window <numéro>]
         <numéro>
         splith|splitv [-window <numéro>] [<pct>]
         resize [-window <numéro>] [h|v][+|-]<pct>
         balance
         merge [-window <numéro>] [all]
         close [-window <numéro>]
         page_up|page_down [-window <numéro>]
         refresh
         scroll [-window <numéro>] [+|-]<valeur>[s|m|h|d|M|y]
         scroll_horiz [-window <numéro>] [+|-]<valeur>[%]
         scroll_up|scroll_down|scroll_top|scroll_bottom|scroll_beyond_end|scroll_previous_highlight|scroll_next_highlight|scroll_unread [-window <numéro>]
         swap [-window <numéro>] [up|down|left|right]
         zoom [-window <numéro>]
         bare [<délai>]

                     list : lister les fenêtres ouvertes (sans paramètre, cette liste est affichée)
                       -1 : sauter à la fenêtre précédente
                       +1 : sauter à la fenêtre suivante
                       b# : sauter à la fenêtre affichant le tampon #
                       up : sauter à la fenêtre au-dessus
                     down : sauter à la fenêtre au-dessous
                     left : sauter à la fenêtre à gauche
                    right : sauter à la fenêtre à droite
                   numéro : numéro de fenêtre (voir /window list)
                   splith : diviser la fenêtre en deux horizontalement (pour défaire : /window merge)
                   splitv : diviser la fenêtre en deux verticalement (pour défaire : /window merge)
                   resize : redimensionner une fenêtre, la nouvelle taille est <pct> pourcentage de la fenêtre parente ; si "h" ou "v" est spécifié, le redimensionnement affecte la fenêtre parente la plus proche avec un découpage de ce type (horizontal/vertical)
                  balance : équilibrer la taille de toutes les fenêtres
                    merge : fusionner la fenêtre avec une autre
                    close : fermer la fenêtre
                  page_up : faire défiler d'une page vers le haut
                page_down : faire défiler d'une page vers le bas
                  refresh : redessiner l'écran
                   scroll : faire défiler d'un nombre de lignes (+/-N) ou avec du temps : s=secondes, m=minutes, h=heures, d=jours, M=mois, y=année
             scroll_horiz : faire défiler horizontalement d'un nombre de colonnes (+/-N) ou un pourcentage de la taille de fenêtre (ce défilement est possible seulement sur les tampons avec contenu libre)
                scroll_up : faire défiler de quelques lignes vers le haut
              scroll_down : faire défiler de quelques lignes vers le bas
               scroll_top : faire défiler jusqu'au début du tampon
            scroll_bottom : faire défiler jusqu'en bas du tampon
        scroll_beyond_end : faire défiler au-delà de la fin du tampon
scroll_previous_highlight : faire défiler jusqu'au highlight précédent
    scroll_next_highlight : faire défiler jusqu'au highlight suivant
            scroll_unread : faire défiler jusqu'au marqueur de lecture
                     swap : échanger les tampons de deux fenêtres (avec une direction facultative pour la fenêtre cible)
                     zoom : zoomer sur la fenêtre
                     bare : activer/désactiver le mode d'affichage dépouillé (avec un délai facultatif en secondes pour un retour automatique au mode d'affichage standard)

Pour splith et splitv, pct est un pourcentage qui représente la taille de la nouvelle fenêtre, calculée par rapport à la taille de la fenêtre courante. Par exemple 25 signifie créer une fenêtre qui a pour taille : taille_courante / 4

Exemples :
  /window b1
  /window scroll -2
  /window scroll -2d
  /window scroll -d
  /window zoom -window 2
  /window splith 30
  /window resize 75
  /window resize v+10
  /window bare 2

Options des données sécurisées

Sections dans le fichier sec.conf :

Section Commande de contrôle Description

crypt

/set sec.crypt.*

Options pour le chiffrement.

data

/secure

Données sécurisées.

Options :

  • sec.crypt.cipher

    • description: chiffrement ("cipher") utilisé pour chiffrer les données (le nombre après l'algorithme est la taille de la clé en bits)

    • type: énuméré

    • valeurs: aes128, aes192, aes256

    • valeur par défaut: aes256

  • sec.crypt.hash_algo

    • description: algorithme de hash pour vérifier les données déchiffrées ; certains nécessitent une version spécifique de libgcrypt : sha3-* : libgcrypt >= 1.7.0, blake2* : libgcrypt >= 1.8.0, sha512-* : libgcrypt >= 1.9.4

    • type: énuméré

    • valeurs: sha224, sha256, sha384, sha512, sha512-224, sha512-256, sha3-224, sha3-256, sha3-384, sha3-512, blake2b-160, blake2b-256, blake2b-384, blake2b-512, blake2s-128, blake2s-160, blake2s-224, blake2s-256

    • valeur par défaut: sha256

  • sec.crypt.passphrase_command

    • description: lire la phrase de chiffrement depuis la sortie de cette commande système (seule la première ligne est utilisée et elle ne doit contenir aucun autre caractère) ; cette option est utilisée seulement pour lire le fichier sec.conf et si la variable d'environnement "WEECHAT_PASSPHRASE" n'est pas définie (la variable d'environnement a une priorité plus haute) ; exemple avec password-store : "/usr/bin/pass show weechat/passphrase"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • sec.crypt.salt

    • description: utiliser du sel lors de la génération de la clé utilisée dans le chiffrement (recommandé pour un maximum de sécurité) ; lorsque cette option est activée, le contenu des données chiffrées dans le fichier sec.conf sera différent à chaque écriture du fichier ; si vous utilisez le fichier sec.conf dans un système de contrôle de version, alors vous pouvez désactiver cette option pour avoir toujours le même contenu de fichier

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

Options WeeChat

Sections dans le fichier weechat.conf :

Section Commande de contrôle Description

debug

/debug set
/set weechat.debug.*

Niveau de debug, pour le cœur et les extensions (les options peuvent être ajoutées/supprimées dans la section).

startup

/set weechat.startup.*

Options de démarrage.

look

/set weechat.look.*

Aspect/présentation.

palette

/color alias
/set weechat.palette.*

Alias de couleurs (les options peuvent être ajoutées/supprimées dans la section).

color

/set weechat.color.*

Couleurs.

completion

/set weechat.completion.*

Options de complétion.

history

/set weechat.history.*

Options d’historique (commandes et tampons).

proxy

/proxy
/set weechat.proxy.*

Options des proxies.

network

/set weechat.network.*

Options réseau/TLS.

plugin

/set weechat.plugin.*

Options sur les extensions.

signal

/set weechat.signal.*

Options sur les signaux.

bar

/bar
/set weechat.bar.*

Options des barres.

layout

/layout

Dispositions.

buffer

/buffer setauto

Propriétés appliquées automatiquement sur les tampons lorsqu’ils sont ouverts.

notify

/buffer notify

Niveaux de notification des tampons (les options peuvent être ajoutées/supprimées dans la section).

filter

/filter

Filtres.

key

/key

Touches pour le contexte "default".

key_search

/key

Touches pour le contexte "search".

key_cursor

/key

Touches pour le contexte "cursor".

key_mouse

/key

Touches pour le contexte "mouse".

Options :

  • weechat.color.bar_more

    • description: couleur du texte pour les "+" lors du défilement des barres

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightmagenta

  • weechat.color.chat

    • description: couleur du texte pour la discussion

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.chat_bg

    • description: couleur du fond pour la discussion

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.chat_buffer

    • description: couleur du texte pour le nom des tampons

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • weechat.color.chat_channel

    • description: couleur du texte pour le nom des canaux

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • weechat.color.chat_day_change

    • description: couleur du texte pour le message affiché lorsque le jour a changé

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • weechat.color.chat_delimiters

    • description: couleur du texte pour les délimiteurs

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 22

  • weechat.color.chat_highlight

    • description: couleur du texte pour le préfixe surligné (highlight)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • weechat.color.chat_highlight_bg

    • description: couleur du fond pour le préfixe surligné (highlight)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 124

  • weechat.color.chat_host

    • description: couleur du texte pour les noms d'hôtes

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • weechat.color.chat_inactive_buffer

    • description: couleur du texte pour la discussion lorsque la ligne est inactive (tampon mélangé avec d'autres tampons et non sélectionné)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.chat_inactive_window

    • description: couleur du texte pour la discussion lorsque la fenêtre n'est pas active (pas la fenêtre sélectionnée)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 240

  • weechat.color.chat_nick

    • description: couleur du texte pour les pseudos dans la fenêtre de discussion ; utilisée dans quelques messages du serveur et comme couleur par défaut quand la couleur du pseudo n'est pas trouvée ; la plupart du temps la couleur du pseudo vient de l'option weechat.color.chat_nick_colors

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightcyan

  • weechat.color.chat_nick_colors

    • description: couleur du texte pour les pseudos (liste de couleurs séparées par une virgule, un fond est autorisé avec le format : "couleur:fond", par exemple : "lightred:blue")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "cyan,magenta,green,brown,lightblue,lightcyan,lightmagenta,lightgreen,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,248"

  • weechat.color.chat_nick_offline

    • description: couleur du texte pour un pseudo déconnecté (qui n'est plus dans la liste de pseudos) ; cette couleur est utilisée seulement si l'option weechat.look.color_nick_offline est activée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 242

  • weechat.color.chat_nick_offline_highlight

    • description: couleur du texte pour un pseudo déconnecté avec highlight ; cette couleur est utilisée seulement si l'option weechat.look.color_nick_offline est activée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.chat_nick_offline_highlight_bg

    • description: couleur du fond pour un pseudo déconnecté avec highlight ; cette couleur est utilisée seulement si l'option weechat.look.color_nick_offline est activée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 17

  • weechat.color.chat_nick_other

    • description: couleur du texte pour l'autre pseudo dans le tampon privée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • weechat.color.chat_nick_prefix

    • description: couleur pour le préfixe du pseudo (chaîne affichée avant le pseudo dans le préfixe)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • weechat.color.chat_nick_self

    • description: couleur du texte pour le pseudo local dans la fenêtre de discussion

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • weechat.color.chat_nick_suffix

    • description: couleur pour le suffixe du pseudo (chaîne affichée après le pseudo dans le préfixe)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • weechat.color.chat_prefix_action

    • description: couleur du texte pour le préfixe d'action

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • weechat.color.chat_prefix_buffer

    • description: couleur du texte pour le nom du tampon (avant le préfixe, quand plusieurs tampons sont mélangés avec le même numéro)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 180

  • weechat.color.chat_prefix_buffer_inactive_buffer

    • description: couleur du texte pour le nom du tampon inactif (avant le préfixe, quand plusieurs tampons sont mélangés avec le même numéro et si le tampon n'est pas sélectionné)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.chat_prefix_error

    • description: couleur du texte pour le préfixe d'erreur

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • weechat.color.chat_prefix_join

    • description: couleur du texte pour le préfixe d'arrivée

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightgreen

  • weechat.color.chat_prefix_more

    • description: couleur du texte pour les "+" lorsque le préfixe est trop long

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightmagenta

  • weechat.color.chat_prefix_network

    • description: couleur du texte pour le préfixe réseau

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: magenta

  • weechat.color.chat_prefix_quit

    • description: couleur du texte pour le préfixe de départ

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightred

  • weechat.color.chat_prefix_suffix

    • description: couleur du texte pour le suffixe (après le préfixe)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 24

  • weechat.color.chat_read_marker

    • description: couleur du texte pour le marqueur de lecture

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: magenta

  • weechat.color.chat_read_marker_bg

    • description: couleur du fond pour le marqueur de lecture

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.chat_server

    • description: couleur du texte pour le nom des serveurs

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • weechat.color.chat_status_disabled

    • description: couleur du texte pour le statut "désactivé"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: red

  • weechat.color.chat_status_enabled

    • description: couleur du texte pour le statut "activé"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • weechat.color.chat_tags

    • description: couleur du texte pour les étiquettes après les messages (affichées avec la commande /debug tags)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: red

  • weechat.color.chat_text_found

    • description: couleur du texte pour le marqueur sur les lignes où le texte demandé est trouvé

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • weechat.color.chat_text_found_bg

    • description: couleur du fond pour le marqueur sur les lignes où le texte demandé est trouvé

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightmagenta

  • weechat.color.chat_time

    • description: couleur du texte pour l'heure dans la fenêtre de discussion

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.chat_time_delimiters

    • description: couleur du texte pour les délimiteurs de l'heure

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • weechat.color.chat_value

    • description: couleur du texte pour les valeurs

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • weechat.color.chat_value_null

    • description: couleur du texte pour les valeurs "null" (non définies)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: blue

  • weechat.color.emphasized

    • description: couleur du texte pour le texte mis en valeur (par exemple lors de la recherche de texte) ; cette option est utilisée seulement si l'option weechat.look.emphasized_attributes est une chaîne vide (valeur par défaut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • weechat.color.emphasized_bg

    • description: couleur du fond pour le texte mis en valeur (par exemple lors de la recherche de texte) ; cette option est utilisée seulement si l'option weechat.look.emphasized_attributes est une chaîne vide (valeur par défaut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 54

  • weechat.color.eval_syntax_colors

    • description: couleur du texte pour la mise en évidence de la syntaxe dans les chaînes évaluées, avec "${raw_hl:...}" et "${hl:...}" (liste de couleurs séparées par une virgule, un fond est autorisé avec le format : "couleur:fond", par exemple : "lightred:blue")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "green,lightred,lightblue,lightmagenta,yellow,cyan"

  • weechat.color.input_actions

    • description: couleur du texte pour les actions dans la ligne de saisie

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightgreen

  • weechat.color.input_text_not_found

    • description: couleur du texte pour la recherche infructueuse de texte dans la ligne de saisie

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: red

  • weechat.color.item_away

    • description: couleur du texte pour l'objet away

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • weechat.color.nicklist_away

    • description: couleur du texte pour les pseudos absents

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 240

  • weechat.color.nicklist_group

    • description: couleur du texte pour les groupes dans la liste des pseudos

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • weechat.color.separator

    • description: couleur pour les séparateurs de fenêtres (quand divisé) et les séparateurs à côté des barres (comme la liste de pseudos)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 236

  • weechat.color.status_count_highlight

    • description: couleur du texte pour le nombre de highlights dans la hotlist (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: magenta

  • weechat.color.status_count_msg

    • description: couleur du texte pour le nombre de messages dans la hotlist (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • weechat.color.status_count_other

    • description: couleur du texte pour le nombre d'autres messages dans la hotlist (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.status_count_private

    • description: couleur du texte pour le nombre de messages privés dans la hotlist (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • weechat.color.status_data_highlight

    • description: couleur du texte pour un tampon avec un highlight (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightmagenta

  • weechat.color.status_data_msg

    • description: couleur du texte pour un tampon avec de nouveaux messages (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • weechat.color.status_data_other

    • description: couleur du texte pour un tampon avec des nouvelles données (pas des messages) (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.status_data_private

    • description: couleur du texte pour un tampon avec un message privé (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightgreen

  • weechat.color.status_filter

    • description: couleur du texte pour l'indicateur de filtrage dans la barre de statut

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • weechat.color.status_modes

    • description: couleur du texte pour les modes du tampon dans la barre de statut

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.status_more

    • description: couleur du texte pour un tampon avec des nouvelles données (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • weechat.color.status_mouse

    • description: couleur du texte pour l'indicateur de la souris dans la barre de statut

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightgreen

  • weechat.color.status_name

    • description: couleur du texte pour le nom du tampon courant dans la barre de statut

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • weechat.color.status_name_insecure

    • description: couleur du texte pour le nom du tampon courant dans la barre de statut, si des données sont échangées et non sécurisées avec un protocole tel que TLS

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightmagenta

  • weechat.color.status_name_tls

    • description: couleur du texte pour le nom du tampon courant dans la barre de statut, si des données sont échangées et sécurisées avec un protocole tel que TLS

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • weechat.color.status_nicklist_count

    • description: couleur du texte pour le nombre de pseudos dans la liste de pseudos (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.color.status_number

    • description: couleur du texte pour le numéro du tampon courant dans la barre de statut

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • weechat.color.status_time

    • description: couleur du texte pour l'heure (barre de statut)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • weechat.completion.base_word_until_cursor

    • description: si activé, le mot de base pour la complétion s'arrête au caractère avant le curseur ; sinon le mot de base s'arrête au premier espace après le curseur

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.completion.case_sensitive

    • description: si activé, la complétion est sensible à la casse par défaut

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.completion.command_inline

    • description: si activé, les commandes à l'intérieur de la ligne de commande sont complétées (la commande en début de ligne a une priorité plus élevée et est utilisée en premier) ; note : lorsque cette option est activée, il n'y a plus de complétion automatique des chemins commençant par "/" (en dehors des paramètres de commandes)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.completion.default_template

    • description: modèle de complétion par défaut (merci de consulter la documentation pour les codes et valeurs du modèle : Référence API extension, fonction "weechat_hook_command")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "%(nicks)|%(irc_channels)"

  • weechat.completion.nick_add_space

    • description: ajouter un espace après la complétion du pseudo (quand le pseudo n'est pas le premier mot sur la ligne de commande)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.completion.nick_case_sensitive

    • description: complétion sensible à la casse pour les pseudos

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.completion.nick_completer

    • description: chaîne insérée après la complétion du pseudo (quand le pseudo est le premier mot sur la ligne de commande)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ": "

  • weechat.completion.nick_first_only

    • description: compléter seulement avec le premier pseudo trouvé

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.completion.nick_ignore_chars

    • description: caractères à ignorer pour la complétion des pseudos

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "[]`_-^"

  • weechat.completion.partial_completion_alert

    • description: envoyer une alerte (BEL) lorsqu'une complétion partielle survient

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.completion.partial_completion_command

    • description: complète partiellement les noms de commandes (stoppe quand plusieurs commandes trouvées commencent par les mêmes lettres)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.completion.partial_completion_command_arg

    • description: complète partiellement les paramètres de commande (stoppe quand plusieurs paramètres trouvés commencent par les mêmes lettres)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.completion.partial_completion_count

    • description: afficher le compteur pour chaque complétion partielle dans l'objet de barre

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.completion.partial_completion_other

    • description: complète partiellement en dehors des commandes (stoppe quand plusieurs mots trouvés commencent par les mêmes lettres)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.completion.partial_completion_templates

    • description: liste de modèles de complétion séparés par des virgules pour lesquels la complétion partielle est activée par défaut (avec la touche Tab au lieu de shift-Tab) ; la liste des modèles est dans la documentation : Référence API extension, fonction "weechat_hook_command"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "config_options"

  • weechat.history.display_default

    • description: nombre maximum de commandes à afficher par défaut dans le listing d'historique (0 = sans limite)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 5

  • weechat.history.max_buffer_lines_minutes

    • description: nombre maximum de minutes dans l'historique par tampon (0 = sans limite) ; exemples : 1440 = une journée, 10080 = une semaine, 43200 = un mois, 525600 = une année ; utilisez 0 SEULEMENT si l'option weechat.history.max_buffer_lines_number n'est pas égale à 0

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 0

  • weechat.history.max_buffer_lines_number

    • description: nombre maximum de lignes dans l'historique par tampon (0 = sans limite) ; utilisez 0 SEULEMENT si l'option weechat.history.max_buffer_lines_minutes n'est PAS égale à 0

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 4096

  • weechat.history.max_commands

    • description: nombre maximum de commandes utilisateur dans l'historique (0 = sans limite, NON RECOMMANDÉ : pas de limite dans l'utilisation mémoire)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 100

  • weechat.history.max_visited_buffers

    • description: nombre maximum de tampons visités à garder en mémoire

    • type: entier

    • valeurs: 0 .. 1000

    • valeur par défaut: 50

  • weechat.key.backspace

    • description: "backspace" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_previous_char"

  • weechat.key.ctrl-_

    • description: "ctrl-_" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input undo"

  • weechat.key.ctrl-a

    • description: "ctrl-a" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_beginning_of_line"

  • weechat.key.ctrl-b

    • description: "ctrl-b" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_previous_char"

  • weechat.key.ctrl-c,_

    • description: "ctrl-c,_" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input insert \x1F"

  • weechat.key.ctrl-c,b

    • description: "ctrl-c,b" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input insert \x02"

  • weechat.key.ctrl-c,c

    • description: "ctrl-c,c" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input insert \x03"

  • weechat.key.ctrl-c,d

    • description: "ctrl-c,d" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input insert \x04"

  • weechat.key.ctrl-c,i

    • description: "ctrl-c,i" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input insert \x1D"

  • weechat.key.ctrl-c,o

    • description: "ctrl-c,o" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input insert \x0F"

  • weechat.key.ctrl-c,v

    • description: "ctrl-c,v" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input insert \x16"

  • weechat.key.ctrl-d

    • description: "ctrl-d" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_next_char"

  • weechat.key.ctrl-down

    • description: "ctrl-down" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input history_global_next"

  • weechat.key.ctrl-e

    • description: "ctrl-e" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_end_of_line"

  • weechat.key.ctrl-f

    • description: "ctrl-f" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_next_char"

  • weechat.key.ctrl-f1

    • description: "ctrl-f1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll buflist * -100%"

  • weechat.key.ctrl-f11

    • description: "ctrl-f11" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist * -100%"

  • weechat.key.ctrl-f12

    • description: "ctrl-f12" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist * +100%"

  • weechat.key.ctrl-f2

    • description: "ctrl-f2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll buflist * +100%"

  • weechat.key.ctrl-k

    • description: "ctrl-k" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_end_of_line"

  • weechat.key.ctrl-l

    • description: "ctrl-l" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window refresh"

  • weechat.key.ctrl-left

    • description: "ctrl-left" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_previous_word"

  • weechat.key.ctrl-n

    • description: "ctrl-n" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer +1"

  • weechat.key.ctrl-o

    • description: "ctrl-o" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input history_use_get_next"

  • weechat.key.ctrl-p

    • description: "ctrl-p" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer -1"

  • weechat.key.ctrl-r

    • description: "ctrl-r" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_history"

  • weechat.key.ctrl-right

    • description: "ctrl-right" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_next_word"

  • weechat.key.ctrl-s

    • description: "ctrl-s" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_text_here"

  • weechat.key.ctrl-t

    • description: "ctrl-t" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input transpose_chars"

  • weechat.key.ctrl-u

    • description: "ctrl-u" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_beginning_of_line"

  • weechat.key.ctrl-up

    • description: "ctrl-up" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input history_global_previous"

  • weechat.key.ctrl-w

    • description: "ctrl-w" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_previous_word_whitespace"

  • weechat.key.ctrl-x

    • description: "ctrl-x" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer switch"

  • weechat.key.ctrl-y

    • description: "ctrl-y" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input clipboard_paste"

  • weechat.key.ctrl-z

    • description: "ctrl-z" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/sys suspend"

  • weechat.key.delete

    • description: "delete" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_next_char"

  • weechat.key.down

    • description: "down" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input history_next"

  • weechat.key.end

    • description: "end" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_end_of_line"

  • weechat.key.f1

    • description: "f1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll buflist * -100%"

  • weechat.key.f10

    • description: "f10" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll title * +30%"

  • weechat.key.f11

    • description: "f11" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist * -100%"

  • weechat.key.f12

    • description: "f12" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist * +100%"

  • weechat.key.f2

    • description: "f2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll buflist * +100%"

  • weechat.key.f5

    • description: "f5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer -1"

  • weechat.key.f6

    • description: "f6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer +1"

  • weechat.key.f7

    • description: "f7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window -1"

  • weechat.key.f8

    • description: "f8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window +1"

  • weechat.key.f9

    • description: "f9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll title * -30%"

  • weechat.key.home

    • description: "home" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_beginning_of_line"

  • weechat.key.left

    • description: "left" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_previous_char"

  • weechat.key.meta--

    • description: "meta--" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/filter toggle @"

  • [[option_weechat.key.meta-/]] weechat.key.meta-/

    • description: "meta-/" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer jump last_displayed"

  • weechat.key.meta-0

    • description: "meta-0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *10"

  • weechat.key.meta-1

    • description: "meta-1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *1"

  • weechat.key.meta-2

    • description: "meta-2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *2"

  • weechat.key.meta-3

    • description: "meta-3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *3"

  • weechat.key.meta-4

    • description: "meta-4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *4"

  • weechat.key.meta-5

    • description: "meta-5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *5"

  • weechat.key.meta-6

    • description: "meta-6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *6"

  • weechat.key.meta-7

    • description: "meta-7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *7"

  • weechat.key.meta-8

    • description: "meta-8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *8"

  • weechat.key.meta-9

    • description: "meta-9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *9"

  • [[option_weechat.key.meta-<]] weechat.key.meta-<

    • description: "meta-<" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer jump prev_visited"

  • [[option_weechat.key.meta-=]] weechat.key.meta-=

    • description: "meta-=" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/filter toggle"

  • [[option_weechat.key.meta→]] weechat.key.meta->

    • description: "meta->" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer jump next_visited"

  • weechat.key.meta-B

    • description: "meta-B" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buflist toggle"

  • weechat.key.meta-N

    • description: "meta-N" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar toggle nicklist"

  • weechat.key.meta-R

    • description: "meta-R" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_input"

  • weechat.key.meta-U

    • description: "meta-U" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/allbuf /buffer set unread"

  • weechat.key.meta-_

    • description: "meta-_" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input redo"

  • weechat.key.meta-a

    • description: "meta-a" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer jump smart"

  • weechat.key.meta-b

    • description: "meta-b" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_previous_word"

  • weechat.key.meta-backspace

    • description: "meta-backspace" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_previous_word"

  • weechat.key.meta-ctrl-k

    • description: "meta-ctrl-k" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_end_of_input"

  • weechat.key.meta-ctrl-u

    • description: "meta-ctrl-u" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_beginning_of_input"

  • weechat.key.meta-d

    • description: "meta-d" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_next_word"

  • weechat.key.meta-down

    • description: "meta-down" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer +1"

  • weechat.key.meta-end

    • description: "meta-end" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_bottom"

  • weechat.key.meta-f

    • description: "meta-f" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_next_word"

  • weechat.key.meta-f1

    • description: "meta-f1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll buflist * b"

  • weechat.key.meta-f11

    • description: "meta-f11" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist * b"

  • weechat.key.meta-f12

    • description: "meta-f12" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist * e"

  • weechat.key.meta-f2

    • description: "meta-f2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll buflist * e"

  • weechat.key.meta-h,meta-R

    • description: "meta-h,meta-R" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/hotlist restore -all"

  • weechat.key.meta-h,meta-c

    • description: "meta-h,meta-c" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/hotlist clear"

  • weechat.key.meta-h,meta-m

    • description: "meta-h,meta-m" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/hotlist remove"

  • weechat.key.meta-h,meta-r

    • description: "meta-h,meta-r" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/hotlist restore"

  • weechat.key.meta-home

    • description: "meta-home" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_top"

  • weechat.key.meta-j,0,1

    • description: "meta-j,0,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *1"

  • weechat.key.meta-j,0,2

    • description: "meta-j,0,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *2"

  • weechat.key.meta-j,0,3

    • description: "meta-j,0,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *3"

  • weechat.key.meta-j,0,4

    • description: "meta-j,0,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *4"

  • weechat.key.meta-j,0,5

    • description: "meta-j,0,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *5"

  • weechat.key.meta-j,0,6

    • description: "meta-j,0,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *6"

  • weechat.key.meta-j,0,7

    • description: "meta-j,0,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *7"

  • weechat.key.meta-j,0,8

    • description: "meta-j,0,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *8"

  • weechat.key.meta-j,0,9

    • description: "meta-j,0,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *9"

  • weechat.key.meta-j,1,0

    • description: "meta-j,1,0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *10"

  • weechat.key.meta-j,1,1

    • description: "meta-j,1,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *11"

  • weechat.key.meta-j,1,2

    • description: "meta-j,1,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *12"

  • weechat.key.meta-j,1,3

    • description: "meta-j,1,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *13"

  • weechat.key.meta-j,1,4

    • description: "meta-j,1,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *14"

  • weechat.key.meta-j,1,5

    • description: "meta-j,1,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *15"

  • weechat.key.meta-j,1,6

    • description: "meta-j,1,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *16"

  • weechat.key.meta-j,1,7

    • description: "meta-j,1,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *17"

  • weechat.key.meta-j,1,8

    • description: "meta-j,1,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *18"

  • weechat.key.meta-j,1,9

    • description: "meta-j,1,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *19"

  • weechat.key.meta-j,2,0

    • description: "meta-j,2,0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *20"

  • weechat.key.meta-j,2,1

    • description: "meta-j,2,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *21"

  • weechat.key.meta-j,2,2

    • description: "meta-j,2,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *22"

  • weechat.key.meta-j,2,3

    • description: "meta-j,2,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *23"

  • weechat.key.meta-j,2,4

    • description: "meta-j,2,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *24"

  • weechat.key.meta-j,2,5

    • description: "meta-j,2,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *25"

  • weechat.key.meta-j,2,6

    • description: "meta-j,2,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *26"

  • weechat.key.meta-j,2,7

    • description: "meta-j,2,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *27"

  • weechat.key.meta-j,2,8

    • description: "meta-j,2,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *28"

  • weechat.key.meta-j,2,9

    • description: "meta-j,2,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *29"

  • weechat.key.meta-j,3,0

    • description: "meta-j,3,0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *30"

  • weechat.key.meta-j,3,1

    • description: "meta-j,3,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *31"

  • weechat.key.meta-j,3,2

    • description: "meta-j,3,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *32"

  • weechat.key.meta-j,3,3

    • description: "meta-j,3,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *33"

  • weechat.key.meta-j,3,4

    • description: "meta-j,3,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *34"

  • weechat.key.meta-j,3,5

    • description: "meta-j,3,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *35"

  • weechat.key.meta-j,3,6

    • description: "meta-j,3,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *36"

  • weechat.key.meta-j,3,7

    • description: "meta-j,3,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *37"

  • weechat.key.meta-j,3,8

    • description: "meta-j,3,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *38"

  • weechat.key.meta-j,3,9

    • description: "meta-j,3,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *39"

  • weechat.key.meta-j,4,0

    • description: "meta-j,4,0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *40"

  • weechat.key.meta-j,4,1

    • description: "meta-j,4,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *41"

  • weechat.key.meta-j,4,2

    • description: "meta-j,4,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *42"

  • weechat.key.meta-j,4,3

    • description: "meta-j,4,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *43"

  • weechat.key.meta-j,4,4

    • description: "meta-j,4,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *44"

  • weechat.key.meta-j,4,5

    • description: "meta-j,4,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *45"

  • weechat.key.meta-j,4,6

    • description: "meta-j,4,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *46"

  • weechat.key.meta-j,4,7

    • description: "meta-j,4,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *47"

  • weechat.key.meta-j,4,8

    • description: "meta-j,4,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *48"

  • weechat.key.meta-j,4,9

    • description: "meta-j,4,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *49"

  • weechat.key.meta-j,5,0

    • description: "meta-j,5,0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *50"

  • weechat.key.meta-j,5,1

    • description: "meta-j,5,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *51"

  • weechat.key.meta-j,5,2

    • description: "meta-j,5,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *52"

  • weechat.key.meta-j,5,3

    • description: "meta-j,5,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *53"

  • weechat.key.meta-j,5,4

    • description: "meta-j,5,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *54"

  • weechat.key.meta-j,5,5

    • description: "meta-j,5,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *55"

  • weechat.key.meta-j,5,6

    • description: "meta-j,5,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *56"

  • weechat.key.meta-j,5,7

    • description: "meta-j,5,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *57"

  • weechat.key.meta-j,5,8

    • description: "meta-j,5,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *58"

  • weechat.key.meta-j,5,9

    • description: "meta-j,5,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *59"

  • weechat.key.meta-j,6,0

    • description: "meta-j,6,0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *60"

  • weechat.key.meta-j,6,1

    • description: "meta-j,6,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *61"

  • weechat.key.meta-j,6,2

    • description: "meta-j,6,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *62"

  • weechat.key.meta-j,6,3

    • description: "meta-j,6,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *63"

  • weechat.key.meta-j,6,4

    • description: "meta-j,6,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *64"

  • weechat.key.meta-j,6,5

    • description: "meta-j,6,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *65"

  • weechat.key.meta-j,6,6

    • description: "meta-j,6,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *66"

  • weechat.key.meta-j,6,7

    • description: "meta-j,6,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *67"

  • weechat.key.meta-j,6,8

    • description: "meta-j,6,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *68"

  • weechat.key.meta-j,6,9

    • description: "meta-j,6,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *69"

  • weechat.key.meta-j,7,0

    • description: "meta-j,7,0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *70"

  • weechat.key.meta-j,7,1

    • description: "meta-j,7,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *71"

  • weechat.key.meta-j,7,2

    • description: "meta-j,7,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *72"

  • weechat.key.meta-j,7,3

    • description: "meta-j,7,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *73"

  • weechat.key.meta-j,7,4

    • description: "meta-j,7,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *74"

  • weechat.key.meta-j,7,5

    • description: "meta-j,7,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *75"

  • weechat.key.meta-j,7,6

    • description: "meta-j,7,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *76"

  • weechat.key.meta-j,7,7

    • description: "meta-j,7,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *77"

  • weechat.key.meta-j,7,8

    • description: "meta-j,7,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *78"

  • weechat.key.meta-j,7,9

    • description: "meta-j,7,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *79"

  • weechat.key.meta-j,8,0

    • description: "meta-j,8,0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *80"

  • weechat.key.meta-j,8,1

    • description: "meta-j,8,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *81"

  • weechat.key.meta-j,8,2

    • description: "meta-j,8,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *82"

  • weechat.key.meta-j,8,3

    • description: "meta-j,8,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *83"

  • weechat.key.meta-j,8,4

    • description: "meta-j,8,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *84"

  • weechat.key.meta-j,8,5

    • description: "meta-j,8,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *85"

  • weechat.key.meta-j,8,6

    • description: "meta-j,8,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *86"

  • weechat.key.meta-j,8,7

    • description: "meta-j,8,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *87"

  • weechat.key.meta-j,8,8

    • description: "meta-j,8,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *88"

  • weechat.key.meta-j,8,9

    • description: "meta-j,8,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *89"

  • weechat.key.meta-j,9,0

    • description: "meta-j,9,0" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *90"

  • weechat.key.meta-j,9,1

    • description: "meta-j,9,1" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *91"

  • weechat.key.meta-j,9,2

    • description: "meta-j,9,2" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *92"

  • weechat.key.meta-j,9,3

    • description: "meta-j,9,3" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *93"

  • weechat.key.meta-j,9,4

    • description: "meta-j,9,4" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *94"

  • weechat.key.meta-j,9,5

    • description: "meta-j,9,5" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *95"

  • weechat.key.meta-j,9,6

    • description: "meta-j,9,6" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *96"

  • weechat.key.meta-j,9,7

    • description: "meta-j,9,7" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *97"

  • weechat.key.meta-j,9,8

    • description: "meta-j,9,8" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *98"

  • weechat.key.meta-j,9,9

    • description: "meta-j,9,9" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer *99"

  • weechat.key.meta-j,meta-f

    • description: "meta-j,meta-f" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer -"

  • weechat.key.meta-j,meta-l

    • description: "meta-j,meta-l" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer +"

  • weechat.key.meta-j,meta-r

    • description: "meta-j,meta-r" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/server raw"

  • weechat.key.meta-j,meta-s

    • description: "meta-j,meta-s" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/server jump"

  • weechat.key.meta-k

    • description: "meta-k" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input grab_key_command"

  • weechat.key.meta-l

    • description: "meta-l" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window bare"

  • weechat.key.meta-left

    • description: "meta-left" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer -1"

  • weechat.key.meta-m

    • description: "meta-m" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/mute mouse toggle"

  • weechat.key.meta-n

    • description: "meta-n" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_next_highlight"

  • weechat.key.meta-p

    • description: "meta-p" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_previous_highlight"

  • weechat.key.meta-pgdn

    • description: "meta-pgdn" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_down"

  • weechat.key.meta-pgup

    • description: "meta-pgup" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_up"

  • weechat.key.meta-r

    • description: "meta-r" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input delete_line"

  • weechat.key.meta-return

    • description: "meta-return" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input insert \n"

  • weechat.key.meta-right

    • description: "meta-right" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer +1"

  • weechat.key.meta-s

    • description: "meta-s" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/mute spell toggle"

  • weechat.key.meta-u

    • description: "meta-u" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_unread"

  • weechat.key.meta-up

    • description: "meta-up" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer -1"

  • weechat.key.meta-w,meta-b

    • description: "meta-w,meta-b" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window balance"

  • weechat.key.meta-w,meta-down

    • description: "meta-w,meta-down" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window down"

  • weechat.key.meta-w,meta-left

    • description: "meta-w,meta-left" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window left"

  • weechat.key.meta-w,meta-right

    • description: "meta-w,meta-right" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window right"

  • weechat.key.meta-w,meta-s

    • description: "meta-w,meta-s" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window swap"

  • weechat.key.meta-w,meta-up

    • description: "meta-w,meta-up" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window up"

  • weechat.key.meta-x

    • description: "meta-x" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/buffer zoom"

  • weechat.key.meta-z

    • description: "meta-z" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window zoom"

  • weechat.key.pgdn

    • description: "pgdn" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window page_down"

  • weechat.key.pgup

    • description: "pgup" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window page_up"

  • weechat.key.return

    • description: "return" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input return"

  • weechat.key.right

    • description: "right" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_next_char"

  • weechat.key.shift-down

    • description: "shift-down" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_next_line"

  • weechat.key.shift-end

    • description: "shift-end" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_end_of_input"

  • weechat.key.shift-home

    • description: "shift-home" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_beginning_of_input"

  • weechat.key.shift-left

    • description: "shift-left" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_previous_char"

  • weechat.key.shift-right

    • description: "shift-right" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_next_char"

  • weechat.key.shift-tab

    • description: "shift-tab" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input complete_previous"

  • weechat.key.shift-up

    • description: "shift-up" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input move_previous_line"

  • weechat.key.tab

    • description: "tab" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input complete_next"

  • weechat.key.up

    • description: "up" (default)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input history_previous"

  • weechat.key_cursor.@chat:Q

    • description: "@chat:Q" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:chat_quote_time_prefix_message;/cursor stop"

  • weechat.key_cursor.@chat:l

    • description: "@chat:l" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:chat_quote_focused_line;/cursor stop"

  • weechat.key_cursor.@chat:m

    • description: "@chat:m" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:chat_quote_message;/cursor stop"

  • weechat.key_cursor.@chat:q

    • description: "@chat:q" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:chat_quote_prefix_message;/cursor stop"

  • weechat.key_cursor.@item(buffer_nicklist):K

    • description: "@item(buffer_nicklist):K" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/kickban ${nick}"

  • weechat.key_cursor.@item(buffer_nicklist):b

    • description: "@item(buffer_nicklist):b" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/ban ${nick}"

  • weechat.key_cursor.@item(buffer_nicklist):k

    • description: "@item(buffer_nicklist):k" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/kick ${nick}"

  • weechat.key_cursor.@item(buffer_nicklist):q

    • description: "@item(buffer_nicklist):q" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/query ${nick};/cursor stop"

  • weechat.key_cursor.@item(buffer_nicklist):w

    • description: "@item(buffer_nicklist):w" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/whois ${nick}"

  • weechat.key_cursor.down

    • description: "down" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move down"

  • weechat.key_cursor.left

    • description: "left" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move left"

  • weechat.key_cursor.meta-down

    • description: "meta-down" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move edge_bottom"

  • weechat.key_cursor.meta-end

    • description: "meta-end" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move bottom_right"

  • weechat.key_cursor.meta-home

    • description: "meta-home" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move top_left"

  • weechat.key_cursor.meta-left

    • description: "meta-left" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move edge_left"

  • weechat.key_cursor.meta-right

    • description: "meta-right" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move edge_right"

  • weechat.key_cursor.meta-shift-down

    • description: "meta-shift-down" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move area_down"

  • weechat.key_cursor.meta-shift-left

    • description: "meta-shift-left" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move area_left"

  • weechat.key_cursor.meta-shift-right

    • description: "meta-shift-right" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move area_right"

  • weechat.key_cursor.meta-shift-up

    • description: "meta-shift-up" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move area_up"

  • weechat.key_cursor.meta-up

    • description: "meta-up" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move edge_top"

  • weechat.key_cursor.return

    • description: "return" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor stop"

  • weechat.key_cursor.right

    • description: "right" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move right"

  • weechat.key_cursor.up

    • description: "up" (cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor move up"

  • weechat.key_histsearch.ctrl-o

    • description: "ctrl-o" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input history_use_get_next"

  • weechat.key_histsearch.ctrl-q

    • description: "ctrl-q" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_stop"

  • weechat.key_histsearch.ctrl-r

    • description: "ctrl-r" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_previous"

  • weechat.key_histsearch.ctrl-s

    • description: "ctrl-s" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_next"

  • weechat.key_histsearch.ctrl-x

    • description: "ctrl-x" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_switch_regex"

  • weechat.key_histsearch.down

    • description: "down" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_next"

  • weechat.key_histsearch.meta-c

    • description: "meta-c" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_switch_case"

  • weechat.key_histsearch.return

    • description: "return" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_stop_here"

  • weechat.key_histsearch.tab

    • description: "tab" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_switch_where"

  • weechat.key_histsearch.up

    • description: "up" (histsearch)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_previous"

  • weechat.key_mouse.@*:button3

    • description: "@*:button3" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/cursor go ${_x},${_y}"

  • weechat.key_mouse.@bar(buflist):ctrl-wheeldown

    • description: "@bar(buflist):ctrl-wheeldown" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@bar(buflist):ctrl-wheelup

    • description: "@bar(buflist):ctrl-wheelup" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@bar(input):button2

    • description: "@bar(input):button2" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input grab_mouse_area"

  • weechat.key_mouse.@bar(nicklist):button1-gesture-down

    • description: "@bar(nicklist):button1-gesture-down" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist ${_window_number} +100%"

  • weechat.key_mouse.@bar(nicklist):button1-gesture-down-long

    • description: "@bar(nicklist):button1-gesture-down-long" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist ${_window_number} e"

  • weechat.key_mouse.@bar(nicklist):button1-gesture-up

    • description: "@bar(nicklist):button1-gesture-up" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist ${_window_number} -100%"

  • weechat.key_mouse.@bar(nicklist):button1-gesture-up-long

    • description: "@bar(nicklist):button1-gesture-up-long" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll nicklist ${_window_number} b"

  • weechat.key_mouse.@bar:wheeldown

    • description: "@bar:wheeldown" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll ${_bar_name} ${_window_number} +20%"

  • weechat.key_mouse.@bar:wheelup

    • description: "@bar:wheelup" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/bar scroll ${_bar_name} ${_window_number} -20%"

  • weechat.key_mouse.@chat(fset.fset):button1

    • description: "@chat(fset.fset):button1" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/fset -go ${fset_option_index}"

  • weechat.key_mouse.@chat(fset.fset):button2*

    • description: "@chat(fset.fset):button2*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:fset_mouse"

  • weechat.key_mouse.@chat(fset.fset):wheeldown

    • description: "@chat(fset.fset):wheeldown" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/fset -down 5"

  • weechat.key_mouse.@chat(fset.fset):wheelup

    • description: "@chat(fset.fset):wheelup" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/fset -up 5"

  • weechat.key_mouse.@chat(irc.list_*):button1

    • description: "@chat(irc.list_*):button1" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/list -go ${_chat_line_y}"

  • weechat.key_mouse.@chat(irc.list_*):button2*

    • description: "@chat(irc.list_*):button2*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:irc_list_mouse"

  • weechat.key_mouse.@chat(irc.list_*):wheeldown

    • description: "@chat(irc.list_*):wheeldown" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/list -down 5"

  • weechat.key_mouse.@chat(irc.list_*):wheelup

    • description: "@chat(irc.list_*):wheelup" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/list -up 5"

  • weechat.key_mouse.@chat(script.scripts):button1

    • description: "@chat(script.scripts):button1" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/script -go ${_chat_line_y}"

  • weechat.key_mouse.@chat(script.scripts):button2

    • description: "@chat(script.scripts):button2" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/script -go ${_chat_line_y};/script installremove -q ${script_name_with_extension}"

  • weechat.key_mouse.@chat(script.scripts):wheeldown

    • description: "@chat(script.scripts):wheeldown" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/script -down 5"

  • weechat.key_mouse.@chat(script.scripts):wheelup

    • description: "@chat(script.scripts):wheelup" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/script -up 5"

  • weechat.key_mouse.@chat:button1

    • description: "@chat:button1" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number}"

  • weechat.key_mouse.@chat:button1-gesture-left

    • description: "@chat:button1-gesture-left" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/buffer -1"

  • weechat.key_mouse.@chat:button1-gesture-left-long

    • description: "@chat:button1-gesture-left-long" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/buffer 1"

  • weechat.key_mouse.@chat:button1-gesture-right

    • description: "@chat:button1-gesture-right" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/buffer +1"

  • weechat.key_mouse.@chat:button1-gesture-right-long

    • description: "@chat:button1-gesture-right-long" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/buffer +"

  • weechat.key_mouse.@chat:ctrl-wheeldown

    • description: "@chat:ctrl-wheeldown" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_horiz -window ${_window_number} +10%"

  • weechat.key_mouse.@chat:ctrl-wheelup

    • description: "@chat:ctrl-wheelup" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_horiz -window ${_window_number} -10%"

  • weechat.key_mouse.@chat:wheeldown

    • description: "@chat:wheeldown" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_down -window ${_window_number}"

  • weechat.key_mouse.@chat:wheelup

    • description: "@chat:wheelup" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window scroll_up -window ${_window_number}"

  • weechat.key_mouse.@item(buffer_nicklist):button1

    • description: "@item(buffer_nicklist):button1" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/query ${nick}"

  • weechat.key_mouse.@item(buffer_nicklist):button1-gesture-left

    • description: "@item(buffer_nicklist):button1-gesture-left" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/kick ${nick}"

  • weechat.key_mouse.@item(buffer_nicklist):button1-gesture-left-long

    • description: "@item(buffer_nicklist):button1-gesture-left-long" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/kickban ${nick}"

  • weechat.key_mouse.@item(buffer_nicklist):button2

    • description: "@item(buffer_nicklist):button2" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/whois ${nick}"

  • weechat.key_mouse.@item(buffer_nicklist):button2-gesture-left

    • description: "@item(buffer_nicklist):button2-gesture-left" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/window ${_window_number};/ban ${nick}"

  • weechat.key_mouse.@item(buflist):button1*

    • description: "@item(buflist):button1*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@item(buflist):button2*

    • description: "@item(buflist):button2*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@item(buflist2):button1*

    • description: "@item(buflist2):button1*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@item(buflist2):button2*

    • description: "@item(buflist2):button2*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@item(buflist3):button1*

    • description: "@item(buflist3):button1*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@item(buflist3):button2*

    • description: "@item(buflist3):button2*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@item(buflist4):button1*

    • description: "@item(buflist4):button1*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@item(buflist4):button2*

    • description: "@item(buflist4):button2*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@item(buflist5):button1*

    • description: "@item(buflist5):button1*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_mouse.@item(buflist5):button2*

    • description: "@item(buflist5):button2*" (mouse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "hsignal:buflist_mouse"

  • weechat.key_search.ctrl-q

    • description: "ctrl-q" (search)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_stop"

  • weechat.key_search.ctrl-r

    • description: "ctrl-r" (search)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_previous"

  • weechat.key_search.ctrl-s

    • description: "ctrl-s" (search)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_next"

  • weechat.key_search.ctrl-x

    • description: "ctrl-x" (search)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_switch_regex"

  • weechat.key_search.down

    • description: "down" (search)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_next"

  • weechat.key_search.meta-c

    • description: "meta-c" (search)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_switch_case"

  • weechat.key_search.return

    • description: "return" (search)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_stop_here"

  • weechat.key_search.tab

    • description: "tab" (search)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_switch_where"

  • weechat.key_search.up

    • description: "up" (search)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/input search_previous"

  • weechat.look.align_end_of_lines

    • description: alignement pour la fin des lignes (toutes les lignes après la première) : elles démarrent sous cette donnée (time, buffer, prefix, suffix, message (par défaut))

    • type: énuméré

    • valeurs: time, buffer, prefix, suffix, message

    • valeur par défaut: message

  • weechat.look.align_multiline_words

    • description: alignement pour les mots sur plusieurs lignes selon l'option weechat.look.align_end_of_lines ; si désactivé, les mots sur plusieurs lignes ne seront pas alignés, ce qui peut être pratique pour ne pas casser les longs URLs

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.bar_more_down

    • description: chaîne affichée quand la barre peut être défilée vers le bas (pour les barres avec un remplissage différent de "horizontal")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "+"+

  • weechat.look.bar_more_left

    • description: chaîne affichée quand la barre peut être défilée vers la gauche (pour les barres avec un remplissage "horizontal")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "<<"

  • weechat.look.bar_more_right

    • description: chaîne affichée quand la barre peut être défilée vers la droite (pour les barres avec un remplissage "horizontal")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ">>"

  • weechat.look.bar_more_up

    • description: chaîne affichée quand la barre peut être défilée vers le haut (pour les barres avec un remplissage différent de "horizontal")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "--"

  • weechat.look.bare_display_exit_on_input

    • description: sortir du mode d'affichage dépouillé ("bare") sur tout changement dans la ligne de commande

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.bare_display_time_format

    • description: format de date/heure dans l'affichage dépouillé ("bare") (voir man strftime pour le format de date/heure, des caractères de conversion supplémentaires sont supportés, voir la fonction util_strftimeval dans la Référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "%H:%M"

  • weechat.look.buffer_auto_renumber

    • description: renuméroter automatiquement les tampons pour qu'ils aient des numéros consécutifs et démarrent au numéro 1 ; si désactivé, des trous entre les numéros de tampons sont autorisés et le premier tampon peut avoir un numéro supérieur à 1

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.buffer_notify_default

    • description: niveau de notification par défaut pour les tampons (utilisé pour dire à WeeChat si le tampon doit être affiché dans la hotlist ou non, selon l'importance du message) : all=tous les messages (par défaut), message=messages+highlights, highlight=highlights seulement, none=ne jamais afficher dans la hotlist

    • type: énuméré

    • valeurs: none, highlight, message, all

    • valeur par défaut: all

  • weechat.look.buffer_position

    • description: position d'un nouveau tampon : end = après la fin de la liste (numéro = dernier numéro + 1), first_gap = au premier numéro disponible dans la liste (après la fin de la liste si aucun numéro n'est disponible) ; cette option est utilisée seulement si le tampon n'a pas de numéro dans le "layout"

    • type: énuméré

    • valeurs: end, first_gap

    • valeur par défaut: end

  • weechat.look.buffer_search_case_sensitive

    • description: recherche par défaut dans le tampon : sensible à la casse ou non

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.buffer_search_force_default

    • description: forcer les valeurs par défaut pour la recherche de texte dans le tampon (au lieu d'utiliser les valeurs de la dernière recherche dans le tampon)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.buffer_search_history

    • description: recherche par défaut dans l'historique de la ligne de commande : local (tampon) ou historique global

    • type: énuméré

    • valeurs: local, global

    • valeur par défaut: local

  • weechat.look.buffer_search_regex

    • description: recherche par défaut dans le tampon : si activé, rechercher une expression régulière POSIX étendue, sinon rechercher du texte simple

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.buffer_search_where

    • description: recherche par défaut dans le tampon : dans le message, le préfixe, le préfixe et le message

    • type: énuméré

    • valeurs: prefix, message, prefix_message

    • valeur par défaut: prefix_message

  • weechat.look.buffer_time_format

    • description: format de date/heure pour chaque ligne affichée dans les tampons (voir man strftime pour le format de date/heure, des caractères de conversion supplémentaires sont supportés, voir la fonction util_strftimeval dans la Référence API extension) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval) ; la variable "${highlight}" peut être utilisée dans une condition pour avoir un format spécifique aux lignes avec highlight (voir aussi l'option weechat.look.highlight_prefix) ; par exemple l'heure avec des niveaux de gris : "${color:252}%H${color:243}%M${color:237}%S", le même format avec des millisecondes : "${color:252}%H${color:243}%M${color:237}%S.%.3", fond rouge in cas de highlight : "${if:${highlight}?${color:,red}}%H:%M:%S", fond rouge en cas de highlight avec des niveaux de gris : "${if:${highlight}?${color:yellow,124}%H${color:187}%M${color:181}%S:${color:252}%H${color:243}%M${color:237}%S}"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "%H:%M:%S"

  • weechat.look.buffer_time_same

    • description: heure affichée pour un message avec la même heure que le message précédent ; utilisez un espace " " pour cacher l'heure, une autre chaîne pour l'afficher à la place de l'heure, ou une chaîne vide pour désactiver cette fonctionnalité (afficher l'heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.chat_space_right

    • description: garder un espace sur la droite de la zone de discussion s'il y a une barre affichée sur la droite (pour le texte et le marqueur de lecture)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.color_basic_force_bold

    • description: forcer l'attribut "bold" (gras) pour les couleurs claires et "darkgray" dans les couleurs de base (cette option est désactivée par défaut : le gras est utilisé seulement si le terminal a moins de 16 couleurs)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.color_inactive_buffer

    • description: utiliser une couleur différente pour les lignes dans un tampon inactif (si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.color_inactive_message

    • description: utiliser une couleur différente pour un message inactif (quand la fenêtre n'est pas la fenêtre courante, ou si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.color_inactive_prefix

    • description: utiliser une couleur différente pour le préfixe inactif (quand la fenêtre n'est pas la fenêtre courante, ou si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.color_inactive_prefix_buffer

    • description: utiliser une couleur différente pour le nom de tampon inactif dans le préfixe (quand la fenêtre n'est pas la fenêtre courante, ou si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.color_inactive_time

    • description: utiliser une couleur différente pour l'heure inactive (quand la fenêtre n'est pas la fenêtre courante, ou si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.color_inactive_window

    • description: utiliser une couleur différente pour les lignes dans une fenêtre inactive (quand la fenêtre n'est pas la fenêtre courante)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.color_nick_offline

    • description: utiliser une couleur différente pour les pseudos déconnectés (qui ne sont plus dans la liste de pseudos)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.color_pairs_auto_reset

    • description: réinitialisation automatique de la table des paires de couleurs quand le nombre de paires disponibles est inférieur ou égal à ce nombre (-1 = désactiver la réinitialisation automatique, et donc un "/color reset" manuel est nécessaire quand la table est pleine)

    • type: entier

    • valeurs: -1 .. 256

    • valeur par défaut: 5

  • weechat.look.color_real_white

    • description: si activé, utilise la vraie couleur blanche, désactivé par défaut pour les terminaux avec un fond blanc (si vous n'utilisez jamais de fond blanc, vous devriez activer cette option pour voir du vrai blanc au lieu de la couleur d'avant plan par défaut du terminal)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.command_chars

    • description: caractères utilisés pour déterminer si la chaîne entrée est une commande ou non : l'entrée doit démarrer avec un de ces caractères ; la barre oblique ("/") est toujours considérée comme un préfixe de commande (exemple : ".$")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.command_incomplete

    • description: si activé, les commandes incomplètes et non ambiguës sont autorisées, par exemple /he pour /help

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.config_permissions

    • description: permissions pour les fichiers de configuration (*.conf), sous forme de valeur octale (voir man chmod) ; doit être un nombre avec 3 chiffres, chaque chiffre peut être 0 (aucune permission), 2 (écriture seule), 4 (lecture seule) ou 6 (lecture et écriture) ; le premier chiffre doit être 6 pour que l'utilisateur puisse lire et écrire le fichier ; par défaut les fichiers de configuration peuvent être lus et écrits par l'utilisateur seulement, pour des raisons de sécurité ; par exemple 660 = "rw-rw-r--" = fichier en lecture et écriture pour l'utilisateur et les membres du groupe

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "600"

  • weechat.look.confirm_quit

    • description: si activé, la commande /quit doit être confirmée par le paramètre supplémentaire "-yes" (voir /help quit)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.confirm_upgrade

    • description: si activé, la commande /upgrade doit être confirmée par le paramètre supplémentaire "-yes" (voir /help upgrade)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.day_change

    • description: affiche un message quand le jour change

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.day_change_message_1date

    • description: message affiché lorsque le jour a changé, avec une date affichée (par exemple au début d'un tampon) (voir man strftime pour le format de date/heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "-- %a, %d %b %Y --"

  • weechat.look.day_change_message_2dates

    • description: message affiché lorsque le jour a changé, avec deux dates affichées (entre deux messages) ; les formats pour la seconde date doivent démarrer par deux "%" car strftime est appelé deux fois sur cette chaîne (voir man strftime pour le format de date/heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "-- %%a, %%d %%b %%Y (%a, %d %b %Y) --"

  • weechat.look.eat_newline_glitch

    • description: si activé, le eat_newline_glitch sera positionné à 0 ; cela est utilisé pour ne pas ajouter de nouvelle ligne à la fin de chaque ligne, et donc ne pas couper le texte quand vous copiez/collez du texte depuis WeeChat vers une autre application (cette option est désactivée par défaut car elle peut causer de sérieux problèmes d'affichages)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.emphasized_attributes

    • description: attributs pour le texte mis en valeur : un ou plusieurs caractères d'attributs ("%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné) ; si la chaîne est vide, les couleurs weechat.color.emphasized* sont utilisées

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.highlight

    • description: liste des mots pour la notification séparés par des virgules ; la comparaison est insensible à la casse (utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse), les mots peuvent commencer ou se terminer par "*" pour une comparaison partielle ; exemple : "test,(?-i)*toto*,flash*"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.highlight_disable_regex

    • description: expression régulière POSIX étendue utilisée pour empêcher un highlight sur un message : cette option a une priorité plus élevée sur les autres options de highlight (si la chaîne est trouvée dans le message, le highlight est désactivé et les autres options sont ignorées), l'expression régulière est insensible à la casse (utilisez "(?-i)" au début pour la rendre sensible à la casse), exemples : "", "(?-i)"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.highlight_prefix

    • description: utiliser une couleur spécifique pour le préfixe de la ligne en cas de highlight (voir aussi l'option weechat.look.buffer_time_format)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.highlight_regex

    • description: expression régulière POSIX étendue utilisée pour vérifier si un message a un "highlight" ou non, au moins une correspondance dans la chaîne doit être entourée de délimiteurs (caractères différents de : alphanumérique, "-", "_" et "|"), l'expression régulière est insensible à la casse (utilisez "(?-i)" au début pour la rendre sensible à la casse), exemples : "flashcode|flashy", "(?-i)FlashCode|flashy"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.highlight_tags

    • description: liste des étiquettes pour le highlight (séparées par des virgules) ; la comparaison ne tient pas compte de la casse ; le caractère joker "*" est autorisé dans chaque étiquette ; plusieurs étiquettes peuvent être séparées par "+" pour faire un "et" logique entre les étiquettes ; exemples : "nick_flashcode" pour les messages du pseudo "FlashCode", "irc_notice+nick_toto*" pour les notices d'un pseudo commençant par "toto"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.hotlist_add_conditions

    • description: conditions pour ajouter un tampon dans la hotlist (si le niveau de notification est OK pour le tampon) ; vous pouvez utiliser dans ces conditions : \"window\" (pointeur de la fenêtre courante), \"buffer\" (pointeur du tampon à ajouter dans la hotlist), "priority" (0 = faible, 1 = message, 2 = privé, 3 = highlight) ; par défaut un tampon est ajouté dans la hotlist si vous êtes absent, ou si le tampon n'est pas visible à l'écran (pas affiché dans une fenêtre), ou si au moins un client relay est connecté via le protocole weechat

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${away} || ${buffer.num_displayed} == 0 || ${info:relay_client_count,weechat,connected} > 0"

  • weechat.look.hotlist_buffer_separator

    • description: chaîne affichée entre les tampons dans la hotlist

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ", "

  • weechat.look.hotlist_count_max

    • description: nombre maximum de compteurs de messages à afficher dans la hotlist pour un tampon : 0 = ne jamais afficher les compteurs de messages, autre nombre = afficher un maximum de N compteurs de messages (de la plus haute à la plus basse priorité)

    • type: entier

    • valeurs: 0 .. 4

    • valeur par défaut: 2

  • weechat.look.hotlist_count_min_msg

    • description: afficher les compteurs de messages si le nombre de messages est supérieur ou égal à cette valeur

    • type: entier

    • valeurs: 1 .. 100

    • valeur par défaut: 2

  • weechat.look.hotlist_names_count

    • description: nombre maximum de noms dans la liste d'activité (0 = pas de nom affiché, seulement les numéros de tampons)

    • type: entier

    • valeurs: 0 .. 10000

    • valeur par défaut: 3

  • weechat.look.hotlist_names_length

    • description: nombre maximum des noms dans la liste d'activité (0 = pas de limite)

    • type: entier

    • valeurs: 0 .. 32

    • valeur par défaut: 0

  • weechat.look.hotlist_names_level

    • description: niveau pour l'affichage des noms dans la liste d'activité (combinaison de : 1=join/part, 2=message, 4=privé, 8=highlight, par exemple : 12=privé+highlight)

    • type: entier

    • valeurs: 1 .. 15

    • valeur par défaut: 12

  • weechat.look.hotlist_names_merged_buffers

    • description: si défini, force l'affichage des noms dans la hotlist pour les tampons mélangés

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.hotlist_prefix

    • description: chaîne affichée au début de la hotlist

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "H: "

  • weechat.look.hotlist_remove

    • description: supprimer les tampons de la liste d'activité : buffer = supprimer tampon par tampon, merged = supprimer tous les tampons mélangés visibles d'un seul coup

    • type: énuméré

    • valeurs: buffer, merged

    • valeur par défaut: merged

  • weechat.look.hotlist_short_names

    • description: si défini, utilise des noms courts pour afficher les noms de tampons dans la hotlist (commence après le premier "." dans le nom)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.hotlist_sort

    • description: liste de champs séparés par des virgules pour trier la hotlist ; chaque champ est une variable hdata de la hotlist ("var") ou une variable hdata du tampon ("buffer.var") ; le caractère "-" peut être utilisé pour inverser l'ordre, le caractère "~" peut être utilisé pour effectuer une comparaison insensible à la casse ; exemples : "-priority,buffer.number" pour un tri sur la priorité de la hotlist puis par numéro de tampon, "-~buffer.full_name" pour un tri insensible à la casse et inversé sur le nom complet du tampon

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "-priority,time,time_usec"

  • weechat.look.hotlist_suffix

    • description: chaîne affichée à la fin de la hotlist

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.hotlist_unique_numbers

    • description: garde seulement des numéros uniques dans la hotlist (cela s'applique seulement aux éléments de la hotlist où le nom n'est PAS affiché après le numéro)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.hotlist_update_on_buffer_switch

    • description: mettre à jour la hotlist lors du changement de tampon

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.input_cursor_scroll

    • description: nombre de caractères affichés après la fin de la ligne de saisie lors d'un défilement pour afficher la fin de la ligne

    • type: entier

    • valeurs: 0 .. 100

    • valeur par défaut: 20

  • weechat.look.input_multiline_lead_linebreak

    • description: démarrer le texte d'entrée avec une nouvelle ligne lorsque la ligne de commande contient plusieurs lignes, pour aligner le début de chaque ligne

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.input_share

    • description: partage les commandes, le texte, ou les deux dans la zone de saisie pour tous les tampons (il y a toujours un historique local sur chaque tampon)

    • type: énuméré

    • valeurs: none, commands, text, all

    • valeur par défaut: none

  • weechat.look.input_share_overwrite

    • description: si défini et que la zone de saisie est partagée, écrase toujours la zone de saisie sur le tampon cible

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.input_undo_max

    • description: nombre maximum de "undo" pour la ligne de commande, par tampon (0 = undo désactivé)

    • type: entier

    • valeurs: 0 .. 65535

    • valeur par défaut: 32

  • weechat.look.item_away_message

    • description: afficher le message d'absence du serveur dans l'objet de barre d'absence

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.item_buffer_filter

    • description: chaîne utilisée pour montrer que des lignes sont filtrées dans le tampon courant (objet de barre "buffer_filter")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "*"

  • weechat.look.item_buffer_zoom

    • description: chaîne utilisée pour montrer le zoom sur un tampon mélangé (objet de barre "buffer_zoom")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "!"

  • weechat.look.item_mouse_status

    • description: chaîne utilisée pour montrer si la souris est activée (objet de barre "mouse_status")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "M"

  • weechat.look.item_time_format

    • description: format de date/heure pour l'objet de barre "time" (voir man strftime pour le format de date/heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "%H:%M"

  • weechat.look.jump_current_to_previous_buffer

    • description: sauter au tampon affiché précédemment lors du saut vers le numéro de tampon courant avec /buffer *N (où N est un numéro de tampon), pour facilement basculer à un autre tampon, puis revenir au tampon courant

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.jump_previous_buffer_when_closing

    • description: sauter au tampon précédemment visité lors de la fermeture d'un tampon (si désactivé, alors le saut se fait vers le numéro de tampon - 1)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.jump_smart_back_to_buffer

    • description: retourner au tampon initial après avoir atteint la fin de la hotlist

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.key_bind_safe

    • description: autoriser seulement l'association de touches "sûres" (commençant par un code ctrl ou meta)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.key_grab_delay

    • description: délai par défaut (en millisecondes) pour capturer une touche (en utilisant la touche par défaut alt-k) ; ce délai peut être remplacé dans la commande /input (voir /help input)

    • type: entier

    • valeurs: 1 .. 10000

    • valeur par défaut: 800

  • weechat.look.mouse

    • description: activer le support de la souris

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.nick_color_force

    • description: force la couleur pour certains pseudos : le hash calculé avec le pseudo pour trouver la couleur ne sera pas utilisé pour ces pseudos (le format est : "pseudo1:couleur1;pseudo2:couleur2") ; la recherche de pseudos s'effectue avec la casse exacte puis en minuscules, donc il est possible d'utiliser uniquement des minuscules pour les pseudos dans cette option ; la couleur peut inclure le fond avec le format "texte,fond", par exemple "yellow,red"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.nick_color_hash

    • description: algorithme de hash utilisé pour trouver la couleur du pseudo : djb2 = variante de djb2 (la position des lettres compte : les anagrammes d'un pseudo ont une couleur différente), sum = somme des lettres, djb2_32 = variante de djb2 en utilisant un entier sur 32 bits au lieu de 64 bits, sum_32 = somme des lettres en utilisant un entier sur 32 bits au lieu de 64 bits

    • type: énuméré

    • valeurs: djb2, sum, djb2_32, sum_32

    • valeur par défaut: djb2

  • weechat.look.nick_color_hash_salt

    • description: sel pour l'algorithme de hash utilisé pour trouver la couleur des pseudos (le pseudo est ajouté à ce sel et l'algorithme de hash opère sur cette chaîne) ; changer cette valeur permet de mélanger les couleurs des pseudos

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.nick_color_stop_chars

    • description: caractères utilisés pour l'arrêt dans le pseudo lors du calcul de la couleur avec les lettres du pseudo (au moins un caractère en dehors de cette liste doit être dans la chaîne avant de s'arrêter) (exemple : le pseudo "|nick|away" avec "|" dans les caractères retournera la couleur du pseudo "|nick") ; cette option a un impact sur l'option weechat.look.nick_color_force, donc le pseudo pour la couleur forcée ne doit pas contenir les caractères ignorés par cette option

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "_|["

  • weechat.look.nick_prefix

    • description: texte à afficher avant le pseudo dans le préfixe, exemple : "<"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.nick_suffix

    • description: texte à afficher après le pseudo dans le préfixe, exemple : ">"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.paste_bracketed

    • description: activer le mode du terminal "bracketed paste" (pas supporté par tous les terminaux/multiplexeurs) : dans ce mode, le texte collé est entouré avec des séquences de contrôle de sorte que WeeChat puisse différencier le texte collé du texte tapé ("ESC[200~", suivi par le texte collé, suivi par "ESC[201~")

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.paste_bracketed_timer_delay

    • description: forcer la fin du "bracketed paste" après ce délai (en secondes) si la séquence de contrôle pour la fin du "bracketed paste" ("ESC[201~") n'a pas été reçue à temps

    • type: entier

    • valeurs: 1 .. 60

    • valeur par défaut: 10

  • weechat.look.paste_max_lines

    • description: nombre maximum de lignes pour la détection de collage sans demander à l'utilisateur (-1 = désactiver cette fonctionnalité) ; cette option est utilisée seulement si l'objet de barre "input_paste" est utilisé dans au moins une barre (par défaut il est utilisé dans la barre "input")

    • type: entier

    • valeurs: -1 .. 2147483647

    • valeur par défaut: 100

  • weechat.look.prefix_action

    • description: préfixe pour les messages d'action (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: " *"

  • weechat.look.prefix_align

    • description: alignement de préfixe (none, left, right (par défaut))

    • type: énuméré

    • valeurs: none, left, right

    • valeur par défaut: right

  • weechat.look.prefix_align_max

    • description: taille maximum pour le préfixe (0 = pas de taille maximum)

    • type: entier

    • valeurs: 0 .. 128

    • valeur par défaut: 0

  • weechat.look.prefix_align_min

    • description: taille minimum pour le préfixe

    • type: entier

    • valeurs: 0 .. 128

    • valeur par défaut: 0

  • weechat.look.prefix_align_more

    • description: caractère à afficher si le préfixe est tronqué (doit être exactement un caractère à l'écran)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""+

  • weechat.look.prefix_align_more_after

    • description: afficher le caractère de troncature (par défaut "+") après le texte (en remplaçant l'espace qui devrait être affiché ici) ; si désactivé, le caractère de troncature remplace le dernier caractère du texte

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.prefix_buffer_align

    • description: alignement de préfixe pour le nom du tampon, quand plusieurs tampons sont mélangés avec le même numéro (none, left, right (par défaut))

    • type: énuméré

    • valeurs: none, left, right

    • valeur par défaut: right

  • weechat.look.prefix_buffer_align_max

    • description: taille maximum pour le nom du tampon, quand plusieurs tampons sont mélangés avec le même numéro (0 = pas de taille maximum)

    • type: entier

    • valeurs: 0 .. 128

    • valeur par défaut: 0

  • weechat.look.prefix_buffer_align_more

    • description: caractère à afficher si le nom du tampon est tronqué (lorsque plusieurs tampons sont mélangés avec le même numéro) (doit être exactement un caractère à l'écran)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""+

  • weechat.look.prefix_buffer_align_more_after

    • description: afficher le caractère de troncature (par défaut "+") après le texte (en remplaçant l'espace qui devrait être affiché ici) ; si désactivé, le caractère de troncature remplace le dernier caractère du texte

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.prefix_error

    • description: préfixe pour les messages d'erreur (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "=!="

  • weechat.look.prefix_join

    • description: préfixe pour les messages d'arrivée (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "-->"

  • weechat.look.prefix_network

    • description: préfixe pour les messages réseau (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "--"

  • weechat.look.prefix_quit

    • description: préfixe pour les messages de départ (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "<--"

  • weechat.look.prefix_same_nick

    • description: préfixe affiché pour un message avec le même pseudo que le précédent message mais pas le message suivant : utiliser un espace " " pour cacher le préfixe, une autre chaîne pour l'afficher à la place du préfixe, ou une chaîne vide pour désactiver cette fonctionnalité (afficher le préfixe)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.prefix_same_nick_middle

    • description: préfixe affiché pour un message avec le même pseudo que le précédent message et le message suivant : utiliser un espace " " pour cacher le préfixe, une autre chaîne pour l'afficher à la place du préfixe, ou une chaîne vide pour désactiver cette fonctionnalité (afficher le préfixe)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.prefix_suffix

    • description: chaîne affichée après le préfixe

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "│"

  • weechat.look.quote_nick_prefix

    • description: texte à afficher avant le pseudo dans la citation d'un message (voir /help cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "<"

  • weechat.look.quote_nick_suffix

    • description: texte à afficher après le pseudo dans la citation d'un message (voir /help cursor)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ">"

  • weechat.look.quote_time_format

    • description: format de date/heure dans la citation d'un message (voir /help cursor) (voir man strftime pour le format de date/heure, des caractères de conversion supplémentaires sont supportés, voir la fonction util_strftimeval dans la Référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "%H:%M:%S"

  • weechat.look.read_marker

    • description: utiliser un marqueur (ligne ou caractère) sur les tampons pour montrer la première ligne non lue

    • type: énuméré

    • valeurs: none, line, char

    • valeur par défaut: line

  • weechat.look.read_marker_always_show

    • description: toujours afficher le marqueur de lecture, même s'il est après la dernière ligne du tampon

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.read_marker_string

    • description: chaîne utilisée pour tracer la ligne du marqueur de lecture (la chaîne est répétée jusqu'à la fin de la ligne)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "- "

  • weechat.look.read_marker_update_on_buffer_switch

    • description: mettre à jour le marqueur de lecture lors du changement de tampon

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.save_config_on_exit

    • description: sauvegarder la configuration en quittant

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.save_config_with_fsync

    • description: utiliser fsync pour synchroniser le fichier de configuration avec le périphérique de stockage (voir man fsync) ; cela est plus lent mais devrait éviter toute perte de données en cas de panne de courant durant la sauvegarde du fichier de configuration

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.save_layout_on_exit

    • description: sauvegarder la disposition en quittant (tampons, fenêtres, ou les deux)

    • type: énuméré

    • valeurs: none, buffers, windows, all

    • valeur par défaut: none

  • weechat.look.scroll_amount

    • description: nombre de lignes pour le défilement avec scroll_up et scroll_down

    • type: entier

    • valeurs: 1 .. 2147483647

    • valeur par défaut: 3

  • weechat.look.scroll_bottom_after_switch

    • description: faire défiler en bas de la fenêtre après un basculement vers un autre tampon (ne pas sauvegarder la position du défilement dans les fenêtres) ; le défilement n'est fait que pour les tampons avec contenu formaté (pas le contenu libre)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.scroll_page_percent

    • description: pourcentage de l'écran à faire défiler lors du défilement avec page précédente ou suivante (par exemple 100 signifie une page, 50 une demi-page)

    • type: entier

    • valeurs: 1 .. 100

    • valeur par défaut: 100

  • weechat.look.search_text_not_found_alert

    • description: alerte l'utilisateur lorsque le texte cherché n'est pas trouvé dans le tampon

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.separator_horizontal

    • description: caractère utilisé pour tracer les séparateurs horizontaux autour des barres et fenêtres (une valeur vide tracera une vraie ligne avec ncurses, mais peut causer des problèmes d'affichage avec la sélection d'URL sous certains terminaux) ; la largeur à l'écran doit être exactement d'un caractère

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "-"

  • weechat.look.separator_vertical

    • description: caractère utilisé pour tracer les séparateurs verticaux autour des barres et fenêtres (une valeur vide tracera une vraie ligne avec ncurses) ; la largeur à l'écran doit être exactement d'un caractère

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.tab_width

    • description: nombre d'espaces utilisés pour afficher les tabulations dans les messages

    • type: entier

    • valeurs: 1 .. 64

    • valeur par défaut: 1

  • weechat.look.time_format

    • description: format de date/heure pour les dates converties en chaînes et affichées dans les messages (voir man strftime pour le format de date/heure)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "%a, %d %b %Y %T"

  • weechat.look.window_auto_zoom

    • description: zoomer automatiquement la fenêtre courante si le terminal devient trop petit pour afficher les fenêtres (utilisez alt-z pour dézoomer la fenêtre quand le terminal est suffisamment grand)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • weechat.look.window_separator_horizontal

    • description: afficher un séparateur horizontal entre les fenêtres

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.window_separator_vertical

    • description: afficher un séparateur vertical entre les fenêtres

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.look.window_title

    • description: titre pour la fenêtre (le terminal pour l'interface Curses), défini au démarrage ; une chaîne vide gardera le titre inchangé (note : le contenu est évalué, voir /help eval) ; exemple : "WeeChat ${info:version}"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.look.word_chars_highlight

    • description: liste de caractères (ou intervalle de caractères) séparés pas des virgules qui sont considérés comme faisant partie des mots pour les highlights ; chaque élément peut être un simple caractère, un intervalle de caractères (format : a-z), une classe de caractère large (par exemple "alnum", voir man wctype) ; un "!" avant un élément le rend négatif (c'est-à-dire le caractère ne fait PAS partie des mots) ; la valeur "*" correspond à n'importe quel caractère ; les caractères unicode sont autorisés avec le format \u1234, par exemple \u00A0 pour l'espace insécable (voir /help print pour les formats supportés)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "!\u00A0,-,_,|,alnum"

  • weechat.look.word_chars_input

    • description: liste de caractères (ou intervalle de caractères) séparés pas des virgules qui sont considérés comme faisant partie des mots pour la ligne de commande ; chaque élément peut être un simple caractère, un intervalle de caractères (format : a-z), une classe de caractère large (par exemple "alnum", voir man wctype) ; un "!" avant un élément le rend négatif (c'est-à-dire le caractère ne fait PAS partie des mots) ; la valeur "*" correspond à n'importe quel caractère ; les caractères unicode sont autorisés avec le format \u1234, par exemple \u00A0 pour l'espace insécable (voir /help print pour les formats supportés)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "!\u00A0,-,_,|,alnum"

  • weechat.network.connection_timeout

    • description: délai d'attente maximum (en secondes) pour la connexion à une machine distante (effectuée dans un processus fils)

    • type: entier

    • valeurs: 1 .. 2147483647

    • valeur par défaut: 60

  • weechat.network.gnutls_ca_system

    • description: charger les certificats des autorités de certification système au démarrage ; cela peut être désactivée pour économiser de la mémoire, seulement si vous n'utilisez pas du tout de connexions TLS

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.network.gnutls_ca_user

    • description: fichier(s) supplémentaire(s) avec des autorités de certification ; plusieurs fichiers doivent être séparés par ":" (chaque chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.network.gnutls_handshake_timeout

    • description: délai d'attente maximum (en secondes) pour la poignée de main ("handshake") gnutls

    • type: entier

    • valeurs: 1 .. 2147483647

    • valeur par défaut: 30

  • weechat.network.proxy_curl

    • description: nom du proxy utilisé pour télécharger les URLs avec Curl (utilisé pour télécharger la liste des scripts et dans les scripts appelant la fonction hook_process) ; le proxy doit être défini avec la commande /proxy

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.plugin.autoload

    • description: liste des extensions à charger automatiquement au démarrage (séparées par des virgules), "*" signifie toutes les extensions trouvées, un nom commençant par "!" est une valeur négative pour empêcher une extension d'être chargée, le caractère joker "*" est autorisé dans les noms (exemples : "*" ou "*,!lua,!tcl")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "*"

  • weechat.plugin.extension

    • description: liste d'extensions de noms de fichiers pour les extensions (séparées par des virgules)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ".so,.dll"

  • weechat.plugin.path

    • description: chemin de recherche des extensions (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${weechat_data_dir}/plugins"

  • weechat.plugin.save_config_on_unload

    • description: sauvegarder les fichiers de configuration lors du déchargement des extensions

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.signal.sighup

    • description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${if:${info:weechat_headless}?/reload:/quit -yes}"

  • weechat.signal.sigquit

    • description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/quit -yes"

  • weechat.signal.sigterm

    • description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "/quit -yes"

  • weechat.signal.sigusr1

    • description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.signal.sigusr2

    • description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.startup.command_after_plugins

    • description: commande exécutée quand WeeChat démarre, après le chargement des extensions ; plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.startup.command_before_plugins

    • description: commande exécutée quand WeeChat démarre, avant le chargement des extensions ; plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • weechat.startup.display_logo

    • description: afficher le logo WeeChat au démarrage

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.startup.display_version

    • description: afficher la version de WeeChat au démarrage

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • weechat.startup.sys_rlimit

    • description: définir les limites de ressource pour le processus WeeChat, le format est : "res1:limite1,res2:limite2" ; le nom de ressource est la fin de la constante (RLIMIT_XXX) en minuscules (voir man setrlimit pour les valeurs) ; une limite de -1 signifie "illimitée" ; exemple : définir une taille illimitée pour le fichier core et max 1 Go de mémoire virtuelle : "core:-1,as:1000000000"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

8. IRC

L’extension IRC permet de dialoguer avec d’autres personnes via le protocole IRC.

Elle est multi-serveurs, et offre toutes les commandes IRC supportées, y compris la discussion directe (DCC chat) et le transfert de fichier DCC (via l’extension xfer, voir extension Xfer).

8.1. Options de ligne de commande

Il est possible de passer une URL pour un ou plusieurs serveurs, comme suit :

irc[6][s]://[pseudo[:mot_passe]@]irc.example.org[:port][/canal][,canal[...]]

Exemple pour rejoindre #weechat et #weechat-fr sur le serveur irc.libera.chat, port par défaut (6667), avec le pseudo alice :

weechat irc://alice@irc.libera.chat/#weechat,#weechat-fr

8.2. Serveurs

Ajout d’un serveur

Par défaut aucun serveur n’est défini. Vous pouvez ajouter autant de serveurs que vous le souhaitez avec la commande /server.

Par exemple pour vous connecter à libera.chat  avec TLS (communications chiffrées) :

/server add libera irc.libera.chat
Note
Le port par défaut est 6697 et TLS (communications chiffrées) est activé.

Vous pouvez demander à WeeChat de se connecter automatiquement à ce serveur au démarrage :

/set irc.server.libera.autoconnect on

Pour vous authentifier, il est recommandé d’utiliser SASL (si le serveur le supporte), avec le mot de passe stocké sous forme de donnée sécurisée (voir aussi le chapitre sur l’authentification avec SASL) :

/set irc.server.libera.sasl_username "alice"
/secure set libera xxxxxxx
/set irc.server.libera.sasl_password "${sec.data.libera}"

Si SASL n’est pas supporté, vous pouvez utiliser une commande pour envoyer un message à nickserv :

/set irc.server.libera.command "/msg nickserv identify ${sec.data.libera}"
Note
En envoyant une commande à nickserv, vous pourriez être authentifié après avoir rejoint les canaux, ce qui peut être un problème sur certains canaux qui vous obligent à être authentifié pour les rejoindre. Dans ce cas, vous pouvez définir un délai après la commande : /set irc.server.libera.command_delay 5.

Options du serveur

Les options du serveur sont nommées irc.server.<serveur>.<option><serveur> est le nom interne du serveur et <option> le nom de l’option.
La valeur d’une option de serveur est héritée de irc.server_default.xxx si l’option de serveur a la valeur spéciale null.

Par exemple si vous avez créé le serveur libera avec les commandes ci-dessus, vous verrez ceci avec la commande /fset libera :

irc.server.libera.addresses             chaîne   "irc.libera.chat"
irc.server.libera.anti_flood            entier   null -> 2000
irc.server.libera.autoconnect           booléen  on
irc.server.libera.autojoin              chaîne   null -> ""
irc.server.libera.autojoin_delay        entier   null -> 0
irc.server.libera.autojoin_dynamic      booléen  null -> off
irc.server.libera.autoreconnect         booléen  null -> on
irc.server.libera.autoreconnect_delay   entier   null -> 10
irc.server.libera.autorejoin            booléen  null -> off
irc.server.libera.autorejoin_delay      entier   null -> 30
irc.server.libera.away_check            entier   null -> 0
irc.server.libera.away_check_max_nicks  entier   null -> 25
irc.server.libera.capabilities          chaîne   null -> "*"
irc.server.libera.charset_message       énuméré  null -> message
irc.server.libera.command               chaîne   null -> ""
irc.server.libera.command_delay         entier   null -> 0
irc.server.libera.connection_timeout    entier   null -> 60
irc.server.libera.default_chantypes     chaîne   null -> "#&"
irc.server.libera.ipv6                  énuméré  null -> auto
irc.server.libera.local_hostname        chaîne   null -> ""
irc.server.libera.msg_kick              chaîne   null -> ""
irc.server.libera.msg_part              chaîne   null -> "WeeChat ${info:version}"
irc.server.libera.msg_quit              chaîne   null -> "WeeChat ${info:version}"
irc.server.libera.nicks                 chaîne   null -> "${username},${username}2,${username}3,${username}4,${username}5"
irc.server.libera.nicks_alternate       booléen  null -> on
irc.server.libera.notify                chaîne   null -> ""
irc.server.libera.password              chaîne   null -> ""
irc.server.libera.proxy                 chaîne   null -> ""
irc.server.libera.realname              chaîne   null -> ""
irc.server.libera.registered_mode       chaîne   null -> "r"
irc.server.libera.sasl_fail             énuméré  null -> reconnect
irc.server.libera.sasl_key              chaîne   null -> ""
irc.server.libera.sasl_mechanism        énuméré  null -> plain
irc.server.libera.sasl_password         chaîne   "${sec.data.libera}"
irc.server.libera.sasl_timeout          entier   null -> 15
irc.server.libera.sasl_username         chaîne   "alice"
irc.server.libera.split_msg_max_length  entier   null -> 512
irc.server.libera.tls                   booléen  null -> on
irc.server.libera.tls_cert              chaîne   null -> ""
irc.server.libera.tls_dhkey_size        entier   null -> 2048
irc.server.libera.tls_fingerprint       chaîne   null -> ""
irc.server.libera.tls_password          chaîne   null -> ""
irc.server.libera.tls_priorities        chaîne   null -> "NORMAL"
irc.server.libera.tls_verify            booléen  null -> on
irc.server.libera.usermode              chaîne   null -> ""
irc.server.libera.username              chaîne   null -> "${username}"

Par exemple si vous voulez vous connecter automatiquement à tous les serveurs que vous ajoutez sans avoir à le faire sur chaque serveur, vous pouvez faire :

/set irc.server_default.autoconnect on

Et puis vous pouvez réinitialiser l’option du serveur pour qu’elle utilise la valeur héritée, qui est maintenant on au lieu de la valeur par défaut off :

/unset irc.server.libera.autoconnect

Certificats TLS

Lors de la connexion à un serveur IRC avec TLS, WeeChat vérifie par défaut que la connexion est entièrement de confiance.

Quelques options sont utilisées pour contrôler la connexion TLS :

weechat.network.gnutls_ca_system

charger les certificats des autorités de certification système au démarrage

weechat.network.gnutls_ca_user

fichier(s) supplémentaire(s) avec des autorités de certification

irc.server.xxx.tls_cert

fichier de certificat TLS utilisé pour authentifier automatiquement votre pseudo (par exemple CertFP sur oftc, voir ci-dessous)

irc.server.xxx.tls_dhkey_size

taille de clé utilisée pour l’échange de clé Diffie-Hellman (par défaut : 2048)

irc.server.xxx.tls_verify

vérifier que la connexion TLS est entièrement de confiance (activé par défaut)

Note
L’option "tls_verify" est activée par défaut, donc la vérification est stricte et peut échouer, même si cela pouvait être OK dans les versions inférieures à 0.3.1.
Premier exemple : se connecter à oftc en vérifiant le certificat
  • Importer le certificat sous le shell :

mkdir -p ~/.config/weechat/tls
wget -O ~/.config/weechat/tls/CAs.pem https://www.spi-inc.org/ca/spi-cacert.crt
Note
Vous devez remplacer ~/.config/weechat par le chemin vers votre répertoire de config WeeChat qui peut aussi être par exemple ~/.weechat.
Note
Il est possible de concaténer plusieurs certificats dans le fichier CAs.pem.
  • Sous WeeChat, avec le serveur "oftc" déjà ajouté :

/connect oftc
Second exemple : se connecter à oftc en utilisant CertFP
  • Créer le certificat sous le shell :

mkdir -p ~/.config/weechat/tls
cd ~/.config/weechat/tls
openssl req -nodes -newkey rsa:2048 -keyout nick.pem -x509 -days 365 -out nick.pem
Note
Vous devez remplacer ~/.config/weechat par le chemin vers votre répertoire de config WeeChat qui peut aussi être par exemple ~/.weechat.
  • Sous WeeChat, avec le serveur "oftc" déjà ajouté :

/set irc.server.oftc.tls_cert "${weechat_config_dir}/tls/nick.pem"
/connect oftc
/msg nickserv cert add

Pour plus d’informations, merci de consulter cette page .

Authentification avec SASL

WeeChat supporte l’authentification avec SASL, en utilisant différents mécanismes :

  • plain : mot de passe en clair (par défaut)

  • scram-sha-1 : SCRAM avec algorithme de hachage SHA-1

  • scram-sha-256 : SCRAM avec algorithme de hachage SHA-256

  • scram-sha-512 : SCRAM avec algorithme de hachage SHA-512

  • ecdsa-nist256p-challenge : challenge avec clé publique/privée

  • external : certificat TLS côté client

Les options dans le serveur sont :

  • sasl_mechanism : mécanisme à utiliser (voir ci-dessus)

  • sasl_timeout : délai d’attente maximum (en secondes) pour l’authentification

  • sasl_fail : action à effectuer si l’authentification échoue

  • sasl_username : nom d’utilisateur (pseudo)

  • sasl_password : mot de passe

  • sasl_key : fichier avec la clé privée ECC (pour le mécanisme ecdsa-nist256p-challenge)

SASL ECDSA-NIST256P-CHALLENGE

Vous devez générer une clé privée pour vous authentifier avec le mécanisme ECDSA-NIST256P-CHALLENGE (aucun mot de passe n’est requis lors de la connexion).

Vous pouvez générer la clé avec cette commande :

openssl ecparam -genkey -name prime256v1 -out ~/.config/weechat/ecdsa.pem
Note
Vous devez remplacer ~/.config/weechat par le chemin vers votre répertoire de config WeeChat qui peut aussi être par exemple ~/.weechat.

Récupérez la clé publique (encodée en base64) avec cette commande :

openssl ec -noout -text -conv_form compressed -in ~/.config/weechat/ecdsa.pem | grep '^pub:' -A 3 | tail -n 3 | tr -d ' \n:' | xxd -r -p | base64

Connectez-vous au serveur, identifiez vous (par exemple avec "nickserv identify") et définissez la clé publique dans votre compte, en utilisant nickserv (remplacez la valeur base64 par votre clé publique) :

/connect libera
/msg nickserv identify votre_mot_de_passe
/msg nickserv set pubkey Av8k1FOGetUDq7sPMBfufSIZ5c2I/QYWgiwHtNXkVe/q

Configurez les options SASL dans le serveur :

/set irc.server.libera.sasl_mechanism ecdsa-nist256p-challenge
/set irc.server.libera.sasl_username "votre_pseudo"
/set irc.server.libera.sasl_key "${weechat_config_dir}/ecdsa.pem"

Reconnectez-vous au serveur :

/reconnect libera

Connexion

Vous pouvez vous connecter au serveur avec la commande /connect :

/connect libera

Pour vous déconnecter :

/disconnect libera

Ou juste ceci si vous être sur un tampon appartenant au serveur libera (serveur, canal, privé) :

/disconnect

Lorsque vous vous connectez à plusieurs serveurs à la fois, les tampons des serveurs sont mélangés par défaut et vous pouvez basculer entre eux avec la touche Ctrl+x.
Il est possible de désactiver le mélange des tampons serveurs pour avoir un tampon distinct par serveur :

/set irc.look.server_buffer independent

Connexion avec Tor et SASL

Quelques serveurs acceptent les connexions avec Tor , un réseau de tunnels virtuels qui permet aux personnes et groupes d’améliorer leur vie privée et sécurité sur Internet.

En premier lieu, installez Tor. Pour Debian (et dérivés) :

sudo apt-get install tor

Sous WeeChat vous devez ajouter un proxy socks5 pour le service Tor (le nom/IP et port dépend de votre configuration de Tor) :

/proxy add tor socks5 127.0.0.1 9050

Maintenant, ajoutez un nouveau serveur (remplacez le nom du serveur "irc-tor" et l’adresse par une valide) :

/server add irc-tor this.is.the.address.onion

Définissez le proxy pour Tor :

/set irc.server.irc-tor.proxy "tor"

Définissez l’authentification SASL avec ECDSA-NIST256P-CHALLENGE (voir le chapitre SASL ECDSA-NIST256P-CHALLENGE pour générer une clé privée) :

/set irc.server.irc-tor.sasl_mechanism ecdsa-nist256p-challenge
/set irc.server.irc-tor.sasl_username "your_nickname"
/set irc.server.irc-tor.sasl_key "${weechat_config_dir}/ecdsa.pem"

Et enfin, connectez-vous au serveur :

/connect irc-tor

8.3. Support IRCv3

WeeChat supporte les extensions IRCv3  suivantes :

Par défaut toutes les capacités supportées par le serveur et WeeChat sont automatiquement activées (voir l’option irc.server_default.capabilities).

Des tableaux avec une comparaison des différents clients IRC, incluant WeeChat, sont disponibles sur cette page .

account-notify

Spécification : account-notify 

Cette capacité autorise le serveur à envoyer des messages lorsque les utilisateurs s’identifient ou perdent l’identification sur le serveur.
WeeChat affiche ces messages si l’option irc.look.display_account_message est activée (valeur par défaut).

Exemples :

-- alice s'est identifié en tant que Alice01

-- alice n'est plus identifié

account-tag

Spécification : account-tag 

Cette capacité autorise le serveur à envoyer le compte comme étiquette de message dans les commandes envoyées au client.
WeeChat extrait cette étiquette et la sauve dans le message, mais elle n’est pas utilisée ni affichée. Elle peut être utilisée dans la commande /filter pour filtrer les messages correspondants à des comptes spécifiques.

Exemple de message IRC brut reçu :

@account=Alice01 :user@example.com PRIVMSG #test :Bonjour !

Message affiché dans le canal :

<alice> Bonjour !

Message avec les étiquettes :

<alice> Bonjour ! [irc_privmsg,irc_tag_account_Alice01,notify_message,prefix_nick_lightcyan,nick_alice,host_user@example.com,log1]

away-notify

Spécification : away-notify 

Cette capacité autorise le serveur à envoyer des notifications d’absence pour les utilisateurs qui sont sur les mêmes canaux que vous.

Lorsque le statut d’absence est changé pour un utilisateur (absent ou de retour), cela est reflété avec une couleur spécifique dans la liste des pseudos, en utilisant les options suivantes :

batch

Spécification : batch 

Cette capacité autorise le serveur à envoyer des évènements "batch" (regroupement de plusieurs messages qui sont liés).

Pour l’instant, WeeChat stocke seulement ces messages reçus dans un "batch" et les traite plus tard comme d’habitude, lorsque le "batch" prend fin.

cap-notify

Spécification : cap-notify 

Cette capacité autorise le serveur à avertir des nouvelles capacités ou celles supprimées sur le serveur (via les commandes CAP NEW et CAP DEL).

Exemples :

-- irc : client capability, maintenant disponible : sasl

-- irc : client capability, supprimé : sasl

chghost

Spécification : chghost 

Cette capacité autorise le serveur à envoyer des messages lorsque les utilisateurs changent de nom ou d’hôte.
Lorsque l’option irc.look.smart_filter_chghost est activée (valeur par défaut), les changements d’hôtes sont automatiquement masqués si le pseudo n’a pas parlé pendant plusieurs minutes.
La couleur du message de changement d’hôte est contrôlée par l’option irc.color.message_chghost.

Exemple :

-- alice (user@example.com) a changé d'hôte pour test.com

draft/multiline

Spécification : multiline 

Cette capacité autorise le client et le serveur à envoyer des messages avec plusieurs lignes, en utilisant la capacité batch, qui doit être activée également.

Il y a des limites en terme d’octets ou nombre de lignes dans un message multi-lignes qui sont données dans la capacité envoyée par le serveur, par exemple :

CAP alice LS * :draft/multiline=max-bytes=4096,max-lines=24

Cela fixe la limite à 4096 octets et 24 lignes pour un contenu "batch" multi-lignes.

Si les limites ne sont pas envoyées par le serveur, celles par défaut dans WeeChat sont :

  • max octets : 4096

  • max lignes : 24

Seuls les messages standards et ceux envoyés avec la commande /notice peuvent être multi-lignes.
Les messages ACTION CTCP envoyés par avec la commande /me ne sont pas affectés par cette capacité. Cela signifie que les actions multi-lignes sont envoyées sous forme de plusieurs actions.

Avertissement
Comme la spécification est un brouillon (« draft »), elle peut changer et le support "multiline" peut être cassé à tout moment dans WeeChat.
La capacité est automatiquement activée si le serveur la supporte et peut être désactivée avec cette commande : /set irc.server_default.capabilities "*,!draft/multiline".
Lorsque la capacité est désactivée, un message multi-lignes est envoyé sous forme de plusieurs messages, comme s’ils avaient été envoyés séquentiellement au serveur.

Exemple de messages IRC envoyés pour un message utilisateur avec deux lignes (ceci est un test / sur deux lignes), envoyé au canal #test :

BATCH +i8Je7M7gquddoyC9 draft/multiline #test
@batch=i8Je7M7gquddoyC9 PRIVMSG #test :ceci est un test
@batch=i8Je7M7gquddoyC9 PRIVMSG #test :sur deux lignes
BATCH -i8Je7M7gquddoyC9

Affichage du message envoyé dans WeeChat :

19:01:45 alice | ceci est un test
               | sur deux lignes

echo-message

Spécification : echo-message 

Cette capacité oblige le serveur à renvoyer les messages PRIVMSG, NOTICE et TAGMSG à WeeChat.

WeeChat affiche seulement le message reçu et non pas le message envoyé, donc un délai peut être perçu entre l’envoi et l’affichage. Lorsque le message est affiché, cela signifie qu’il a bien été reçu par le serveur et également propagé aux autres clients connectés sur le serveur.

extended-join

Spécification : extended-join 

Cette capacité autorise le serveur à envoyer le compte et nom réel lorsque les utilisateurs rejoignent les canaux.
WeeChat affiche les informations additionnelles dans les messages de "join" si l’option irc.look.display_extended_join est activée (valeur par défaut).

Exemple :

--> john [John01] (John Doe) (~user@example.com) a rejoint #test

invite-notify

Spécification : invite-notify 

Cette capacité autorise le serveur à envoyer des messages d’invitation lorsque les utilisateurs sont invités sur des canaux.

Exemple :

-- alice a invité bob sur #test

message-tags

Spécification : message-tags 

Cette capacité autorise l’envoi de méta-données dans les messages.
Ces étiquettes peuvent être affichées avec la commande /debug tags.

Elle doit être activée pour utiliser les notifications de saisie.

monitor

Spécification : monitor 

Cette capacité autorise le serveur à envoyer des notifications lorsque les clients se connectent ou se déconnectent.
WeeChat utilise automatiquement cette extension si disponible lorsque la commande /notify est utilisée.

multi-prefix

Spécification : multi-prefix 

Cette capacité autorise le serveur à envoyer tous les modes utilisateur d’un coup dans les réponses à /names et /whois.

Note
Pour l’instant, WeeChat n’affiche pas les préfixes dans la sortie de /names, même s’ils sont reçus et correctement sauvegardés en interne.

Exemple : sortie de /whois alice :

-- [alice] @%+#test

SASL

Spécification : SASL 3.2 

Voir le chapitre dédié Authentification avec SASL.

server-time

Spécification : server-time 

Cette capacité autorise le serveur à envoyer l’heure pour les messages sous forme d’étiquette de message.
Lorsque l’heure est reçue dans un message, WeeChat l’utilise pour afficher le message (qui peut alors avoir une date dans le passé).

Le proxy IRC dans l’extension Relay supporte cette capacité, donc tout client IRC de Relay devrait l’activer pour afficher l’heure réelle des messages dans l’historique des messages envoyés à la connexion.

setname

Spécification : setname 

Cette capacité vous permet de changer votre nom réel en utilisant la commande /setname.

typing

Spécification : typing 

Voir le chapitre dédié Notifications de saisie.

userhost-in-names

Spécification : userhost-in-names 

Cette capacité autorise le serveur à envoyer les noms d’hôtes dans les réponses à /names.

Note
WeeChat n’affiche pas les noms d’hôtes dans la sortie de /names.

Exemple de message IRC brut reçu sans la capacité :

:irc.server 353 alice = #test :@alice bob +carol

Exemple de message IRC brut reçu avec la capacité :

:irc.server 353 alice = #test :@alice!user1@host1 bob!user2@host2 +carol!user3@host3

WHOX

Spécification : WHOX 

Cette capacité vous permet de demander des champs additionnels dans la réponse WHO (via la commande /who).
WeeChat affiche ces informations additionnelles reçus dans la sortie de WHO.

8.4. Canaux

Vous pouvez rejoindre des canaux avec la commande /join :

/join #canal

Quitter un canal (en laissant le tampon ouvert) :

/part [message de fin]

Les canaux que vous rejoignez ne sont pas sauvegardés. Si vous souhaitez les rejoindre automatiquement à la connexion au serveur, vous devez définir l’option autojoin du serveur :

/set irc.server.libera.autojoin "#weechat,#weechat-fr"
Note
Certains scripts peuvent aider pour définir automatiquement cette option, voir /script search autojoin.

Attention, les espaces ne peuvent être utilisés que pour séparer les canaux des clés, par exemple si #canal1 requiert une clé mais pas #canal2:

/set irc.server.libera.autojoin "#canal1,#canal2 cle1"

Pour de l’aide sur le format, voir l’option irc.server_default.autojoin.

8.5. Messages privés

Vous pouvez envoyer un message privé avec la commande /query, qui ouvre un tampon séparé :

/query bob salut, comment vas-tu ?

Sans paramètre la commande ouvre juste le tampon (ou le sélectionne s’il est déjà ouvert) :

/query bob

Pour fermer le tampon privé, vous pouvez utiliser cette commande sur le tampon privé :

/close

8.6. Filtre intelligent

Un filtre intelligent est disponible pour filtrer certains messages lorsqu’une personne n’a rien écrit sur le canal durant un délai configurable :

  • join : l’utilisateur rejoint le canal

  • part : l’utilisateur quitte le canal

  • quit : l’utilisateur quitte le serveur

  • account : l’utilisateur change de compte

  • chghost : l’utilisateur change son nom ou hôte

  • mode : changements de modes sur le canal

  • nick : l’utilisateur change son pseudo

  • setname : l’utilisateur change son nom réel

Le filtre intelligent est activé par défaut, mais vous devez ajouter un filtre pour cacher les lignes sur les tampons, par exemple :

/filter add irc_smart * irc_smart_filter *

Il est possible de créer un filtre pour un canal seulement ou plusieurs canaux commençant par le même nom (voir la commande /filter) :

/filter add irc_smart_weechat irc.libera.#weechat* irc_smart_filter *

Vous pouvez définir un délai plus long (en minutes) :

/set irc.look.smart_filter_delay 10

Si quelqu’un n’a rien écrit durant les 10 dernières minutes, ses messages comme les join/part/quit seront cachés par défaut sur le canal, et vous pouvez utiliser la touche Alt+= (activer/désactiver les filtres) pour les voir.

8.7. Réponses CTCP

Il est possible de personnaliser les réponses CTCP, ou de bloquer certaines demandes CTCP (ne pas y répondre).

Par exemple, pour personnaliser la réponse au CTCP "VERSION", utilisez la commande suivante :

/set irc.ctcp.version "Je suis sous WeeChat ${version}, ça déchire !"
Note
Le nom du CTCP doit être en minuscules. Cela signifie que l’option irc.ctcp.VERSION ne fonctionnerait pas.

Si vous voulez bloquer le CTCP "VERSION" (ne pas répondre à une demande), alors affectez une chaîne vide :

/set irc.ctcp.version ""

Même un CTCP inconnu peut être personnalisé, par exemple vous pouvez répondre au CTCP "BLABLA" :

/set irc.ctcp.blabla "C'est ma réponse au CTCP BLABLA"

Il est possible de personnaliser le CTCP pour un seul serveur, en utilisant son nom interne avant le nom du CTCP :

/set irc.ctcp.libera.version "WeeChat ${version} (pour libera)"

Si vous voulez restaurer la réponse CTCP standard, alors supprimez l’option :

/unset irc.ctcp.version

Les réponses CTCP sont évaluées (voir la commande /eval) et les variables supplémentaires suivantes sont disponibles :

Variable Description Valeur / exemple

${clientinfo}

Liste des CTCP supportés

ACTION DCC CLIENTINFO PING SOURCE TIME VERSION

${version}

Version de WeeChat

4.1.0-dev

${versiongit}

Version de WeeChat + version Git (1)

4.1.0-dev (git: v4.0.0-51-g8f98b922a)

${git}

Version Git (1)

v4.0.0-51-g8f98b922a

${compilation}

Date de compilation WeeChat

Jul 8 2023 20:14:23

${osinfo}

Information sur l’OS

Linux 5.10.0-23-amd64 / x86_64

${site}

Site WeeChat

https://weechat.org/

${download}

Site WeeChat, page téléchargement

https://weechat.org/download/

${time}

Date/heure courante

Sat, 08 Jul 2023 21:11:19 +0200

${username}

Nom d’utilisateur sur le serveur

nom

${realname}

Nom réel sur le serveur

John Doe

Note
(1) La version Git est la sortie de la commande git describe. Elle est connue seulement si WeeChat a été compilé dans le dépôt Git et si Git était installé.

Les réponses CTCP par défaut sont :

CTCP Format de réponse Exemple

CLIENTINFO

${clientinfo}

ACTION DCC CLIENTINFO PING SOURCE TIME VERSION

SOURCE

${download}

https://weechat.org/download/

TIME

${time}

Sat, 08 Jul 2023 21:11:19 +0200

VERSION

WeeChat ${version}

WeeChat 4.1.0-dev

8.8. Tampon cible pour les messages IRC

Il est possible de personnaliser le tampon cible pour les messages IRC (le tampon utilisé pour afficher le message) avec les options irc.msgbuffer.*.

Pour certains messages IRC (voir la liste ci-dessous), vous pouvez utiliser la valeur :

current

tampon courant (si c’est un tampon IRC, sinon sur le tampon du serveur)

private

tampon privé pour le pseudo, ou le tampon courant s’il n’est pas trouvé (selon l’option irc.look.msgbuffer_fallback)

server

tampon du serveur

weechat

tampon "core" WeeChat

Lorsque l’option n’est pas définie (par défaut), WeeChat choisira le tampon approprié, généralement le tampon du serveur ou du canal.

Liste non exhaustive des messages ou alias que vous pouvez paramétrer :

message alias description

error

erreur

invite

invité sur un canal

join

join

kick

kick

kill

kill

mode

mode

notice

notice

part

part

quit

quit

topic

topic

wallops

wallops

ctcp

ctcp (envoyé ou reçu, dans un message privmsg ou notice)

221

chaîne de mode utilisateur

275

whois

whois (connexion sécurisée)

301

whois

whois (absent)

303

ison

305

unaway

non absent

306

away

absent

307

whois

whois (pseudo enregistré)

310

whois

whois (mode aide)

311

whois

whois (utilisateur)

312

whois

whois (serveur)

313

whois

whois (opérateur)

314

whowas

whowas

315

who

who (fin)

317

whois

whois (inactivité)

318

whois

whois (fin)

319

whois

whois (canaux)

320

whois

whois (utilisateur identifié)

321

list

list (début)

322

list

list (canal)

323

list

list (fin)

326

whois

whois (a les privilèges oper)

327

whois

whois (machine)

328

URL du canal

329

date de création du canal

330

whois

whois (identifié comme)

331

pas de titre ("topic") pour le canal

332

titre du canal ("topic")

333

infos sur le titre ("topic")

335

whois

whois (est un robot sur)

338

whois

whois (machine)

341

invitation

343

whois

whois (est opéré comme)

344

reop

reop canal

345

reop

reop canal (fin)

346

invitelist

liste des invitations

347

invitelist

liste des invitations (fin)

348

exceptionlist

liste des exceptions

349

exceptionlist

liste des exceptions (fin)

351

version du serveur

352

who

who

353

names

liste des utilisateurs sur le canal

366

names

fin de la liste /names

367

banlist

liste de bannissement

368

banlist

fin de la liste de bannissement

369

whowas

whowas (fin)

378

whois

whois (connexion depuis)

379

whois

whois (utilise les modes)

401

whois

pas de tel pseudo/canal

402

whois

pas de tel serveur

432

pseudo erroné

433

pseudo déjà en cours d’utilisation

438

pas autorisé à changer de pseudo

671

whois

whois (connexion sécurisée)

728

quietlist

liste des "quiet"

729

quietlist

fin de la liste des "quiet"

732

monitor

liste des pseudos surveillés

733

monitor

liste des pseudos surveillés (fin)

901

vous êtes maintenant identifié

Les autres messages numériques peuvent être paramétrés de la même manière.

Le message peut être préfixé par le nom du serveur pour être spécifique à un serveur IRC (par exemple: libera.whois).

Quelques exemples :

  • Afficher le résultat de /whois sur le tampon privé :

/set irc.msgbuffer.whois private
  • Restaurer le tampon par défaut pour whois (tampon du serveur) :

/unset irc.msgbuffer.whois
  • Afficher une invitation sur le tampon courant, pour le serveur "libera" seulement :

/set irc.msgbuffer.libera.invite current
  • Afficher le message "303" (ison) sur le tampon "core" WeeChat :

/set irc.msgbuffer.303 weechat

8.9. Commandes

  • action: envoyer une action CTCP à un pseudo ou canal

/action  [-server <serveur>] <cible>[,<cible>...] <texte>

serveur : envoyer à ce serveur (nom interne)
  cible : pseudo ou canal (peut-être un masque, "*" = canal courant)
  texte : texte à envoyer
  • admin: trouver les informations sur l’administrateur du serveur

/admin  [<cible>]

cible : nom du serveur
  • allchan: exécuter une commande sur tous les canaux de tous les serveurs connectés

/allchan  [-current] [-parted|-all] [-exclude=<canal>[,<canal>...]] <commande>
          [-current] [-parted|-all] -include=<canal>[,<canal>...] <commande>

-current : exécuter la commande pour les canaux du serveur courant seulement
 -parted : exécuter la commande sur les canaux quittés (par défaut : exécuter la commande sur les canaux actifs seulement)
    -all : exécuter la commande sur tous les canaux (actifs et quittés)
-exclude : exclure certains canaux (le caractère joker "*" est autorisé)
-include : inclure seulement certains canaux (le caractère joker "*" est autorisé)
commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par "/")

La commande et les paramètres sont évalués (voir /help eval), les variables suivantes sont remplacées :
  $server : nom du serveur
  $channel : nom du canal
  $nick : pseudo sur le serveur
  ${irc_server.xxx} : variable xxx dans le serveur
  ${irc_channel.xxx} : variable xxx dans le canal

Exemples :
  exécuter "/me teste" sur tous les canaux :
    /allchan /me teste
  dire "bonjour" partout sauf sur #weechat :
    /allchan -exclude=#weechat bonjour
  dire "bonjour" partout sauf sur #weechat et les canaux commençant par #linux :
    /allchan -exclude=#weechat,#linux* bonjour
  dire "bonjour" sur tous les canaux commençant par #linux :
    /allchan -include=#linux* bonjour
  fermer tous les tampons avec des canaux quittés :
    /allchan -parted /close
  • allpv: exécuter une commande sur tous les tampons privés de tous les serveurs connectés

/allpv  [-current] [-exclude=<pseudo>[,<pseudo>...]] <commande>
        [-current] [-include=<pseudo>[,<pseudo>...]] <commande>

-current : exécuter la commande pour les tampons privés du serveur courant seulement
-exclude : exclure certains pseudos (le caractère joker "*" est autorisé)
-include : inclure seulement certains pseudos (le caractère joker "*" est autorisé)
commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par "/")

La commande et les paramètres sont évalués (voir /help eval), les variables suivantes sont remplacées :
  $server : nom du serveur
  $channel : nom du canal
  $nick : pseudo sur le serveur
  ${irc_server.xxx} : variable xxx dans le serveur
  ${irc_channel.xxx} : variable xxx dans le canal

Exemples :
  exécuter "/me teste" sur tous les tampons privés :
    /allpv /me teste
  dire "bonjour" partout sauf sur pour le pseudo foo :
    /allpv -exclude=foo bonjour
  dire "bonjour" partout sauf pour le pseudo foo et les pseudos commençant par bar :
    /allpv -exclude=foo,bar* bonjour
  dire "bonjour" pour tous les pseudos commençant par bar :
    /allpv -include=bar* bonjour
  fermer tous les tampons privés :
    /allpv /close
  • allserv: exécuter une commande sur tous les serveurs connectés

/allserv  [-exclude=<serveur>[,<serveur>...]] <commande>
          [-include=<serveur>[,<serveur>...]] <commande>

-exclude : exclure certains serveurs (le caractère joker "*" est autorisé)
-include : inclure seulement certains serveurs (le caractère joker "*" est autorisé)
commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par "/")

La commande et les paramètres sont évalués (voir /help eval), les variables suivantes sont remplacées :
  $server : nom du serveur
  $nick : pseudo sur le serveur
  ${irc_server.xxx} : variable xxx dans le serveur

Exemples :
  changer de pseudo sur tous les serveurs :
    /allserv /nick newnick
  faire un whois sur mon pseudo sur tous les serveurs :
    /allserv /whois $nick
  • auth: s’authentifier avec SASL

/auth  [<utilisateur> <mot_de_passe>]

 utilisateur : nom d'utilisateur SASL (le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)
mot_de_passe : mot de passe SASL ou chemin vers le fichier de clé privée (le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

Si le nom d'utilisateur et mot de passe ne sont pas donnés, les valeurs des options serveur "sasl_username" et "sasl_password" (ou "sasl_key") sont utilisées.

Exemples :
  s'authentifier avec le nom d'utilisateur et mot de passe défini dans le serveur :
    /auth
  s'authentifier avec un utilisateur différent :
    /auth user2 password2
  s'authentifier avec un utilisateur différent et le mécanisme ecdsa-nist256p-challenge :
    /auth user2 ${weechat_config_dir}/ecdsa2.pem
  • autojoin: configurer l’option serveur "autojoin"

/autojoin  add [<canal>...]
           addraw <canal1>[,<canal2>...] [<clé1>[,<clé2>...]]
           del [<canal>...]
           apply
           join
           sort [buffer]

   add : ajouter le canal courant ou une liste de canaux (avec clés facultatives) dans l'option autojoin ; si vous êtes sur le canal et que la clé n'est pas fournie, la clé est lue sur ce canal
addraw : utiliser le format brut IRC (identique à la commande /join) : tous les canaux séparés par des virgules, clés facultatives séparées par des virgules
   del : supprimer le canal courant ou une liste de canaux de l'option autojoin
 canal : nom du canal
   clé : clé pour le canal
 apply : définir les canaux actuellement joints dans l'option autojoin
  join : joindre les canaux de l'option autojoin
  sort : trier les canaux de l'option autojoin par ordre alphabétique ; avec "buffer" : trier d'abord par numéro de tampon, puis par ordre alphabétique

Exemples :
  /autojoin add
  /autojoin add #test
  /autojoin add #chan1 #chan2
  /allchan /autojoin add
  /autojoin addraw #chan1,#chan2,#chan3 key1,key2
  /autojoin del
  /autojoin del #chan1
  /autojoin apply
  /autojoin join
  /autojoin sort
  /autojoin sort buffer
  • ban: bannir des pseudos ou hôtes

/ban  [<canal>] [<pseudo>...]

 canal : nom du canal
pseudo : pseudo ou hôte

Sans paramètre, cette commande affiche la liste des bannissements pour le canal courant.
  • cap: négociation de capacité client

/cap  ls
      list
      req|ack [<capacité>...]
      end

  ls : lister les capacités supportées par le serveur
list : lister les capacités actuellement activées
 req : demander une nouvelle capacité ou supprimer une capacité (si elle commence par "-", par exemple : "-multi-prefix")
 ack : accuser réception de capacités qui nécessitent un accusé de réception du client
 end : terminer la négociation de capacité

Sans paramètre, "ls" et "list" sont envoyés.

Les capacités supportées par WeeChat sont : account-notify, account-tag, away-notify, batch, cap-notify, chghost, draft/multiline, echo-message, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.

Les capacités à activer automatiquement sur les serveurs peuvent être définies dans l'option irc.server_default.capabilities (ou par serveur dans l'option irc.server.xxx.capabilities).

Exemples :
  afficher les capacités supportées et activées :
    /cap
  demander les capacités multi-prefix et away-notify :
    /cap req multi-prefix away-notify
  demander la capacité extended-join, supprimer la capacité multi-prefix :
    /cap req extended-join -multi-prefix
  supprimer la capacité away-notify :
    /cap req -away-notify
  • connect: se connecter à un/plusieurs serveur(s) IRC

/connect  [<serveur>...] [-<option>[=<valeur>]] [-no<option>] [-nojoin] [-switch]
          -all|-auto|-open [-nojoin] [-switch]

 serveur : nom du serveur, qui peut être :
           - nom interne de serveur (ajouté par /server add, usage recommandé)
           - nom/port ou IP/port, le port par défaut est 6697 pour TLS, sinon 6667
           - URL avec le format : irc[6][s]://[pseudo[:mot_passe]@]irc.example.org[:port][/#canal1][,#canal2[...]]
           Note : pour une adresse/IP/URL, un serveur temporaire est ajouté (NON SAUVÉ), voir /help irc.look.temporary_servers
  option : définir l'option pour le serveur (pour une option booléenne, la valeur peut être omise)
nooption : définir l'option booléenne à 'off' (par exemple : -notls)
    -all : se connecter à tous les serveurs définis dans la configuration
   -auto : se connecter aux serveurs qui ont "autoconnect" activé
   -open : se connecter à tous les serveurs ouverts qui ne sont pas actuellement connectés
 -nojoin : ne rejoindre aucun canal (même si l'autojoin est activé pour le serveur)
 -switch : basculer vers l'adresse suivante du serveur

Pour se déconnecter du serveur ou stopper toute tentative de connexion, utilisez la commande /disconnect.

Exemples :
  /connect libera
  /connect irc.oftc.net
  /connect irc.oftc.net/6667 -notls
  /connect irc6.oftc.net/9999 -ipv6=force
  /connect my.server.org -password=test
  /connect irc://nick@irc.oftc.net/#channel
  /connect -switch
  • ctcp: envoyer un message CTCP (Client-To-Client Protocol)

/ctcp  [-server <serveur>] <cible>[,<cible>...] <type> [<paramètres>]

   serveur : envoyer à ce serveur (nom interne)
     cible : pseudo ou canal ("*" = canal courant)
      type : type de CTCP (exemples : "version", "ping", etc.)
paramètres : paramètres pour le CTCP

Exemples :
  /ctcp toto time
  /ctcp toto version
  /ctcp * version
  • cycle: quitter et rejoindre un canal

/cycle  [<canal>[,<canal>...]] [message]

  canal : nom du canal
message : message de fin (affiché aux autres utilisateurs)
  • dcc: démarrer un DCC (transfert de fichier passif ou discussion directe)

/dcc  chat <pseudo>
      send <pseudo> <fichier>

 pseudo : pseudo
fichier : nom du fichier (sur la machine locale)

Exemples :
  /dcc chat toto
  /dcc send toto /home/foo/bar.txt
  • dehalfop: retirer le statut de demi-opérateur du canal à/aux pseudo(s)

/dehalfop  <pseudo>...
           * -yes

pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
     * : retirer le statut de demi-opérateur de tout le monde sur le canal excepté vous-même
  • deop: retirer le statut d’opérateur du canal à/aux pseudo(s)

/deop  <pseudo>...
       * -yes

pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
     * : retirer le statut d'opérateur de tout le monde sur le canal excepté vous-même
  • devoice: retirer la voix du/des pseudo(s)

/devoice  <pseudo>...
          * -yes

pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
     * : retirer la voix de tout le monde sur le canal
  • die: arrêter le serveur

/die  [<cible>]

cible : nom du serveur
  • disconnect: se déconnecter d’un ou de tous les serveurs IRC

/disconnect  [<serveur>|-all|-pending [<raison>]]

 serveur : nom interne du serveur
    -all : se déconnecter de tous les serveurs
-pending : annuler la reconnexion automatique sur les serveurs en cours de reconnexion
  raison : raison pour le "quit"
  • halfop: donner le statut de demi-opérateur à un/des pseudo(s)

/halfop  <pseudo>...
         * -yes

pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
     * : donner le statut de demi-opérateur à tout le monde sur le canal
  • ignore: ignorer des pseudos/hôtes de serveurs ou canaux

/ignore  list
         add|addreplace [re:]<pseudo> [<serveur> [<canal>]]
         del <numéro>|-all

      list : lister tous les ignores
       add : ajouter un ignore
addreplace : ajouter ou remplacer un ignore existant
    pseudo : pseudo ou hôte ; peut être une expression régulière POSIX étendue si "re:" est donné ou un masque avec "*" pour remplacer zéro ou plusieurs caractères (l'expression régulière peut commencer par "(?-i)" pour devenir sensible à la casse)
       del : supprimer un ignore
    numéro : numéro du ignore à supprimer (voir la liste des ignore pour le trouver)
      -all : supprimer tous les ignores
   serveur : nom de serveur interne où l'ignore fonctionnera
     canal : canal où l'ignore fonctionnera

Note : si l'option irc.look.ignore_tag_messages est activée, les messages ignorés sont juste étiquetés avec "irc_ignored" plutôt que complètement supprimés.

Exemples :
  /ignore add toto
  /ignore add toto@domain.com libera
  /ignore add toto*@*.domain.com libera #weechat
  • info: voir les informations décrivant le serveur

/info  [<cible>]

cible : nom du serveur
  • invite: inviter un pseudo sur un canal

/invite  <pseudo>... [<canal>]

pseudo : pseudo
 canal : nom du canal
  • ison: vérifier si un pseudo est actuellement sur IRC

/ison  <pseudo>...

pseudo : pseudo
  • join: rejoindre un canal

/join  [-noswitch] [-server <serveur>] [<canal1>[,<canal2>...]] [<clé1>[,<clé2>...]]

-noswitch : ne pas basculer sur le nouveau tampon
  serveur : envoyer à ce serveur (nom interne)
    canal : nom du canal
      clé : clé pour rejoindre le canal (les canaux avec une clé doivent être les premiers dans la liste)

Exemples :
  /join #weechat
  /join #protectedchan,#weechat key
  /join -server libera #weechat
  /join -noswitch #weechat
  • kick: éjecter un utilisateur d’un canal

/kick  [<canal>] <pseudo> [<raison>]

 canal : nom du canal
pseudo : pseudo
raison : raison (évaluée, voir /help eval ; les variables spéciales ${nick} (propre pseudo), ${target} (pseudo cible), ${channel} et ${server} sont remplacées par leur valeurs)
  • kickban: éjecter un utilisateur d’un canal et bannir l’hôte

/kickban  [<canal>] <pseudo> [<raison>]

 canal : nom du canal
pseudo : pseudo
raison : raison (évaluée, voir /help eval ; les variables spéciales ${nick} (propre pseudo), ${target} (pseudo cible), ${channel} et ${server} sont remplacées par leur valeurs)

Il est possible d'éjecter/bannir avec un masque, le pseudo sera extrait du masque et remplacé par "*".

Exemple :
  /kickban toto!*@host.com
  • kill: fermer la connexion client-serveur

/kill  <pseudo> [<raison>]

pseudo : pseudo
raison : raison
  • knock: envoyer une notice à un canal en invitation seulement, en demandant une invitation

/knock  <canal> [<message>]

  canal : nom du canal
message : message à envoyer
/links  [[<cible>] <masque_serveur>]

         cible : ce serveur doit répondre à la requête
masque_serveur : liste des serveurs correspondant au masque
  • list: lister les canaux et leurs titres

/list  [-server <serveur>] [<canal>[,<canal>...]] [<cible>]
       [-server <serveur>] [-raw *|<regex>]
       -up|-down [<nombre>]
       -left|-right [<pourcentage>]
       -go <ligne>|end
       -join
       -export <fichier>

serveur : envoyer à ce serveur (nom interne)
  canal : nom du canal
  cible : nom du serveur
   -raw : afficher le résultat sur le tampon du serveur au lieu d'un tampon dédié
  regex : expression régulière POSIX étendue utilisée pour filtrer les résultats (insensible à la casse, peut commencer par "(?-i)" pour devenir sensible à la casse) ; la valeur spéciale "*" ne filtre pas les résultats
    -up : déplacer la ligne sélectionnée de "nombre" lignes vers le haut
  -down : déplacer la ligne sélectionnée de "nombre" lignes vers le bas
  -left : faire défiler le tampon de "pourcentage" de largeur vers la gauche
 -right : faire défiler le tampon de "pourcentage" de largeur vers la droite
    -go : sélectionner une ligne par numéro, la première ligne est 0 ("end" pour sélectionner la dernière ligne)
  -join : rejoindre le canal sur la ligne sélectionnée
-export : exporter la liste des canaux dans un fichier

Pour les touches, entrée et actions de la souris sur le tampon, voir les raccourcis clavier dans le Guide utilisateur.

Clés de tri sur le tampon /list :
  name : nom du canal (par exemple : "##test")
  name2 : nom du canal sans le préfixe (par exemple : "test")
  users : nombre d'utilisateurs sur le canal
  topic : titre du canal

Exemples :
  lister tous les canaux sur le tampon du serveur (pas de tampon dédié et peut être lent sur les grands réseaux) :
    /list -raw *
  lister tous les canaux commençant par "#weechat" sur le tampon du serveur (pas de tampon dédié et peut être lent sur les grands réseaux) :
    /list -raw #weechat.*
  lister tous les canaux sur un tampon dédié (peut être lent sur les grands réseaux) :
    /list
  lister le canal #weechat sur un tampon dédié :
    /list #weechat
  sur le tampon /list :
    canaux avec "weechat" dans le nom :
      n:weechat
    canaux avec au moins 100 utilisateurs :
      u:100
    canaux avec "freebsd" (insensible à la casse) dans le titre et plus de 10 utilisateurs :
      c:${topic} =- freebsd && ${users} > 10
    tri des canaux par nombre d'utilisateurs (gros canaux en premier) puis "name2" (nom sans le préfixe) :
      s:-users,name2
  • lusers: obtenir des statistiques sur la taille du réseau IRC

/lusers  [<masque> [<cible>]]

masque : serveurs qui correspondent au masque seulement
 cible : serveur pour faire suivre la requête
  • map: afficher une carte graphique du réseau IRC


  • me: envoyer une action CTCP au canal courant

/me  <message>

message : message à envoyer
  • mode: changer le mode du canal ou de l’utilisateur

/mode  [<canal>] [+|-]o|p|s|i|t|n|m|l|b|e|v|k [<paramètres>]
       <pseudo> [+|-]i|s|w|o

canal : nom du canal à modifier (par défaut le canal courant)

Modes de canaux :
  o : donner/reprendre le statut privilégié d'opérateur
  p : canal privé
  s : canal secret
  i : canal avec invitation seulement
  t : le titre est modifiable seulement par un opérateur du canal
  n : aucun message au canal depuis l'extérieur
  m : canal modéré
  l : fixer la limite d'utilisateurs pour le canal
  b : paramétrer un masque de bannissement pour garder des utilisateurs dehors
  e : paramétrer un masque d'exception
  v : donner/reprendre la possibilité de parler sur un canal modéré
  k : définir une clé (mot de passe) pour accéder au canal

Modes utilisateur :
  pseudo : pseudo à modifier
  i : invisible
  s : l'utilisateur reçoit les notices du serveur
  w : l'utilisateur reçoit les wallops
  o : opérateur

La liste des modes n'est pas exhaustive, vous devriez lire la documentation de votre serveur pour voir tous les modes possibles.

Exemples :
  /mode #weechat +t
  /mode nick +i
  • motd: obtenir le message du jour

/motd  [<cible>]

cible : nom du serveur
  • msg: envoyer un message à un pseudo ou canal

/msg  [-server <serveur>] <cible>[,<cible>...] <texte>

serveur : envoyer à ce serveur (nom interne)
  cible : pseudo ou canal (peut-être un masque, "*" = canal courant)
  texte : texte à envoyer
  • names: lister les pseudos sur des canaux

/names  [-count | -x] [<canal>[,<canal>...]]

-count : afficher seulement le nombre d'utilisateurs
    -x : afficher seulement les utilisateurs avec ce mode : -o pour les ops, -h pour les halfops, -v pour ceux avec la voix, etc. et -* pour les utilisateurs réguliers
 canal : nom du canal
  • nick: changer le pseudo courant

/nick  [-all] <pseudo>

  -all : définir le nouveau pseudo sur tous les serveurs connectés
pseudo : nouveau pseudo
  • notice: envoyer un message notice à un utilisateur

/notice  [-server <serveur>] <cible> <texte>

serveur : envoyer à ce serveur (nom interne)
  cible : pseudo ou nom de canal
  texte : texte à envoyer
  • notify: ajouter une notification de présence ou de statut d’absence pour des pseudos sur les serveurs

/notify  add|addreplace <pseudo> [<serveur> [-away]]
         del <pseudo>|-all [<serveur>]

       add : ajouter une notification
addreplace : ajouter ou remplacer une notification
    pseudo : pseudo
   serveur : nom interne du serveur (par défaut le serveur courant)
     -away : notifier quand le message d'absence est changé (en faisant un whois sur le pseudo)
       del : supprimer une notification
      -all : supprimer toutes les notifications

Sans paramètre, cette commande affiche les notifications pour le serveur courant (ou tous les serveurs si la commande est exécutée sur le tampon "core").

Exemples :
  /notify add toto
  /notify add toto libera
  /notify add toto libera -away
  • op: donner le statut d’opérateur à un/des pseudo(s)

/op  <pseudo>...
     * -yes

pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
     * : donner le statut d'opérateur à tout le monde sur le canal
  • oper: obtenir le statut d’opérateur

/oper  <utilisateur> <mot_de_passe>

 utilisateur : utilisateur
mot_de_passe : mot de passe
  • part: quitter un canal

/part  [<canal>[,<canal>...]] [message]

  canal : nom du canal
message : message de fin (affiché aux autres utilisateurs)
  • ping: envoyer un ping au serveur

/ping  <cible1> [<cible2>]

cible1 : serveur
cible2 : faire suivre le ping à ce serveur
  • pong: répondre à un message ping

/pong  <démon> [<démon2>]

 démon : démon qui a répondu au message Ping
démon2 : faire suivre le message à ce démon
  • query: envoyer un message privé à un pseudo

/query  [-noswitch] [-server <serveur>] <pseudo>[,<pseudo>...] [<texte>]

-noswitch : ne pas basculer sur le nouveau tampon
  serveur : envoyer à ce serveur (nom interne)
   pseudo : pseudo
    texte : texte à envoyer
  • quiet: faire taire des pseudos ou hôtes

/quiet  [<canal>] [<pseudo>...]

 canal : nom du canal
pseudo : pseudo ou hôte

Sans paramètre, cette commande affiche la liste des "quiet" pour le canal courant.
  • quote: envoyer des données brutes au serveur sans analyse

/quote  [-server <serveur>] <données>

serveur : envoyer à ce serveur (nom interne)
données : données brutes à envoyer
  • reconnect: se reconnecter à un/plusieurs serveur(s)

/reconnect  <serveur>... [-nojoin] [-switch]
            -all [-nojoin] [-switch]

serveur : nom interne du serveur
   -all : se reconnecter à tous les serveurs
-nojoin : ne rejoindre aucun canal (même si l'autojoin est activé pour le serveur)
-switch : basculer vers l'adresse suivante du serveur
  • rehash: demander au serveur de recharger son fichier de configuration

/rehash  [<option>]

option : option supplémentaire, pour certains serveurs
  • remove: forcer un utilisateur à quitter un canal

/remove  [<canal>] <pseudo> [<raison>]

 canal : nom du canal
pseudo : pseudo
raison : raison (les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs)
  • restart: demander au serveur de redémarrer

/restart  [<cible>]

cible : nom du serveur
  • rules: demander les règles du serveur


  • sajoin: forcer un utilisateur à rejoindre un ou plusieurs canaux

/sajoin  <pseudo> <canal>[,<canal>...]

pseudo : pseudo
 canal : nom du canal
  • samode: changer le mode du canal, sans avoir le statut d’opérateur

/samode  [<canal>] <mode>

canal : nom du canal
 mode : mode pour le canal
  • sanick: forcer un utilisateur à utiliser un autre pseudo

/sanick  <pseudo> <nouveau_pseudo>

        pseudo : pseudo
nouveau_pseudo : nouveau pseudo
  • sapart: forcer un utilisateur à quitter un ou plusieurs canaux

/sapart  <pseudo> <canal>[,<canal>...]

pseudo : pseudo
 canal : nom du canal
  • saquit: forcer un utilisateur à quitter le serveur avec une raison

/saquit  <pseudo> <raison>

pseudo : pseudo
raison : raison
  • server: lister, ajouter ou retirer des serveurs IRC

/server  list|listfull [<nom>]
         add|addreplace <nom> <nom_machine>[/<port>] [-temp] [-<option>[=<valeur>]] [-no<option>]
         copy|rename <nom> <nouveau_nom>
         reorder <nom>...
         open <nom>|-all [<nom>...]
         del|keep <nom>
         deloutq|jump
         raw [<filtre>]

       list : afficher les serveurs (sans paramètre, cette liste est affichée)
   listfull : afficher les serveurs avec de l'info détaillée pour chaque
        add : ajouter un nouveau serveur
 addreplace : ajouter ou remplacer un serveur existant
        nom : nom du serveur, pour usage interne et affichage ; ce nom est utilisé pour se connecter au serveur (/connect nom) et pour définir les options du serveur : irc.server.nom.xxx
nom_machine : nom ou adresse IP du serveur avec port en option (défaut : 6697 pour TLS, 6667 sinon), plusieurs adresses peuvent être séparées par une virgule
      -temp : ajouter un serveur temporaire (non sauvé)
     option : définir l'option pour le serveur (pour une option booléenne, la valeur peut être omise)
   nooption : définir l'option booléenne à 'off' (par exemple : -notls)
       copy : dupliquer un serveur
     rename : renommer un serveur
    reorder : réordonner la liste des serveurs
       open : ouvrir le tampon du serveur sans s'y connecter
       keep : garder le serveur dans le fichier de configuration (pour les serveurs temporaires seulement)
        del : supprimer un serveur
    deloutq : supprimer la file d'attente des messages sortants pour tous les serveurs (tous les messages que WeeChat est actuellement en train d'envoyer)
       jump : sauter au tampon du serveur
        raw : ouvrir le tampon avec les données brutes IRC
     filtre : définir un nouveau filtre pour voir seulement les messages correspondants (ce filtre peut aussi être utilisé en entrée du tampon des données brutes) ; les formats autorisés sont :
              `*` : afficher tous les messages (pas de filtre)
              `xxx` : afficher seulement les messages contenant "xxx"
              `s:xxx` : afficher seulement les messages pour le serveur "xxx"
              `f:xxx` : afficher seulement les messages avec un drapeau : recv (message reçu), sent (message envoyé), modified (message modifié par un modificateur), redirected (message redirigé)
              `m:xxx` : afficher seulement les messages pour la commande IRC "xxx"
              `c:xxx` : afficher seulement les messages qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : sortie de la fonction irc_message_parse (comme nick, command, channel, text, etc., voir la fonction info_get_hashtable dans la référence API extension pour la liste de toutes les variables), date (format : "%FT%T.%f", voir la fonction util_strftimeval dans la Référence API extension), server, recv, sent, modified, redirected

Exemples :
  /server listfull
  /server add libera irc.libera.chat
  /server add libera irc.libera.chat/6667 -notls -autoconnect
  /server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667 -notls
  /server copy libera libera-test
  /server rename libera-test libera2
  /server reorder libera2 libera
  /server del libera
  /server deloutq
  /server raw
  /server raw s:libera
  /server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo
  • service: enregistrer un nouveau service

/service  <pseudo> <réservé> <distribution> <type> <réservé> <info>

distribution : visibilité du service
        type : réservé pour une utilisation future
  • servlist: lister les services actuellement connectés au réseau

/servlist  [<masque> [<type>]]

masque : lister seulement les services qui correspondent à ce masque
  type : lister seulement les services de ce type
  • setname: définir le nom réel

/setname  <nom_réel>

nom_réel : nouveau nom réel
  • squery: envoyer un message à un service

/squery  <service> <texte>

service : nom du service
  texte : texte à envoyer
  • squit: déconnecter les liens vers un serveur

/squit  <cible> <commentaire>

      cible : nom du serveur
commentaire : commentaire
  • stats: demander des statistiques sur le serveur

/stats  [<requête> [<cible>]]

requête : c/h/i/k/l/m/o/y/u (voir la RFC1459)
  cible : nom du serveur
  • summon: envoyer aux utilisateurs d’un serveur IRC un message leur demandant de rejoindre IRC

/summon  <utilisateur> [<cible> [<canal>]]

utilisateur : nom d'utilisateur
      cible : nom du serveur
      canal : nom du canal
  • time: demander l’heure locale de serveur

/time  [<cible>]

cible : demander l'heure de ce serveur
  • topic: recevoir/définir le titre du canal

/topic  [<canal>] [<titre>|-delete]

  canal : nom du canal
  titre : nouveau titre
-delete : supprimer le titre du canal
  • trace: trouver le chemin jusqu’à un serveur spécifique

/trace  [<cible>]

cible : nom du serveur
  • unban: supprimer le bannissement sur des pseudos ou hôtes

/unban  [<canal>] <pseudo>|<numéro>|<n1>-<n2>...

 canal : nom du canal
pseudo : pseudo ou hôte
numéro : numéro de bannissement (tel qu'affiché par la commande /ban)
    n1 : numéro de départ de l'intervalle
    n2 : numéro de fin de l'intervalle
  • unquiet: ne plus taire des pseudos ou hôtes

/unquiet  [<canal>] <pseudo>|<numéro>|<n1>-<n2>...

 canal : nom du canal
pseudo : pseudo ou hôte
numéro : numéro de "quiet" (tel qu'affiché par la commande /quiet)
    n1 : numéro de départ de l'intervalle
    n2 : numéro de fin de l'intervalle
  • userhost: retourner une liste d’informations sur des pseudos

/userhost  <pseudo>...

pseudo : pseudo
  • users: liste des utilisateurs connectés au serveur

/users  [<cible>]

cible : nom du serveur
  • version: retourner la version du pseudo ou du serveur (courant ou spécifié)

/version  [<cible>|<pseudo>]

 cible : nom du serveur
pseudo : pseudo
  • voice: donner la voix à/aux pseudo(s)

/voice  <pseudo>...
        * -yes

pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
     * : donner la voix à tout le monde sur le canal
  • wallchops: envoyer une notice aux opérateurs du canal

/wallchops  [<canal>] <texte>

canal : nom du canal
texte : texte à envoyer
  • wallops: envoyer un message à tous les utilisateurs connectés qui ont activé le mode utilisateur "w" pour eux-mêmes

/wallops  <texte>

texte : texte à envoyer
  • who: générer une requête qui retourne une liste d’information

/who  [<masque> [o]]

masque : information qui correspond à ce masque uniquement
     o : seuls les opérateurs sont retournés correspondant au masque fourni
  • whois: demander les informations sur le(s) utilisateur(s)

/whois  [<cible>] [<pseudo>[,<pseudo>...]]

 cible : nom du serveur
pseudo : pseudo (peut être un masque)

Sans paramètre, cette commande effectuera un whois sur :
  - votre propre pseudo si le tampon est un serveur/canal
  - le pseudo distant si le tampon est un privé.

Si l'option irc.network.whois_double_nick est activée, deux pseudos sont envoyés (si un seul est donné), pour avoir le temps d'inactivité dans la réponse.
  • whowas: demander de l’information sur un pseudo qui n’existe plus

/whowas  <pseudo>[,<pseudo>...] [<nombre> [<cible>]]

pseudo : pseudo
nombre : nombre de réponses à retourner (recherche complète si nombre négatif)
 cible : la réponse doit correspondre à ce masque

8.10. Options

Sections dans le fichier irc.conf :

Section Commande de contrôle Description

look

/set irc.look.*

Aspect/présentation.

color

/set irc.color.*

Couleurs.

network

/set irc.network.*

Options réseau.

msgbuffer

/set irc.msgbuffer.*

Tampon cible pour les messages IRC (les options peuvent être ajoutées/supprimées dans la section).

ctcp

/set irc.ctcp.*

Réponses CTCP (les options peuvent être ajoutées/supprimées dans la section).

ignore

/ignore

Personnes ignorées.

server_default

/set irc.server_default.*

Valeurs par défaut pour serveurs (les options peuvent être ajoutées/supprimées dans la section).

server

/server
/set irc.server.*

Serveurs.

Options :

  • irc.color.input_nick

    • description: couleur du pseudo dans la barre de saisie

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightcyan

  • irc.color.item_lag_counting

    • description: couleur pour l'indicateur de lag, lorsque le décompte est en cours (pong non reçu du serveur, le lag augmente)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • irc.color.item_lag_finished

    • description: couleur pour l'indicateur de lag, lorsque le pong a été reçu du serveur

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • irc.color.item_nick_modes

    • description: couleur pour les modes du pseudo dans l'objet de barre "input_prompt"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • irc.color.item_tls_version_deprecated

    • description: couleur pour les versions obsolètes de TLS dans l'objet de barre "tls_version"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • irc.color.item_tls_version_insecure

    • description: couleur pour les versions non sécurisées de TLS dans l'objet de barre "tls_version"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: red

  • irc.color.item_tls_version_ok

    • description: couleur pour la version de TLS la plus haute dans l'objet de barre "tls_version"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • irc.color.list_buffer_line_selected

    • description: couleur du texte pour la ligne sélectionnée dans le tampon /list

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • irc.color.list_buffer_line_selected_bg

    • description: couleur du fond pour la ligne sélectionnée dans le tampon /list

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 24

  • irc.color.message_account

    • description: couleur pour le texte dans les messages account

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • irc.color.message_chghost

    • description: couleur pour le texte dans les messages "chghost"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • irc.color.message_join

    • description: couleur pour le texte dans les messages join

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • irc.color.message_kick

    • description: couleur pour le texte dans les messages kick/kill

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: red

  • irc.color.message_quit

    • description: couleur pour le texte dans les messages part/quit

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: red

  • irc.color.message_setname

    • description: couleur pour le texte dans les messages "setname"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • irc.color.mirc_remap

    • description: réassigner les couleurs mirc dans les messages en utilisant une table de hachage (utilisé seulement pour les couleurs standards, pas les couleurs RGB) : les clés sont "fg,bg" sous forme d'entiers entre -1 (non spécifié) et 15, les valeurs sont des noms de couleur WeeChat ou nombres (le format est : "1,-1:couleur1;2,7:couleur2"), exemple : "1,-1:darkgray;1,2:white,blue" pour réassigner le noir en "darkgray" et le noir sur bleu en "white,blue" ; les couleurs WeeChat par défaut pour les codes IRC sont : 0=white, 1=black, 2=blue, 3=green, 4=lightred, 5=red, 6=magenta, 7=brown, 8=yellow, 9=lightgreen, 10=cyan, 11=lightcyan, 12=lightblue, 13=lightmagenta, 14=darkgray, 15=gray

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "1,-1:darkgray"

  • irc.color.nick_prefixes

    • description: couleur pour les préfixes du pseudo en utilisant les caractères de mode (o=op, h=halfop, v=voice, ...), le format est : "o:couleur1;h:couleur2;v:couleur3" (si un mode n'est pas trouvé, WeeChat essaiera avec les modes suivants reçus du serveur ("PREFIX") ; un mode spécial "*" peut être utilisé comme couleur par défaut si aucun mode n'est trouvé dans la liste)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "y:lightred;q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue"

  • irc.color.notice

    • description: couleur pour le texte "Notice" dans les notices

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • irc.color.reason_kick

    • description: couleur pour la raison dans les messages kick/kill

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • irc.color.reason_quit

    • description: couleur pour la raison dans les messages part/quit

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 244

  • irc.color.term_remap

    • description: réassigner les couleurs du terminal dans les messages en utilisant une table de hachage (utilisé seulement pour les couleurs RGB en hexadécimal, qui sont d'abord traduites en numéros de couleurs pour le terminal) : les clés sont "fg,bg" sous forme d'entiers entre -1 (non spécifié) et 15, les valeurs sont des noms de couleur WeeChat ou nombres (le format est : "1,-1:couleur1;2,7:couleur2"), exemple : "0,-1:darkgray;0,90:white,blue" pour réassigner le noir en "darkgray" et le noir sur magenta foncé en "white,blue"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "0,-1:darkgray"

  • irc.color.topic_current

    • description: couleur pour le titre du canal actuel (en rejoignant un canal ou sur /topic)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • irc.color.topic_new

    • description: couleur pour le nouveau titre du canal (lorsque le titre est changé)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 36

  • irc.color.topic_old

    • description: couleur pour l'ancien titre du canal (lorsque le titre est changé)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 244

  • irc.ctcp.clientinfo

    • description: format de réponse CTCP ou une chaîne vide pour bloquer le CTCP (pas de réponse) ; le contenu est évalué, voir /help eval ; les variables suivantes sont remplacées : ${clientinfo} : liste des CTCP supportés, ${version} : version de WeeChat, ${git} : version Git, ${versiongit} : version de WeeChat et version Git, ${compilation} : date de compilation, ${osinfo} : information sur l'OS, ${site} : site de WeeChat, ${download} : page de téléchargement du site de WeeChat, ${time} : date et heure courante sous forme de texte, ${username} : nom d'utilisateur sur le serveur, ${realname} : nom réel sur le serveur

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${clientinfo}"

  • irc.ctcp.source

    • description: format de réponse CTCP ou une chaîne vide pour bloquer le CTCP (pas de réponse) ; le contenu est évalué, voir /help eval ; les variables suivantes sont remplacées : ${clientinfo} : liste des CTCP supportés, ${version} : version de WeeChat, ${git} : version Git, ${versiongit} : version de WeeChat et version Git, ${compilation} : date de compilation, ${osinfo} : information sur l'OS, ${site} : site de WeeChat, ${download} : page de téléchargement du site de WeeChat, ${time} : date et heure courante sous forme de texte, ${username} : nom d'utilisateur sur le serveur, ${realname} : nom réel sur le serveur

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${download}"

  • irc.ctcp.time

    • description: format de réponse CTCP ou une chaîne vide pour bloquer le CTCP (pas de réponse) ; le contenu est évalué, voir /help eval ; les variables suivantes sont remplacées : ${clientinfo} : liste des CTCP supportés, ${version} : version de WeeChat, ${git} : version Git, ${versiongit} : version de WeeChat et version Git, ${compilation} : date de compilation, ${osinfo} : information sur l'OS, ${site} : site de WeeChat, ${download} : page de téléchargement du site de WeeChat, ${time} : date et heure courante sous forme de texte, ${username} : nom d'utilisateur sur le serveur, ${realname} : nom réel sur le serveur

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${time}"

  • irc.ctcp.version

    • description: format de réponse CTCP ou une chaîne vide pour bloquer le CTCP (pas de réponse) ; le contenu est évalué, voir /help eval ; les variables suivantes sont remplacées : ${clientinfo} : liste des CTCP supportés, ${version} : version de WeeChat, ${git} : version Git, ${versiongit} : version de WeeChat et version Git, ${compilation} : date de compilation, ${osinfo} : information sur l'OS, ${site} : site de WeeChat, ${download} : page de téléchargement du site de WeeChat, ${time} : date et heure courante sous forme de texte, ${username} : nom d'utilisateur sur le serveur, ${realname} : nom réel sur le serveur

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "WeeChat ${version}"

  • irc.look.buffer_open_before_autojoin

    • description: ouvrir le tampon du canal avant que le JOIN soit reçu du serveur lorsqu'il est automatiquement rejoint (avec l'option du serveur "autojoin")

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.buffer_open_before_join

    • description: ouvrir le tampon du canal avant que le JOIN soit reçu du serveur lorsqu'il est manuellement rejoint (avec la commande /join)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.buffer_switch_autojoin

    • description: basculer automatiquement vers le tampon du canal lorsqu'il est automatiquement rejoint (avec l'option du serveur "autojoin")

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.buffer_switch_join

    • description: basculer automatiquement vers le tampon du canal lorsqu'il est manuellement rejoint (avec la commande /join)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.color_nicks_in_names

    • description: utiliser la couleur du pseudo dans la sortie de /names (ou la liste des pseudos affichée lorsqu'on rejoint un canal)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.color_nicks_in_nicklist

    • description: utiliser la couleur du pseudo dans la liste des pseudos

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.color_nicks_in_server_messages

    • description: utiliser la couleur du pseudo dans les messages du serveur

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.color_pv_nick_like_channel

    • description: utiliser la même couleur de pseudo pour le canal et le privé

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.ctcp_time_format

    • description: format de date/heure utilisé pour la réponse au message CTCP TIME (voir man strftime pour le format de date/heure, des caractères de conversion supplémentaires sont supportés, voir la fonction util_strftimeval dans la Référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "%a, %d %b %Y %T %z"

  • irc.look.display_account_message

    • description: afficher les messages ACCOUNT reçus quand la capacité account-notify est activée

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_away

    • description: afficher un message pour l'absence/retour (off : ne rien afficher/envoyer, local : afficher en local, channel : envoyer l'action aux canaux)

    • type: énuméré

    • valeurs: off, local, channel

    • valeur par défaut: local

  • irc.look.display_ctcp_blocked

    • description: afficher le message CTCP même s'il est bloqué

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_ctcp_reply

    • description: afficher la réponse CTCP envoyée par WeeChat

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_ctcp_unknown

    • description: afficher le message CTCP même si le CTCP est inconnu

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_extended_join

    • description: afficher les informations supplémentaires sur les messages JOIN : nom de compte et nom réel (la capacité extended-join doit être activée)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_host_join

    • description: afficher le nom d'hôte dans les messages join

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_host_join_local

    • description: afficher le nom d'hôte dans les messages join du client local

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_host_notice

    • description: afficher le nom d'hôte dans les messages notice

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_host_quit

    • description: afficher le nom d'hôte dans les messages part/quit

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_host_wallops

    • description: afficher le nom d'hôte dans les messages wallops

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_join_message

    • description: liste de messages (séparés par des virgules) à afficher après avoir rejoint un canal : 324 = modes du canal, 329 = date de création du canal, 332 = titre, 333 = pseudo/date pour le titre, 353 = noms sur le canal, 366 = décompte des noms

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "329,332,333,366"

  • irc.look.display_old_topic

    • description: afficher l'ancien titre lorsque le titre du canal est changé

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_pv_away_once

    • description: afficher le message d'absence distant une seule fois en privé

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_pv_back

    • description: afficher un message en privé lorsque l'utilisateur est de retour (après avoir quitté le serveur)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_pv_nick_change

    • description: afficher le changement de pseudo en privé

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.display_pv_warning_address

    • description: afficher un avertissement dans le tampon privé si l'adresse du pseudo distant a changé ; cette option est désactivée par défaut car les serveurs comme bitlbee causent un affichage de cet avertissement à tort (l'adresse du pseudo distant change plusieurs fois à la connexion)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.highlight_channel

    • description: liste de mots pour le highlight dans les tampons de type "canal", séparés par des virgules (insensible à la casse, utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse ; les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs), ces mots sont ajoutés à la propriété du tampon "highlight_words" seulement lorsque le tampon est créé (cela n'affecte pas les tampons courants), une chaîne vide désactive le highlight par défaut sur le pseudo, exemples : "$nick", "(?-i)$nick"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "$nick"

  • irc.look.highlight_pv

    • description: liste de mots pour le highlight dans les tampons de type "privé", séparés par des virgules (insensible à la casse, utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse ; les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs), ces mots sont ajoutés à la propriété du tampon "highlight_words" seulement lorsque le tampon est créé (cela n'affecte pas les tampons courants), une chaîne vide désactive le highlight par défaut sur le pseudo, exemples : "$nick", "(?-i)$nick"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "$nick"

  • irc.look.highlight_server

    • description: liste de mots pour le highlight dans les tampons de type "serveur", séparés par des virgules (insensible à la casse, utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse ; les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs), ces mots sont ajoutés à la propriété du tampon "highlight_words" seulement lorsque le tampon est créé (cela n'affecte pas les tampons courants), une chaîne vide désactive le highlight par défaut sur le pseudo, exemples : "$nick", "(?-i)$nick"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "$nick"

  • irc.look.highlight_tags_restrict

    • description: restreindre les highlights à ces étiquettes sur les tampons irc (pour avoir un highlight seulement sur les messages utilisateur et pas les messages du serveur) ; les étiquettes doivent être séparées par des virgules et "+" peut être utilisé pour faire un "et" logique entre étiquettes ; le caractère joker "*" est autorisé dans les étiquettes ; une valeur vide autorise le highlight sur n'importe quelle étiquette

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "irc_privmsg,irc_notice"

  • irc.look.ignore_tag_messages

    • description: ajouter l'étiquette "irc_ignored" sur les messages ignorés au lieu de les supprimer ; de cette façon les messages peuvent être filtrés avec la commande /filter et affichés/cachés sur demande

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.item_channel_modes_hide_args

    • description: cacher les paramètres des modes du canal si au moins un de ces modes est dans les modes du canal ("*" pour toujours cacher les paramètres, valeur vide pour ne jamais cacher les paramètres) ; exemple : "kf" pour cacher les paramètres si "k" ou "f" sont dans les modes du canal

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "k"

  • irc.look.item_display_server

    • description: nom de l'objet de barre où est affiché le serveur IRC (pour la barre de statut)

    • type: énuméré

    • valeurs: buffer_plugin, buffer_name

    • valeur par défaut: buffer_plugin

  • irc.look.item_nick_modes

    • description: afficher les modes du pseudo dans l'objet de barre "input_prompt"

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.item_nick_prefix

    • description: afficher le préfixe du pseudo dans l'objet de barre "input_prompt"

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.join_auto_add_chantype

    • description: ajouter automatiquement le type de canal devant le nom du canal sur la commande /join si le nom du canal ne commence pas par un type de canal valide pour le serveur ; par exemple "/join weechat" enverra en fait : "/join #weechat"

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.list_buffer

    • description: utiliser un tampon dédié pour la sortie de /list

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.list_buffer_format_export

    • description: format pour chaque canal exporté dans un fichier (note : le contenu est évalué, voir /help list)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${name} (${users}): \"${topic}\""

  • irc.look.list_buffer_scroll_horizontal

    • description: défilement gauche/droite dans le tampon /list (pourcentage de la largeur)

    • type: entier

    • valeurs: 1 .. 100

    • valeur par défaut: 10

  • irc.look.list_buffer_sort

    • description: liste de champs séparés par des virgules pour trier les options (voir /help list pour la liste des champs) ; le caractère "-" peut être utilisé pour inverser l'ordre, le caractère "~" peut être utilisé pour effectuer une comparaison insensible à la casse ; exemple : "-count,~name" pour les plus gros canaux en premier puis tri insensible à la casse sur le nom

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "~name2"

  • irc.look.list_buffer_topic_strip_colors

    • description: supprimer les couleurs des titres des canaux dans le tampon /list

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.msgbuffer_fallback

    • description: tampon cible par défaut pour les options msgbuffer quand la cible est "private" et que le tampon privé n'est pas trouvé

    • type: énuméré

    • valeurs: current, server

    • valeur par défaut: current

  • irc.look.new_channel_position

    • description: force la position du nouveau canal dans la liste des tampons (none = position par défaut (devrait être le dernier tampon), next = tampon courant + 1, near_server = après le dernier canal/privé du serveur)

    • type: énuméré

    • valeurs: none, next, near_server

    • valeur par défaut: none

  • irc.look.new_list_position

    • description: force la position du nouveau tampon /list dans la liste des tampons (none = position par défaut (devrait être le dernier tampon), next = tampon courant + 1, near_server = après le dernier canal/privé du serveur)

    • type: énuméré

    • valeurs: none, next, near_server

    • valeur par défaut: none

  • irc.look.new_pv_position

    • description: force la position du nouveau privé dans la liste des tampons (none = position par défaut (devrait être le dernier tampon), next = tampon courant + 1, near_server = après le dernier canal/privé du serveur)

    • type: énuméré

    • valeurs: none, next, near_server

    • valeur par défaut: none

  • irc.look.nick_completion_smart

    • description: complétion intelligente pour les pseudos (complète d'abord avec les personnes qui ont parlé récemment) : speakers = tous ceux qui ont parlé (incluant les highlights), speakers_highlights = seulement ceux qui ont parlé avec un highlight

    • type: énuméré

    • valeurs: off, speakers, speakers_highlights

    • valeur par défaut: speakers

  • irc.look.nick_mode

    • description: afficher le mode du pseudo (op, voice, ...) avant le pseudo (none = jamais, prefix = dans le préfixe seulement, action = dans les messages d'action seulement, both = préfixe + messages d'actions)

    • type: énuméré

    • valeurs: none, prefix, action, both

    • valeur par défaut: prefix

  • irc.look.nick_mode_empty

    • description: afficher un espace si le mode du pseudo est activé mais que le pseudo n'a pas de mode (pas op, voice, ...)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.nicks_hide_password

    • description: liste des pseudos (séparés par des virgules) pour lesquels les mots de passe seront masqués quand un message est envoyé, par exemple pour cacher le mot de passe dans le message affiché par "/msg nickserv identify motdepasse", exemple : "nickserv,nickbot"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "nickserv"

  • irc.look.notice_as_pv

    • description: afficher les notices comme des messages privés (si auto, utilise le tampon privé s'il est trouvé)

    • type: énuméré

    • valeurs: auto, never, always

    • valeur par défaut: auto

  • irc.look.notice_nicks_disable_notify

    • description: liste des pseudos (séparés par des virgules) pour lesquels les notifications sont désactivées dans les messages de notice (la comparaison est insensible à la casse)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "chanserv,nickserv"

  • irc.look.notice_welcome_redirect

    • description: rediriger automatiquement les notices de bienvenue sur le canal vers le tampon du canal ; de telles notices ont le pseudo comme cible mais le nom du canal au début du message de notice, par exemple les notices ENTRYMSG envoyées par les services Atheme IRC qui ressemblent à : "[#canal] Bienvenue sur ce canal..."

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.notice_welcome_tags

    • description: liste des étiquettes (séparées par des virgules) utilisées dans la notice de bienvenue redirigée vers un canal, par exemple : "notify_private"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.look.notify_tags_ison

    • description: liste des étiquettes (séparées par des virgules) utilisées dans les messages affichés par notify lorsqu'un pseudo a rejoint ou quitté le serveur (résultat de la commande ison ou monitor), par exemple : "notify_message", "notify_private" ou "notify_highlight"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "notify_message"

  • irc.look.notify_tags_whois

    • description: liste des étiquettes (séparées par des virgules) utilisées dans les messages affichés par notify lorsque le statut d'absence d'un pseudo change (résultat de la commande whois), par exemple : "notify_message", "notify_private" ou "notify_highlight"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "notify_message"

  • irc.look.open_pv_buffer_echo_msg

    • description: ouvrir un tampon privé sur son propre message quand la capacité echo-message est activée

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.part_closes_buffer

    • description: fermer le tampon lorsque /part est exécuté sur un canal

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.pv_buffer

    • description: mélanger les tampons privés

    • type: énuméré

    • valeurs: independent, merge_by_server, merge_all

    • valeur par défaut: independent

  • irc.look.pv_tags

    • description: liste des étiquettes (séparées par des virgules) utilisées dans les messages privés, par exemple : "notify_message", "notify_private" ou "notify_highlight"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "notify_private"

  • irc.look.raw_messages

    • description: nombre de messages bruts à sauvegarder en mémoire lorsque le tampon des données brutes est fermé (ces messages seront affichés lors de l'ouverture du tampon des données brutes)

    • type: entier

    • valeurs: 0 .. 65535

    • valeur par défaut: 256

  • irc.look.server_buffer

    • description: mélanger les tampons de serveur ; cette option n'a pas d'effet si une disposition est sauvée et qu'elle est en conflit avec cette valeur (voir /help layout)

    • type: énuméré

    • valeurs: merge_with_core, merge_without_core, independent

    • valeur par défaut: merge_with_core

  • irc.look.smart_filter

    • description: filtrer les messages join/part/quit/nick pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le canal (vous devez créer un filtre sur l'étiquette "irc_smart_filter", voir /help filter)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.smart_filter_account

    • description: activer le filtre intelligent pour les messages "account"

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.smart_filter_chghost

    • description: activer le filtre intelligent pour les messages "chghost"

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.smart_filter_delay

    • description: délai pour filtrer les messages join/part/quit (en minutes) : si le pseudo n'a pas parlé durant les N dernières minutes, le join/part/quit est filtré

    • type: entier

    • valeurs: 1 .. 10080

    • valeur par défaut: 5

  • irc.look.smart_filter_join

    • description: activer le filtre intelligent pour les messages "join"

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.smart_filter_join_unmask

    • description: délai pour démasquer un message "join" qui a été filtré avec l'étiquette "irc_smart_filter" (en minutes) : si le pseudo a rejoint au maximum il y a N minutes et qu'il a dit quelque chose sur le canal (message, notice ou mise à jour du topic), le "join" est démasqué, tout comme les changements de pseudo après ce "join" (0 = désactiver : ne jamais démasquer un "join")

    • type: entier

    • valeurs: 0 .. 10080

    • valeur par défaut: 30

  • irc.look.smart_filter_mode

    • description: activer le filtre intelligent pour les messages "mode" : "*" pour filtrer tous les modes, "+" pour filtrer tous les modes dans les préfixes du serveur (par exemple "ovh"), "xyz" pour filtrer seulement les modes x/y/z, "-xyz" pour filtrer tous les modes sauf x/y/z ; exemples : "ovh" : filtrer les modes o/v/h, "-bkl" : filtrer tous les modes sauf b/k/l

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""+

  • irc.look.smart_filter_nick

    • description: activer le filtre intelligent pour les messages "nick" (changements de pseudo)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.smart_filter_quit

    • description: activer le filtre intelligent pour les messages "part" et "quit"

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.smart_filter_setname

    • description: activer le filtre intelligent pour les messages "setname"

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.look.temporary_servers

    • description: activer l'ajout automatique des serveurs temporaires avec la commande /connect

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.topic_strip_colors

    • description: supprimer les couleurs dans le titre (utilisé seulement lors de l'affichage du titre du tampon)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.typing_status_nicks

    • description: afficher les pseudos qui écrivent sur le canal dans l'objet de barre "typing" (l'option typing.look.enabled_nicks doit être activée et la capacité "message-tags" doit être activée sur le serveur)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.look.typing_status_self

    • description: envoyer le statut d'écriture de message aux canaux de sorte que les autres utilisateurs voient quand vous écrivez un message (l'option typing.look.enabled_self doit être activée et la capacité "message-tags" doit être activée sur le serveur)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.network.autoreconnect_delay_growing

    • description: facteur de croissance du délai d'auto-reconnexion au serveur (1 = toujours le même délai, 2 = délai*2 pour chaque tentative, etc.)

    • type: entier

    • valeurs: 1 .. 100

    • valeur par défaut: 2

  • irc.network.autoreconnect_delay_max

    • description: délai maximum d'auto-reconnexion au serveur (en secondes, 0 = pas de maximum)

    • type: entier

    • valeurs: 0 .. 604800

    • valeur par défaut: 600

  • irc.network.ban_mask_default

    • description: masque de bannissement par défaut pour les commandes /ban, /unban et /kickban ; les variables $nick, $user, $ident et $host sont remplacées par leurs valeurs (extraites de "nick!user@host") ; $ident est identique à $user si $user ne commence pas par "~", sinon $ident vaut "*" ; ce masque par défaut est utilisé seulement si WeeChat connaît l'hôte pour le pseudo

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "*!$ident@$host"

  • irc.network.colors_receive

    • description: si désactivé, les codes couleurs des messages entrants sont ignorés

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.network.colors_send

    • description: autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux (ctrl-c + un code et une couleur optionnelle : b=gras, cxx=couleur, cxx,yy=couleur+fond, i=italique, o=désactiver couleur/attributs, r=inversé, u=souligné)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.network.lag_check

    • description: intervalle entre deux vérifications du lag (en secondes, 0 = ne jamais vérifier)

    • type: entier

    • valeurs: 0 .. 604800

    • valeur par défaut: 60

  • irc.network.lag_max

    • description: lag maximum (en secondes) : si ce lag est atteint, WeeChat considérera que la réponse du serveur (pong) ne sera jamais reçue et arrêtera de compter le lag (0 = ne jamais abandonner)

    • type: entier

    • valeurs: 0 .. 604800

    • valeur par défaut: 1800

  • irc.network.lag_min_show

    • description: lag minimum à afficher (en millisecondes)

    • type: entier

    • valeurs: 0 .. 86400000

    • valeur par défaut: 500

  • irc.network.lag_reconnect

    • description: se reconnecter au serveur si le lag est supérieur ou égal à cette valeur (en secondes, 0 = ne jamais se reconnecter) ; cette valeur doit être inférieure ou égale à irc.network.lag_max

    • type: entier

    • valeurs: 0 .. 604800

    • valeur par défaut: 300

  • irc.network.lag_refresh_interval

    • description: intervalle entre deux rafraîchissements du lag, lorsque le lag augmente (en secondes)

    • type: entier

    • valeurs: 1 .. 3600

    • valeur par défaut: 1

  • irc.network.notify_check_ison

    • description: intervalle entre deux vérifications de notification avec la commande IRC "ison" (en minutes)

    • type: entier

    • valeurs: 1 .. 10080

    • valeur par défaut: 1

  • irc.network.notify_check_whois

    • description: intervalle entre deux vérifications de notification avec la commande IRC "whois" (en minutes)

    • type: entier

    • valeurs: 1 .. 10080

    • valeur par défaut: 5

  • irc.network.sasl_fail_unavailable

    • description: provoquer un échec d'authentification SASL quand SASL est demandé mais non disponible sur le serveur ; lorsque cette option est activée, elle n'a d'effet que si l'option "sasl_fail" est égale à "reconnect" ou "disconnect" dans le serveur

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.network.send_unknown_commands

    • description: envoie les commandes inconnues au serveur

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.network.whois_double_nick

    • description: doubler le pseudo dans la commande /whois (si un seul pseudo est donné), pour avoir le temps d'inactivité dans la réponse ; par exemple : "/whois pseudo" enverra "whois pseudo pseudo"

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.server_default.addresses

    • description: liste de nom/port ou IP/port pour le serveur (séparés par des virgules) (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.anti_flood

    • description: délai en millisecondes entre deux messages envoyés au serveur (protection "anti-flood"); 0 = désactiver la protection et toujours envoyer les messages immédiatement (non recommandé car le serveur pourrait fermer la connexion si vous envoyez plusieurs messages en peu de temps) ; de manière interne il y a des files d'attente avec différentes priorités : lors de la connexion au serveur les messages sont envoyés immédiatement et vos messages ont une priorité plus élevée que certains messages envoyés automatiquement en tâche de fond par WeeChat

    • type: entier

    • valeurs: 0 .. 60000

    • valeur par défaut: 2000

  • irc.server_default.autoconnect

    • description: connexion automatique au serveur quand WeeChat démarre

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.server_default.autojoin

    • description: liste des canaux (séparés par des virgules) à rejoindre après la connexion au serveur (et après exécution de la commande + délai s'ils sont définis) ; les canaux nécessitant une clé doivent être en début de liste, et toutes les clés doivent être données après les canaux (séparées par un espace) (exemple : "#canal1,#canal2,#canal3 clé1,clé2" où #canal1 et #canal2 sont protégés par clé1 et clé2) (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.autojoin_delay

    • description: délai (en secondes) avant le "join" automatique des canaux (exemple : donner du temps pour l'authentification avant de rejoindre les canaux)

    • type: entier

    • valeurs: 0 .. 3600

    • valeur par défaut: 0

  • irc.server_default.autojoin_dynamic

    • description: définir automatiquement l'option "autojoin" selon les canaux que vous rejoignez ou quittez manuellement avec les commandes /join et /part

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.server_default.autoreconnect

    • description: reconnexion automatique au serveur après une déconnexion

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.server_default.autoreconnect_delay

    • description: délai (en secondes) avant de tenter une reconnexion au serveur

    • type: entier

    • valeurs: 1 .. 65535

    • valeur par défaut: 10

  • irc.server_default.autorejoin

    • description: rejoindre automatiquement les canaux après un "kick" ; vous pouvez définir une variable locale de tampon sur un canal pour remplacer cette valeur (nom de la variable : "autorejoin", valeur : "on" ou "off")

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • irc.server_default.autorejoin_delay

    • description: délai (en secondes) avant de rejoindre automatiquement (après un "kick")

    • type: entier

    • valeurs: 0 .. 86400

    • valeur par défaut: 30

  • irc.server_default.away_check

    • description: intervalle entre deux vérifications des absences (en minutes, 0 = ne jamais vérifier)

    • type: entier

    • valeurs: 0 .. 10080

    • valeur par défaut: 0

  • irc.server_default.away_check_max_nicks

    • description: ne pas vérifier les pseudos absents lorsqu'il y a un nombre important de pseudos (0 = pas de limite)

    • type: entier

    • valeurs: 0 .. 1000000

    • valeur par défaut: 25

  • irc.server_default.capabilities

    • description: liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles (voir /help cap pour la liste des capacités supportées par WeeChat) ; "*" active toutes les capacités par défaut (supportées par le serveur et WeeChat) ; le caractère joker "*" est autorisé ; une capacité commençant par "!" est exclue (exemple : "*,!account-*,!extended-join")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "*"

  • irc.server_default.charset_message

    • description: partie du message IRC (reçu ou envoyé) qui est décodé/encode vers le jeu de caractères cible ; message = le message IRC entier (par défaut), channel = à partir du nom du canal seulement (si trouvé, sinon à partir du texte), text = à partir du texte seulement (vous devriez essayer cette valeur si vous avec des problèmes d'encodage avec le nom du canal)

    • type: énuméré

    • valeurs: message, channel, text

    • valeur par défaut: message

  • irc.server_default.command

    • description: commande(s) à exécuter après la connexion au serveur et avant le "join" automatique des canaux (plusieurs commandes peuvent être séparées par ";", utilisez "\;" pour un point-virgule, les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs) (note : les commandes sont évaluées, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.command_delay

    • description: délai (en secondes) avant l'exécution de la commande

    • type: entier

    • valeurs: 0 .. 3600

    • valeur par défaut: 0

  • irc.server_default.connection_timeout

    • description: délai d'attente (en secondes) entre la connexion TCP au serveur et la réception du message 001, si ce délai est atteint avant que le message 001 soit reçu, WeeChat se déconnectera du serveur

    • type: entier

    • valeurs: 1 .. 3600

    • valeur par défaut: 60

  • irc.server_default.default_chantypes

    • description: préfixes de types de canaux à utiliser si le serveur ne les envoie pas dans le message 005 (par défaut "#&")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "#&"

  • irc.server_default.ipv6

    • description: utiliser le protocole IPv6 pour la communication avec le serveur

    • type: énuméré

    • valeurs: disable, auto, force

    • valeur par défaut: auto

  • irc.server_default.local_hostname

    • description: nom local de machine/IP personnalisé pour le serveur (optionnel, si non renseigné, le nom de machine local est utilisé)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.msg_kick

    • description: message par défaut pour l'éjection utilisé par les commandes "/kick" et "/kickban" (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick} (propre pseudo), ${target} (pseudo cible), ${channel} et ${server} sont remplacées par leur valeurs)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.msg_part

    • description: message par défaut pour le part (en quittant un canal) (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick}, ${channel} et ${server} sont remplacées par leur valeurs ; "%v" est remplacé par la version de WeeChat s'il n'y a pas de ${...} dans la chaîne)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "WeeChat ${info:version}"

  • irc.server_default.msg_quit

    • description: message de fin par défaut (lors de la déconnexion du serveur) (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick}, ${channel} et ${server} sont remplacées par leurs valeurs ; "%v" est remplacé par la version de WeeChat s'il n'y a pas de ${...} dans la chaîne)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "WeeChat ${info:version}"

  • irc.server_default.nicks

    • description: pseudos à utiliser sur le serveur (séparés par des virgules) (note : le contenu est évalué, voir /help eval ; ${username} est remplacé par l'utilisateur système ("weechat" par défaut s'il n'est pas trouvé), les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${username},${username}2,${username}3,${username}4,${username}5"

  • irc.server_default.nicks_alternate

    • description: obtenir un pseudo alternatif lorsque tous les pseudos déclarés sont déjà utilisés sur le serveur : ajouter des "_" jusqu'à ce que le pseudo ait une longueur de 9, puis remplacer le dernier caractère (ou les deux derniers) par un nombre de 1 à 99, jusqu'à trouver un pseudo non utilisé sur le serveur

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.server_default.notify

    • description: liste de notifications pour le serveur (vous ne devriez pas changer cette option mais utiliser la commande /notify)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.password

    • description: mot de passe pour le serveur (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.proxy

    • description: nom du proxy utilisé pour ce serveur (optionnel, le proxy doit être défini avec la commande /proxy)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.realname

    • description: nom réel pour le serveur (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.registered_mode

    • description: mode qui est défini sur les utilisateurs qui se sont enregistrés (la valeur par défaut est "r")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "r"

  • irc.server_default.sasl_fail

    • description: action à effectuer si l'authentification SASL échoue : "continue" pour ignorer le problème d'authentification, "reconnect" pour planifier une reconnexion au serveur, "disconnect" pour se déconnecter du serveur (voir aussi l'option irc.network.sasl_fail_unavailable)

    • type: énuméré

    • valeurs: continue, reconnect, disconnect

    • valeur par défaut: reconnect

  • irc.server_default.sasl_key

    • description: fichier avec la clé privée ECC pour le mécanisme "ecdsa-nist256p-challenge" (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.sasl_mechanism

    • description: mécanisme pour l'authentification SASL : "plain" pour un mot de passe en clair, "scram-sha-1" pour une authentification SCRAM avec algorithme de hachage SHA-1, "scram-sha-256" pour une authentification SCRAM avec algorithme de hachage SHA-256, "scram-sha-512" pour une authentification SCRAM avec algorithme de hachage SHA-512, "ecdsa-nist256p-challenge" pour une authentification par challenge avec clé, "external" pour une authentification en utilisant un certificat TLS côté client

    • type: énuméré

    • valeurs: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external

    • valeur par défaut: plain

  • irc.server_default.sasl_password

    • description: mot de passe pour l'authentification SASL ; cette option n'est pas utilisée pour les mécanismes "ecdsa-nist256p-challenge" et "external" (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.sasl_timeout

    • description: délai d'attente maximum (en secondes) avant d'abandonner l'authentification SASL

    • type: entier

    • valeurs: 1 .. 3600

    • valeur par défaut: 15

  • irc.server_default.sasl_username

    • description: nom d'utilisateur pour l'authentification SASL ; cette option n'est pas utilisée pour le mécanisme "external" (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.split_msg_max_length

    • description: découper les messages IRC sortants pour tenir dans ce nombre de caractères ; la valeur par défaut est 512, c'est une valeur sûre et recommandée ; la valeur 0 désactive le découpage (non recommandé, sauf si vous êtes sûr de ce que vous faites) ; les valeurs autorisées sont 0 ou tout entier compris entre 128 et 4096 ; cette option devrait être changée seulement sur les serveurs IRC non standards, par exemple sur les passerelles comme bitlbee

    • type: entier

    • valeurs: 0 .. 4096

    • valeur par défaut: 512

  • irc.server_default.tls

    • description: utiliser TLS pour la communication avec le serveur

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.server_default.tls_cert

    • description: fichier de certificat TLS utilisé pour identifier automatiquement votre pseudo (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.tls_dhkey_size

    • description: taille de clé utilisée pour l'échange de clé Diffie-Hellman

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 2048

  • irc.server_default.tls_fingerprint

    • description: empreinte du certificat qui est de confiance et accepté pour le serveur ; seuls les chiffres hexadécimaux sont autorisés (0-9, a-f) : 128 caractères pour SHA-512, 64 caractères pour SHA-256, 40 caractères pour SHA-1 (non sûr, non recommandé) ; plusieurs empreintes peuvent être séparées par des virgules ; si cette option est définie, les autres vérifications sur les certificats ne sont PAS effectuées (option "tls_verify") (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.tls_password

    • description: mot de passe pour la clé privée du certificat TLS ; utilisé seulement avec gnutls >= 3.1.0 (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.tls_priorities

    • description: chaîne avec les priorités pour gnutls (pour la syntaxe, voir la documentation de la fonction gnutls_priority_init du manuel gnutls, les chaînes courantes sont : "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "NORMAL"

  • irc.server_default.tls_verify

    • description: vérifier que la connexion TLS est entièrement de confiance

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • irc.server_default.usermode

    • description: mode(s) utilisateur à définir après la connexion au serveur et avant d'exécuter la commande et de rejoindre automatiquement les canaux ; exemples : "+R" (pour définir le mode "R"), "+R-i" (pour définir le mode "R" et supprimer "i") ; voir /help mode pour la syntaxe complète du mode (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • irc.server_default.username

    • description: nom d'utilisateur pour le serveur (note : le contenu est évalué, voir /help eval ; ${username} est remplacé par l'utilisateur système ("weechat" par défaut s'il n'est pas trouvé), les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${username}"

9. Xfer

L’extension Xfer permet :

  • la discussion directe (entre deux machines, sans serveur), par exemple le "DCC Chat" via l’extension IRC

  • le transfert de fichiers, par exemple le "DCC" via l’extension IRC

9.1. Commandes

  • me: envoyer une action CTCP à l’hôte distant

/me  <message>

message : message à envoyer
  • xfer: contrôle xfer

/xfer  [list|listfull]

    list : lister les xfer
listfull : lister les xfer (verbeux)

Sans paramètre, cette commande ouvre le tampon avec la liste des xfer.

9.2. Options

Sections dans le fichier xfer.conf :

Section Commande de contrôle Description

look

/set xfer.look.*

Aspect/présentation.

color

/set xfer.color.*

Couleurs.

network

/set xfer.network.*

Options réseau.

file

/set xfer.file.*

Options pour les fichiers envoyés/reçus.

Options :

  • xfer.color.status_aborted

    • description: couleur du texte pour le statut "interrompu"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightred

  • xfer.color.status_active

    • description: couleur du texte pour le statut "actif"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightblue

  • xfer.color.status_connecting

    • description: couleur du texte pour le statut "connexion"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • xfer.color.status_done

    • description: couleur du texte pour le statut "terminé"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightgreen

  • xfer.color.status_failed

    • description: couleur du texte pour le statut "échoué"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightred

  • xfer.color.status_waiting

    • description: couleur du texte pour le statut "en attente"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightcyan

  • xfer.color.text

    • description: couleur du texte dans le tampon xfer

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • xfer.color.text_bg

    • description: couleur du fond dans le tampon xfer

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • xfer.color.text_selected

    • description: couleur du texte pour la ligne sélectionnée dans le tampon xfer

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • xfer.file.auto_accept_chats

    • description: accepte automatiquement les demandes de discussion (à utiliser avec précaution !)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • xfer.file.auto_accept_files

    • description: accepte automatiquement les demandes d'envoi de fichiers (à utiliser avec précaution !)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • xfer.file.auto_accept_nicks

    • description: liste de pseudos (séparés par des virgules) pour lesquels les demandes d'envoi de fichiers et de discussion sont automatiquement acceptées ; le format est "serveur.pseudo" (pour un serveur spécifique) ou "pseudo" (pour tous les serveurs) ; exemple : "libera.FlashCode,andrew"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • xfer.file.auto_check_crc32

    • description: vérifier automatiquement la somme de contrôle CRC32 du fichier si elle est trouvée dans le nom de fichier (8 caractères hexadécimaux)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • xfer.file.auto_rename

    • description: renommer les fichiers reçus s'ils existent déjà (ajoute ".1", ".2", ...)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • xfer.file.auto_resume

    • description: continuer automatiquement les transferts de fichiers si la connexion avec l'hôte a été perdue

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • xfer.file.convert_spaces

    • description: convertir les espaces en underscores lors de l'envoi et la réception de fichiers

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • xfer.file.download_path

    • description: chemin où écrire les fichiers reçus (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${weechat_data_dir}/xfer"

  • xfer.file.download_temporary_suffix

    • description: suffixe de fichier temporaire utilisé pendant le transfert pour un fichier reçu, il est supprimé après un transfert réussi ; si chaîne vide, aucun suffixe de fichier n'est utilisé pendant le transfert

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ".part"

  • xfer.file.upload_path

    • description: chemin où lire les fichiers à envoyer (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "~"

  • xfer.file.use_nick_in_filename

    • description: utiliser le pseudo distant comme préfixe dans le nom de fichier local lors de la réception d'un fichier

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • xfer.look.auto_open_buffer

    • description: ouvrir automatiquement le tampon xfer lorsqu'un nouveau xfer est ajouté à la liste

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • xfer.look.progress_bar_size

    • description: taille de la barre de progression, en caractères (si 0, la barre de progression est désactivée)

    • type: entier

    • valeurs: 0 .. 256

    • valeur par défaut: 20

  • xfer.look.pv_tags

    • description: liste des étiquettes (séparées par des virgules) utilisées dans les messages privés, par exemple : "notify_message", "notify_private" ou "notify_highlight"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "notify_private"

  • xfer.network.blocksize

    • description: taille de bloc pour les paquets envoyés, en octets

    • type: entier

    • valeurs: 1024 .. 102400

    • valeur par défaut: 65536

  • xfer.network.fast_send

    • description: n'attend pas les accusés de réception lors de l'envoi de fichier

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • xfer.network.own_ip

    • description: adresse IP ou DNS utilisée pour envoyer et recevoir de manière passive les fichiers/discussions (si non renseigné, l'interface IP locale est utilisée)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • xfer.network.port_range

    • description: restreint les fichiers/discussions sortants et les fichiers entrants de manière passice à utiliser des ports dans l'intervalle donné (pratique pour le NAT) (syntaxe : un port simple, par exemple 5000, un intervalle de ports, par exemple 5000-5015, si non renseigné tout port peut être utilisé, il est recommandé d'utiliser des ports supérieurs à 1024, car seul root peut utiliser les ports en dessous de 1024)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • xfer.network.send_ack

    • description: envoyer des acks lors de la réception de fichiers ; si désactivé, le transfert peut échouer si l'envoyeur attend des acks (par exemple un WeeChat qui envoie le fichier avec l'option xfer.network.fast_send à off) ; d'un autre côté, désactiver l'envoi des acks peut éviter un gel si les acks ne sont pas envoyés immédiatement à l'envoyeur

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • xfer.network.speed_limit_recv

    • description: limitation de vitesse pour la réception de fichiers, en kilo-octets par seconde (0 signifie pas de limite)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 0

  • xfer.network.speed_limit_send

    • description: limitation de vitesse pour l'envoi des fichiers, en kilo-octets par seconde (0 signifie pas de limite)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 0

  • xfer.network.timeout

    • description: délai d'attente pour la requête xfer (en secondes)

    • type: entier

    • valeurs: 5 .. 2147483647

    • valeur par défaut: 300

10. Notifications de saisie

L’extension typing est utilisée pour informer les autres utilisateurs quand vous êtes en train d’écrire un message et afficher la liste des utilisateurs qui écrivent actuellement un message sur un tampon.

Elle est utilisée par l’extension IRC sur les tampons de canaux et privés, lorsque la capacité "message-tags" est activée (vous pouvez vérifier avec la commande /cap).
Sous le capot, l’étiquette client typing est utilisée, en suivant cette spécification .

10.1. Activation

Pour des considérations de confidentialité, la fonctionnalité typing est désactivée par défaut.
Si vous voulez l’utiliser, vous devez activer des options dans les extensions typing et irc :

/set typing.look.enabled_nicks on
/set typing.look.enabled_self on
/set irc.look.typing_status_nicks on
/set irc.look.typing_status_self on

Les notifications "typing" sont affichées à la fin de la barre de statut.

Exemple de barre de statut avec l’objet "typing" : "bob" écrit un message et "alice" était en train d’en écrire un mais a fait une pause :

│[12:55] [6] [irc/libera] 3:#test(+n){4} [Écrit : bob, (alice)]                   │
│[@Flashy] █                                                                      │
└─────────────────────────────────────────────────────────────────────────────────┘

10.2. Signaux envoyés

Lorsque vous écrivez un message (pas une commande commençant par /), l’extension typing envoie des signaux pour informer les autres extensions (comme IRC) que vous êtes en train d’écrire, et ces extensions peuvent alors envoyer des notifications aux autres utilisateurs.

Les signaux suivants sont envoyés quand vous écrivez des messages :

Signal Paramètres Description

typing_self_typing

Pointeur : tampon.

Vous écrivez un message.

typing_self_paused

Pointeur : tampon.

Vous avez fait une pause dans l’écriture d’un message.

typing_self_cleared

Pointeur : tampon.

Vous avez effacé la ligne de commande sans envoyée le message.

typing_self_sent

Pointeur : tampon.

Vous avez envoyé le message au tampon.

10.3. Signaux captés

L’extension typing capte des signaux qui peuvent être envoyés par d’autres extensions (comme IRC), pour mettre à jour des tables de hachage internes qui sont utilisées pour sauvegarder l’état d’écriture de message des pseudos sur les tampons. Ces tables de hachages sont utilisées pour construire le contenu de l’objet de barre "typing".

Les signaux suivants sont captés par l’extension typing :

Signal Paramètres Description

typing_set_nick

Chaîne : pointeur tampon + ";" + état (un parmi ceux-ci : "off", "typing", "paused", "cleared") + ";" + pseudo.
Example: "0x1234abcd;typing;alice".

Définir l’état de la saisie du pseudo sur le tampon.

typing_reset_buffer

Pointeur : tampon.

Supprimer l’état de saisir pour tous les pseudos d’un tampon.

10.4. Options

Sections dans le fichier typing.conf :

Section Commande de contrôle Description

look

/set typing.look.*

Aspect/présentation.

Options :

  • typing.look.delay_purge_paused

    • description: nombre de secondes après que le statut "paused" ait été défini : si atteint, le statut d'écriture est supprimé

    • type: entier

    • valeurs: 1 .. 2147483647

    • valeur par défaut: 30

  • typing.look.delay_purge_typing

    • description: nombre de secondes après que le statut "typing" ait été défini : si atteint, le statut d'écriture est supprimé

    • type: entier

    • valeurs: 1 .. 2147483647

    • valeur par défaut: 6

  • typing.look.delay_set_paused

    • description: nombre de secondes après avoir tapé le dernier caractère : si atteint, le statut d'écriture devient "paused" et il n'y a plus de signaux typing envoyés

    • type: entier

    • valeurs: 1 .. 2147483647

    • valeur par défaut: 10

  • typing.look.enabled_nicks

    • description: activer le statut d'écriture pour les autres pseudos (afficher le statut d'écriture pour les autres pseudos écrivant un message dans le tampon courant)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • typing.look.enabled_self

    • description: activer le statut d'écriture pour ses propres messages (envoyer l'information aux autres utilisateurs)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • typing.look.input_min_chars

    • description: nombre minimum de caractères dans le message pour déclencher l'envoi des signaux typing

    • type: entier

    • valeurs: 1 .. 2147483647

    • valeur par défaut: 4

  • typing.look.item_max_length

    • description: nombre maximum de caractères affichés dans l'objet de barre "typing" (0 = ne pas tronquer le contenu)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 0

11. Relay

L’extension Relay est utilisée pour relayer des données via le réseau, en utilisant divers protocoles :

  • irc : proxy IRC : utilisé pour partager la connexions aux serveurs IRC avec un ou plusieurs autres clients IRC

  • api : API REST HTTP, utilisée par WeeChat et les interfaces distantes pour afficher et interagir avec WeeChat

  • weechat : protocole utilisé par les interfaces distantes pour afficher et interagir avec WeeChat.

Pour les protocoles api et weechat, voir la liste des interfaces distantes sur cette page .

11.1. Mot de passe

Il est fortement recommandé de définir un mot de passe pour le relai, avec ces commandes :

/secure set relay motdepasse
/set relay.network.password "${sec.data.relay}"

Ce mot de passe est utilisé avec tous les protocoles.

11.2. TOTP

TOTP (« Time-based One-Time Password » : mot de passe à usage unique basé sur le temps) peut être utilisé comme second facteur d’authentification pour les protocoles api et weechat, en plus du mot de passe.

Il est optionnel et augmente le niveau de sécurité.

Les mots de passe à usage unique peuvent être générés avec des applications, par exemple :

Le « secret » TOTP doit être défini dans WeeChat et dans l’application utilisée pour générer les mots de passe à usage unique.

Il doit être une chaîne encodée en base32, avec seulement des lettres et des chiffres de 2 à 7, par exemple :

/secure set relay_totp secretpasswordbase32
/set relay.network.totp_secret "${sec.data.relay_totp}"

11.3. TLS

Vous pouvez utiliser TLS en créant un certificat et clé privée et en utilisant le préfixe "tls." dans le nom du protocole.

Le chemin par défaut vers le certificat/clé est défini par l’option relay.network.tls_cert_key.

Vous pouvez créer le certificat et la clé privée avec les commandes suivantes :

mkdir -p ~/.config/weechat/tls
cd ~/.config/weechat/tls
openssl req -nodes -newkey rsa:2048 -keyout relay.pem -x509 -days 365 -out relay.pem
Note
Vous devez remplacer ~/.config/weechat par le chemin vers votre répertoire de config WeeChat qui peut aussi être par exemple ~/.weechat.

Si WeeChat tourne déjà, vous pouvez recharger le certificat et clé privée avec la commande :

/relay tlscertkey

11.4. Proxy IRC

L’extension Relay peut agir comme un proxy IRC : elle simulera un serveur IRC, et vous pourrez vous connecter sur WeeChat avec n’importe quel autre client IRC (y compris WeeChat lui-même).

Vous pouvez définir un port par serveur IRC, ou bien un port générique pour tous les serveurs.

Lors de l’utilisation d’un port pour tous les serveurs, le client doit envoyer le nom interne du serveur dans la commande IRC "PASS", avec le format (voir l’exemple ci-dessous) :

PASS serveur:motdepasse

Exemple : proxy IRC avec TLS pour tout serveur (le client choisira) :

/relay add tls.irc 8000

Exemple : proxy IRC sans TLS seulement pour le serveur "libera" :

/relay add irc.libera 8000

Maintenant vous pouvez vous connecter sur le port 8000 avec n’importe quel client IRC en utilisant le mot de passe "motdepasse" (ou "libera:motdepasse" si aucun serveur n’a été spécifié dans le relai).

Par exemple si vous utilisez WeeChat comme client IRC du relai, avec un serveur "relay" et un mot de passe relay "secret", vous pouvez configurer le mot de passe avec ces commandes :

/secure set relay_libera libera:secret
/set irc.server.relay.password "${sec.data.relay_libera}"

11.5. API protocol

L’extension Relay peut envoyer les données à un autre WeeChat ou une interface distante avec un protocol HTTP de type API REST.

Vous pouvez parcourir et tester l’API en ligne : API Relay WeeChat .

Vous pouvez vous connecter avec WeeChat ou une interface distante, voir cette page .

Par exemple :

/relay add api 9000

Maintenant vous pouvez vous connecter sur le port 9000 avec une interface distante en utilisant le mot de passe "motdepasse".

Pour vous connecter à un relai api avec WeeChat :

/remote add weechat http://localhost:9000 -password=motdepasse
/remote connect weechat

Pour vous connecter à un relai api tournant ailleurs avec WeeChat (TLS est fortement recommandé) :

/remote add weechat https://example.com:9000 -password=mypassword
/remote connect weechat
Note
Le WeeChat distant doit exposer exactement la même version d’API que le WeeChat local, il est donc fortement recommandé d’utiliser exactement la même version de WeeChat de chaque côté.

11.6. Protocole WeeChat

L’extension Relay peut envoyer les données à une interface distante en utilisant le protocole WeeChat.

Vous pouvez vous connecter avec une interface distante, voir cette page .

Important
WeeChat lui-même ne peut PAS se connecter sur un autre WeeChat avec ce protocole.

Par exemple :

/relay add weechat 9500

Maintenant vous pouvez vous connecter sur le port 9500 avec une interface distante en utilisant le mot de passe "motdepasse".

11.7. WebSocket

Le protocole WebSocket (RFC 6455 ) est supporté dans l’extension Relay pour tous les protocoles.

La poignée de main ("handshake") WebSocket est automatiquement détectée et le socket devient prêt pour WebSocket si les en-tête requis sont trouvés dans la poignée de main et si l’origine est autorisée (voir l’option relay.network.websocket_allowed_origins).

Un WebSocket peut être ouvert dans une page HTML5 avec une seule ligne de JavaScript :

websocket = new WebSocket("ws://example.com:9500/weechat");

Le port (9500 dans l’exemple) est le port défini dans l’extension Relay.

L’URI doit se terminer par "/weechat" pour les protocoles irc et weechat et "/api" pour le protocole api.

11.8. UNIX domain sockets

En utilisant l’option de protocole "unix" avec la commande /relay add, vous pouvez écouter avec n’importe quel protocole sur un socket UNIX et un chemin donné. Par exemple :

/relay add unix.weechat ${weechat_runtime_dir}/relay_socket

Cela autorise les clients à se connecter en utilisant le protocole weechat à /run/user/1000/weechat/relay_socket. Cela est utile pour autoriser le "SSH forwarding" pour les clients relay, quand d’autres ports ne peuvent pas être ouverts.

Avec OpenSSH :

ssh -L 9000:.weechat/relay_socket user@hostname

Cela redirige les clients relay locaux qui se connectent au port 9000 vers l’instance de WeeChat qui tourne sur "hostname".

11.9. Commandes

  • relay: contrôle du relai

/relay  list|listfull|listrelay
        add|addreplace <nom> <port>|<chemin>
        del|start|restart|stop <nom>
        raw
        tlscertkey

      list : lister les clients pour le relai
  listfull : lister les clients pour le relai (verbeux)
 listrelay : lister les relais (nom et port)
       add : ajouter un relai (écouter sur un port)
addreplace : ajouter ou remplacer un relai existant
       del : supprimer un relai (les clients restent connectés)
     start : écouter sur le port
   restart : fermer le socket serveur et écouter à nouveau sur le port (les clients restent connectés)
      stop : fermer le socket serveur (les clients restent connectés)
       nom : nom du relai (voir le format ci-dessous)
      port : port utilisé pour le relai
    chemin : chemin utilisé pour le relai (pour un socket de domaine UNIX seulement) ; le chemin est évalué (voir la fonction string_eval_path_home dans la référence API extension)
       raw : ouvrir le tampon avec les données brutes Relay
tlscertkey : définir le certificat/clé TLS en utilisant le chemin de l'option relay.network.tls_cert_key

Le nom du relai est : [ipv4.][ipv6.][tls.]<protocole.nom> ou unix[.tls].<protocole.nom> :
  - ipv4 : forcer l'utilisation d'IPv4
  - ipv6 : forcer l'utilisation d'IPv6
  - tls : activer TLS
  - unix : utiliser un socket de domaine UNIX
  - protocol.nom : protocole et nom à relayer :
    - protocole "irc" : le nom est le serveur à partager (optionnel, si non donné, le nom de serveur doit être envoyé par le client dans la commande "PASS", avec le format : "PASS serveur:motdepasse")
    - protocole "api" (le nom n'est pas utilisé)
    - protocole "weechat" (le nom n'est pas utilisé)

Le protocole "irc" permet à n'importe quel client IRC (incluant WeeChat lui-même) de se connecter sur le port.
Le protocole "api" permet à une interface distance (incluant WeeChat lui-même) de se connecter sur le port.
Le protocole "weechat" permet à une interface distante (mais pas WeeChat lui-même) de se connecter sur le port.

La liste des interfaces distances est disponible ici : https://weechat.org/about/interfaces/

Sans paramètre, cette commande ouvre le tampon avec la liste des clients pour le relai.

Exemples :
  /relay add irc.libera 8000
  /relay add tls.irc.libera 8001
  /relay add tls.irc 8002
  /relay add tls.api 9000
  /relay add weechat 10000
  /relay add tls.weechat 10001
  /relay add ipv4.tls.weechat 10001
  /relay add ipv6.tls.weechat 10001
  /relay add ipv4.ipv6.tls.weechat 10001
  /relay add unix.weechat ${weechat_runtime_dir}/relay_socket
  • remote: contrôle des relais distants

/remote  list|listfull [<nom>]
         add|addreplace <nom> <url> [-<option>[=<valeur>]]
         connect|reconnect|disconnect|del <nom>
         send <nom> <json> rename <nom> <nouveau_nom>

      list : afficher les relais distants (sans paramètre, cette liste est affichée)
  listfull : afficher les relais distants (verbeux)
       add : ajouter un relai distant
addreplace : ajouter ou remplacer un relai distant
       nom : nom du relai distant, pour usage interne et affichage ; ce nom est utilisé pour se connecter au relai distant et pour définir les options du relai distant : relay.remote.nom.xxx
       url : URL du relai distant, le format est https://example.com:9000 ou http://example.com:9000 (connexion en clair, non recommandé)
    option : définir l'option pour le relai distant
   connect : se connecter au relai distant
 reconnect : se reconnecter au relai distant
disconnect : se déconnecter du relai distant
       del : supprimer un relai distant
      send : envoyer des données JSON au relai distant
    rename : renommer un relai distant

Exemples :
  /remote add example https://localhost:9000 -password=my_secret_password -totp_secret=secrettotp
  /remote connect example
  /remote disconnect example
  /remote del example

11.10. Options

Sections dans le fichier relay.conf :

Section Commande de contrôle Description

look

/set relay.look.*

Aspect/présentation.

color

/set relay.color.*

Couleurs.

network

/set relay.network.*

Options réseau.

irc

/set relay.irc.*

Options spécifiques au protocole irc (proxy irc).

port

/relay add
/set relay.port.*

Ports utilisés pour le relai (les options peuvent être ajoutées/supprimées dans la section).

Options :

  • relay.api.remote_autoreconnect_delay_growing

    • description: facteur de croissance du délai d'auto-reconnexion au relai distant (1 = toujours le même délai, 2 = délai*2 pour chaque tentative, etc.)

    • type: entier

    • valeurs: 1 .. 100

    • valeur par défaut: 2

  • relay.api.remote_autoreconnect_delay_max

    • description: délai maximum d'auto-reconnexion au relai distant (en secondes, 0 = pas de maximum)

    • type: entier

    • valeurs: 0 .. 604800

    • valeur par défaut: 600

  • relay.api.remote_get_lines

    • description: nombre de lignes à récupérer sur chaque tampon lors d'une connexion à un relai distant

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 1000

  • relay.color.client

    • description: couleur du texte pour la description du client

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • relay.color.status_active

    • description: couleur du texte pour le statut "connecté"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: green

  • relay.color.status_auth_failed

    • description: couleur du texte pour le statut "échec auth"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightmagenta

  • relay.color.status_authenticating

    • description: couleur du texte pour le statut "authentification"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • relay.color.status_connecting

    • description: couleur du texte pour le statut "connexion"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • relay.color.status_disconnected

    • description: couleur du texte pour le statut "déconnecté"

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightred

  • relay.color.text

    • description: couleur du texte dans le tampon relay

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • relay.color.text_bg

    • description: couleur du fond dans le tampon relay

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • relay.color.text_selected

    • description: couleur du texte pour la ligne sélectionnée dans le tampon relay

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • relay.irc.backlog_max_minutes

    • description: nombre maximum de minutes dans l'historique par canal IRC (0 = sans limite, exemples : 1440 = une journée, 10080 = une semaine, 43200 = un mois, 525600 = une année)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 0

  • relay.irc.backlog_max_number

    • description: nombre maximum de lignes dans l'historique par canal IRC (0 = sans limite)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 1024

  • relay.irc.backlog_since_last_disconnect

    • description: afficher l'historique en démarrant depuis la dernière déconnexion du client

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • relay.irc.backlog_since_last_message

    • description: afficher l'historique en démarrant depuis votre dernier message envoyé

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • relay.irc.backlog_tags

    • description: liste d'étiquettes de messages (séparées par des virgules) qui sont affichés dans l'historique par canal IRC (étiquettes supportées : "irc_join", "irc_part", "irc_quit", "irc_nick", "irc_privmsg"), "*" = toutes les étiquettes supportées

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "irc_privmsg"

  • relay.irc.backlog_time_format

    • description: format pour l'heure dans les messages d'historique (voir man strftime pour le format) (non utilisé si la capacité de serveur "server-time" a été activée par le client, car l'heure est envoyée sous forme d'étiquette irc) ; chaîne vide = désactiver l'heure dans les messages d'historique

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "[%H:%M] "

  • relay.look.auto_open_buffer

    • description: ouvrir automatiquement le tampon lorsqu'un client se connecte avec l'un de ces protocoles (liste séparée par des virtules) ; les protocoles autorisés : "api", "irc", "weechat"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "irc,weechat"

  • relay.look.display_clients

    • description: afficher des messages lorsque les clients se connectent/déconnectent du relai qui utilisent un de ces protocoles (liste séparée par des virfules) ; protocoles autorisés : "api", "irc", "weechat"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "irc,weechat"

  • relay.look.raw_messages

    • description: nombre de messages bruts à sauvegarder en mémoire lorsque le tampon des données brutes est fermé (ces messages seront affichés lors de l'ouverture du tampon des données brutes)

    • type: entier

    • valeurs: 0 .. 65535

    • valeur par défaut: 256

  • relay.look.raw_messages_max_length

    • description: nombre maximum de caractères à afficher dans les messages bruts (les très longs messages peuvent provoquer des lenteurs) ; 0 = afficher les messages entiers

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 4096

  • relay.network.allow_empty_password

    • description: autoriser un mot de passe vide dans relay (devrait être activé seulement pour des tests ou sur le réseau local)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • relay.network.allowed_ips

    • description: expression régulière POSIX étendue avec les IPs autorisées pour le relai (insensible à la casse, utilisez "(?-i)" en début de chaîne pour la rendre insensible à la casse), exemple : "^(123\.45\.67\.89|192\.160\..*)$"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • relay.network.auth_timeout

    • description: temps maximum (en secondes) pour l'authentification du client ; la connexion est fermée si le client n'est toujours pas authentifié après ce délai et le statut est positionné à "échec d'authentification" (0 = attendre sans fin)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 60

  • relay.network.bind_address

    • description: adresse pour le bind (si vide, la connexion est possible sur toutes les interfaces, utiliser "127.0.0.1" pour autoriser les connections depuis la machine locale seulement avec IPv4 et "::ffff:127.0.0.1" avec IPv6)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • relay.network.clients_purge_delay

    • description: délai pour purger les clients déconnectés (en minutes, 0 = purger les clients immédiatement, -1 = ne jamais purger)

    • type: entier

    • valeurs: -1 .. 43200

    • valeur par défaut: 0

  • relay.network.commands

    • description: liste des commandes autorisées/interdites (séparées par des virgules) lorsque qu'une entrée de données (texte ou commande) est reçue du client (protocoles "api" et "weechat") ; "*" signifie toutes les commandes, un nom commençant par "!" est une valeur négative pour empêcher une commande d'être exécutée, le caractère joker "*" est autorisé dans les noms ; cette option devrait être définie si le client relay n'est pas sûr (quelqu'un pourrait l'utiliser pour exécuter des commandes) ; par exemple "*,!exec,!quit" autorise toute commande sauf /exec et /quit

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "*,!quit"

  • relay.network.compression

    • description: compression des messages envoyés aux clients avec les protocoles "api" et "weechat" : 0 = désactiver la compression, 1 = faible compression / rapide ... 100 = meilleure compression / lent ; la valeur est un pourcentage converti de 1 à 9 pour zlib et de 1 à 19 pour zstd ; la valeur par défaut est recommandée, elle offre un bon compromis compression/vitesse

    • type: entier

    • valeurs: 0 .. 100

    • valeur par défaut: 20

  • relay.network.ipv6

    • description: écouter en IPv6 sur le socket par défaut (en plus de l'IPv4 qui est par défaut) ; les protocoles IPv4 et IPv6 peuvent être forcés (individuellement ou ensemble) dans le nom du protocole (voir /help relay)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • relay.network.max_clients

    • description: nombre maximum de clients qui se connectent sur un port (0 = pas de limite)

    • type: entier

    • valeurs: 0 .. 2147483647

    • valeur par défaut: 5

  • relay.network.nonce_size

    • description: taille du nonce (en octets), généré lorsqu'un client se connecte ; le client doit utiliser ce nonce, concaténé au nonce client et au mot de passe pour hacher le mot de passe dans la commande "init" du protocole weechat

    • type: entier

    • valeurs: 8 .. 128

    • valeur par défaut: 16

  • relay.network.password

    • description: mot de passe requis par les clients pour accéder à ce relai (une valeur vide indique que le mot de passe n'est pas nécessaire, voir l'option relay.network.allow_empty_password) (note : le contenu est évalué, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • relay.network.password_hash_algo

    • description: liste des algorithmes de hachage pour l'authentification par mot de passe dans le protocole relay, parmi ces valeurs : "plain" (mot de passe en clair, non haché), "sha256", "sha512", "pbkdf2+sha256", "pbkdf2+sha512" ; "*" signifie tous les algorithmes, un nom commençant par "!" est une valeur négative pour empêcher un algorithme d'être utilisé, le caractère joker "*" est autorisé dans les noms (exemples : "*", "pbkdf2*", "*,!plain")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "*"

  • relay.network.password_hash_iterations

    • description: nombre d'itérations demandées au client dans le protocole weechat lorsqu'un mot de passe haché avec l'algorithme PBKDF2 est utilisé pour l'authentification ; plus d'itérations est mieux en terme de sécurité mais est plus lent à calculer ; ce nombre ne doit pas être trop élevé si votre micro-processeur est lent

    • type: entier

    • valeurs: 1 .. 1000000

    • valeur par défaut: 100000

  • relay.network.time_window

    • description: nombre de secondes autorisées avant et après l'heure courante pour le hachage de l'heure + mot de passe dans le protocole "api"

    • type: entier

    • valeurs: 0 .. 256

    • valeur par défaut: 5

  • relay.network.tls_cert_key

    • description: fichier avec le certificat et la clé privée TLS (pour servir les clients avec TLS) (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${weechat_config_dir}/tls/relay.pem"

  • relay.network.tls_priorities

    • description: chaîne avec les priorités pour gnutls (pour la syntaxe, voir la documentation de la fonction gnutls_priority_init du manuel gnutls, les chaînes courantes sont : "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "NORMAL"

  • relay.network.totp_secret

    • description: secret pour la génération du mot de passe à usage unique basé sur le temps (TOTP), encodé en base32 (seulement des lettres et chiffres de 2 à 7) ; il est utilisé comme second facteur d'authentification dans les protocoles "api" et "weechat", en plus du mot de passe, qui ne doit pas être vide (une valeur vide signifie que le TOTP n'est pas requis) (note : le contenu est évalué, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • relay.network.totp_window

    • description: nombre de mots de passe à usage unique basés sur le temps à accepter avant et après le mot de passe courant ; 0 = accepter seulement le mot de passe courant, 1 = accepter un mot de passe avant, le courant et un après; 2 = accepter deux mots de passe avant, le courant et deux après, ... ; un nombre élevé réduit le niveau de sécurité (0 ou 1 sont les valeurs recommandées)

    • type: entier

    • valeurs: 0 .. 256

    • valeur par défaut: 0

  • relay.network.websocket_allowed_origins

    • description: expression régulière POSIX étendue avec les origines autorisées dans les websockets (insensible à la casse, utilisez "(?-i)" en début de chaîne pour la rendre sensible à la casse), exemple : "^https?://(www\.)?example\.(com|org)"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • relay.network.websocket_permessage_deflate

    • description: activer l'extension websocket "permessage-deflate" pour compresser les paquets websocket (protocole "api" seulement) ; si désactivé, WeeChat (en tant que serveur) n'activera pas permessage-deflate même si le client le supporte, et lors d'une connexion à un WeeChat distant (relai api seulement), le support permessage-deflate ne sera pas annoncé par WeeChat ; il est recommandé de garder cette option activée, et vous ne devriez la désactiver que si vous rencontrez des problèmes avec cette extension, avec WeeChat ou le client

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

12. Commandes externes

La commande /exec vous permet de lancer des commandes externes dans WeeChat et d’afficher la sortie localement, ou de l’envoyer à un tampon.

12.1. Commandes

  • exec: exécuter des commandes externes

/exec  -list
       [-sh|-nosh] [-bg|-nobg] [-stdin|-nostdin] [-buffer <nom>] [-l|-o|-oc|-n|-nf] [-oerr] [-cl|-nocl] [-sw|-nosw] [-ln|-noln] |-flush|-noflush] [-color ansi|auto|irc|weechat|strip] [-rc|-norc] [-timeout <délai>] [-name <nom>] [-pipe <commande>] [-hsignal <nom>] <commande>
       -in <id> <texte>
       -inclose <id> [<texte>]
       -signal <id> <signal>
       -kill <id>
       -killall
       -set <id> <propriété> <valeur>
       -del <id>|-all [<id>...]

    -list : lister les commandes
      -sh : utiliser le shell pour exécuter la commande, plusieurs commandes peuvent être enchaînées avec des pipes (ATTENTION : utilisez cette option SEULEMENT si tous les paramètres sont fiables, voir l'option -nosh)
    -nosh : ne pas utiliser le shell pour exécuter la commande (requis si la commande a des données non fiables, par exemple le contenu d'un message d'un autre utilisateur) (par défaut)
      -bg : lancer le processus en tâche de fond : ne pas afficher la sortie ni le code retour (non compatible avec les options -o/-oc/-n/-nf/-pipe/-hsignal)
    -nobg : capturer la sortie du processus et afficher le code retour (par défaut)
   -stdin : créer un tuyau pour envoyer des données sur l'entrée standard du processus (avec /exec -in/-inclose)
 -nostdin : ne pas créer de tuyau pour l'entrée standard (par défaut)
  -buffer : afficher/envoyer la sortie de la commande sur ce tampon (si le tampon n'est pas trouvé, un nouveau tampon avec le nom "exec.exec.xxx" est créé)
       -l : afficher localement la sortie de la commande sur le tampon (par défaut)
       -o : envoyer la sortie de la commande au tampon sans exécuter les commandes (non compatible avec les options -bg/-pipe/-hsignal)
      -oc : envoyer la sortie de la commande au tampon et exécuter les commandes (lignes commençant par "/" ou un caractère personnalisé de commande) (non compatible avec les options -bg/-pipe/-hsignal)
       -n : afficher la sortie de la commande dans un nouveau tampon (non compatible avec les options -bg/-pipe/-hsignal)
      -nf : afficher la sortie de la commande dans un nouveau tampon avec contenu libre (pas de coupure des mots, pas de limite sur le nombre de lignes) (non compatible avec les options -bg/-pipe/-hsignal)
    -oerr : envoyer aussi stderr (sortie d'erreur) au tampon (peut être utilisé seulement avec les options -o et -oc)
      -cl : effacer le nouveau tampon avant d'afficher la sortie
    -nocl : ajouter au nouveau tampon sans effacer (par défaut)
      -sw : basculer vers le tampon de sortie (par défaut)
    -nosw : ne pas basculer vers le tampon de sortie
      -ln : afficher les numéros de ligne (par défaut dans un nouveau tampon seulement)
    -noln : ne pas afficher les numéros de ligne
   -flush : afficher la sortie de la commande en temps réel (par défaut)
 -noflush : afficher la sortie de la commande une fois qu'elle est terminée
   -color : action sur les couleurs ANSI dans la sortie :
            ansi : garder les codes ANSI tels quels
            auto : convertir les couleurs ANSI en couleurs WeeChat/IRC (par défaut)
            irc : convertir les couleurs ANSI en couleurs IRC
            weechat : convertir les couleurs ANSI en couleurs WeeChat
            strip : supprimer les couleurs ANSI
      -rc : afficher le code retour (par défaut)
    -norc : ne pas afficher le code retour
 -timeout : définir un délai maximum pour la commande (en secondes)
    -name : définir un nom pour la commande (pour la nommer plus tard avec /exec)
    -pipe : envoyer la sortie vers une commande WeeChat/extension (ligne par ligne) ; s'il y a des espaces dans la commande/paramètres, entourez les de guillemets ; la variable $line est remplacée par la ligne (par défaut la ligne est ajoutée après la commande, séparée par un espace) (non compatible avec les options -bg/-o/-oc/-n/-nf)
 -hsignal : envoyer la sortie sous forme de hsignal (pour être utilisé par exemple dans un trigger) (non compatible avec les options -bg/-o/-oc/-n/-nf)
 commande : la commande à exécuter ; si elle commence par "url:", le shell est désactivé et le contenu de l'URL est téléchargé et envoyé comme sortie
       id : identifiant de commande : soit le numéro ou le nom (si défini avec "-name xxx")
      -in : envoyer le texte sur l'entrée standard du processus
 -inclose : identique à -in, mais l'entrée standard est fermée après (et le texte est facultatif : sans texte, l'entrée standard est juste fermée)
  -signal : envoyer un signal au processus ; le signal peut être un entier ou l'un de ces noms : hup, int, quit, kill, term, usr1, usr2
    -kill : alias de "-signal <id> kill"
 -killall : tuer tous les processus
     -set : définir une propriété du hook (voir la fonction hook_set dans l'API de référence extension)
propriété : propriété du hook
   valeur : nouvelle valeur pour la propriété du hook
     -del : supprimer une commande terminée
     -all : supprimer toutes les commandes terminées

Les options par défaut peuvent être définies dans l'option exec.command.default_options.

Exemples :
  /exec -n ls -l /tmp
  /exec -sh -n ps xu | grep weechat
  /exec -n -norc url:https://pastebin.com/raw.php?i=xxxxxxxx
  /exec -nf -noln links -dump https://weechat.org/files/doc/weechat/devel/weechat_user.en.html
  /exec -o uptime
  /exec -pipe "/print Machine uptime:" uptime
  /exec -n tail -f /var/log/messages
  /exec -kill 0

12.2. Options

Sections dans le fichier exec.conf :

Section Commande de contrôle Description

command

/set exec.command.*

Options pour les commandes.

color

/set exec.color.*

Couleurs.

Options :

  • exec.color.flag_finished

    • description: couleur du texte pour le drapeau d'une commande terminée dans la liste des commandes

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightred

  • exec.color.flag_running

    • description: couleur du texte pour le drapeau d'une commande qui tourne dans la liste des commandes

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightgreen

  • exec.command.default_options

    • description: options par défaut pour la commande /exec (voir /help exec) ; exemple : "-nosh -bg" pour lancer toutes les commandes en tâche de fond (sans sortie) et sans utiliser le shell

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • exec.command.purge_delay

    • description: délai pour purger les commandes terminées (en secondes, 0 = purger les commandes immédiatement, -1 = ne jamais purger)

    • type: entier

    • valeurs: -1 .. 25920000

    • valeur par défaut: 0

  • exec.command.shell

    • description: shell à utiliser avec la commande "/exec -sh" ; cela peut être seulement le nom du shell s'il est dans le PATH (par exemple "bash") ou le chemin absolu vers le shell (par exemple "/bin/bash"); si la valeur est vide, "sh" est utilisé (note : le contenu est évalué, voir /help eval)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${env:SHELL}"

13. Tube FIFO

Vous pouvez contrôler WeeChat à distance, en envoyant des commandes ou du texte dans un tube FIFO (si l’option fifo.file.enabled est activée, elle l’est par défaut).

Le tube FIFO est dans le répertoire WeeChat "runtime" et s’appelle weechat_fifo_12345 par défaut (où 12345 est le process id de WeeChat).

La syntaxe pour envoyer des commandes ou du texte dans le tube FIFO est une des suivantes :

  plugin.buffer *texte ou commande ici
  *texte ou commande ici

Les barres obliques inverses peuvent être interprétées avec ce format, où * est remplacé par \, autorisant par exemple l’envoi de messages multi-lignes :

  plugin.buffer \texte ou commande ici
  \texte ou commande ici

Quelques exemples :

  • Changer le pseudo sur libera en "autrepseudo" :

echo 'irc.server.libera */nick autrepseudo' >/run/user/1000/weechat/weechat_fifo_12345
  • Envoyer un message sur le canal IRC #weechat :

echo 'irc.libera.#weechat *bonjour !' >/run/user/1000/weechat/weechat_fifo_12345
  • Envoyer un message multi-lignes sur le canal IRC #test, si la capacité "draft/multiline" est activée sur le serveur ergo :

echo 'irc.ergo.#test \bonjour\n...sur deux lignes !' >/run/user/1000/weechat/weechat_fifo_12345
  • Envoyer un message sur le tampon courant :

echo '*bonjour !' >/run/user/1000/weechat/weechat_fifo_12345
  • Envoyer deux commandes pour décharger/recharger les scripts Python (vous devez les séparer par "\n") :

printf '%b' '*/python unload\n*/python autoload\n' >/run/user/1000/weechat/weechat_fifo_12345

13.1. Commandes

  • fifo: configuration de l’extension fifo

/fifo  enable|disable|toggle

 enable : activer le tube FIFO
disable : désactiver le tube FIFO
 toggle : activer/désactiver le tube FIFO

Le tube FIFO est utilisé comme contrôle à distance de WeeChat : vous pouvez envoyer des commandes ou du texte au tube FIFO depuis votre shell.
Par défaut le tube FIFO se nomme weechat_fifo_xxx (où xxx est l'id du processus WeeChat) et situé dans le répertoire "runtime" de WeeChat (voir /debug dirs).

Le format attendu est l'un des suivants :
  plugin.buffer *texte ou commande ici
  *texte ou commande ici

Par exemple pour changer votre pseudo sur libera :
  echo 'irc.server.libera */nick newnick' >/run/user/1000/weechat/weechat_fifo_12345

Merci de lire le guide utilisateur pour plus d'information et des exemples.

13.2. Options

Sections dans le fichier fifo.conf :

Section Commande de contrôle Description

file

/set fifo.file.*

Contrôle du tube FIFO.

Options :

  • fifo.file.enabled

    • description: activer le tube FIFO

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • fifo.file.path

    • description: chemin pour le tube FIFO ; le PID de WeeChat peut être utilisé dans le chemin avec ${info:pid} (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${weechat_runtime_dir}/weechat_fifo_${info:pid}"

14. Trigger

Trigger est le couteau suisse de WeeChat : il peut accrocher différentes choses (signal, modificateur, print, …​), changer le contenu des données, et exécuter une ou plusieurs commandes. Une condition peut être utilisée pour empêcher le trigger de s’exécuter dans certaines circonstances.

Utiliser les triggers nécessite de connaître le fonctionnement des signaux, modificateurs, etc. Il peut être utile de lire la Référence API extension WeeChat / Hooks .

14.1. Triggers par défaut

WeeChat créé 5 triggers par défaut, qui peuvent être désactivés, mis à jour ou supprimés :

  • un trigger beep pour les notifications

  • quatre autre triggers pour cacher les mots de passe à l’écran

Liste des triggers par défaut :

Nom Hook Description

beep

print

Faire un bip sur un message de highlight ou privé.

cmd_pass

modifier

Cacher le mot de passe dans les commandes : /msg nickserv id|identify|set password|ghost|release|regain|recover, /oper, /quote pass, /secure passphrase|decrypt|set.

cmd_pass_register

modifier

Cacher le mot de passe dans la commande /msg nickserv register.

msg_auth

modifier

Cacher le mot de passe dans le message d’authentification IRC affiché (message reçu du serveur après l’envoi de la commande par l’utilisateur).

server_pass

modifier

Cacher le mot de passe du serveur dans les commandes /server et /connect.

14.2. Anatomie d’un trigger

Un trigger a les options suivantes (les noms sont trigger.trigger.<nom>.<option>) :

Option Valeurs Description

enabled

on, off

Lorsque l’option est off, le trigger est désactivé et les actions ne sont plus exécutées.

hook

signal, hsignal, modifier, line, print, command, command_run, timer, config, focus, info, info_hashtable

Le "hook" utilisé dans le trigger. Pour plus d’information, voir la Référence API extension WeeChat / Hooks .

arguments

chaîne

Les paramètres pour le "hook", ils dépendent du type de hook utilisé.

conditions

chaîne

Conditions pour exécuter le trigger : elles sont évaluées (voir la commande /eval).

regex

chaîne

Une ou plusieurs expressions régulières POSIX étendues, pour modifier les données reçues dans la fonction de rappel du "hook" (et d’autres choses ajoutées par l’extension trigger), voir expression régulière.

command

chaîne

Commande à exécuter (plusieurs commandes peuvent être séparées par des points-virgules) ; elle est évaluée (voir la commande /eval).

return_code

ok, ok_eat, error

Le code retour de la fonction de rappel (ok par défaut, qui devrait être utilisé dans quasiment tous les triggers, les autres valeurs sont rarement utilisées).

post_action

none, disable, delete

Action à effectuer sur le trigger après l’exécution (none par défaut, qui devrait être utilisé dans quasiment tous les triggers, les autres valeurs sont rarement utilisées).

Par exemple, le trigger beep par défaut a les options suivantes :

trigger.trigger.beep.enabled = on
trigger.trigger.beep.hook = print
trigger.trigger.beep.arguments = ""
trigger.trigger.beep.conditions = "${tg_displayed} && (${tg_highlight} || ${tg_msg_pv})"
trigger.trigger.beep.regex = ""
trigger.trigger.beep.command = "/print -beep"
trigger.trigger.beep.return_code = ok
trigger.trigger.beep.post_action = none

14.3. Exécution

Lorsque la fonction de rappel d’un trigger est appelée, les actions suivantes sont exécutées, dans cet ordre, si les triggers sont globalement activés et si le trigger lui-même est activé :

  1. vérifier les conditions du trigger : si faux, sortir

  2. remplacer du texte dans le trigger en utilisant des expressions régulières

  3. exécuter la/les commande(s)

  4. sortir avec un code retour (sauf pour les "hooks" modifier, line, focus, info et info_hashtable)

  5. effectuer l’action "post" (si différente de none).

14.4. Paramètres du hook

Les paramètres dépendent du type de "hook" utilisé. Ils sont séparés par des points-virgules.

Hook Paramètres Exemples Documentation (API)

signal

1. nom de signal (priorité autorisée) (obligatoire)
2. nom de signal (priorité autorisée)
3. …​

*,irc_in_privmsg
*,irc_in_privmsg;*,irc_in_notice
signal_sigwinch

hook_signal 

hsignal

1. nom de signal (priorité autorisée) (obligatoire)
2. nom de signal (priorité autorisée)
3. …​

nicklist_nick_added

hook_hsignal 

modifier

1. nom de modificateur (priorité autorisée) (obligatoire)
2. nom de modificateur (priorité autorisée)
3. …​

weechat_print
5000|input_text_display;5000|history_add

hook_modifier 

line

1. type de tampon
2. nom de tampon
3. étiquettes

formatted
free
*;irc.libera.*
*;irc.libera.#weechat
formatted;irc.libera.#weechat;irc_notice

hook_line 

print

1. nom de tampon
2. étiquettes
3. message
4. suppression des couleurs (0/1)

irc.libera.*
irc.libera.#weechat
irc.libera.#weechat;irc_notice
*;;;1

hook_print 

command

1. nom de commande (priorité autorisée) (obligatoire)
2. description (évalué, voir la commande /eval)
3. paramètres (évalué, voir la commande /eval)
4. description des paramètres (évalué, voir la commande /eval)
5. complétion (évalué, voir la commande /eval)

test
5000|test
test;commande de test;arg1 arg2;arg1: description 1${\n}arg2: description 2

hook_command 

command_run

1. commande (priorité autorisée) (obligatoire)
2. commande (priorité autorisée)
3. …​

/cmd paramètres

hook_command_run 

timer

1. intervalle, en millisecondes (obligatoire)
2. alignement sur la seconde (par défaut : 0)
3. nombre maximum d’appels (par défaut : 0, qui signifie "sans fin")

3600000
60000;0;5

hook_timer 

config

1. nom d’option (priorité autorisée) (obligatoire)
2. nom d’option (priorité autorisée)
3. …​

weechat.look.*

hook_config 

focus

1. nom d’aire (priorité autorisée) (obligatoire)
2. nom d’aire (priorité autorisée)
3. …​

buffer_nicklist

hook_focus 

info

1. nom de l’info (priorité autorisée) (obligatoire)
2. nom de l’info (priorité autorisée)
3. …​

mon_info

hook_info 

info_hashtable

1. nom de l’info (priorité autorisée) (obligatoire)
2. nom de l’info (priorité autorisée)
3. …​

mon_info

hook_info_hashtable 

14.5. Conditions

Les conditions sont utilisées pour continuer l’exécution du trigger, ou tout stopper.

Elles sont évaluées, et les données disponibles dans la fonction de rappel peuvent être utilisées (voir données dans les callbacks et la commande /eval).

Exemple : le trigger beep par défaut utilise cette condition pour faire un beep seulement sur un highlight ou un message privé :

${tg_displayed} && (${tg_highlight} || ${tg_msg_pv})

14.6. Expression régulière

L’expression régulière est utilisée pour modifier des variables dans la table de hachage de la fonction de rappel.

Le format est l’un des suivants :

/chaîne1/chaîne2
/chaîne1/chaîne2/var
s/chaîne1/chaîne2
s/chaîne1/chaîne2/var
y/chaîne1/chaîne2
y/chaîne1/chaîne2/var

Champs :

  • s ou y : une lettre avec la commande ; si manquante, la commande par défaut est s et le premier caractère est alors utilisé comme délimiteur :

    • s : remplacement par expression régulière : la première chaîne est l’expression régulière, la seconde chaîne est le remplacement pour chaque chaîne trouvée

    • y : traduction de caractères : la première chaîne est un ensemble de caractères qui sont remplacés par les caractères de la seconde chaîne ; une fois évaluée, chaque chaîne doit contenir exactement le même nombre de caractères UTF-8

  • / : le délimiteur d’expression régulière ; le caractère "/" peut être remplacé par n’importe quel caractère (un ou plusieurs caractères identiques)

  • chaîne1 : la première chaîne (l’utilisation dépend de la commande)

  • chaîne2 : la seconde chaîne (l’utilisation dépend de la commande)

  • var : la table de hachage avec la variable à mettre à jour

Plusieurs expressions régulières peuvent être séparées par un espace, par exemple :

s/regex1/remplacement1/var1 y/abcdef/ABDDEF/var2

Regex replace

Pour la commande s, le format est : s/regex/remplacement ou s/regex/remplacement/var (où var est une variable de la table de hachage).

Comme s est la commande par défaut, elle peut être omise, donc /regex/replace est également valide (mais le premier caractère, qui est le délimiteur, ne doit pas être une lettre).

Les groupes de correspondance peuvent être utilisés dans le remplacement :

  • ${re:0} à ${re:99} : ${re:0} est la correspondance complète, ${re:1} à ${re:99} sont les groupes capturés

  • ${re:+} : la dernière correspondance (avec le numéro le plus élevé)

  • ${re:#} : index du dernier groupe capturé

  • ${re:repl_index} : index du remplacement en cours (démarre à 1)

  • ${hide:c,${re:N}} : la correspondance "N" avec tous les caractères remplacés par "c" (exemple : ${hide:*,${re:2}} est le groupe n°2 avec tous les caractères remplacés par *).

Exemple : utiliser du gras pour les mots entre * :

s/\*([^ ]+)\*/*${color:bold}${re:1}${color:-bold}*/

Exemple : le trigger par défaut server_pass utilise cette expression régulière pour cacher le mot de passe dans les commandes /server et /connect (les caractères des mots de passe sont remplacés par *) :

s==^(/(server|connect) .*-(sasl_)?password=)([^ ]+)(.*)==${re:1}${hide:*,${re:4}}${re:5}
Note
Dans cet exemple, le séparateur utilisé est "==" car il y a "/" dans l’expression régulière.

Translate chars

Pour la commande y, le format est : y/caractères1/caractères2 ou y/caractères1/caractères2/var (où var est une variable de la table de hachage).

Exemple : remplacer "a", "b" et "c" par la lettre en majuscules :

y/abc/ABC/

Exemple : faire tourner une flèche dans le sens horaire :

y/←↑→↓/↑→↓←/

Exemple : convertir toutes les lettres en minuscules :

y/${chars:upper}/${chars:lower}/

Exemple : décaler toutes les lettres d’une position, en préservant la casse : a→b, b→c … y→z, z→a :

y/${chars:a-z}${chars:A-Z}/${chars:b-z}a${chars:B-Z}A/

Variable

Si var n’existe pas dans la table de hachage, elle est automatiquement créée avec une valeur vide. Cela permet de créer des variables temporaires.

Si var n’est pas spécifiée, la variable par défaut est utilisée, elle dépend du type de hook :

Hook Variable par défaut Mise à jour autorisée (1)

signal

tg_signal_data

hsignal

modifier

tg_string

tg_string

line

message

buffer, buffer_name, y, date, date_usec, date_printed, date_usec_printed, str_time, tags, notify_level, highlight, prefix, message

print

tg_message

command

tg_argv_eol1

command_run

tg_command

timer

tg_remaining_calls

config

tg_value

focus

info

tg_info

tg_info

info_hashtable

toutes les variables reçues dans la table de hachage

Note
(1) Toutes les variables peuvent être mises à jour dans le trigger, mais seulement ces variables ont un effet sur la valeur retournée par le trigger et utilisée par WeeChat.

14.7. Commande

La commande est exécutée après le remplacement du texte avec l’expression régulière. Plusieurs commandes peuvent être séparées par des points-virgules.

Elle est évaluée (voir la commande /eval) et le texte remplacé avec l’expression régulière peut être utilisé dans la commande.

Exemple : le trigger par défaut beep utilise cette commande pour produire un beep (BEL) :

/print -beep

14.8. Données dans les fonctions de rappel

Les données reçues dans les fonctions de rappel sont stockées dans des tables de hachage (pointeurs et chaînes) et peuvent être utilisées dans les options suivantes :

  • conditions

  • regex

  • command

Le contenu des tables de hachage dépend du type de hook.

Une manière pratique de voir les données dans le trigger est d’ouvrir le tampon moniteur des triggers :

/trigger monitor

Toutes les fonctions de rappel définissent les variables suivantes dans la table de hachage :

Variable Type Description

tg_trigger_name

chaîne

Nom du trigger.

tg_hook_type

chaîne

Type de hook : "signal", "command", etc.

Signal

La fonction de rappel "signal" définit les variables suivantes dans la table de hachage :

Variable Type Description

tg_signal

chaîne

Nom du signal.

tg_signal_data

chaîne

Données envoyées avec le signal.

Si le signal contient un message IRC, le message est analysé et les données suivantes sont ajoutées dans la table de hachage :

Variable Type Description

irc_server

pointeur

Pointeur vers le serveur IRC (les variables dans le hdata de type "irc_server" peuvent être utilisées, comme ${irc_server.name}).

irc_channel

pointeur

Pointeur vers le canal IRC (les variables dans le hdata de type "irc_channel" peuvent être utilisées, comme ${irc_channel.name}).

server

chaîne

Nom du serveur (exemple : "libera").

tags

chaîne

Étiquettes dans le message (rarement utilisées).

message_without_tags

chaîne

Message sans les étiquettes.

nick

chaîne

Pseudo. (1)

host

chaîne

Nom d’hôte.

command

chaîne

Commande IRC (exemple : "PRIVMSG", "NOTICE", …​).

channel

chaîne

Canal IRC.

arguments

chaîne

Paramètres de la commande (inclut la valeur de channel).

text

chaîne

Texte (par exemple message utilisateur).

pos_command

chaîne

L’index de command dans le message ("-1" si command n’a pas été trouvé).

pos_arguments

chaîne

L’index de arguments dans le message ("-1" si arguments n’a pas été trouvé).

pos_channel

chaîne

L’index de channel dans le message ("-1" si channel n’a pas été trouvé).

pos_text

chaîne

L’index de text dans le message ("-1" si text n’a pas été trouvé).

Note
(1) Le pseudo est l’expéditeur du message.
Votre propre pseudo sur le serveur est ${irc_server.nick}.

Lorsque la donnée est un pointeur, la variable tg_signal_data peut être utilisée comme ceci pour lire une propriété hdata (dans cet exemple il s’agit d’un pointeur sur un tampon) :

${buffer[${tg_signal_data}].full_name}

Hsignal

La fonction de rappel "hsignal" définit les variables suivantes dans la table de hachage :

Variable Type Description

tg_signal

chaîne

Nom du signal

La table de hachage contient toutes les clés/valeurs de la table de hachage reçue (type : chaîne/chaîne).

Modifier

La fonction de rappel "modifier" définit les variables suivantes dans la table de hachage :

Variable Type Description

tg_modifier

chaîne

Nom du modificateur.

tg_modifier_data

chaîne

Données envoyées avec le modificateur.

tg_string

chaîne

La chaîne qui peut être modifiée.

tg_string_nocolor

chaîne

La chaîne sans les codes couleur.

Pour le modificateur weechat_print, les variables en utilisant les étiquettes du message sont ajoutées (voir le hook print ci-dessous), ainsi que les variables suivantes :

Variable Type Description

buffer

pointeur

Tampon où le message est affiché.

tg_plugin

chaîne

Extension du tampon où le message est affiché.

tg_buffer

chaîne

Nom complet du tampon où le message est affiché.

tg_prefix

chaîne

Préfixe du message affiché.

tg_prefix_nocolor

chaîne

Préfixe sans les codes couleur.

tg_message

chaîne

Message affiché.

tg_message_nocolor

chaîne

Message sans les codes couleur.

Si le modificateur contient un message IRC, le message est analysé et des données supplémentaires sont ajoutées dans la table de hachage (voir le "hook" signal).

Line

La fonction de rappel "line" définit les variables suivantes dans la table de hachage :

Variable Type Description

buffer

pointeur

Tampon.

buffer_name

chaîne

Nom du tampon.

buffer_type

chaîne

Type de tampon ("formatted" ou "free").

y

chaîne

Numéro de ligne pour un tampon avec contenu libre (≥ 0), -1 pour un tampon avec contenu formaté.

date

chaîne

Date de la ligne (horodatage).

date_usec

chaîne

Microsecondes de la date de la ligne.

date_printed

chaîne

Date d’affichage de la ligne (horodatage).

date_usec_printed

chaîne

Microsecondes de la date d’affichage de la ligne.

str_time

chaîne

Date pour l’affichage. Elle peut contenir des codes couleur.

tags

chaîne

Étiquettes du message (avec une virgule en début/fin de chaîne).

displayed

chaîne

"1" si affichée, "0" si la ligne est filtrée.

notify_level

chaîne

"-1" = pas de notification, "0" = niveau bas, "1" = message, "2" = message privé, "3" = highlight

highlight

chaîne

"1" si highlight, sinon "0".

prefix

chaîne

Préfixe.

tg_prefix_nocolor

chaîne

Préfixe sans les codes couleur.

message

chaîne

Message.

tg_message_nocolor

chaîne

Message sans les codes couleur.

Variables définies avec les étiquettes du message :

Variable Type Description

tg_tags_count

chaîne

Nombre d’étiquettes dans le message.

tg_tag_nick

chaîne

Pseudo (depuis l’étiquette "nick_xxx").

tg_tag_prefix_nick

chaîne

Couleur du pseudo dans le préfixe (depuis l’étiquette "prefix_nick_ccc").

tg_tag_host

chaîne

Nom d’utilisateur et hôte, format : utilisateur@hôte (depuis l’étiquette "host_xxx").

tg_tag_notify

chaîne

Niveau de notification (none, message, private, highlight).

tg_tag_irc_xxx

chaîne

Étiquette de message IRC (clé "xxx"). (1)

tg_notify

chaîne

Niveau de notification, si différent de none.

tg_msg_pv

chaîne

"1" pour un message privé, sinon "0".

Note
(1) Les virgules sont remplacées par des point-virgules dans l’étiquette IRC (clé et valeur).

Print

La fonction de rappel "print" définit les variables suivantes dans la table de hachage :

Variable Type Description

buffer

pointeur

Tampon.

tg_date

chaîne

Date/heure du message (format : %FT%T.%f, voir la Référence API extension WeeChat / util_strftimeval ).

tg_displayed

chaîne

"1" si affiché, "0" si ligne filtrée.

tg_highlight

chaîne

"1" si highlight, sinon "0".

tg_prefix

chaîne

Préfixe.

tg_prefix_nocolor

chaîne

Préfixe sans les codes couleur.

tg_message

chaîne

Message.

tg_message_nocolor

chaîne

Message sans les codes couleur.

Variables définies avec les étiquettes du message :

Variable Type Description

tg_tags

chaîne

Étiquettes du message (avec une virgule en début/fin de chaîne).

tg_tags_count

chaîne

Nombre d’étiquettes dans le message.

tg_tag_nick

chaîne

Pseudo (depuis l’étiquette "nick_xxx").

tg_tag_prefix_nick

chaîne

Couleur du pseudo dans le préfixe (depuis l’étiquette "prefix_nick_ccc").

tg_tag_host

chaîne

Nom d’utilisateur et hôte, format : utilisateur@hôte (depuis l’étiquette "host_xxx").

tg_tag_notify

chaîne

Niveau de notification (none, message, private, highlight).

tg_tag_irc_xxx

chaîne

Étiquette de message IRC (clé "xxx"). (1)

tg_notify

chaîne

Niveau de notification, si différent de none.

tg_msg_pv

chaîne

"1" pour un message privé, sinon "0".

Note
(1) Les virgules sont remplacées par des point-virgules dans l’étiquette IRC (clé et valeur).

Command

La fonction de rappel "command" définit les variables suivantes dans la table de hachage :

Variable Type Description

buffer

pointeur

Tampon.

tg_argc

chaîne

Nombre de paramètres (la commande elle-même compte pour un).

tg_argvN

chaîne

Paramètre n°N (tg_argv0 est la commande elle-même, les autres sont les paramètres de la commande).

tg_argv_eolN

chaîne

Depuis le paramètre n°N jusqu’à la fin des paramètres (tg_argv_eol0 inclut la commande elle-même).

tg_shell_argc

chaîne

Nombre de paramètres avec un découpage comme le fait le shell (la commande elle-même compte pour un).

tg_shell_argvN

chaîne

Paramètre n°N avec un découpage comme le fait le shell (tg_shell_argv0 est la commande elle-même, les autres sont les paramètres de la commande).

Command_run

La fonction de rappel "command_run" définit les variables suivantes dans la table de hachage :

Variable Type Description

buffer

pointeur

Tampon.

tg_command

chaîne

Commande exécutée.

Timer

La fonction de rappel "timer" définit les variables suivantes dans la table de hachage :

Variable Type Description

tg_remaining_calls

chaîne

Nombre d’appels restants.

tg_date

chaîne

Date/heure courante (format : %FT%T.%f, voir la Référence API extension WeeChat / util_strftimeval ).

Config

La fonction de rappel "config" définit les variables suivantes dans la table de hachage :

Variable Type Description

tg_option

chaîne

Option.

tg_value

chaîne

Valeur.

Focus

La fonction de rappel "focus" définit les variables suivantes dans la table de hachage :

Variable Type Description

window

pointeur

Fenêtre.

buffer

pointeur

Tampon.

La table de hachage contient toutes les clés/valeurs de la table de hachage reçue (type : chaîne/chaîne).

Info

La fonction de rappel "info" définit les variables suivantes dans la table de hachage :

Variable Type Description

tg_info_name

string

Nom de l’info.

tg_arguments

string

Paramètres.

tg_info

string

Chaîne vide (l’info à renvoyer).

Info_hashtable

La fonction de rappel "info_hashtable" définit les variables suivantes dans la table de hachage :

Variable Type Description

tg_info_name

string

Nom de l’info.

La table de hachage contient toutes les clés/valeurs de la table de hachage reçue (type : chaîne/chaîne).

14.9. Exemples

Couleur pour les URLs

Afficher les URLs en vert :

/trigger add url_color modifier weechat_print "${tg_notify}" "==[a-zA-Z0-9_]+://[^ ]+==${color:green}${re:0}${color:reset}=="
Note
La simple expression régulière utilisée pour détecter l’URL peut ne pas capturer correctement toutes les URLs, mais elle est plus rapide qu’une expression régulière complexe.

Pong auto sur les requêtes ping

Lorsque quelqu’un envoie un "ping" dans un tampon privé, le trigger répondra automatiquement avec un pong :

/trigger add pong print "" "${type} == private && ${tg_message} == ping" "" "pong"

Disposition réceptive

Les triggers suivants peuvent être utilisées pour personnaliser l’affichage lorsque la taille du terminal change :

/trigger add resize_small signal signal_sigwinch "${info:term_width} < 100" "" "/bar hide nicklist"
/trigger add resize_big signal signal_sigwinch "${info:term_width} >= 100" "" "/bar show nicklist"

Les triggers attrapent le signal "signal_sigwinch", qui et envoyé par WeeChat lorsque le signal SIGWINCH est reçu (lorsque la taille du terminal a changé).

La condition avec ${info:term_width} vérifie la largeur du terminal (vous pouvez aussi utiliser ${info:term_height} si besoin).

Dans l’exemple, si le terminal devient petit, la liste de pseudos est cachée. Et la barre est restaurée lorsque la largeur du terminal est supérieure ou égale à 100 caractères.

Sauvegarde automatique de la configuration

Vous pouvez sauvegarder automatiquement les fichiers de configuration (*.conf), par example chaque heure :

/trigger add cfgsave timer 3600000;0;0 "" "" "/mute /save"

Les paramètres pour le minuteur sont :

  • 3600000 : 3600 * 1000 millisecondes, la fonction de rappel est appelée toutes les heures

  • 0 : alignement sur la seconde (pas d’alignement ici)

  • 0 : nombre maximum d’appels (0 = pas de fin pour le minuteur)

La commande /mute /save sauvegarde silencieusement les fichiers de configuration (rien n’est affiché sur le tampon "core").

14.10. Commandes

  • trigger: gestion des triggers, le couteau Suisse pour WeeChat

/trigger  list [-o|-ol|-i|-il]
          listfull
          listdefault
          add|addoff|addreplace <nom> <hook> ["<paramètres>" ["<conditions>" ["<regex>" ["<commande>" ["<code_retour>" ["action_post"]]]]]]
          addinput [<hook>]
          input|output|recreate <nom>
          set <nom> <option> <valeur>
          rename|copy <nom> <nouveau_nom>
          enable|disable|toggle [<nom>|<masque>...]
          restart <nom>|<masque>...
          show <nom>
          del <nom>|<masque>...
          restore <nom>|<masque>...
          default -yes
          monitor [<filtre>]

       list : lister les triggers (sans paramètre, cette liste est affichée)
         -o : envoyer la liste des triggers activés au tampon (chaîne en anglais)
        -ol : envoyer la liste des triggers activés au tampon (chaîne traduite)
         -i : copier la liste des triggers activés dans la ligne de commande (pour envoi au tampon) (chaîne en anglais)
        -il : copier la liste des triggers activés dans la ligne de commande (pour envoi au tampon) (chaîne traduite)
   listfull : lister les triggers avec des informations détaillées pour chaque trigger
listdefault : lister les triggers par défaut
        add : ajouter un trigger
     addoff : ajouter un trigger (désactivé)
 addreplace : ajouter ou remplacer un trigger existant
        nom : nom du trigger
       hook : signal, hsignal, modifier, line, print, command, command_run, timer, config, focus, info, info_hashtable
 paramètres : paramètres pour le hook, dépendant du hook (séparés par des points-virgules) :
              type `signal` : nom(s) de signal (obligatoire)
              type `hsignal` : nom(s) de signal (obligatoire)
              type `modifier` : nom(s) de modificateur (obligatoire)
              type `line` : type de tampon ("formatted", "free" ou "*"), liste de masques de tampons, étiquettes
              type `print` : tampon, étiquettes, message, suppression des couleurs (0/1)
              type `command` : commande (obligatoire), description, paramètres, description des paramètres, complétion (tous les paramètres sauf la commande sont évalués, "${tg_trigger_name}" est remplacé par le nom du trigger, voir /help eval)
              type `command_run` : commande(s) (obligatoire)
              type `timer` : intervalle (obligatoire), alignement sur la seconde, nombre max d'appels
              type `config` : nom(s) de l'option (obligatoire)
              type `focus` : nom(s) de la zone (obligatoire)
              type `info` : nom(s) de l'info (obligatoire)
              type `info_hashtable` : nom(s) de l'info (obligatoire)
 conditions : conditions évaluées pour le trigger
      regex : une ou plusieurs expressions régulières pour remplacer des chaînes dans les variables
   commande : commande à exécuter (plusieurs commandes peuvent être séparées par ";")
code_retour : code retour dans la fonction de rappel (ok (par défaut), ok_eat, error)
action_post : action à effectuer après l'exécution (none (par défaut), disable, delete)
   addinput : définir la ligne de commande avec les paramètres par défaut pour créer un trigger
      input : définir la ligne de commande utilisée pour créer le trigger
     output : envoyer la commande pour créer le trigger sur le tampon
   recreate : comme "input", avec l'option "addreplace" au lieu de "add"
        set : définir une option dans un trigger
     option : nom de l'option : name, hook, arguments, conditions, regex, command, return_code (pour l'aide sur l'option, vous pouvez taper : /help trigger.trigger.<nom>.<option>)
     valeur : nouvelle valeur pour l'option
     rename : renommer un trigger
       copy : copier un trigger
     enable : activer des triggers (sans paramètre : activer les triggers globalement)
    disable : désactiver des triggers (sans paramètre : désactiver les triggers globalement)
     toggle : activer/désactiver des triggers (sans paramètre : activer/désactiver les triggers globalement)
    restart : redémarrer des triggers (recréer les hooks)
       show : afficher des informations détaillées sur un trigger (avec quelques statistiques)
        del : supprimer des triggers
    restore : restaurer des triggers avec les valeurs par défaut (fonctionne seulement pour les triggers par défaut)
     masque : nom où le caractère joker "*" est autorisé
    default : restaurer les triggers par défaut
    monitor : ouvrir le tampon moniteur des triggers, avec un filtre optionnel
     filtre : filtrer les hooks/triggers à afficher (un hook doit commencer par "@", par exemple "@signal"), plusieurs filtres peuvent être séparés par des virgules ; le caractère joker "*" est autorisé dans chaque nom de trigger

Lorsqu'une fonction de rappel de trigger est appelée, les actions suivantes sont exécutées, dans cet ordre :
  1. vérifier les conditions ; si faux, sortir
  2. remplacer le texte en utilisant une/des expression(s)s régulière(s)s POSIX étendue(s)s (si définie(s) dans le trigger)
  3. exécuter le(s) commande(s) (si définie(s) dans le trigger)
  4. sortir avec le code retour (sauf pour les modificateurs, line, focus, info et info_hashtable)
  5. effectuer l'action "post"

Exemples (vous pouvez aussi regarder les triggers par défaut avec /trigger listdefault) :
  ajouter des attributs *gras*, _souligné_ et /italique/ (seulement dans les messages d'utilisateurs) :
    /trigger add effects modifier weechat_print "${tg_tag_nick}" "==\*([^ ]+)\*==*${color:bold}${re:1}${color:-bold}*== ==_([^ ]+)_==_${color:underline}${re:1}${color:-underline}_== ==/([^ ]+)/==/${color:italic}${re:1}${color:-italic}/"
  cacher la barre de pseudos sur les petits terminaux :
    /trigger add resize_small signal signal_sigwinch "${info:term_width} < 100" "" "/bar hide nicklist"
    /trigger add resize_big signal signal_sigwinch "${info:term_width} >= 100" "" "/bar show nicklist"
  sauver silencieusement la configuration chaque heure :
    /trigger add cfgsave timer 3600000;0;0 "" "" "/mute /save"
  sauver silencieusement la session WeeChat à minuit (voir /help upgrade) :
    /trigger add session_save signal day_changed "" "" "/mute /upgrade -save"
  ouvrir le tampon moniteur des triggers et afficher seulement les modificateurs et les triggers dont le nom commence par "resize" :
    /trigger monitor @modifier,resize*

14.11. Options

Sections dans le fichier trigger.conf :

Section Commande de contrôle Description

look

/set trigger.look.*

Aspect/présentation.

color

/set trigger.color.*

Couleurs.

trigger

/trigger add
/trigger set
/set trigger.trigger.*

Options des triggers.

Options :

  • trigger.color.flag_command

    • description: couleur du texte pour le drapeau de la commande (dans /trigger list)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightgreen

  • trigger.color.flag_conditions

    • description: couleur du texte pour le drapeau des conditions (dans /trigger list)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • trigger.color.flag_post_action

    • description: couleur du texte pour le drapeau de l'action "post" (dans /trigger list)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightblue

  • trigger.color.flag_regex

    • description: couleur du texte pour le drapeaux de l'expression régulière (dans /trigger list)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightcyan

  • trigger.color.flag_return_code

    • description: couleur du texte pour le drapeau du code retour (dans /trigger list)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightmagenta

  • trigger.color.identifier

    • description: couleur du texte pour l'identifiant de contexte du trigger dans le tampon moniteur

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • trigger.color.regex

    • description: couleur du texte pour les expressions régulières

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • trigger.color.replace

    • description: couleur du texte pour le texte de remplacement (pour les expressions régulières)

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: cyan

  • trigger.look.enabled

    • description: activer le support des triggers

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • trigger.look.monitor_strip_colors

    • description: supprimer les couleurs dans la table de hachage affichée sur le tampon moniteur

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

15. Extension de WeeChat

WeeChat est conçu de manière modulaire et peut être étendu avec des extensions et des scripts.

Il est important de bien faire la différence entre une extension et un script : une extension est un fichier binaire compilé et chargé avec la commande /plugin, tandis qu’un script est un fichier texte chargé par une extension comme python par la commande /python.

15.1. Extensions

Une extension est une bibliothèque dynamique, écrite en C et compilée, qui est chargée par WeeChat. Sous GNU/Linux, ce fichier a une extension ".so", et ".dll" sous Windows.

Les extensions trouvées sont automatiquement chargées par WeeChat lorsqu’il démarre, et il est possible de charger et décharger des extensions pendant que WeeChat tourne.

Vous pouvez utiliser la commande /plugin pour charger/décharger une extension, ou afficher les extensions chargées.

Quand une extension est déchargée, WeeChat supprime :

  • les tampons

  • les options de configuration (les options sont écrites dans les fichiers)

  • tous les "hooks" : commandes, modificateurs, processus, etc.

  • les infos et infolists

  • les "hdata"

  • les objets de barre.

Exemples pour charger, décharger et afficher les extensions :

/plugin load irc
/plugin unload irc
/plugin list

Les extensions par défaut sont :

Extension Description

alias

Définition d’alias pour les commandes.

buflist

Objet de barre avec la liste des tampons.

charset

Encodage/encodage avec jeu de caractère sur les tampons.

exec

Exécution de commandes externes dans WeeChat.

fifo

Tube FIFO pour envoyer des commandes à distance vers WeeChat.

fset

Modification rapide des options de WeeChat et des extensions.

irc

Discussion avec le protocole IRC.

logger

Enregistrement des tampons dans des fichiers.

relay

Relai de données via le réseau.

script

Gestionnaire de scripts.

python

Interface (API) pour scripts Python.

perl

Interface (API) pour scripts Perl.

ruby

Interface (API) pour scripts Ruby.

lua

Interface (API) pour scripts Lua.

tcl

Interface (API) pour scripts Tcl.

guile

Interface (API) pour scripts Guile (scheme).

javascript

Interface (API) pour scripts JavaScript.

php

Interface (API) pour scripts PHP.

spell

Vérification orthographique de la ligne de commande.

trigger

Remplacement de texte et exécution de commande sur des évènements de WeeChat ou des extensions.

typing

Affichage des utilisateurs qui sont en train d’écrire des messages.

xfer

Transfert de fichier et discussion directe.

Pour en apprendre plus sur le développement d’extension ou de script (via l’API), merci de consulter la Référence API extension WeeChat  ou le Guide pour scripts WeeChat .

15.2. Scripts

WeeChat fournit 8 extensions pour scripts : Python, Perl, Ruby, Lua, Tcl, Guile (scheme), JavaScript et PHP. Ces extensions peuvent charger, exécuter et décharger des scripts pour ces langages.

Pour plus d’informations sur comment écrire des scripts, ou sur l’API WeeChat pour les scripts, merci de lire le Guide pour scripts WeeChat .

Gestionnaire de scripts

Le gestionnaire de scripts (commands /script) est utilisé pour charger/décharger des scripts pour n’importe quel langage, et installer/supprimer des scripts du dépôt WeeChat, qui sont visibles sur cette page .

Pour des considérations de confidentialité, le téléchargement des scripts est désactivé par défaut.
Pour l’activer, tapez cette commande :

/script enable

Vous pouvez alors télécharger la liste des scripts et les afficher dans un tampon avec la commande /script :

┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
│1.weechat│322/322 scripts (filtre : *) | Tri : i,p,n | Alt+touche/entrée : i=installer, r=supprimer, l=charg>>│
│2.scripts│*      autosort.py                     3.10    2023-12-31 | Garder automatiquement les tampons group│
│         │*      highmon.pl                      2.7     2020-06-21 | Ajouter un tampon moniteur de highlights│
│         │*ia r  grep.py                   0.8.6 0.8.6   2022-11-11 | Recherche d'expression régulière dans le│
│         │*      colorize_nicks.py               32      2023-10-30 | Utiliser la couleur des pseudos weechat │
│         │*ia r  go.py                     3.0.1 3.0.1   2024-05-30 | Déplacement rapide dans les tampons.    │
│         │       aesthetic.py                    1.0.6   2020-10-25 | Affiche des messages de manière plus E S│
│         │       aformat.py                      0.2     2018-06-21 | Formatage de texte alternatif, pratique │
│         │       alternatetz.py                  0.4     2022-01-25 | Ajouter un objet de barre avec un fuseau│
│         │       amarok2.pl                      0.7     2012-05-08 | Contrôler et afficher la musique jouée p│
│         │       amqp_notify.rb                  0.1     2011-01-12 | Envoyer les messages privés et highlight│
│         │       announce_url_title.py           19      2021-06-05 | Annoncer le titre de l'URL à l'utilisate│
│         │       anotify.py                      1.0.2   2020-05-16 | Notifications des messages privés, highl│
│         │       anti_password.py                1.2.1   2021-03-13 | Empêcher un mot de passe d'être envoyé a│
│         │       apply_corrections.py            1.3     2018-06-21 | Afficher le texte corrigé quand un utili│
│         │       arespond.py                     0.1.2   2022-01-25 | Simple auto-réponse.                    │
│         │       atcomplete.pl                   0.001   2016-10-29 | Complétion avec Tab des pseudos préfixés│
│         │       audacious.pl                    0.3     2009-05-03 | Afficher la chanson actuellement jouée p│
│         │       auth.rb                         0.3     2014-05-30 | S'authentifier automatiquement avec Nick│
│         │       auto_away.py                    0.4     2018-11-11 | Un script simple d'auto absence (away). │
│         │       autoauth.py                     1.3     2021-11-07 | Identification automatique en cas de cha│
│         │       autobump.py                     0.1.0   2019-06-14 | Trier les tampons selon l'activité.     │
│         │       autoconf.py                     0.4     2021-05-11 | Charger/sauver automatiquement les optio│
│         │       autoconnect.py                  0.3.3   2019-10-06 | Réouvrir les serveurs et canaux ouverts │
│         │       autojoin_on_invite.py           0.9     2022-10-25 | Rejoindre automatiquement les canaux où │
│         │       automarkbuffer.py               1.0     2015-03-31 | Marquer les tampons comme lus s'il n'y a│
│         │       automerge.py                    0.2     2018-03-03 | Fusionner automatiquement les tampons se│
│         │[12:55] [2] [script] 2:scripts                                                                      │
│         │█                                                                                                   │
└──────────────────────────────────────────────────────────────────────────────────────────────────────────────┘
Commandes Script
  • script: Gestionnaire de scripts WeeChat

/script  enable
         list [-o|-ol|-i|-il]
         search <texte>
         show <script>
         load|unload|reload <script>...
         autoload|noautoload|toggleautoload <script>...
         install|remove|installremove|hold [-q] <script>...
         upgrade
         update
         -up|-down [<nombre>]
         -go <ligne>|end

        enable : activer le téléchargement des scripts (activer l'option script.scripts.download_enabled)
          list : lister les scripts chargés (tous les langages)
            -o : envoyer la liste des scripts chargés au tampon (chaîne en anglais)
           -ol : envoyer la liste des scripts chargés au tampon (chaîne traduite)
            -i : copier la liste des scripts chargés dans la ligne de commande (pour envoi au tampon) (chaîne en anglais)
           -il : copier la liste des scripts chargés dans la ligne de commande (pour envoi au tampon) (chaîne traduite)
        search : chercher des scripts par étiquettes, langage (python, perl, ...), extension de fichier (py, pl, ...) ou texte ; le résultat est affiché sur le tampon des scripts
          show : afficher des infos détaillées sur le script
          load : charger un ou plusieurs scripts
        unload : décharger un ou plusieurs scripts
        reload : recharger un ou plusieurs scripts
      autoload : charger automatiquement un ou plusieurs scripts
    noautoload : ne pas charger automatiquement un ou plusieurs scripts
toggleautoload : activer/désactiver le chargement automatique
       install : installer/mettre à jour un ou plusieurs scripts
        remove : supprimer un ou plusieurs scripts
 installremove : installer ou supprimer un ou plusieurs scripts, selon l'état courant
          hold : figer/défiger un ou plusieurs scripts (un script figé ne sera plus mis à jour et ne peut pas être supprimé)
            -q : mode silencieux : ne pas afficher de messages
       upgrade : mettre à jour les scripts obsolètes (avec nouvelle version disponible)
        update : mettre à jour le cache local des scripts
           -up : déplacer la ligne sélectionnée de "nombre" lignes vers le haut
         -down : déplacer la ligne sélectionnée de "nombre" lignes vers le bas
           -go : sélectionner une ligne par numéro, la première ligne est 0 ("end" pour sélectionner la dernière ligne)

Sans paramètre, cette commande ouvre un tampon avec la liste des scripts.

Sur le tampon des scripts, les statuts pour chaque script sont :
  `*` : script populaire
  `i` : installé
  `a` : chargé automatiquement
  `H` : figé
  `r` : chargé
  `N` : obsolète (nouvelle version disponible)

Dans la sortie de /script list, les statuts pour chaque script sont :
  `?` : script inconnu (ne peut pas être téléchargé/mis à jour)

Dans l'entrée sur le tampon des scripts, un ou plusieurs mot(s) sont utilisés pour filtrer les scripts sur la description, les étiquettes, etc.). L'entrée "*" supprime le filtre.

Pour les touches, entrée et actions de la souris sur le tampon, voir les raccourcis clavier dans le Guide utilisateur.

Exemples :
  /script search url
  /script install go.py urlserver.py
  /script remove go.py
  /script hold urlserver.py
  /script reload urlserver
  /script upgrade
Options Script

Sections dans le fichier script.conf :

Section Commande de contrôle Description

look

/set script.look.*

Aspect/présentation.

color

/set script.color.*

Couleurs.

scripts

/set script.scripts.*

Options pour le téléchargement des scripts.

Options :

  • script.color.status_autoloaded

    • description: couleur du statut "chargé auto" ("a")

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 39

  • script.color.status_held

    • description: couleur du statut "figé" ("H")

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • script.color.status_installed

    • description: couleur du statut "installé" ("i")

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightcyan

  • script.color.status_obsolete

    • description: couleur du statut "obsolète" ("N")

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightmagenta

  • script.color.status_popular

    • description: couleur du statut "populaire" ("*")

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • script.color.status_running

    • description: couleur du statut "chargé" ("r")

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightgreen

  • script.color.status_unknown

    • description: couleur du statut "inconnu" ("?")

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: lightred

  • script.color.text

    • description: couleur du texte dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • script.color.text_bg

    • description: couleur du fond dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: default

  • script.color.text_bg_selected

    • description: couleur du fond pour la ligne sélectionnée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 24

  • script.color.text_date

    • description: couleur du texte pour les dates dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 65

  • script.color.text_date_selected

    • description: couleur du texte pour les dates de la ligne sélectionnée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 50

  • script.color.text_delimiters

    • description: couleur du texte pour les délimiteurs dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 240

  • script.color.text_description

    • description: couleur du texte pour la description dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 249

  • script.color.text_description_selected

    • description: couleur du texte pour la description de la ligne sélectionnée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • script.color.text_extension

    • description: couleur du texte pour l'extension dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 242

  • script.color.text_extension_selected

    • description: couleur du texte pour l'extension de la ligne sélectionnée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 248

  • script.color.text_name

    • description: couleur du texte pour le nom du script dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 73

  • script.color.text_name_selected

    • description: couleur du texte pour le nom du script de la ligne sélectionnée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 51

  • script.color.text_selected

    • description: couleur du texte pour la ligne sélectionnée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • script.color.text_tags

    • description: couleur du texte pour les étiquettes dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: brown

  • script.color.text_tags_selected

    • description: couleur du texte pour les étiquettes de la ligne sélectionnée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: yellow

  • script.color.text_version

    • description: couleur du texte pour la version dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 100

  • script.color.text_version_loaded

    • description: couleur du texte pour la version chargée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 246

  • script.color.text_version_loaded_selected

    • description: couleur du texte pour la version chargée de la ligne sélectionnée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: white

  • script.color.text_version_selected

    • description: couleur du texte pour la version de la ligne sélectionnée dans le tampon script

    • type: couleur

    • valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

    • valeur par défaut: 228

  • script.look.columns

    • description: format des colonnes affichées dans le tampon des scripts : les identifiants de colonne suivants sont remplacés par leurs valeurs : %a=auteur, %d=description, %D=date d'ajout, %e=extension, %l=langage, %L=licence, %n=nom avec extension, %N=nom, %r=dépendances, %s=statuts, %t=étiquettes, %u=date de mise à jour, %v=version, %V=version chargée, %w=min_weechat, %W=max_weechat

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "%s %n %V %v %u | %d | %t"

  • script.look.diff_color

    • description: colorie la sortie du diff

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • script.look.diff_command

    • description: commande utilisée pour montrer les différences entre le script installé et la nouvelle version dans le dépôt ("auto" = détecter automatiquement la commande de diff (git ou diff), valeur vide = désactiver le diff, autre chaîne = nom de la commande, par exemple "diff")

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "auto"

  • script.look.display_source

    • description: afficher le code source du script sur le tampon avec le détail sur le script (le script est téléchargé dans un fichier temporaire lorsque le détail du script est affiché)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • script.look.quiet_actions

    • description: actions silencieuses sur le tampon script : ne pas afficher de messages sur le tampon "core" quand les scripts sont installés/supprimés/chargés/déchargés (seules les erreurs sont affichées)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • script.look.sort

    • description: tri par défaut des scripts : liste d'identifiants séparés par des virgules : a=auteur, A=chargé auto, d=date d'ajout, e=extension, i=installé, l=langage, n=nom, o=obsolète, p=populaire, r=chargé, u=date de mise à jour ; le caractère "-" peut être utilisé avant l'identifiant pour inverser l'ordre ; exemple : "i,u" : scripts installés en premier, triés par date de mise à jour

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "i,p,n"

  • script.look.translate_description

    • description: traduire la description des scripts (si une traduction est disponible dans votre langue, sinon la version anglaise est utilisée)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • script.look.use_keys

    • description: utiliser les touches alt+X sur le tampon script pour effectuer les actions sur les scripts (alt+i = installer, alt+r = supprimer, ...) ; si désactivé, seule l'entrée est autorisée : i, r, ...

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • script.scripts.autoload

    • description: charger automatiquement les scripts installés (faire un lien dans le répertoire "autoload" vers le script dans le répertoire parent)

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

  • script.scripts.cache_expire

    • description: temps d'expiration du cache local, en minutes (-1 = n'expire jamais, 0 = expire toujours)

    • type: entier

    • valeurs: -1 .. 525600

    • valeur par défaut: 1440

  • script.scripts.download_enabled

    • description: activer le téléchargement des fichiers depuis le dépôt des scripts lorsque la commande /script est utilisée (liste des scripts et les scripts eux-mêmes) ; la liste des scripts est téléchargée depuis l'URL spécifiée dans l'option script.scripts.url ; WeeChat téléchargera parfois à nouveau la liste des scripts quand vous utilisez la commande /script, même si vous n'installez pas un script

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • script.scripts.download_timeout

    • description: délai d'attente maximum (en secondes) pour le téléchargement des scripts et de la liste des scripts

    • type: entier

    • valeurs: 1 .. 3600

    • valeur par défaut: 30

  • script.scripts.hold

    • description: scripts à "figer" : liste de scripts séparés par des virgules qui ne seront jamais mis à jour et ne peuvent pas être supprimés, par exemple : "go.py,urlserver.py"

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: ""

  • script.scripts.path

    • description: répertoire du cache local pour les scripts (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "${weechat_cache_dir}/script"

  • script.scripts.url

    • description: URL pour le fichier avec la liste des scripts

    • type: chaîne

    • valeurs: toute chaîne

    • valeur par défaut: "https://weechat.org/files/plugins.xml.gz"

Extensions pour les scripts

Commandes Python
  • python: lister/charger/décharger des scripts

/python  list|listfull [<nom>]
         load [-q] <fichier>
         autoload
         reload|unload [-q] [<nom>]
         eval [-o|-oc] <code>
         version

    list : lister les scripts chargés
listfull : lister les scripts chargés (verbeux)
    load : charger un script
autoload : charger tous les scripts dans le répertoire "autoload"
  reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
  unload : décharger un script (si pas de nom donné, décharger tous les scripts)
 fichier : script (fichier) à charger
      -q : mode silencieux : ne pas afficher de messages
     nom : nom de script (nom utilisé dans l'appel à la fonction "register")
    eval : évaluer le code source et afficher le résultat sur le tampon courant
      -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
     -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
    code : le code source à évaluer
 version : afficher la version de l'interpréteur utilisé

Sans paramètre, cette commande liste les scripts chargés.
Commandes Perl
  • perl: lister/charger/décharger des scripts

/perl  list|listfull [<nom>]
       load [-q] <fichier>
       autoload
       reload|unload [-q] [<nom>]
       eval [-o|-oc] <code>
       version

    list : lister les scripts chargés
listfull : lister les scripts chargés (verbeux)
    load : charger un script
autoload : charger tous les scripts dans le répertoire "autoload"
  reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
  unload : décharger un script (si pas de nom donné, décharger tous les scripts)
 fichier : script (fichier) à charger
      -q : mode silencieux : ne pas afficher de messages
     nom : nom de script (nom utilisé dans l'appel à la fonction "register")
    eval : évaluer le code source et afficher le résultat sur le tampon courant
      -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
     -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
    code : le code source à évaluer
 version : afficher la version de l'interpréteur utilisé

Sans paramètre, cette commande liste les scripts chargés.
Commandes Ruby
  • ruby: lister/charger/décharger des scripts

/ruby  list|listfull [<nom>]
       load [-q] <fichier>
       autoload
       reload|unload [-q] [<nom>]
       eval [-o|-oc] <code>
       version

    list : lister les scripts chargés
listfull : lister les scripts chargés (verbeux)
    load : charger un script
autoload : charger tous les scripts dans le répertoire "autoload"
  reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
  unload : décharger un script (si pas de nom donné, décharger tous les scripts)
 fichier : script (fichier) à charger
      -q : mode silencieux : ne pas afficher de messages
     nom : nom de script (nom utilisé dans l'appel à la fonction "register")
    eval : évaluer le code source et afficher le résultat sur le tampon courant
      -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
     -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
    code : le code source à évaluer
 version : afficher la version de l'interpréteur utilisé

Sans paramètre, cette commande liste les scripts chargés.
Commandes Lua
  • lua: lister/charger/décharger des scripts

/lua  list|listfull [<nom>]
      load [-q] <fichier>
      autoload
      reload|unload [-q] [<nom>]
      eval [-o|-oc] <code>
      version

    list : lister les scripts chargés
listfull : lister les scripts chargés (verbeux)
    load : charger un script
autoload : charger tous les scripts dans le répertoire "autoload"
  reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
  unload : décharger un script (si pas de nom donné, décharger tous les scripts)
 fichier : script (fichier) à charger
      -q : mode silencieux : ne pas afficher de messages
     nom : nom de script (nom utilisé dans l'appel à la fonction "register")
    eval : évaluer le code source et afficher le résultat sur le tampon courant
      -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
     -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
    code : le code source à évaluer
 version : afficher la version de l'interpréteur utilisé

Sans paramètre, cette commande liste les scripts chargés.
Commandes Tcl
  • tcl: lister/charger/décharger des scripts

/tcl  list|listfull [<nom>]
      load [-q] <fichier>
      autoload
      reload|unload [-q] [<nom>]
      eval [-o|-oc] <code>
      version

    list : lister les scripts chargés
listfull : lister les scripts chargés (verbeux)
    load : charger un script
autoload : charger tous les scripts dans le répertoire "autoload"
  reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
  unload : décharger un script (si pas de nom donné, décharger tous les scripts)
 fichier : script (fichier) à charger
      -q : mode silencieux : ne pas afficher de messages
     nom : nom de script (nom utilisé dans l'appel à la fonction "register")
    eval : évaluer le code source et afficher le résultat sur le tampon courant
      -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
     -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
    code : le code source à évaluer
 version : afficher la version de l'interpréteur utilisé

Sans paramètre, cette commande liste les scripts chargés.
Commandes Guile
  • guile: lister/charger/décharger des scripts

/guile  list|listfull [<nom>]
        load [-q] <fichier>
        autoload
        reload|unload [-q] [<nom>]
        eval [-o|-oc] <code>
        version

    list : lister les scripts chargés
listfull : lister les scripts chargés (verbeux)
    load : charger un script
autoload : charger tous les scripts dans le répertoire "autoload"
  reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
  unload : décharger un script (si pas de nom donné, décharger tous les scripts)
 fichier : script (fichier) à charger
      -q : mode silencieux : ne pas afficher de messages
     nom : nom de script (nom utilisé dans l'appel à la fonction "register")
    eval : évaluer le code source et afficher le résultat sur le tampon courant
      -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
     -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
    code : le code source à évaluer
 version : afficher la version de l'interpréteur utilisé

Sans paramètre, cette commande liste les scripts chargés.
Commandes PHP
  • php: lister/charger/décharger des scripts

/php  list|listfull [<nom>]
      load [-q] <fichier>
      autoload
      reload|unload [-q] [<nom>]
      eval [-o|-oc] <code>
      version

    list : lister les scripts chargés
listfull : lister les scripts chargés (verbeux)
    load : charger un script
autoload : charger tous les scripts dans le répertoire "autoload"
  reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
  unload : décharger un script (si pas de nom donné, décharger tous les scripts)
 fichier : script (fichier) à charger
      -q : mode silencieux : ne pas afficher de messages
     nom : nom de script (nom utilisé dans l'appel à la fonction "register")
    eval : évaluer le code source et afficher le résultat sur le tampon courant
      -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
     -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
    code : le code source à évaluer
 version : afficher la version de l'interpréteur utilisé

Sans paramètre, cette commande liste les scripts chargés.
Options Python

Sections dans le fichier python.conf :

Section Commande de contrôle Description

look

/set python.look.*

Aspect/présentation.

Options :

  • python.look.check_license

    • description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • python.look.eval_keep_context

    • description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

Options Perl

Sections dans le fichier perl.conf :

Section Commande de contrôle Description

look

/set perl.look.*

Aspect/présentation.

Options :

  • perl.look.check_license

    • description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • perl.look.eval_keep_context

    • description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

Options Ruby

Sections dans le fichier ruby.conf :

Section Commande de contrôle Description

look

/set ruby.look.*

Aspect/présentation.

Options :

  • ruby.look.check_license

    • description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • ruby.look.eval_keep_context

    • description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

Options Lua

Sections dans le fichier lua.conf :

Section Commande de contrôle Description

look

/set lua.look.*

Aspect/présentation.

Options :

  • lua.look.check_license

    • description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • lua.look.eval_keep_context

    • description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

Options Tcl

Sections dans le fichier tcl.conf :

Section Commande de contrôle Description

look

/set tcl.look.*

Aspect/présentation.

Options :

  • tcl.look.check_license

    • description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • tcl.look.eval_keep_context

    • description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

Options Guile

Sections dans le fichier guile.conf :

Section Commande de contrôle Description

look

/set guile.look.*

Aspect/présentation.

Options :

  • guile.look.check_license

    • description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • guile.look.eval_keep_context

    • description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

Options PHP

Sections dans le fichier php.conf :

Section Commande de contrôle Description

look

/set php.look.*

Aspect/présentation.

Options :

  • php.look.check_license

    • description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: off

  • php.look.eval_keep_context

    • description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

    • type: booléen

    • valeurs: on, off

    • valeur par défaut: on

16. Support

Avant de faire appel au support, merci de lire la documentation et la FAQ de WeeChat.

Pour le support via IRC, sur le serveur irc.libera.chat :

  • canaux officiels (avec les développeurs) :

    • #weechat (Anglais)

    • #weechat-fr (Français)

  • canaux non officiels :

    • #weechat-de (Allemand)

    • #weechat-fi (Finnois)

Pour les autres formes de support, voir cette page .