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). |
zlib1g-dev |
Extension Logger : compression des fichiers de log qui tournent (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). |
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 |
---|---|---|---|
|
|
Type de construction : |
|
|
répertoire |
|
Le répertoire dans lequel WeeChat sera installé. |
|
répertoire |
|
Le répertoire "maison" par défaut lors du lancement de WeeChat. |
|
|
|
Compiler l’extension Alias. |
|
|
|
Compiler l’extension Buflist. |
|
|
|
Compiler l’extension Charset. |
|
|
|
Support du JSON avec la bibliothèque cJSON ↗. |
|
|
|
Construire la page man. |
|
|
|
Construire la documentation HTML. |
|
|
|
Forcer la construction de la documentation même si des extensions ne sont pas compilées (déconseillé : les documentations seront incomplètes). |
|
|
|
Compiler l’extension Spell avec Enchant. |
|
|
|
Compiler l’extension Exec. |
|
|
|
Compiler l’extension Fifo. |
|
|
|
Compiler l’extension Fset. |
|
|
|
Compiler l’extension Guile (Scheme). |
|
|
|
Compiler le binaire sans interface (« headless »). |
|
|
|
Compiler l’extension IRC. |
|
|
|
Compiler l’extension JavaScript. |
|
|
|
Support des gros fichiers. |
|
|
|
Compiler l’extension Logger. |
|
|
|
Compiler l’extension Lua. |
|
|
|
Compiler l’interface Ncurses. |
|
|
|
Activer NLS (traductions). |
|
|
|
Compiler l’extension Perl. |
|
|
|
Compiler l’extension PHP. |
|
|
|
Compiler l’extension Python. |
|
|
|
Compiler l’extension Relay. |
|
|
|
Compiler l’extension Ruby. |
|
|
|
Compiler l’extension Script. |
|
|
|
Compiler les extensions de script (Python, Perl, Ruby, Lua, Tcl, Guile, PHP). |
|
|
|
Compiler l’extension Spell. |
|
|
|
Compiler l’extension Tcl. |
|
|
|
Compiler l’extension Trigger. |
|
|
|
Compiler l’extension Typing. |
|
|
|
Compiler l’extension Xfer. |
|
|
|
Activer la compression Zstandard ↗. |
|
|
|
Compiler les tests. |
|
|
|
Compiler avec les options de couverture de code. |
Les autres options peuvent être affichées avec cette commande :
cmake -LA
Ou avec l’interface Curses :
ccmake ..
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.
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 |
---|---|
|
Le répertoire "maison" de WeeChat (avec les fichiers de configuration, logs, scripts, etc.). Même comportement que l’option CMake |
|
La phrase secrète utilisée pour déchiffrer les données sécurisées. |
|
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 |
|
|
data |
|
|
cache |
|
|
runtime |
|
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 |
---|---|
|
Fichiers de configuration WeeChat : |
|
Fichiers de données WeeChat : logs, scripts, données des scripts, fichiers xfer, etc. |
|
Fichiers de log (un fichier par tampon). |
|
Scripts Python. |
|
Scripts Python chargés automatiquement au démarrage (2). |
|
Scripts Perl. |
|
Scripts Perl chargés automatiquement au démarrage (2). |
|
Scripts Ruby. |
|
Scripts Ruby chargés automatiquement au démarrage (2). |
|
Scripts Lua. |
|
Scripts Lua chargés automatiquement au démarrage (2). |
|
Scripts Tcl. |
|
Scripts Tcl chargés automatiquement au démarrage (2). |
|
Scripts Guile. |
|
Scripts Guile chargés automatiquement au démarrage (2). |
|
Scripts JavaScript. |
|
Scripts JavaScript chargés automatiquement au démarrage (2). |
|
Scripts PHP. |
|
Scripts PHP chargés automatiquement au démarrage (2). |
|
Fichiers de cache WeeChat : cache des scripts. |
|
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 |
---|---|---|
|
Fichier de configuration principal de WeeChat |
Possible (par exemple : liste des canaux sauvés dans la disposition des tampons). |
|
Fichier de configuration avec les données sécurisées |
Oui, très sensibles : ce fichier ne doit jamais être partagé avec quiconque. |
|
Fichier de configuration des extensions |
Possible, cela dépend des extensions/scripts. |
|
Fichier de configuration de l’extension alias |
Possible, cela dépend des alias. |
|
Fichier de configuration de l’extension buflist |
Non. |
|
Fichier de configuration de l’extension charset |
Non. |
|
Fichier de configuration de l’extension exec |
Non. |
|
Fichier de configuration de l’extension fifo |
Non. |
|
Fichier de configuration de l’extension fset |
Non. |
|
Fichier de configuration de l’extension guile |
Non. |
|
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 |
|
Fichier de configuration de l’extension javascript |
Non. |
|
Fichier de configuration de l’extension logger |
Non. |
|
Fichier de configuration de l’extension lua |
Non. |
|
Fichier de configuration de l’extension perl |
Non. |
|
Fichier de configuration de l’extension php |
Non. |
|
Fichier de configuration de l’extension python |
Non. |
|
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 |
|
Fichier de configuration de l’extension ruby |
Non. |
|
Fichier de configuration de l’extension script |
Non. |
|
Fichier de configuration de l’extension tcl |
Non. |
|
Fichier de configuration de l’extension spell |
Non. |
|
Fichier de configuration de l’extension trigger |
Possible, cela dépend des triggers. |
|
Fichier de configuration de l’extension typing |
Non. |
|
Fichier de configuration de l’extension xfer |
Non. |
|
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 |
|
Liste des tampons. |
La barre title contient les objets (items) suivants par défaut :
Objet (item) | Exemple | Description |
---|---|---|
buffer_title |
|
Titre du tampon. |
La barre status contient les objets (items) suivants par défaut :
Objet (item) | Exemple | Description |
---|---|---|
time |
|
Heure. |
buffer_last_number |
|
Numéro du dernier tampon (peut être différent de |
buffer_plugin |
|
Extension du tampon courant (l’extension irc peut afficher le nom du serveur IRC auquel est rattaché ce tampon). |
buffer_number |
|
Numéro du tampon courant. |
buffer_name |
|
Nom du tampon courant. |
buffer_modes |
|
Modes du canal IRC. |
buffer_nicklist_count |
|
Nombre de pseudos affichés dans la liste des pseudos. |
buffer_zoom |
! |
|
buffer_filter |
|
Indicateur de filtrage : |
mouse_status |
|
Statut de la souris (vide si la souris est désactivée), voir la commande /mouse et Touches de bascule. |
scroll |
|
Indicateur de scroll, avec le nombre de lignes sous la dernière ligne affichée. |
lag |
|
Indicateur de "lag" (ralentissements réseau), en secondes (caché si le lag est faible). |
hotlist |
|
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 |
|
Notification de saisie, voir Notifications de saisie. |
completion |
|
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 |
|
Prompt, pour irc : pseudo et modes (le mode "+i" signifie invisible sur libera). |
away |
|
Indicateur d’absence. |
input_search |
|
Indicateur de recherche de texte (voir ci-dessous). |
input_paste |
|
Question à l’utilisateur pour coller des lignes. |
input_text |
|
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 |
|
Liste des pseudos sur le tampon courant. |
Autres objets (non utilisés dans des barres par défaut) :
Objet (item) | Exemple | Description |
---|---|---|
buffer_count |
|
Nombre total de tampons ouverts. |
buffer_nicklist_count_all |
|
Nombre de groupes et pseudos visibles dans la liste de pseudos. |
buffer_nicklist_count_groups |
|
Nombre de groupes visibles dans la liste de pseudos. |
buffer_short_name |
|
Nom court du tampon courant. |
buflist2 |
|
Liste des tampons, deuxième objet de barre (voir l’option buflist.look.use_items). |
buflist3 |
|
Liste des tampons, troisième objet de barre (voir l’option buflist.look.use_items). |
buflist4 |
|
Liste des tampons, quatrième objet de barre (voir l’option buflist.look.use_items). |
buflist5 |
|
Liste des tampons, cinquième objet de barre (voir l’option buflist.look.use_items). |
fset |
|
Aide sur l’option sélectionnée dans le tampon fset. |
irc_channel |
|
Nom de canal IRC courant. |
irc_host |
|
Hôte sur IRC. |
irc_nick |
|
Pseudo IRC. |
irc_nick_host |
|
Pseudo et hôte IRC. |
irc_nick_modes |
|
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 |
|
Dictionnaires utilisés pour la vérification de l’orthographe sur le tampon courant. |
spell_suggest |
|
Suggestions pour le mot sous le curseur (si mal orthographié). |
tls_version |
|
Version de TLS utilisée sur le serveur IRC courant. |
window_number |
|
Numéro de la fenêtre courante. |
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 |
Ctrl+c, c, xx, ,, yy |
Couleur du texte |
Ctrl+c, d, xxxxxx |
Couleur du texte |
Ctrl+c, d, xxxxxx, ,, yyyyyy |
Couleur du texte |
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 :
IRC color | WeeChat color |
---|---|
|
white |
|
black |
|
blue |
|
green |
|
lightred |
|
red |
|
magenta |
|
brown |
|
yellow |
|
lightgreen |
|
cyan |
|
lightcyan |
|
lightblue |
|
lightmagenta |
|
darkgray |
|
gray |
|
52 |
|
94 |
|
100 |
|
58 |
|
22 |
|
29 |
|
23 |
|
24 |
|
17 |
|
54 |
|
53 |
|
89 |
|
88 |
|
130 |
|
142 |
|
64 |
|
28 |
|
35 |
|
30 |
|
25 |
|
18 |
|
91 |
|
90 |
|
125 |
|
124 |
|
166 |
|
184 |
|
106 |
|
34 |
|
49 |
|
37 |
|
33 |
|
19 |
|
129 |
|
127 |
|
161 |
|
196 |
|
208 |
|
226 |
|
154 |
|
46 |
|
86 |
|
51 |
|
75 |
|
21 |
|
171 |
|
201 |
|
198 |
|
203 |
|
215 |
|
227 |
|
191 |
|
83 |
|
122 |
|
87 |
|
111 |
|
63 |
|
177 |
|
207 |
|
205 |
|
217 |
|
223 |
|
229 |
|
193 |
|
157 |
|
158 |
|
159 |
|
153 |
|
147 |
|
183 |
|
219 |
|
212 |
|
16 |
|
233 |
|
235 |
|
237 |
|
239 |
|
241 |
|
244 |
|
247 |
|
250 |
|
254 |
|
231 |
|
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 |
É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 |
---|---|
|
La ligne ne peut pas être filtrée. |
|
Aucun highlight n’est possible sur cette ligne. |
|
La ligne n’est pas écrite dans le fichier de log. |
|
Niveau de log pour la ligne (voir la commande /logger). |
|
La ligne ne doit pas être ajoutée à la "hotlist". (1) |
|
La ligne est un message utilisateur. (1) |
|
La ligne est un message privé. (1) |
|
La ligne est un message avec un highlight. (1) |
|
Message de soi-même. |
|
Le message vient du pseudo "xxx". |
|
Le préfixe est un pseudo avec la couleur "ccc". |
|
Nom d’utilisateur et hôte dans le message. |
|
Message IRC "xxx" (peut-être une commande ou un numérique sur 3 chiffres). |
|
Message IRC numérique. |
|
Erreur du serveur IRC. |
|
Action d’un pseudo (commande |
|
Message CTCP. |
|
Réponse à un message CTCP. |
|
Message IRC qui peut être filtré avec le "smart filter" (filtre intelligent). |
|
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 |
---|---|---|
|
toute chaîne |
Message d’absence sur le serveur, défini par l’extension irc. |
|
toute chaîne |
Nom du canal, défini par les extensions irc/xfer et le tampon de debug des extensions relay/trigger. |
|
toute chaîne |
Modificateur de charset du tampon serveur, défini par l’extension irc. |
|
toute chaîne |
Modèle de complétion par défaut pour le tampon, qui remplace l’option
|
|
toute chaîne |
Filtre défini sur certains tampons comme |
|
toute chaîne |
Nom d’hôte personnel (si connu), défini par l’extension irc. |
|
toute chaîne |
Lag sur le serveur, défini par l’extension irc. |
|
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). |
|
toute chaîne |
Pseudo personnel, défini par les extensions irc et xfer. |
|
|
Si défini, l’extension logger n’écrira pas le "log" du tampon sur disque. |
|
toute chaîne |
Nom de l’extension qui a créé le tampon ( |
|
toute chaîne |
Nom de la fonction de rappel pour la fermeture, défini par un script pour le tampon. |
|
toute chaîne |
Données pour la fonction de rappel pour la fermeture, définies par un script pour le tampon. |
|
toute chaîne |
Nom de la fonction de rappel d’entrée, défini par un script pour le tampon. |
|
toute chaîne |
Données pour la fonction de rappel d’entrée, définies par un script pour le tampon. |
|
toute chaîne |
Nom du script qui a créé le tampon. |
|
toute chaîne |
Nom du serveur, défini par l’extension irc et le tampon de debug des extensions relay/trigger. |
|
toute chaîne |
Mot mal orthographié et ses suggestions (format : "mot:suggestions"), défini par l’extension spell. |
|
toute chaîne |
Filtre trigger, défini par l’extension trigger. |
|
toute chaîne, par exemple :
|
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
: bar item with list of buffers
/buflist enable|disable|toggle bar refresh [<item>[,<item>...]] enable: enable buflist disable: disable buflist toggle: toggle buflist bar: add the "buflist" bar refresh: force the refresh of some bar items (if no item is given, all bar items used are refreshed, according to option buflist.look.use_items) The lines with buffers are displayed using string evaluation (see /help eval for the format), with these options: - buflist.look.display_conditions: conditions to display a buffer in the list - buflist.format.buffer: format for a buffer which is not current buffer - buflist.format.buffer_current: format for the current buffer The following variables can be used in these options: - bar item data (see hdata "bar_item" in API doc for a complete list), for example: - ${bar_item.name} - window data, where the bar item is displayed (there's no window in root bars, see hdata "window" in API doc for a complete list), for example: - ${window.number} - ${window.buffer.full_name} - buffer data (see hdata "buffer" in API doc for a complete list), for example: - ${buffer.number} - ${buffer.name} - ${buffer.full_name} - ${buffer.short_name} - ${buffer.nicklist_nicks_count} - irc_server: IRC server data, defined only on an IRC buffer (see hdata "irc_server" in API doc) - irc_channel: IRC channel data, defined only on an IRC channel buffer (see hdata "irc_channel" in API doc) - extra variables added by buflist for convenience: - ${format_buffer}: the evaluated value of option buflist.format.buffer; this can be used in option buflist.format.buffer_current to just change the background color for example - ${current_buffer}: a boolean ("0" or "1"), "1" if this is the current buffer; it can be used in a condition: ${if:${current_buffer}?...:...} - ${merged}: a boolean ("0" or "1"), "1" if the buffer is merged with at least another buffer; it can be used in a condition: ${if:${merged}?...:...} - ${format_number}: indented number with separator (evaluation of option buflist.format.number) - ${number}: indented number, for example " 1" if there are between 10 and 99 buffers; for merged buffers, this variable is set with number for the first buffer and spaces for the next buffers with same number - ${number2}: indented number, for example " 1" if there are between 10 and 99 buffers - ${number_displayed}: "1" if the number is displayed, otherwise "0" - ${indent}: indentation for name (channel, private and list buffers are indented) (evaluation of option buflist.format.indent) - ${format_nick_prefix}: colored nick prefix for a channel (evaluation of option buflist.format.nick_prefix) - ${color_nick_prefix}: color of nick prefix for a channel (set only if the option buflist.look.nick_prefix is enabled) - ${nick_prefix}: nick prefix for a channel (set only if the option buflist.look.nick_prefix is enabled) - ${format_name}: formatted name (evaluation of option buflist.format.name) - ${name}: the short name (if set), with a fallback on the name - ${color_hotlist}: the color depending on the highest hotlist level for the buffer (evaluation of option buflist.format.hotlist_xxx where xxx is the level) - ${format_hotlist}: the formatted hotlist (evaluation of option buflist.format.hotlist) - ${hotlist}: the raw hotlist - ${hotlist_priority}: "none", "low", "message", "private" or "highlight" - ${hotlist_priority_number}: -1 = none, 0 = low, 1 = message, 2 = private, 3 = highlight - ${format_lag}: the lag for an IRC server buffer, empty if there's no lag (evaluation of option buflist.format.lag) - ${format_tls_version}: indicator of TLS version for a server buffer, empty for channels (evaluation of option buflist.format.tls_version)
Options
Sections dans le fichier buflist.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Formats utilisés pour l’affichage de la liste des tampons. |
|
|
Aspect/présentation. |
Options :
-
-
description: format of each line with a buffer (note: content is evaluated, see /help buflist); example: standard format for bar item "buflist" and only the buffer number between square brackets for other bar items ("buflist2" to "buflist5"): "${if:${bar_item.name}==buflist?${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}:[${number}]}"
-
type: string
-
values: any string
-
default value:
"${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}"
-
-
-
description: format for the line with current buffer (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${color:,17}${format_buffer}"
-
-
-
description: format for hotlist (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
" ${color:green}(${hotlist}${color:green})"
-
-
buflist.format.hotlist_highlight
-
description: format for a buffer with hotlist level "highlight" (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${color:magenta}"
-
-
-
description: format for a buffer with hotlist level "low" (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${color:white}"
-
-
buflist.format.hotlist_message
-
description: format for a buffer with hotlist level "message" (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${color:brown}"
-
-
-
description: format for a buffer not in hotlist (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${color:default}"
-
-
buflist.format.hotlist_private
-
description: format for a buffer with hotlist level "private" (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${color:green}"
-
-
buflist.format.hotlist_separator
-
description: separator for counts in hotlist (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${color:default},"
-
-
-
description: string displayed to indent channel, private and list buffers (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
" "
-
-
-
description: format for lag on an IRC server buffer (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
" ${color:green}[${color:brown}${lag}${color:green}]"
-
-
-
description: format for buffer name (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${name}"
-
-
-
description: format for nick prefix on a channel (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${color_nick_prefix}${nick_prefix}"
-
-
-
description: format for buffer number, ${number} is the indented number (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
"${color:green}${number}${if:${number_displayed}?.: }"
-
-
-
description: format for TLS version on an IRC server buffer (note: content is evaluated, see /help buflist)
-
type: string
-
values: any string
-
default value:
" ${color:default}(${if:${tls_version}==TLS1.3?${color:green}:${if:${tls_version}==TLS1.2?${color:yellow}:${color:red}}}${translate:${tls_version}}${color:default})"
-
-
-
description: add newline between the buffers displayed, so each buffer is displayed on a separate line (recommended); if disabled, newlines must be manually added in the formats with "${\n}", and the mouse actions are not possible anymore
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: automatically scroll the buflist bar to always see the current buffer (this works only with a bar on the left/right position with a "vertical" filling); this value is the percent number of lines displayed before the current buffer when scrolling (-1 = disable scroll); for example 50 means that after a scroll, the current buffer is at the middle of bar, 0 means on top of bar, 100 means at bottom of bar
-
type: integer
-
values: -1 .. 100
-
default value:
50
-
-
buflist.look.display_conditions
-
description: conditions to display a buffer (note: content is evaluated, see /help buflist); for example to hide server buffers if they are merged with core buffer: "${buffer.hidden}==0 && ((${type}!=server && ${buffer.full_name}!=core.weechat) || ${buffer.active}==1)"
-
type: string
-
values: any string
-
default value:
"${buffer.hidden}==0"
-
-
-
description: enable buflist; it is recommended to use this option instead of just hiding the bar because it also removes some internal hooks that are not needed anymore when the bar is hidden; you can also use the command "/buflist toggle" or use the default key alt+shift+b
-
type: boolean
-
values: on, off
-
default value:
on
-
-
buflist.look.mouse_jump_visited_buffer
-
description: if enabled, clicks with left/right buttons on the line with current buffer jump to previous/next visited buffer
-
type: boolean
-
values: on, off
-
default value:
off
-
-
buflist.look.mouse_move_buffer
-
description: if enabled, mouse gestures (drag & drop) move buffers in list
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: if enabled, mouse wheel up/down actions jump to previous/next buffer in list
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: get the nick prefix and its color from nicklist so that ${nick_prefix} can be used in format; this can be slow on buffers with lot of nicks in nicklist, so this option is disabled by default
-
type: boolean
-
values: on, off
-
default value:
off
-
-
buflist.look.nick_prefix_empty
-
description: when the nick prefix is enabled, display a space instead if there is no nick prefix on the buffer (only for channel, private and list buffers)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: comma-separated list of extra signals that are hooked and trigger the refresh of buffers list; this can be useful if some custom variables are used in formats and need specific refresh
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: comma-separated list of fields to sort buffers; each field is a hdata variable of buffer ("var"), a hdata variable of IRC server ("irc_server.var") or a hdata variable of IRC channel ("irc_channel.var"); char "-" can be used before field to reverse order, char "~" can be used to do a case-insensitive comparison; examples: "-~short_name" for case-insensitive and reverse sort on buffer short name, "-hotlist.priority,hotlist.time,hotlist.time_usec,number,-active" for sort like the hotlist then by buffer number for buffers without activity (note: the content is evaluated, before being split into fields, but at that time "bar_item" is the only variable that can be used, to distinguish between different buflist items, for example "${bar_item.name}")
-
type: string
-
values: any string
-
default value:
"number,-active"
-
-
-
description: number of buflist bar items that can be used; the item names are: "buflist", "buflist2", "buflist3", "buflist4" and "buflist5"; be careful, using more than one bar item slows down the display of buffers list
-
type: integer
-
values: 1 .. 5
-
default value:
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 |
---|---|---|
← |
Aller au caractère précédent sur la ligne de commande. |
|
→ |
Aller au caractère suivant sur la ligne de commande. |
|
Shift+↑ |
Aller à la ligne précédente. |
|
Shift+↓ |
Aller à la ligne suivante. |
|
Ctrl+← |
Aller au mot précédent sur la ligne de commande. |
|
Ctrl+→ |
Aller au mot suivant sur la ligne de commande. |
|
Home |
Aller au début de la ligne courante. |
|
Shift+Home |
Aller au début de la ligne de commande. |
|
End |
Aller à la fin de la ligne courante. |
|
Shift+End |
Aller à la fin de la ligne de commande. |
|
Édition
Touche | Description | Commande |
---|---|---|
Del |
Effacer le caractère suivant sur la ligne de commande. |
|
Backspace |
Effacer le caractère précédent sur la ligne de commande. |
|
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). |
|
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). |
|
Ctrl+t |
Inverser deux caractères. |
|
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). |
|
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). |
|
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). |
|
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). |
|
Ctrl+y |
Coller le contenu du presse-papiers interne. |
|
Ctrl+_ |
Défaire la dernière action sur la ligne de commande. |
|
Alt+_ |
Refaire la dernière action sur la ligne de commande. |
|
Tab |
Compléter la commande ou le pseudo (Tab de nouveau : trouver la complétion suivante). |
|
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. |
|
Enter |
Exécuter la commande ou envoyer le message (en mode recherche : arrêter la recherche). |
|
Alt+Enter |
Insérer une nouvelle ligne. |
|
Alt+d |
Effacer le mot suivant (la chaîne supprimée est copiée dans le presse-papiers interne). |
|
Alt+k |
Capturer une touche et insérer son code (et la commande associée si la commande existe) sur la ligne de commande. |
|
Alt+r |
Effacer la ligne courante. |
|
Alt+R |
Effacer entièrement la ligne de commande. |
|
Codes couleur
Touche | Description | Commande |
---|---|---|
Ctrl+c, b |
Insérer le code pour mettre le texte en gras. |
|
Ctrl+c, c |
Insérer le code pour écrire en couleur. |
|
Ctrl+c, d |
Insérer le code pour écrire en couleur (couleur RGB, en hexadécimal). |
|
Ctrl+c, i |
Insérer le code pour mettre le texte en italique. |
|
Ctrl+c, o |
Insérer le code pour réinitialiser la couleur. |
|
Ctrl+c, v |
Insérer le code pour écrire en couleur inversée. |
|
Ctrl+c, _ |
Insérer le code pour écrire en souligné. |
|
Historique de commandes
Touche | Description | Commande |
---|---|---|
↑ |
Rappeler la commande précédente (en mode recherche : chercher plus haut). |
|
↓ |
Rappeler la commande suivante (en mode recherche : chercher plus bas). |
|
Ctrl+↑ |
Rappeler la commande précédente dans l’historique global (commun à tous les tampons). |
|
Ctrl+↓ |
Rappeler la commande suivante dans l’historique global (commun à tous les tampons). |
|
6.2. Tampons
Touche | Description | Commande |
---|---|---|
Ctrl+r |
Chercher du texte dans l’historique de commandes (voir les touches pour le contexte "histsearch"). |
|
Ctrl+s |
Chercher du texte dans les lignes du tampon (voir les touches pour le contexte "search"). |
|
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. |
|
Alt+x |
Zoomer sur le tampon mélangé (Alt+x de nouveau : afficher tous les tampons mélangés). |
|
PgUp |
Monter d’une page dans l’historique du tampon. |
|
PgDn |
Descendre d’une page dans l’historique du tampon. |
|
Alt+PgUp |
Monter de quelques lignes dans l’historique du tampon. |
|
Alt+PgDn |
Descendre de quelques lignes dans l’historique du tampon. |
|
Alt+Home |
Aller au début du tampon. |
|
Alt+End |
Aller à la fin du tampon. |
|
Alt+← |
Aller au tampon précédent. |
|
Alt+→ |
Aller au tampon suivant. |
|
Alt+j, Alt+f |
Sauter au premier tampon. |
|
Alt+j, Alt+l ( |
Sauter au dernier tampon. |
|
Alt+j, Alt+r |
Sauter au tampon IRC de données brutes. |
|
Alt+j, Alt+s |
Sauter au tampon IRC du serveur. |
|
Alt+0…9 |
Sauter au tampon qui porte ce numéro (0 = 10). |
|
Alt+j, 01…99 |
Sauter au tampon qui porte ce numéro. |
|
Alt+n |
Se positionner sur le highlight suivant. |
|
Alt+p |
Se positionner sur le highlight précédent. |
|
Alt+u |
Se positionner sur la première ligne non lue du tampon. |
|
Alt+Shift+U |
Positionner le marqueur de données non lues sur tous les tampons. |
|
Alt+< |
Sauter au tampon précédent dans la liste des tampons visités. |
|
Alt+> |
Sauter au tampon suivant dans la liste des tampons visités. |
|
Alt+/ |
Sauter au dernier tampon affiché (avant le dernier saut vers un tampon). |
|
6.3. Fenêtres
Touche | Description | Commande |
---|---|---|
Ctrl+l ( |
Réafficher toute la fenêtre. |
|
Alt+l ( |
Activer/désactiver le mode d’affichage dépouillé. |
|
F7 |
Aller à la fenêtre précédente. |
|
F8 |
Aller à la fenêtre suivante. |
|
Alt+w, Alt+↑ |
Sauter à la fenêtre au dessus. |
|
Alt+w, Alt+↓ |
Sauter à la fenêtre en dessous. |
|
Alt+w, Alt+← |
Sauter à la fenêtre de gauche. |
|
Alt+w, Alt+→ |
Sauter à la fenêtre de droite. |
|
Alt+w, Alt+b |
Équilibrer la taille de toutes les fenêtres. |
|
Alt+w, Alt+s |
Échanger les tampons de deux fenêtres. |
|
Alt+z |
Zoomer sur la fenêtre courante (Alt+z de nouveau : restaurer l’état initial des fenêtres, avant le zoom). |
|
6.4. Barres
Touche | Description | Commande |
---|---|---|
F1 |
Monter d’une page dans la liste des tampons. |
|
F2 |
Descendre d’une page dans la liste des tampons. |
|
Alt+F1 |
Aller au début de la liste des tampons. |
|
Alt+F2 |
Aller à la fin de la liste des tampons. |
|
F9 |
Faire défiler le titre du tampon vers la gauche. |
|
F10 |
Faire défiler le titre du tampon vers la droite. |
|
F11 |
Monter d’une page dans la liste des pseudos. |
|
F12 |
Descendre d’une page dans la liste des pseudos. |
|
Alt+F11 |
Aller au début de la liste des pseudos. |
|
Alt+F12 |
Aller à la fin de la liste des pseudos. |
|
Alt+Shift+B |
Activer/désactiver buflist. |
|
Alt+Shift+N |
Activer/désactiver la barre nicklist. |
|
6.5. Hotlist
Touche | Description | Commande |
---|---|---|
Alt+a |
Sauter au prochain tampon avec activité (avec priorité : highlight, message, autre). |
|
Alt+h, Alt+c |
Vider la hotlist (notification d’activité sur les tampons). |
|
Alt+h, Alt+m |
Supprimer le tampon courant de la hotlist. |
|
Alt+h, Alt+r |
Restaurer la dernière hotlist supprimée dans le tampon courant. |
|
Alt+h, Alt+Shift+R |
Restaurer la dernière hotlist supprimée dans tous les tampons. |
|
6.6. Touches de bascule
Touche | Description | Commande |
---|---|---|
Alt+m |
Activer/désactiver la souris. |
|
Alt+s |
Activer/désactiver la vérification de l’orthographe. |
|
Alt+= |
Activer/désactiver les filtres. |
|
Alt+- |
Activer/désactiver les filtres dans le tampon courant. |
|
Alt+Ctrl+l ( |
Basculer entre les commandes distantes et locales sur un tampon distant (relay "api"). |
|
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. |
|
Alt+c |
Basculer la casse exacte pour la recherche. |
|
Tab |
Basculer la recherche dans : les messages (par défaut), les préfixes, les préfixes + messages. |
|
Ctrl+r |
Chercher la ligne précédente. |
|
Ctrl+s |
Chercher la ligne suivante. |
|
Enter |
Arrêter la recherche à la position courante. |
|
Ctrl+q |
Arrêter la recherche et réinitialiser le défilement à l’état antérieur à la recherche de texte. |
|
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. |
|
Alt+c |
Basculer la casse exacte pour la recherche. |
|
Tab |
Basculer la recherche dans : l’historique local du tampon (par défaut), l’historique global. |
|
Ctrl+r |
Chercher dans les entrées précédentes (plus anciennes) de l’historique. |
|
Ctrl+s |
Chercher dans les entrées suivantes (plus récentes) de l’historique. |
|
Enter |
Arrêter la recherche et utiliser la commande trouvée. |
|
Ctrl+o |
Exécuter la commande trouvée dans l’historique et insérer la suivante sur la ligne de commande. |
|
Ctrl+q |
Arrêter la recherche et restaurer la ligne de commande à sa valeur initiale. |
|
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. |
|
↓ |
- |
Déplacer le curseur d’une ligne vers le bas. |
|
← |
- |
Déplacer le curseur d’une colonne vers la gauche. |
|
→ |
- |
Déplacer le curseur d’une colonne vers la droite. |
|
Alt+↑ |
- |
Déplacer le curseur vers la première ligne de la zone. |
|
Alt+↓ |
- |
Déplacer le curseur vers la dernière ligne de la zone. |
|
Alt+← |
- |
Déplacer le curseur vers la première colonne de la zone. |
|
Alt+→ |
- |
Déplacer le curseur vers la dernière colonne de la zone. |
|
Alt+Home |
- |
Déplacer le curseur vers le coin supérieur gauche de la zone. |
|
Alt+End |
- |
Déplacer le curseur vers la coin inférieur droit de la zone. |
|
Alt+Shift+↑ |
- |
Déplacer le curseur vers la zone au dessus. |
|
Alt+Shift+↓ |
- |
Déplacer le curseur vers la zone en dessous. |
|
Alt+Shift+← |
- |
Déplacer le curseur vers la zone sur la gauche. |
|
Alt+Shift+→ |
- |
Déplacer le curseur vers la zone sur la droite. |
|
m |
chat |
Citer le message. |
|
l |
chat |
Citer la ligne ciblée. |
|
q |
chat |
Citer le préfixe + le message. |
|
Q |
chat |
Citer l’heure + le préfixe + le message. |
|
b |
liste des pseudos |
Bannir le pseudo. |
|
k |
liste des pseudos |
Retirer par la force le pseudo. |
|
K |
liste des pseudos |
Retirer par la force et bannir le pseudo. |
|
q |
liste des pseudos |
Ouvrir une discussion avec le pseudo. |
|
w |
liste des pseudos |
Effectuer un whois sur le pseudo. |
|
Enter |
- |
Arrêter le mode curseur ("cursor"). |
|
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. |
|
■ □ □ |
gauche |
chat |
Aller au tampon précédent. |
|
■ □ □ |
droit |
chat |
Aller au tampon suivant. |
|
■ □ □ |
gauche (long) |
chat |
Aller au premier tampon. |
|
■ □ □ |
droit (long) |
chat |
Aller au dernier tampon. |
|
▲ |
- |
chat |
Monter de quelques lignes dans l’historique du tampon. |
|
▼ |
- |
chat |
Descendre de quelques lignes dans l’historique du tampon. |
|
Ctrl+▲ |
- |
chat |
Faire défiler horizontalement vers la gauche. |
|
Ctrl+▼ |
- |
chat |
Faire défiler horizontalement vers la droite. |
|
▲ |
- |
chat : tampon fset |
Monter de cinq lignes dans le tampon fset. |
|
▼ |
- |
chat : tampon fset |
Descendre de cinq lignes dans le tampon fset. |
|
■ □ □ |
- |
chat : tampon fset |
Sélectionner la ligne dans le tampon fset. |
|
□ □ ■ |
- |
chat : tampon fset |
Basculer le booléen (on/off) ou éditer la valeur de l’option. |
|
□ □ ■ |
gauche |
chat : tampon fset |
Décrémenter la valeur de l’entier/couleur/énuméré, définir/ajouter à la valeur pour les autres types. |
|
□ □ ■ |
droit |
chat : tampon fset |
Incrémenter la valeur de l’entier/couleur/énuméré, définir/ajouter à la valeur pour les autres types. |
|
□ □ ■ |
haut / bas |
chat : tampon fset |
Marquer/démarquer de multiples options. |
|
▲ |
- |
chat : tampon /list |
Monter de cinq lignes dans le tampon /list. |
|
▼ |
- |
chat : tampon /list |
Descendre de cinq lignes dans le tampon /list. |
|
■ □ □ |
- |
chat : tampon /list |
Sélectionner la ligne dans le tampon /list. |
|
□ □ ■ |
- |
chat : tampon /list |
Rejoindre le canal IRC sur la ligne sélectionnée. |
|
▲ |
- |
chat : tampon script |
Monter de 5 lignes dans le tampon script. |
|
▼ |
- |
chat : tampon script |
Descendre de 5 lignes dans le tampon script. |
|
■ □ □ |
- |
chat : tampon script |
Sélectionner la ligne dans le tampon script. |
|
□ □ ■ |
- |
chat : tampon script |
Installer/supprimer un script. |
|
■ □ □ |
haut / gauche |
buflist |
Déplacer le tampon vers un numéro inférieur. |
Signal |
■ □ □ |
bas / droit |
buflist |
Déplacer le tampon vers un numéro supérieur. |
Signal |
■ □ □ |
- |
buflist |
Aller au tampon (tampon précédent dans la liste des tampons visités si le tampon est le courant). |
Signal |
□ □ ■ |
- |
buflist |
Aller au tampon suivant dans la liste des tampons visités si le tampon est le courant. |
Signal |
Ctrl+▲ |
- |
buflist |
Aller au tampon précédent. |
Signal |
Ctrl+▼ |
- |
buflist |
Aller au tampon suivant. |
Signal |
■ □ □ |
haut |
liste des pseudos |
Monter d’une page dans la liste des pseudos. |
|
■ □ □ |
bas |
liste des pseudos |
Descendre d’une page dans la liste des pseudos. |
|
■ □ □ |
haut (long) |
liste des pseudos |
Aller au début de la liste des pseudos. |
|
■ □ □ |
bas (long) |
liste des pseudos |
Aller à la fin de la liste des pseudos. |
|
■ □ □ |
- |
liste des pseudos |
Ouvrir une discussion avec le pseudo. |
|
□ □ ■ |
- |
liste des pseudos |
Effectuer un whois sur le pseudo. |
|
■ □ □ |
gauche |
liste des pseudos |
Retirer par la force le pseudo. |
|
■ □ □ |
gauche (long) |
liste des pseudos |
Retirer par la force et bannir le pseudo. |
|
□ □ ■ |
gauche |
liste des pseudos |
Bannir le pseudo. |
|
□ □ ■ |
- |
ligne de commande |
Capturer un évènement de la souris et insérer son code sur la ligne de commande. |
|
▲ |
- |
toute barre |
Faire défiler la barre de -20%. |
|
▼ |
- |
toute barre |
Faire défiler la barre de +20%. |
|
□ ■ □ |
- |
n’importe où |
Démarrer le mode curseur ("cursor") à ce point. |
|
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. |
|
|
↓ |
Descendre d’une ligne. |
|
|
PgUp |
Monter d’une page. |
|
|
PgDn |
Descendre d’une page. |
|
|
Alt+Home |
|
Aller à la première ligne. |
|
Alt+End |
|
Aller à la dernière ligne. |
|
F11 |
|
Faire défiler horizontalement vers la gauche. |
|
F12 |
|
Faire défiler horizontalement vers la droite. |
|
Alt+Space |
|
Basculer la valeur booléenne. |
|
Alt+- |
|
Soustraire 1 de la valeur de l’entier/couleur/énuméré, définir la valeur pour les autres types. |
|
Alt++ |
|
Ajouter 1 à la valeur de l’entier/couleur/énuméré, ajouter à la valeur pour les autres types. |
|
Alt+f, Alt+r |
|
Réinitialiser la valeur. |
|
Alt+f, Alt+u |
|
Supprimer/réinitialiser la valeur. |
|
Alt+Enter |
|
Définir la valeur. |
|
Alt+f, Alt+n |
|
Définir une nouvelle valeur. |
|
Alt+f, Alt+a |
|
Ajouter à la valeur. |
|
Alt+, |
|
Marquer/démarquer l’option. |
|
Shift+↑ |
Se déplacer d’une ligne vers le haut et marquer/démarquer l’option. |
|
|
Shift+↓ |
Marquer/démarquer l’option et se déplacer d’une ligne vers le bas. |
|
|
|
Marquer les options affichées qui correspondent au filtre "xxx" (tout filtre sur une option ou valeur est autorisé, voir la commande /fset). |
||
|
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 ( |
Rafraîchir les options et l’écran entier. |
|
|
|
Rafraîchir les options (garder les options marquées). |
||
|
Rafraîchir les options (démarquer toutes les options). |
||
Alt+p |
|
Activer/désactiver la description des options d’extensions ( |
|
Alt+v |
|
Activer/désactiver la barre d’aide. |
|
|
Trier les options par les champs x,y (voir l’option fset.look.sort). |
|
|
|
Réinitialiser le tri à sa valeur par défaut (voir l’option fset.look.sort). |
|
|
|
Exporter les options dans le fichier "xxx". |
|
|
|
Exporter les options dans le fichier "xxx" sans aide. |
|
|
|
Exporter les options dans le fichier "xxx" avec aide. |
|
|
Ctrl+x |
|
Basculer le format utilisé pour afficher les options. |
|
|
Fermer le tampon fset. |
|
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. |
|
|
↓ |
Descendre d’une ligne. |
|
|
PgUp |
Monter d’une page. |
|
|
PgDn |
Descendre d’une page. |
|
|
Alt+Home |
|
Aller à la première ligne. |
|
Alt+End |
|
Aller à la dernière ligne. |
|
F11 |
|
Faire défiler horizontalement vers la gauche. |
|
F12 |
|
Faire défiler horizontalement vers la droite. |
|
Ctrl+j |
|
Rejoindre le canal IRC sur la ligne sélectionnée. |
|
|
Afficher seulement les canaux avec "xxx" dans le nom ou le titre (insensible à la casse). |
||
|
Afficher seulement les canaux avec "xxx" dans le nom (insensible à la casse). |
||
|
Afficher seulement les canaux avec "xxx" dans le titre (insensible à la casse). |
||
|
Afficher seulement les canaux avec au moins "n" utilisateurs. |
||
|
Afficher seulement les canaux avec plus de "n" utilisateurs. |
||
|
Afficher seulement les canaux avec moins de "n" utilisateurs. |
||
|
Afficher seulement les canaux qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : name, name2, users, topic. |
||
|
Trier les canaux par les champs x,y (voir la commande /list). |
||
|
Réinitialiser le tri à sa valeur par défaut (voir la commande /list). |
||
|
Rafraîchir la liste (relancer la commande /list). |
||
|
Fermer le tampon. |
|
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. |
|
|
↓ |
Descendre d’une ligne. |
|
|
PgUp |
Monter d’une page. |
|
|
PgDn |
Descendre d’une page. |
|
|
Alt+i |
|
Installer le script. |
|
Alt+r |
|
Supprimer le script. |
|
Alt+l |
|
Charger le script. |
|
Alt+L |
|
Recharger le script. |
|
Alt+u |
|
Décharger le script. |
|
Alt+Shift+A |
|
Charger automatiquement le script. |
|
Alt+h |
|
Figer/défiger le script. |
|
Alt+v |
|
Voir le script. |
|
|
Trier les scripts par les champs x,y (voir l’option script.look.sort). |
||
|
Reset sort to its default value (voir l’option script.look.sort). |
||
|
Rafraîchir la liste. |
||
|
Fermer le tampon. |
|
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
: fast set WeeChat and plugins options
/fset -bar -refresh -up|-down [<number>] -left|-right [<percent>] -go <line>|end -toggle -add [<value>] -reset -unset -set -setnew -append -mark -format -export [-help|-nohelp] <filename> -import <filename> <filter> -bar: add the help bar -refresh: refresh list of options, then whole screen (command: /window refresh) -up: move the selected line up by "number" lines -down: move the selected line down by "number" lines -left: scroll the buffer by "percent" of width on the left -right: scroll the buffer by "percent" of width on the right -go: select a line by number, first line number is 0 ("end" to select the last line) -toggle: toggle the boolean value -add: add "value" (which can be a negative number) for integers, colors and enums, set/append to value for other types (set for a negative value, append for a positive value) -reset: reset the value of option -unset: unset the option -set: add the /set command in input to edit the value of option (move the cursor at the beginning of value) -setnew: add the /set command in input to edit a new value for the option -append: add the /set command to append something in the value of option (move the cursor at the end of value) -mark: toggle mark -format: switch to the next available format -export: export the options and values displayed to a file (each line has format: "/set name value" or "/unset name") -import: import the options from a file (all lines containing commands are executed) -help: force writing of help on options in exported file (see /help fset.look.export_help_default) -nohelp: do not write help on options in exported file (see /help fset.look.export_help_default) filter: set a new filter to see only matching options (this filter can be used as input in fset buffer as well); allowed formats are: `*`: show all options (no filter) `xxx`: show only options with "xxx" in name `f:xxx`: show only configuration file "xxx" `t:xxx`: show only type "xxx" (bool/int/str/col/enum or boolean/integer/string/color/enum) `d`: show only changed options `d:xxx`: show only changed options with "xxx" in name `d=xxx`: show only changed options with "xxx" in value `d==xxx`: show only changed options with exact value "xxx" `h=xxx`: show only options with "xxx" in description (translated) `he=xxx`: show only options with "xxx" in description (in English) `=xxx`: show only options with "xxx" in value `==xxx`: show only options with exact value "xxx" `c:xxx`: show only options matching the evaluated condition "xxx", using following variables: 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 The lines with options are displayed using string evaluation (see /help eval for the format), with these options: - fset.format.option1: first format for an option - fset.format.option2: second format for an option The following variables can be used in these options: - option data, with color and padded by spaces on the right: - ${file}: configuration file (for example "weechat" or "irc") - ${section}: section - ${option}: option name - ${name}: full option name (file.section.option) - ${parent_name}: parent option name - ${type}: option type (translated) - ${type_en}: option type (in English) - ${type_short}: short option type (bool/int/str/col/enum) - ${type_tiny}: tiny option type (b/i/s/c/e) - ${default_value}: option default value - ${default_value_undef}: "1" if default value is null, otherwise "0" - ${value}: option value - ${value_undef}: "1" if value is null, otherwise "0" - ${value_changed}: "1" if value is different from default value, otherwise "0" - ${value2}: option value, with inherited value if null - ${parent_value}: parent option value - ${min}: min value - ${max}: max value - ${description}: option description (translated) - ${description2}: option description (translated), "(no description)" (translated) if there's no description - ${description_en}: option description (in English) - ${description_en2}: option description (in English), "(no description)" if there's no description - ${string_values}: string values allowed for set of an enum option - ${allowed_values}: allowed values - ${marked}: "1" if option is marked, otherwise "0" - ${index}: index of option in list - option data, with color but no spaces: - same names prefixed by underscore, for example: ${_name}, ${_type}, ... - option data, raw format (no colors/spaces): - same names prefixed by two underscores, for example: ${__name}, ${__type}, ... - option data, only spaces: - same names prefixed with "empty_", for example: ${empty_name}, ${empty_type} - other data: - ${selected_line}: "1" if the line is selected, otherwise "0" - ${newline}: insert a new line at point, so the option is displayed on multiple lines For keys, input and mouse actions on the buffer, see key bindings in User's guide. Note: if input has one or more leading spaces, the following text is interpreted as a filter, without the spaces. For example " q" searches all options with "q" inside name while "q" closes the fset buffer. Examples: /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 |
---|---|---|
|
|
Couleurs. |
|
|
Formats utilisés pour afficher la liste des options. |
|
|
Aspect/présentation. |
Options :
-
-
description: color for allowed values
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
fset.color.allowed_values_selected
-
description: color for allowed values on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for color name when option fset.look.use_color_value is enabled
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
246
-
-
fset.color.color_name_selected
-
description: color for color name on the selected line when option fset.look.use_color_value is enabled
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for default value
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
fset.color.default_value_selected
-
description: color for default value on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for description
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
242
-
-
fset.color.description_selected
-
description: color for description on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for file
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for file if value is changed
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
fset.color.file_changed_selected
-
description: color for file if value is changed on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: color for file on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for default value in help bar
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for description in help bar
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for name in help bar
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for quotes around string values
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
darkgray
-
-
-
description: color for allowed values
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for index of option
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
-
description: color for index of option on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightcyan
-
-
-
description: background color for a marked line (used with the first format, see option fset.format.option1)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
17
-
-
-
description: background color for a marked line (used with the second format, see option fset.format.option2)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
17
-
-
-
description: background color for the selected line (used with the first format, see option fset.format.option1)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
24
-
-
-
description: background color for the selected line (used with the second format, see option fset.format.option2)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
24
-
-
-
description: color for mark indicator
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
-
description: color for mark indicator on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: color for max value
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for max value on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for min value
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for min value on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for name
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for name if value is changed
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
185
-
-
fset.color.name_changed_selected
-
description: color for name if value is changed on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: color for name on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for option
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for option if value is changed
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
fset.color.option_changed_selected
-
description: color for option if value is changed on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: color for option on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for name of parent option
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
fset.color.parent_name_selected
-
description: color for name of parent option on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for value of parent option
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
fset.color.parent_value_selected
-
description: color for value of parent option on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightcyan
-
-
-
description: color for quotes around string values
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
darkgray
-
-
-
description: color for quotes around string values which are changed
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
fset.color.quotes_changed_selected
-
description: color for quotes around string values which are changed on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for quotes around string values on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for section
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for section if value is changed
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
fset.color.section_changed_selected
-
description: color for section if value is changed on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: color for section on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for string values
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
fset.color.string_values_selected
-
description: color for string values on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
fset.color.title_count_options
-
description: color for the count of options found with the current filter in title of buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
fset.color.title_current_option
-
description: color for current option number in title of buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightcyan
-
-
-
description: color for filter in title of buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
fset.color.title_marked_options
-
description: color for number of marked options in title of buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightgreen
-
-
-
description: color for sort in title of buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for type
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
138
-
-
-
description: color for type on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
216
-
-
-
description: color for mark indicator when the option is not marked
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for mark indicator when the option is not marked on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for value
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
38
-
-
-
description: color for value changed (different from default)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
185
-
-
fset.color.value_changed_selected
-
description: color for value changed (different from default) on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: color for value on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
159
-
-
-
description: color for undefined value
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
magenta
-
-
fset.color.value_undef_selected
-
description: color for undefined value on the selected line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightmagenta
-
-
-
description: format of help line written before each option exported in a file (note: content is evaluated, see /help fset)
-
type: string
-
values: any string
-
default value:
"# ${description2}"
-
-
-
description: format of each option exported in a file (note: content is evaluated, see /help fset)
-
type: string
-
values: any string
-
default value:
"/set ${name} ${quoted_value}"
-
-
fset.format.export_option_null
-
description: format of each option with "null" value exported in a file (note: content is evaluated, see /help fset)
-
type: string
-
values: any string
-
default value:
"/unset ${name}"
-
-
-
description: first format of each line, used when option fset.look.format_number is set to 1 (note: content is evaluated, see /help fset); an empty string uses the default format ("${marked} ${name} ${type} ${value2}"), which is without evaluation of string and then much faster; formats can be switched with key ctrl-x
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: second format of each line, used when option fset.look.format_number is set to 2 (note: content is evaluated, see /help fset); an empty string uses the default format ("${marked} ${name} ${type} ${value2}"), which is without evaluation of string and then much faster; formats can be switched with key ctrl-x
-
type: string
-
values: any string
-
default value:
"${marked} ${name} ${type} ${value2}${newline} ${empty_name} ${_default_value}${color:244} -- ${_allowed_values}${newline} ${empty_name} ${_description}"
-
-
-
description: comma separated list of options to automatically refresh on the fset buffer (if opened); "*" means all options (recommended), a name beginning with "!" is a negative value to prevent an option to be refreshed, wildcard "*" is allowed in names (example: "*,!plugin.section.*")
-
type: string
-
values: any string
-
default value:
"*"
-
-
-
description: automatically unmark all options after an action on marked options or after a refresh
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: condition to catch /set command and display results in the fset buffer; following variables can be used: ${name} (name of option given for the /set command), ${count} (number of options found with the /set argument); an empty string disables the catch of /set command; with value "1", the fset buffer is always used with /set command
-
type: string
-
values: any string
-
default value:
"${count} >= 1"
-
-
-
description: write help for each option exported by default (this can be overridden with arguments "-help" and "-nohelp" for command /fset -export)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: number of format used to display options; this is dynamically changed by the key ctrl-x on the fset buffer
-
type: integer
-
values: 1 .. 2
-
default value:
1
-
-
-
description: string displayed when an option is marked (to do an action on multiple options)
-
type: string
-
values: any string
-
default value:
"*"
-
-
-
description: left/right scroll in fset buffer (percent of width)
-
type: integer
-
values: 1 .. 100
-
default value:
10
-
-
-
description: show the plugin description options (plugins.desc.*)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: comma-separated list of fields to sort options (see /help fset for a list of fields); char "-" can be used before field to reverse order, char "~" can be used to do a case-insensitive comparison; example: "-~name" for case-insensitive and reverse sort on option name
-
type: string
-
values: any string
-
default value:
"~name"
-
-
-
description: string displayed when an option is not marked
-
type: string
-
values: any string
-
default value:
" "
-
-
-
description: use the color to display value of color options
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: use keys alt+X in fset buffer to do actions on options; if disabled, only the input is allowed
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: use /mute command to set options
-
type: boolean
-
values: on, off
-
default value:
off
-
7.2. Couleurs
Couleurs de base
Les couleurs de base dans WeeChat sont :
Nom | Couleur |
---|---|
|
Couleur par défaut du terminal (transparent pour le fond) |
|
Noir |
|
Gris foncé |
|
Rouge foncé |
|
Rouge clair |
|
Vert foncé |
|
Vert clair |
|
Marron |
|
Jaune |
|
Bleu foncé |
|
Bleu clair |
|
Violet foncé |
|
Violet clair |
|
Cyan foncé |
|
Cyan clair |
|
Gris |
|
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
: change charset for current buffer
/charset decode|encode <charset> reset decode: change decoding charset encode: change encoding charset charset: new charset for current buffer reset: reset charsets for current buffer
Options
Sections dans le fichier charset.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Jeu de caractère d’encodage/décodage par défaut. |
|
|
Jeu de caractère d’encodage par tampon (les options peuvent être ajoutées/supprimées dans la section). |
|
|
Jeu de caractère de décodage par tampon (les options peuvent être ajoutées/supprimées dans la section). |
Options :
-
-
description: global decoding charset: charset used to decode incoming messages when they are not UTF-8 valid
-
type: string
-
values: any string
-
default value:
"iso-8859-1"
-
-
-
description: global encoding charset: charset used to encode outgoing messages (if empty, default is UTF-8 because it is the WeeChat internal charset)
-
type: string
-
values: any string
-
default value:
""
-
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 |
---|---|
|
(aucun) |
|
highlight + private |
|
highlight + private + message |
|
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*"
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
: logger plugin configuration
/logger list set <level> flush disable list: show logging status for opened buffers set: set logging level on current buffer level: level for messages to be logged (0 = logging disabled, 1 = a few messages (most important) .. 9 = all messages) flush: write all log files now disable: disable logging on current buffer (set level to 0) Options "logger.level.*" and "logger.mask.*" can be used to set level or mask for a buffer, or buffers beginning with name. Log levels used by IRC plugin: 1: user message (channel and private), notice (server and channel) 2: nick change 3: server message 4: join/part/quit 9: all other messages Examples: set level to 5 for current buffer: /logger set 5 disable logging for current buffer: /logger disable set level to 3 for all IRC buffers: /set logger.level.irc 3 disable logging for main WeeChat buffer: /set logger.level.core.weechat 0 use a directory per IRC server and a file per channel inside: /set logger.mask.irc "$server/$channel.weechatlog"
Options
Sections dans le fichier logger.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
|
|
Couleurs. |
|
|
Options pour les fichiers de log. |
|
|
Niveau de log par tampon (les options peuvent être ajoutées/supprimées dans la section). |
|
|
Masque de nom de fichier par tampon (les options peuvent être ajoutées/supprimées dans la section). |
Options :
-
-
description: color for line ending the backlog
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
246
-
-
-
description: color for backlog lines, used only if the option logger.file.color_lines is off
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
246
-
-
-
description: automatically save content of buffers to files (unless a buffer disables log); if disabled, logging is disabled on all buffers
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: use ANSI color codes in lines written in log files and display backlog lines with these colors
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: number of seconds between flush of log files (0 = write in log files immediately for each line printed)
-
type: integer
-
values: 0 .. 3600
-
default value:
120
-
-
-
description: use fsync to synchronize the log file with the storage device after the flush (see man fsync); this is slower but should prevent any data loss in case of power failure during the save of log file
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: write information line in log file when log starts or ends for a buffer
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: conditions to save content of buffers to files (note: content is evaluated, see /help eval); empty value saves content on all buffers; for example to log only private buffers: "${type} == private"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: default file name mask for log files (format is "directory/to/file" or "file", without first "/" because "path" option is used to build complete path to file); local buffer variables are permitted (you should use only variables that are defined on all buffers, so for example you should NOT use $server nor $channel); date specifiers are permitted (see man strftime)
-
type: string
-
values: any string
-
default value:
"$plugin.$name.weechatlog"
-
-
-
description: use only lower case for log filenames
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: text to write before nick in prefix of message, example: "<"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: text to write after nick in prefix of message, example: ">"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: path for WeeChat log files; date specifiers are permitted (see man strftime) (path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
"${weechat_data_dir}/logs"
-
-
-
description: replacement char for special chars in filename built with mask (like directory delimiter)
-
type: string
-
values: any string
-
default value:
"_"
-
-
logger.file.rotation_compression_level
-
description: compression level for rotated log files (with extension ".1", ".2", etc.), if option logger.file.rotation_compression_type is enabled: 1 = low compression / fast ... 100 = best compression / slow; the value is a percentage converted to 1-9 for gzip and 1-19 for zstd; the default value is recommended, it offers a good compromise between compression and speed
-
type: integer
-
values: 1 .. 100
-
default value:
20
-
-
logger.file.rotation_compression_type
-
description: compression type for rotated log files; if set to "none", rotated log files are not compressed; WARNING: if rotation was enabled with another type of compression (or no compression), you must first unload the logger plugin, compress files with the new type (or decompress files), then change the option in logger.conf, then load the logger plugin
-
type: enum
-
values: none, gzip, zstd
-
default value:
none
-
-
-
description: when this size is reached, a rotation of log files is performed: the existing rotated log files are renamed (.1 becomes .2, .2 becomes .3, etc.) and the current file is renamed with extension .1; an integer number with a suffix is allowed: b = bytes (default if no unit given), k = kilobytes, m = megabytes, g = gigabytes, t = terabytes; example: "2g" causes a rotation if the file size is > 2,000,000,000 bytes; if set to "0", no rotation is performed (unlimited log size); WARNING: before changing this option, you should first set the compression type via option logger.file.rotation_compression_type
-
type: string
-
values: any string
-
default value:
"0"
-
-
-
description: timestamp used in log files (see man strftime for date/time specifiers, extra specifiers are supported, see function util_strftimeval in Plugin API reference)
-
type: string
-
values: any string
-
default value:
"%Y-%m-%d %H:%M:%S"
-
-
-
description: maximum number of lines to display from log file when creating new buffer (0 = no backlog)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
20
-
-
logger.look.backlog_conditions
-
description: conditions to display the backlog (note: content is evaluated, see /help eval); empty value displays the backlog on all buffers; for example to display backlog on private buffers only: "${type} == private"
-
type: string
-
values: any string
-
default value:
""
-
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 |
---|---|
|
Touche Alt |
|
Touche Ctrl |
|
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 |
---|---|
|
Clic sur le bouton gauche |
|
Clic sur le bouton droit |
|
Clic sur le bouton du milieu (souvent clic sur la roulette) |
|
Clic sur un bouton additionnel |
|
Roulette (haut) |
|
Roulette (bas) |
Liste des gestes (seulement pour les boutons, pas la roulette) :
Geste | Distance |
---|---|
|
3 … 19 |
|
≥ 20 |
|
3 … 19 |
|
≥ 20 |
|
3 … 39 |
|
≥ 40 |
|
3 … 39 |
|
≥ 40 |
Liste des évènements incomplets (seulement pour les boutons, pratique pour les extensions/scripts) :
Évènement | Description |
---|---|
|
Le bouton a été pressé mais pas encore relâché |
|
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
: spell plugin configuration
/spell enable|disable|toggle listdict setdict -|<dict>[,<dict>...] deldict addword [<dict>] <word> enable: enable spell checker disable: disable spell checker toggle: toggle spell checker listdict: show installed dictionaries setdict: set dictionary for current buffer (multiple dictionaries can be separated by a comma, the special value "-" disables spell checking on current buffer) deldict: delete dictionary used on current buffer addword: add a word in personal dictionary Input line beginning with a "/" is not checked, except for some commands (see /set spell.check.commands). To enable spell checker on all buffers, use option "default_dict", then enable spell checker, for example: /set spell.check.default_dict "en" /spell enable To display a list of suggestions in a bar, use item "spell_suggest". Default key to toggle spell checker is alt-s.
Options
Sections dans le fichier spell.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Couleurs. |
|
|
Options pour contrôler la vérification orthographique. |
|
|
Dictionnaires utilisés par tampon (les options peuvent être ajoutées/supprimées dans la section). |
|
|
Aspect/présentation. |
|
|
Options du vérificateur d’orthographe (les options peuvent être ajoutées/supprimées dans la section). |
Options :
-
-
description: comma separated list of commands for which spell checking is enabled (spell checking is disabled for all other commands)
-
type: string
-
values: any string
-
default value:
"away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"
-
-
-
description: default dictionary (or comma separated list of dictionaries) to use when buffer has no dictionary defined (leave blank to disable spell checker on buffers for which you didn't explicitly enabled it)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: check words during text search in buffer
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: enable spell checker for command line
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: real-time spell checking of words (slower, disabled by default: words are checked only if there's delimiter after)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: number of suggestions to display in bar item "spell_suggest" for each dictionary set in buffer (-1 = disable suggestions, 0 = display all possible suggestions in all languages)
-
type: integer
-
values: -1 .. 2147483647
-
default value:
-1
-
-
-
description: minimum length for a word to be spell checked (use 0 to check all words)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
2
-
-
-
description: text color for misspelled words (input bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightred
-
-
-
description: text color for suggestion on a misspelled word in bar item "spell_suggest"
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
spell.color.suggestion_delimiter_dict
-
description: text color for delimiters displayed between two dictionaries in bar item "spell_suggest"
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
spell.color.suggestion_delimiter_word
-
description: text color for delimiters displayed between two words in bar item "spell_suggest"
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
spell.look.suggestion_delimiter_dict
-
description: delimiter displayed between two dictionaries in bar item "spell_suggest"
-
type: string
-
values: any string
-
default value:
" / "
-
-
spell.look.suggestion_delimiter_word
-
description: delimiter displayed between two words in bar item "spell_suggest"
-
type: string
-
values: any string
-
default value:
","
-
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.option
où
nom
et le nom de la barre et option
l’option pour cette barre.
Liste des options de barre :
Option | Valeurs | Description |
---|---|---|
|
|
Une barre avec le type |
|
|
Position de la barre : au dessus/en dessous de la discussion, sur la gauche/droite. |
|
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. |
|
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 |
|
entier ≥ 0 |
La taille maximum pour la barre, |
|
couleur |
La couleur par défaut du fond de la barre. |
|
couleur |
La couleur par défaut du texte dans la barre. |
|
couleur |
La couleur des délimiteurs dans la barre. |
|
|
Lorsque l’option est |
|
|
Lorsque l’option est |
|
chaîne |
Une liste d’objets (voir objets pour plus d’infos). |
|
|
Type de remplissage pour la barre lorsqu’elle a une position |
|
|
Type de remplissage pour la barre lorsqu’elle a une position |
|
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 |
---|---|
|
Affiché seulement dans les barres de type "window" |
|
Affiché dans tous les tampons avec "number" = 1 |
|
Affiché dans tous les tampons IRC |
|
Affiché dans tous les tampons où la variable locale |
|
Affiché dans tous les tampons où la variable locale |
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 :
-
Dériver une clé de la phrase secrète (avec du salage en option).
-
Calculer la somme de contrôle des données à chiffrer.
-
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"
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 | Command | Completion |
---|---|---|
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
%(buffers_plugins_names) |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
|
|
- |
Commandes
-
alias
: list, add or remove command aliases
/alias list [<name>] add|addreplace <name> [<command>[;<command>...]] addcompletion|addreplacecompletion <completion> <name> [<command>[;<command>...]] del <name>|<mask>... rename <name> <new_name> missing list: list aliases (without argument, this list is displayed) add: add an alias addreplace: add or replace an existing alias addcompletion: add an alias with a custom completion addreplacecompletion: add or replace an existing alias with a custom completion name: name of alias completion: completion for alias: by default completion is done with target command (you can use "%%command" to use the completion of an existing command) command: command name with arguments (many commands can be separated by semicolons) del: delete aliases mask: name where wildcard "*" is allowed rename: rename an alias missing: add missing aliases (using default aliases) In command, special variables are replaced: $n: argument "n" (between 1 and 9) $-m: arguments from 1 to "m" $n-: arguments from "n" to last $n-m: arguments from "n" to "m" $*: all arguments $&: all arguments, with " replaced by \" $~: last argument $var: where "var" is a local variable of buffer (see /buffer listvar), examples: $nick, $channel, $server, $plugin, $name Examples: /alias add split /window splith /alias add hello /allchan -exclude=#weechat hello /alias rename hello Hello /alias addcompletion %%sajoin forcejoin /quote forcejoin
7.12. Commandes et options
Commandes WeeChat
-
allbuf
: execute a command on all buffers
/allbuf <command> command: command to execute (or text to send to buffer if command does not start with "/") Example: set read marker on all buffers: /allbuf /buffer set unread
-
away
: set or remove away status
/away [-all] [<message>] -all: set or remove away status on all connected servers message: message for away (if no message is given, away status is removed)
-
bar
: manage bars
/bar list|listfull|listitems add|addreplace <name> <type>[,<conditions>] <position> <size> <separator> <item1>[,<item2>...] default [input|title|status|nicklist] rename <name> <new_name> del <name>|<mask>... set <name> <option> <value> hide|show|toggle <name> scroll <name> <window> <scroll_value> list: list all bars listfull: list all bars (verbose) listitems: list all bar items add: add a new bar addreplace: add or replace an existing bar name: name of bar (must be unique) type: type of bar: root: outside windows window: inside windows, with optional conditions (see below) conditions: the conditions to display the bar (without conditions, the bar is always displayed): active: on active window inactive: on inactive windows nicklist: on windows with nicklist other condition: see /help weechat.bar.xxx.conditions and /help eval position: bottom, top, left or right size: size of bar (in chars) separator: 1 for using separator (line), 0 or nothing means no separator item1,...: items for this bar (items can be separated by comma (space between items) or "+" (glued items)) default: create a default bar (all default bars if no bar name is given) rename: rename a bar del: delete bars mask: name where wildcard "*" is allowed set: set a value for a bar property option: option to change (for options list, look at /set weechat.bar.<barname>.*) value: new value for option hide: hide a bar show: show an hidden bar toggle: hide/show a bar scroll: scroll bar window: window number ("*" for current window or for root bars) scroll_value: value for scroll: "x" or "y" (optional), followed by "+", "-", "b" (beginning) or "e" (end), value (for +/-), and optional "%" (to scroll by % of width/height, otherwise value is number of chars) Examples: create a bar with time, buffer number + name, and completion: /bar add mybar root bottom 1 0 [time],buffer_number+:+buffer_name,completion scroll nicklist 10 lines down on current buffer: /bar scroll nicklist * y+10 scroll to end of nicklist on current buffer: /bar scroll nicklist * ye
-
buffer
: manage buffers
/buffer list add [-free] [-switch] <name> clear [<id>|<number>|<name>|-merged|-all [<id>|<number>|<name>...]] move <number>|-|+ swap <id1>|<number1>|<name1> [<id2>|<number2>|<name2>] cycle <id>|<number>|<name>... merge <id>|<number>|<name> unmerge [<number>|-all] hide [<id>|<number>|<name>|-all [<id>|<number>|<name>...]] unhide [<id>|<number>|<name>|-all [<id>|<number>|<name>...]] switch [-previous] zoom renumber [<number1> [<number2> [<start>]]] close [<n1>[-<n2>]|<name>...] notify [<level>] listvar [<id>|<number>|<name>] setvar <name> [<value>] delvar <name> set <property> [<value>] setauto <property> [<value>] get <property> jump smart|last_displayed|prev_visited|next_visited <id>|<number>|-|+|<name> list: list buffers (without argument, this list is displayed) add: add a new buffer (it can be closed with "/buffer close" or input "q") clear: clear buffer content (number for a buffer, "-merged" for merged buffers, "-all" for all buffers, or nothing for current buffer) move: move buffer in the list (may be relative, for example -1); "-" = move to first buffer number, "+" = move to last buffer number + 1 swap: swap two buffers (swap with current buffer if only one number/name given) cycle: jump loop between a list of buffers merge: merge current buffer to another buffer (chat area will be mix of both buffers); by default ctrl-x switches between merged buffers unmerge: unmerge buffer from other buffers which have same number hide: hide the buffer unhide: unhide the buffer switch: switch to next merged buffer (or to previous buffer with "-previous") zoom: zoom on merged buffer renumber: renumber buffers (works only if option weechat.look.buffer_auto_renumber is off) close: close buffer (number/range or name is optional) notify: display or set notify level for current buffer: this level determines whether buffer will be added to hotlist or not: none: never highlight: for highlights only message: for messages from users + highlights all: for all messages reset: reset to default value (all) listvar: display local variables in a buffer setvar: set a local variable in the current buffer delvar: delete a local variable from the current buffer set: set a property in the current buffer setauto: like "set" and also define option "weechat.buffer.<name>.<property>" so that the property is saved in configuration and applied each time this buffer is opened get: display a property of current buffer jump: jump to another buffer: smart: next buffer with activity last_displayed: last buffer displayed (before last jump to a buffer) prev_visited: previously visited buffer next_visited: jump to next visited buffer id: jump to buffer by id number: jump to buffer by number, possible prefix: "+": relative jump, add number to current "-": relative jump, sub number to current "*": jump to number, using option "weechat.look.jump_current_to_previous_buffer" -: jump to first buffer number +: jump to last buffer number name: jump to buffer by (partial) name; if the name starts with "(?i)", the search is case-insensitive (for example "(?i)upper" will find buffer "irc.libera.#UPPERCASE") Examples: /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
: define color aliases and display palette of colors
/color alias <color> <name> unalias <color> reset term2rgb <color> rgb2term <rgb> [<limit>] -o alias: add an alias for a color unalias: delete an alias color: color number (greater than or equal to 0, max depends on terminal, commonly 63 or 255) name: alias name for color (for example: "orange") reset: reset all color pairs (required when no more color pairs are available if automatic reset is disabled, see option "weechat.look.color_pairs_auto_reset") term2rgb: convert a terminal color (0-255) to RGB color rgb2term: convert a RGB color to terminal color (0-255) limit: number of colors to use in terminal table (starting from 0); default is 256 -o: send terminal/colors info to current buffer as input Without argument, this command displays colors in a new buffer. Examples: /color alias 214 orange /color unalias 214
-
command
: launch explicit WeeChat or plugin command
/command [-buffer <name>] <plugin> <command> -s <command>[;<command>...] -buffer: execute the command on this buffer plugin: execute the command from this plugin; "core" for a WeeChat command, "*" for automatic plugin (it depends on the buffer where the command is executed) command: command to execute (a "/" is automatically added if not found at beginning of command) -s: execute one or multiple commands separated by semicolons (the semicolon can be escaped with "\;")
-
cursor
: free movement of cursor on screen to execute actions on specific areas of screen
/cursor go chat|<bar> [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: move cursor to chat area, a bar (using bar name) or coordinates "x,y" move: move cursor with direction stop: stop cursor mode Without argument, this command toggles cursor mode. When mouse is enabled (see /help mouse), by default a middle click will start cursor mode at this point. See chapter on key bindings in User's guide for a list of keys that can be used in cursor mode. Examples: /cursor go chat bottom_left /cursor go nicklist /cursor go 10,5
-
debug
: debug functions
/debug list set <plugin> <level> dump [<plugin>] hooks [<plugin_mask> [<hook_type>...]] buffer|certs|color|dirs|infolists|key|libs|memory|tags|term|url|windows callbacks <duration>[<unit>] mouse|cursor [verbose] hdata [free] time <command> unicode <string> whitespace list: list plugins with debug levels set: set debug level for plugin plugin: name of plugin ("core" for WeeChat core) level: debug level for plugin (0 = disable debug) dump: save memory dump in WeeChat log file (same dump is written when WeeChat crashes) hooks: display infos about hooks (with a plugin: display detailed info about hooks created by the plugin) plugin_mask: plugin mask, "*" for all plugins hook_type: hook type buffer: dump buffer content with hexadecimal values in WeeChat log file callbacks: write hook and bar item callbacks that took more than "duration" in the WeeChat log file (0 = disable), where optional unit is one of: us: microseconds (default) ms: milliseconds s: seconds m: minutes h: hours certs: display number of loaded trusted certificate authorities color: display infos about current color pairs cursor: toggle debug for cursor mode dirs: display directories hdata: display infos about hdata (with free: remove all hdata in memory) infolists: display infos about infolists key: enable keyboard and mouse debug: display raw codes, expanded key name and associated command ("q" to quit this mode) libs: display infos about external libraries used memory: display infos about memory usage mouse: toggle debug for mouse tags: display tags for lines term: display infos about terminal url: toggle debug for calls to hook_url (display output hashtable) windows: display windows tree time: measure time to execute a command or to send text to the current buffer unicode: display information about string and unicode chars (evaluated, see /help eval) whitespace: toggle whitespace mode: make spaces and tabulations visible in buffers and bars (see options weechat.look.whitespace_char and weechat.look.tab_whitespace_char) Examples: /debug set irc 1 /debug mouse verbose /debug time /filter toggle /debug hooks * process connect url /debug unicode ${chars:${\u26C0}-${\u26CF}}
-
eval
: evaluate expression
/eval [-n|-s] [-d] <expression> [-n] [-d [-d]] -c <expression1> <operator> <expression2> -n: display result without sending it to buffer (debug mode) -s: split expression before evaluating it (many commands can be separated by semicolons) -d: display debug output after evaluation (with two -d: more verbose debug) -c: evaluate as condition: use operators and parentheses, return a boolean value ("0" or "1") expression: expression to evaluate, variables with format ${variable} are replaced (see below) operator: a logical or comparison operator (see below) An expression is considered as "true" if it is not NULL, not empty, and different from "0". The comparison is made using floating point numbers if the two expressions are valid numbers, with one of the following formats: integer (examples: 5, -7), floating point number (examples: 5.2, -7.5, 2.83e-2), hexadecimal number (examples: 0xA3, -0xA3). To force a string comparison, you can add double quotes around each expression, for example: 50 > 100 == 0 and "50" > "100" == 1 Some variables are replaced in expression, using the format ${variable}, which can be, by order of priority: - ${raw_hl:string}: the string itself without evaluation but with syntax highlighting - ${raw:string}: the string itself without evaluation - ${hl:string}: the string with syntax highlighting - ${name}: the user-defined variable - ${weechat_config_dir}: WeeChat config directory - ${weechat_data_dir}: WeeChat data directory - ${weechat_state_dir}: WeeChat state directory - ${weechat_cache_dir}: WeeChat cache directory - ${weechat_runtime_dir}: WeeChat runtime directory - ${eval:string}: the evaluated string - ${eval_cond:string}: the evaluated condition - ${esc:string} or ${\string}: the string with escaped chars - ${chars:range}: the string with a range of chars, "range" is one of: "digit", "xdigit", "lower", "upper", "alpha", "alnum" or "c1-c2" ("c1" and "c2" are code points with c1 ≤ c2) - ${lower:string}: the string converted to lower case - ${upper:string}: the string converted to upper case - ${hide:char,string}: the string with hidden chars - ${cut:max,suffix,string}: the string with max chars (excluding the suffix) - ${cut:+max,suffix,string}: the string with max chars (including the suffix) - ${cutscr:max,suffix,string}: the string with max chars displayed on screen (excluding the suffix) - ${cutscr:+max,suffix,string}: the string with max chars displayed on screen (including the suffix) - ${rev:string}: the reversed string - ${revscr:string}: the reversed string for display (color codes are not reversed) - ${repeat:count,string}: the repeated string - ${length:string}: the length of the string (number of UTF-8 chars) - ${lengthscr:string}: the length of the string on screen (sum of the width of each UTF-8 char displayed on screen, colors codes are ignored) - ${split:N,separators,flags,string}: Nth item of the split string (N is an integer ≥ 1 or ≤ -1, if negative, counts from the last item) - ${split:random,separators,flags,string}: random item of the split string - ${split:count,separators,flags,string}: number of items of the split string - ${split_shell:N,string}: Nth item of the split shell arguments (N is an integer ≥ 1 or ≤ -1, if negative, counts from the last item) - ${split_shell:random,string}: random item of the split shell arguments - ${split_shell:count,string}: number of items of the split shell arguments - ${color:name}: the color (see "Plugin API reference", function "color") - ${modifier:name,data,string}: the modifier - ${info:name,arguments}: the info (arguments are optional) - ${base_encode:base,string}: the string encoded to base: 16, 32, 64 or 64url - ${base_decode:base,string}: the string decoded from base: 16, 32, 64 or 64url - ${date} or ${date:format}: current date/time - ${env:NAME}: the environment variable - ${if:condition?value_if_true:value_if_false}: the result of ternary operator - ${calc:expression}: the result of the expression with parentheses and operators (+, -, *, /, //, %, **) - ${random:min,max}: a random integer number between "min" and "max" (inclusive) - ${translate:string}: the translated string - ${define:name,value}: declaration of a user variable (return an empty string) - ${hdata_count:name[list]}: number of items in this hdata with list - ${hdata_count:name[ptr]}: number of items in this hdata with pointer - ${sec.data.xxx}: the value of the secured data "xxx" - ${file.section.option}: the value of the config option - ${name}: the local variable in buffer - the hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer. Format for hdata can be one of following: - ${hdata.var1.var2...}: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed) - ${hdata[list].var1.var2...}: start with a hdata using a list/pointer/pointer name, for example: - ${buffer[gui_buffers].full_name}: full name of first buffer in linked list of buffers - ${plugin[weechat_plugins].name}: name of first plugin in linked list of plugins - ${hdata[pointer].var1.var2...}: start with a hdata using a pointer, for example: - ${buffer[0x1234abcd].full_name}: full name of the buffer with this pointer (can be used in triggers) - ${buffer[my_pointer].full_name}: full name of the buffer with this pointer name (can be used in triggers) - ${hdata[pointer].var1.method()}: when var1 is a hashtable, methods can be called: "keys()", "values()", "keys_sorted()", "keys_values()" and "keys_values_sorted()" For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get". Logical operators (by order of priority): && boolean "and" || boolean "or" Comparison operators (by order of priority): =~ is matching POSIX extended regex !~ is NOT matching POSIX extended regex ==* is matching mask, case-sensitive (wildcard "*" is allowed) !!* is NOT matching mask, case-sensitive (wildcard "*" is allowed) =* is matching mask, case-insensitive (wildcard "*" is allowed) !* is NOT matching mask, case-insensitive (wildcard "*" is allowed) ==- is included, case-sensitive !!- is NOT included, case-sensitive =- is included, case-insensitive !- is NOT included, case-insensitive == equal != not equal <= less or equal < less >= greater or equal > greater Examples (simple strings): /eval -n ${raw:${info:version}} ==> ${info:version} /eval -n ${eval_cond:${window.win_width}>100} ==> 1 /eval -n ${info:version} ==> 4.6.1 /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 Examples (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
: filter messages in buffers, to hide/show them according to tags or regex
/filter list enable|disable|toggle [<name>|<mask>|@...] add|addreplace <name> <buffer>[,<buffer>...] <tags> <regex> rename <name> <new_name> recreate <name> del <name>|<mask>... list: list all filters enable: enable filters (filters are enabled by default) disable: disable filters toggle: toggle filters mask: name where wildcard "*" is allowed ("@" = enable/disable all filters in current buffer) add: add a filter addreplace: add or replace an existing filter name: filter name rename: rename a filter recreate: set input with the command used to edit the filter del: delete filters buffer: comma separated list of buffers where filter is active: - this is full name including plugin (example: "irc.libera.#weechat" or "irc.server.libera") - "*" means all buffers - a name starting with "!" is excluded - wildcard "*" is allowed tags: comma separated list of tags (for example "irc_join,irc_part,irc_quit"): - logical "and": "+" between tags (for example: "nick_toto+irc_action") - wildcard "*" is allowed - if tag starts with "!", then it is excluded and must NOT be in message regex: POSIX extended regular expression to search in line: - use "\t" to separate prefix from message, special chars like "|" must be escaped: "\|" - if regex starts with "!", then matching result is reversed (use "\!" to start with "!") - two regular expressions are created: one for prefix and one for message - regex are case-insensitive, they can start by "(?-i)" to become case-sensitive The default key alt+"=" toggles filtering on/off globally and alt+"-" toggles filtering on/off in the current buffer. Tags most commonly used: no_filter, no_highlight, no_log, log0..log9 (log level), notify_none, notify_message, notify_private, notify_highlight, self_msg, nick_xxx (xxx is nick in message), prefix_nick_ccc (ccc is color of nick), host_xxx (xxx is username + host in message), irc_xxx (xxx is command name or number, see /server raw or /debug tags), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info. To see tags for lines in buffers: /debug tags Examples: use IRC smart filter on all buffers: /filter add irc_smart * irc_smart_filter * use IRC smart filter on all buffers except those with "#weechat" in name: /filter add irc_smart *,!*#weechat* irc_smart_filter * filter all IRC join/part/quit messages: /filter add joinquit * irc_join,irc_part,irc_quit * filter nicks displayed when joining channels or with /names: /filter add nicks * irc_366 * filter nick "toto" on IRC channel #weechat: /filter add toto irc.libera.#weechat nick_toto * filter IRC join/action messages from nick "toto": /filter add toto * nick_toto+irc_join,nick_toto+irc_action * filter lines containing "weechat sucks" on IRC channel #weechat: /filter add sucks irc.libera.#weechat * weechat sucks filter lines that are strictly equal to "WeeChat sucks" on all buffers: /filter add sucks2 * * (?-i)^WeeChat sucks$
-
help
: display help about commands and options
/help -list|-listfull [<plugin>...]] <command> <option> -list: list commands, by plugin (without argument, this list is displayed) -listfull: list commands with description, by plugin plugin: list commands for this plugin command: a command name option: an option name (use /set to see list)
-
history
: show buffer command history
/history clear <value> clear: clear history value: number of history entries to show
-
hotlist
: manage hotlist
/hotlist add [low|message|private|highlight] clear [<level>] remove restore [-all] add: add current buffer in hotlist (default level: "low", conditions defined in option weechat.look.hotlist_add_conditions are NOT checked) clear: clear hotlist level: "lowest" to clear only lowest level in hotlist, highest" to clear only highest level in hotlist, or level mask: integer which is a combination of 1=join/part, 2=message, 4=private, 8=highlight remove: remove current buffer from hotlist restore: restore latest hotlist removed in the current buffer (or all buffers with "-all")
-
input
: functions for command line
/input <action> [<arguments>] action: the action, one of: return: simulate key "enter" split_return: split input on newlines then simulate key "enter" for each line complete_next: complete word with next completion complete_previous: complete word with previous completion search_text_here: search text in buffer at current position search_text: search text in buffer search_history: search text in command line history search_switch_case: switch exact case for search search_switch_regex: switch search type: string/regular expression search_switch_where: switch search in messages/prefixes search_previous: search previous line search_next: search next line search_stop_here: stop search at current position search_stop: stop search delete_previous_char: delete previous char delete_next_char: delete next char delete_previous_word: delete previous word delete_previous_word_whitespace: delete previous word (until whitespace) delete_next_word: delete next word delete_beginning_of_line: delete from beginning of line until cursor delete_beginning_of_input: delete from beginning of input until cursor delete_end_of_line: delete from cursor until end of line delete_end_of_input: delete from cursor until end of input delete_line: delete current line delete_input: delete entire input clipboard_paste: paste from the internal clipboard transpose_chars: transpose two chars undo: undo last command line action redo: redo last command line action move_beginning_of_line: move cursor to beginning of line move_beginning_of_input: move cursor to beginning of input move_end_of_line: move cursor to end of line move_end_of_input: move cursor to end of input move_previous_char: move cursor to previous char move_next_char: move cursor to next char move_previous_word: move cursor to previous word move_next_word: move cursor to next word move_previous_line: move cursor to previous line move_next_line: move cursor to next line history_previous: recall previous command in current buffer history history_next: recall next command in current buffer history history_global_previous: recall previous command in global history history_global_next: recall next command in global history history_use_get_next: send the current history entry (found with search or recalled with "up"key) and insert the next history entry in the command line without sending it grab_key: grab a key (optional argument: delay for end of grab, default is 500 milliseconds) grab_key_command: grab a key with its associated command (optional argument: delay for end of grab, default is 500 milliseconds) grab_mouse: grab mouse event code grab_mouse_area: grab mouse event code with area insert: insert text in command line (escaped chars are allowed, see /help print) send: send text to the buffer arguments: optional arguments for the action This command is used by key bindings or plugins.
-
item
: manage custom bar items
/item list add|addreplace <name> "<conditions>" "<content>" rename <name> <new_name> refresh <name>|<mask>... recreate <name> del <name>|<mask>... list: list all custom bar items add: add a custom bar item addreplace: add or replace an existing custom bar item name: custom bar item name mask: name where wildcard "*" is allowed conditions: evaluated conditions to display the bar item (for example to display the bar item only in specific buffers) content: content (evaluated, see /help eval) rename: rename a custom bar item refresh: update content of item in all bars where the item is displayed; any item can be refreshed: default/plugin/custom bar items recreate: set input with the command used to edit the custom bar item del: delete custom bar items Examples: add item with terminal size, displayed only in buffers with number = 1: /item add terminfo "${buffer.number} == 1" "term:${info:term_width}x${info:term_height}" add item with buffer info: /item add bufinfo "" "${buffer.number}:${buffer.name}${if:${buffer.zoomed}?(Z)}" add item with date/time using format "Dec 25, 12:34 +0100", refreshed every minute: /item add datetime "" "${date:%b %d, %H:%M %z}" /trigger add datetime_refresh timer "60000;60" "" "" "/item refresh datetime" add item with number of lines in buffer (displayed/total), refreshed each time a new line is displayed or if filtered lines have changed: /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" force refresh of item "lines_count": /item refresh lines_count recreate item "lines_count" with different conditions or content: /item recreate lines_count delete item "lines_count": /item del lines_count
-
key
: bind/unbind keys
/key [list|listdefault|listdiff] [<context>] bind <key> [<command> [<args>]] bindctxt <context> <key> [<command> [<args>]] unbind <key> unbindctxt <context> <key> reset <key> resetctxt <context> <key> resetall -yes [<context>] missing [<context>] legacy <key>... list: list all current keys listdefault: list default keys listdiff: list differences between current and default keys (keys added, redefined or deleted) context: name of context ("default" or "search") bind: bind a command to a key or display command bound to key (for context "default") bindctxt: bind a command to a key or display command bound to key, for given context command: command (many commands can be separated by semicolons); quotes can be used to preserve spaces at the beginning/end of command unbind: remove a key binding (for context "default") unbindctxt: remove a key binding for given context reset: reset a key to default binding (for context "default") resetctxt: reset a key to default binding, for given context resetall: restore bindings to the default values and delete ALL personal bindings (use carefully!) missing: add missing keys (using default bindings), useful after installing new WeeChat version legacy: display new name for legacy keys When binding a command to a key, it is recommended to use key alt+k (or Esc then k), and then press the key to bind: this will insert key name in command line. For some keys you might need to use /debug key, this displays the raw key code that can be used (for example the key ctrl+backspace could be "ctrl-h" or "ctrl-?", depending on your terminal and other settings). Modifiers allowed (in this order when multiple are used): "meta-": alt key "ctrl-": control key "shift-": shift key, can only be used with key names below Key names allowed: f0 to f20, home, insert, delete, end, backspace, pgup, pgdn, up, down, right, left, tab, return, comma, space. Combo of keys must be separated by a comma. For context "mouse" (possible in context "cursor" too), key has format: "@area:key" or "@area1>area2:key" where area can be: *: any area on screen chat: chat area (any buffer) chat(xxx): chat area for buffer with name "xxx" (full name including plugin) bar(*): any bar bar(xxx): bar "xxx" item(*): any bar item item(xxx): bar item "xxx" Wildcard "*" is allowed in key to match many mouse events. A special value for command with format "hsignal:name" can be used for context mouse, this will send the hsignal "name" with the focus hashtable as argument. Another special value "-" can be used to disable key (it will be ignored when looking for keys). Examples: /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
: manage buffers/windows layouts
/layout store [<name>] [buffers|windows] apply [<name>] [buffers|windows] leave del [<name>] [buffers|windows] rename <name> <new_name> store: store current buffers/windows in a layout apply: apply stored layout leave: leave current layout (does not update any layout) del: delete buffers and/or windows in a stored layout (if neither "buffers" nor "windows" is given after the name, the layout is deleted) rename: rename a layout name: name for stored layout (default is "default") buffers: store/apply only buffers (order of buffers) windows: store/apply only windows (buffer displayed by each window) Without argument, this command displays stored layouts. The current layout can be saved on /quit command with the option "weechat.look.save_layout_on_exit". Note: the layout only remembers windows split and buffers numbers. It does not open buffers. That means for example you must still auto-join IRC channels to open the buffers, the saved layout only applies once the buffers are opened.
-
mouse
: mouse control
/mouse enable|disable|toggle [<delay>] enable: enable mouse disable: disable mouse toggle: toggle mouse delay: delay (in seconds) after which initial mouse state is restored (useful to temporarily disable mouse) The mouse state is saved in option "weechat.look.mouse". Examples: /mouse enable /mouse toggle 5
-
mute
: execute a command silently
/mute [-core|-current|-buffer <name>] <command> -core: no output on WeeChat core buffer -current: no output on current buffer -buffer: no output on specified buffer name: full buffer name (examples: "irc.server.libera", "irc.libera.#weechat") command: command to execute silently (a "/" is automatically added if not found at beginning of command) If no target is specified ("-core", "-current" or "-buffer"), then default is to mute all buffers. Examples: /mute save /mute -current msg * hi! /mute -buffer irc.libera.#weechat msg #weechat hi!
-
pipe
: redirect command output to a buffer, a file or a hsignal
/pipe [-buffer <name>|-file <filename>|-hsignal <name>] [-color strip|keep|ansi] [-concat <separator>] [-strip <chars>] [-skipempty] [-c] [-o] [-g] [-nl] <command> -buffer: display command output on this buffer name: full buffer name (examples: "core.weechat", "irc.server.libera", "irc.libera.#weechat") -file: write command output in this file -hsignal: send command output as hsignal; keys: "command", "output" (lines separated by separator) and "tags" (tags of each line separated by newline) -color: convert colors -o: send command output to the buffer as input; colors are stripped and commands are NOT executed (used only with -buffer) -concat: concatenate all lines displayed using a separator; chars can be escaped (example: \x20 for space) -strip: strip chars from lines (beginning/end); chars can be escaped (example: \x20 for space) -skipempty: skip empty lines when lines are concatenated -c: alias for "-concat \x20 -strip \x20 -skipempty" -nl: display messages in English during the command execution (do not use the current locale) command: command to execute (a "/" is automatically added if not found at beginning of command) If no target is specified ("-buffer", "-file" or "-hsignal"), then the command output is sent on the current buffer. Note: for commands that display messages in an asynchronous way (like /exec and many IRC commands), the output will not be caught by this command. For example "/pipe /whois nick" will NOT redirect the answer from IRC server to the current buffer. Examples: write info about external libraries in a file: /pipe -file /tmp/libs.txt /debug libs send output of "/debug libs" as a single line on current channel: /pipe -o -c /debug libs display info about all buffers on current buffer: /pipe /allbuf /eval /print ${buffer.full_name} -> ${buffer.number}. ${buffer.short_name} (${buffer}) send list of filters on current channel, in English: /pipe -o -nl /filter
-
plugin
: list/load/unload plugins
/plugin list [-o|-ol|-i|-il|<name>] listfull [<name>] load <filename> [<arguments>] autoload [<arguments>] reload [<name>|* [<arguments>]] unload [<name>] list: list loaded plugins -o: send list of loaded plugins to buffer (string in English) -ol: send list of loaded plugins to buffer (translated string) -i: copy list of loaded plugins in command line (for sending to buffer) (string in English) -il: copy list of loaded plugins in command line (for sending to buffer) (translated string) name: a plugin name listfull: list loaded plugins (verbose) load: load a plugin filename: plugin (file) to load arguments: arguments given to plugin on load autoload: autoload plugins in system or user directory reload: reload a plugin (if no name given, unload all plugins, then autoload plugins) unload: unload a plugin (if no name given, unload all plugins) Without argument, this command lists loaded plugins.
-
print
: display text on a buffer
/print [-buffer <id>|<number>|<name>] [-newbuffer <name>] [-free] [-switch] [-core|-current] [-y <line>] [-escape] [-date <date>] [-tags <tags>] [-action|-error|-join|-network|-quit] [<text>] -stdout|-stderr [<text>] -beep -buffer: display text in this buffer (default: buffer where command is executed) -newbuffer: create a new buffer and display text in this buffer -free: create a buffer with free content (with -newbuffer only) -switch: switch to the buffer -core: alias of "-buffer core.weechat" -current: display text on current buffer -y: display on a custom line (for buffer with free content only) line: line number for buffer with free content (first line is 0, a negative number displays after last line: -1 = after last line, -2 = two lines after last line, etc.) -escape: interpret escaped chars (for example \a, \07, \x07) -date: message date, format can be: -n: "n" seconds before now +n: "n" seconds in the future n: "n" seconds since the Epoch (see man time) date and/or time (ISO 8601): see function "util_parse_time" in Plugin API reference (examples: "11:29:09", "2023-12-25T10:29:09.456789Z") -tags: comma-separated list of tags (see /help filter for a list of tags most commonly used) text: text to display (prefix and message must be separated by "\t", if text starts with "-", then add a "\" before) -stdout: display text on stdout (escaped chars are interpreted) -stderr: display text on stderr (escaped chars are interpreted) -beep: alias of "-stderr \a" The options -action ... -quit use the prefix defined in options "weechat.look.prefix_*". Following escaped chars are supported: \" \\ \a \b \e \f \n \r \t \v \0ooo \xhh \uhhhh \Uhhhhhhhh Examples: display a reminder on core buffer with a highlight: /print -core -tags notify_highlight Reminder: buy milk display an error on core buffer: /print -core -error Some error here display message on core buffer with prefix "abc": /print -core abc\tThe message display a message on channel #weechat: /print -buffer irc.libera.#weechat Message on #weechat display a snowman (U+2603): /print -escape \u2603 send alert (BEL): /print -beep
-
proxy
: manage proxies
/proxy list add|addreplace <name> <type> <address> <port> [<username> [<password>]] del <name>|<mask>... set <name> <option> <value> list: list all proxies add: add a new proxy addreplace: add or replace an existing proxy name: name of proxy (must be unique) type: http, socks4 or socks5 address: IP or hostname port: port number username: username (optional) password: password (optional) del: delete proxies mask: name where wildcard "*" is allowed set: set a value for a proxy property option: option to change (for options list, look at /set weechat.proxy.<proxyname>.*) value: new value for option Examples: add a http proxy, running on local host, port 8888: /proxy add local http 127.0.0.1 8888 add a http proxy using IPv6 protocol only: /proxy add local http ::1 8888 /proxy set local ipv6 force add a socks5 proxy with username/password: /proxy add myproxy socks5 sample.host.org 3128 myuser mypass delete a proxy: /proxy del myproxy
-
quit
: quit WeeChat
/quit [-yes] [<arguments>] -yes: required if option "weechat.look.confirm_quit" is enabled arguments: text sent with signal "quit" (for example irc plugin uses this text to send quit message to server) By default when quitting the configuration files are saved (see option "weechat.look.save_config_on_exit") and the current layout can be saved (see option "weechat.look.save_layout_on_exit").
-
reload
: reload configuration files from disk
/reload [<file>...] file: configuration file to reload (without extension ".conf") Without argument, all files (WeeChat and plugins) are reloaded.
-
repeat
: execute a command several times
/repeat [-interval <delay>[<unit>]] <count> <command> delay: delay between execution of commands (minimum: 1 millisecond) unit: optional, values are: us: microseconds ms: milliseconds s: seconds (default) m: minutes h: hours count: number of times to execute command command: command to execute (or text to send to buffer if command does not start with "/"), evaluated and the following variables are set each time the command is executed: ${buffer}: buffer pointer ${repeat_count}: number of times the command is executed ${repeat_index}: current index (from 1 to "count") ${repeat_index0}: current index (from 0 to "count" - 1) ${repeat_revindex}: current index from the end (from "count" to 1) ${repeat_revindex0}: current index from the end (from "count" - 1 to 0) ${repeat_first}: "1" for the first execution, "0" for the others ${repeat_last}: "1" for the last execution, "0" for the others Note: the command is executed on buffer where /repeat was executed (if the buffer does not exist anymore, the command is not executed). Examples: scroll 2 pages up: /repeat 2 /window page_up print a countdown, starting at 5: /repeat -interval 1 6 /print ${if:${repeat_last}?Boom!:${repeat_revindex0}}
-
reset
: reset config options
/reset <option> -mask <option> option: name of an option -mask: use a mask in option (wildcard "*" is allowed to mass-reset options, use carefully!) Examples: /reset weechat.look.item_time_format /reset -mask weechat.color.*
-
save
: save configuration files to disk
/save [<file>...] file: configuration file to save (without extension ".conf") Without argument, all files (WeeChat and plugins) are saved. By default all configuration files are saved to disk on /quit command (see option "weechat.look.save_config_on_exit").
-
secure
: manage secured data (passwords or private data encrypted in file sec.conf)
/secure passphrase <passphrase>|-delete decrypt <passphrase>|-discard set <name> <value> del <name> passphrase: change the passphrase (without passphrase, data is stored as plain text in file sec.conf) -delete: delete passphrase decrypt: decrypt data still encrypted (it happens only if passphrase was not given on startup) -discard: discard all data still encrypted set: add or change secured data del: delete secured data Without argument, this command displays secured data in a new buffer. Keys on secure buffer: alt+v toggle values When a passphrase is used (data encrypted), it is asked by WeeChat on startup. It is possible to set environment variable "WEECHAT_PASSPHRASE" to prevent the prompt (this same variable is used by WeeChat on /upgrade), or to set option sec.crypt.passphrase_command to read the passphrase from the output of an external command like a password manager (see /help sec.crypt.passphrase_command). Secured data with format ${sec.data.xxx} can be used in: - command /eval - command line argument "--run-command" - options weechat.startup.command_{before|after}_plugins - other options that may contain a password or sensitive data (for example proxy, irc server and relay); see /help on the options to check if they are evaluated. Examples: set a passphrase: /secure passphrase this is my passphrase use program "pass" to read the passphrase on startup: /set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase" encrypt libera SASL password: /secure set libera mypassword /set irc.server.libera.sasl_password "${sec.data.libera}" encrypt oftc password for nickserv: /secure set oftc mypassword /set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}" alias to ghost the nick "mynick": /alias add ghost /eval /msg -server libera nickserv ghost mynick ${sec.data.libera}
-
set
: set config options and environment variables
/set [<option> [<value>]] diff [<option>...] env [<variable> [<value>]] option: name of an option (wildcard "*" is allowed to list options, if no value is specified) value: new value for option, according to type: boolean: on, off or toggle integer: number, ++number or --number string: any string ("" for empty string) color: color name, ++number or --number diff: display only changed options env: display or set an environment variable ("" to unset a variable) Note: the value "null" (without quotes) can be used to remove option value (undefined value). This works only for some special plugin variables. Examples: /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
: system actions
/sys get rlimit|rusage malloc_trim [<size>] suspend waitpid <number> get: display system info rlimit: display resource limits (see /help weechat.startup.sys_rlimit and "man getrlimit") rusage: display resource usage (see "man getrusage") malloc_trim: call function malloc_trim to release free memory from the heap size: amount of free space to leave untrimmed at the top of the heap (default is 0: only the minimum amount of memory is maintained at the top of the heap) suspend: suspend WeeChat and go back to the shell, by sending signal SIGTSTP to the WeeChat process waitpid: acknowledge the end of children processes (to prevent "zombie" processes) number: number of processes to clean
-
toggle
: toggle value of a config option
/toggle <option> [<value>...] option: name of an option value: possible values for the option (values are split like the shell command arguments: quotes can be used to preserve spaces at the beginning/end of values) Behavior: - only an option of type boolean or string can be toggled without a value: - boolean: toggle between on/off according to current value - string: toggle between empty string and default value (works only if empty string is allowed for the option) - with a single value given, toggle between this value and the default value of option - with multiple values given, toggle between these values: the value used is the one following the current value of option; if the current value of option is not in list, the first value in the list is used - the special value "null" can be given, but only as first value in the list and without quotes around. Examples: toggle display of time in chat area (without displaying the new value used): /mute /toggle weechat.look.buffer_time_format switch format of time in chat area (with seconds, without seconds, disabled): /toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" "" toggle autojoin of #weechat channel on libera server: /toggle irc.server.libera.autojoin null #weechat
-
unset
: unset/reset config options
/unset <option> -mask <option> option: name of an option -mask: use a mask in option (wildcard "*" is allowed to mass-reset options, use carefully!) According to option, it's reset (for standard options) or removed (for optional settings, like server values). Examples: /unset weechat.look.item_time_format /unset -mask weechat.color.*
-
upgrade
: save WeeChat session and reload the WeeChat binary without disconnecting from servers
/upgrade [-yes] [<path_to_binary>|-save|-quit] -o|-ol -yes: required if option "weechat.look.confirm_upgrade" is enabled path_to_binary: path to WeeChat binary (default is current binary) -dummy: do nothing (option used to prevent accidental completion with "-quit") -save: only save the session, neither quit nor reload WeeChat; the configuration files are not saved (if needed you can use /save before this command) -quit: close *ALL* connections, save session and quit WeeChat, which makes possible a delayed restoration (see below) -o: send number of upgrades and date of first/last start to current buffer as input (English string) -ol: send number of upgrades and date of first/last start to current buffer as input (translated string) This command upgrades and reloads a running WeeChat session. The new WeeChat binary must have been compiled or installed with a package manager before running this command. Note: TLS connections are lost during upgrade (except with -save), because the reload of TLS sessions is currently not possible with GnuTLS. There is automatic reconnection after upgrade. Important: use of option "-save" can be dangerous, it is recommended to use only /upgrade (or with "-quit") for a standard upgrade and a restart; the option "-save" can be used to save the session regularly and restore it in case of after abnormal exit (power outage, crash, etc.). Upgrade process has 4 steps: 1. save session into files for core and plugins (buffers, history, ..) 2. unload all plugins (configuration files (*.conf) are written on disk) 3. save WeeChat configuration (weechat.conf) 4. execute new WeeChat binary and reload session. With option "-quit", the process is: 1. close *ALL* connections (irc, xfer, relay, ...) 2. save session into files (*.upgrade) 3. unload all plugins 4. save WeeChat configuration 5. quit WeeChat With option "-save", the process is: 1. save session into files (*.upgrade) with a disconnected state for IRC servers and Relay clients (but no disconnection is made) With -quit or -save, you can restore the session later with this command: weechat --upgrade IMPORTANT: you must restore the session with exactly same configuration (files *.conf) and if possible the same WeeChat version (or a more recent one). It is possible to restore WeeChat session on another machine if you copy the content of WeeChat home directories (see /debug dirs).
-
uptime
: show WeeChat uptime
/uptime [-o|-ol] -o: send uptime to current buffer as input (English string) -ol: send uptime to current buffer as input (translated string)
-
version
: show WeeChat version and compilation date
/version [-o|-ol] [-v] -o: send version to current buffer as input (English string) -ol: send version to current buffer as input (translated string) -v: verbose mode: display information about upgrades of WeeChat with /upgrade The default alias /v can be used to execute this command on all buffers (otherwise the irc command /version is used on irc buffers).
-
wait
: schedule a command execution in future
/wait <number>[<unit>] <command> number: amount of time to wait (minimum: 1 millisecond) unit: optional, values are: us: microseconds ms: milliseconds s: seconds (default) m: minutes h: hours command: command to execute (or text to send to buffer if command does not start with "/") Note: the command is executed on buffer where /wait was executed (if the buffer does not exist anymore, the command is not executed). Examples: join channel #test in 10 seconds: /wait 10 /join #test set away in 15 minutes: /wait 15m /away -all I'm away say "hello" in 2 minutes: /wait 2m hello
-
window
: manage windows
/window list -1|+1|b#|up|down|left|right [-window <number>] <number> splith|splitv [-window <number>] [<pct>] resize [-window <number>] [h|v][+|-]<pct> balance merge [-window <number>] [all] close [-window <number>] page_up|page_down [-window <number>] refresh scroll [-window <number>] [+|-]<value>[s|m|h|d|M|y] scroll_horiz [-window <number>] [+|-]<value>[%] scroll_up|scroll_down|scroll_top|scroll_bottom|scroll_beyond_end|scroll_previous_highlight|scroll_next_highlight|scroll_unread [-window <number>] swap [-window <number>] [up|down|left|right] zoom [-window <number>] bare [<delay>] list: list opened windows (without argument, this list is displayed) -1: jump to previous window +1: jump to next window b#: jump to next window displaying buffer number # up: switch to window above current one down: switch to window below current one left: switch to window on the left right: switch to window on the right number: window number (see /window list) splith: split current window horizontally (to undo: /window merge) splitv: split current window vertically (to undo: /window merge) resize: resize window size, new size is <pct> percentage of parent window; if "h" or "v" is specified, the resize affects the nearest parent window with a split of this type (horizontal/vertical) balance: balance the sizes of all windows merge: merge window with another (all = keep only one window) close: close window page_up: scroll one page up page_down: scroll one page down refresh: refresh screen scroll: scroll a number of lines (+/-N) or with time: s=seconds, m=minutes, h=hours, d=days, M=months, y=years scroll_horiz: scroll horizontally a number of columns (+/-N) or percentage of window size (this scrolling is possible only on buffers with free content) scroll_up: scroll a few lines up scroll_down: scroll a few lines down scroll_top: scroll to top of buffer scroll_bottom: scroll to bottom of buffer scroll_beyond_end: scroll beyond the end of buffer scroll_previous_highlight: scroll to previous highlight scroll_next_highlight: scroll to next highlight scroll_unread: scroll to unread marker swap: swap buffers of two windows (with optional direction for target window) zoom: zoom on window bare: toggle bare display (with optional delay in seconds for automatic return to standard display mode) For splith and splitv, pct is a percentage which represents size of new window, computed with current window as size reference. For example 25 means create a new window with size = current_size / 4 Examples: /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 |
---|---|---|
|
|
Options pour le chiffrement. |
|
Données sécurisées. |
Options :
-
-
description: cipher used to crypt data (the number after algorithm is the size of the key in bits)
-
type: enum
-
values: aes128, aes192, aes256
-
default value:
aes256
-
-
-
description: hash algorithm used to check the decrypted data; some of them require a specific libgcrypt version: sha3-*: libgcrypt >= 1.7.0, blake2*: libgcrypt >= 1.8.0, sha512-*: libgcrypt >= 1.9.4
-
type: enum
-
values: 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
-
default value:
sha256
-
-
-
description: read the passphrase from the output of this system command (only the first line is used and it must not contain any extra character); this option is used only when reading file sec.conf and if the environment variable "WEECHAT_PASSPHRASE" is not set (the environment variable has higher priority); example with password-store: "/usr/bin/pass show weechat/passphrase"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: use salt when generating key used in encryption (recommended for maximum security); when enabled, the content of crypted data in file sec.conf will be different on each write of the file; if you put the file sec.conf in a version control system, then you can turn off this option to have always same content in file
-
type: boolean
-
values: on, off
-
default value:
on
-
Options WeeChat
Sections dans le fichier weechat.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Niveau de debug, pour le cœur et les extensions (les options peuvent être ajoutées/supprimées dans la section). |
|
|
Options de démarrage. |
|
|
Aspect/présentation. |
|
|
Alias de couleurs (les options peuvent être ajoutées/supprimées dans la section). |
|
|
Couleurs. |
|
|
Options de complétion. |
|
|
Options d’historique (commandes et tampons). |
|
|
Options des proxies. |
|
|
Options réseau/TLS. |
|
|
Options sur les extensions. |
|
|
Options sur les signaux. |
|
|
Options des barres. |
|
Dispositions. |
|
|
Propriétés appliquées automatiquement sur les tampons lorsqu’ils sont ouverts. |
|
|
Niveaux de notification des tampons (les options peuvent être ajoutées/supprimées dans la section). |
|
|
Filtres. |
|
|
Touches pour le contexte "default". |
|
|
Touches pour le contexte "search". |
|
|
Touches pour le contexte "cursor". |
|
|
Touches pour le contexte "mouse". |
Options :
-
-
description: text color for "+" when scrolling bars
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightmagenta
-
-
-
description: text color for chat
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: background color for chat
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: text color for buffer names
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: text color for channel names
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: text color for message displayed when the day has changed
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
-
description: text color for delimiters
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
22
-
-
-
description: text color for highlighted prefix
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
weechat.color.chat_highlight_bg
-
description: background color for highlighted prefix
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
124
-
-
-
description: text color for hostnames
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
weechat.color.chat_inactive_buffer
-
description: text color for chat when line is inactive (buffer is merged with other buffers and is not selected)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
weechat.color.chat_inactive_window
-
description: text color for chat when window is inactive (not current selected window)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
240
-
-
-
description: text color for nicks in chat window: used in some server messages and as fallback when a nick color is not found; most of times nick color comes from option weechat.color.chat_nick_colors
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightcyan
-
-
weechat.color.chat_nick_colors
-
description: text color for nicks (comma separated list of colors, background is allowed with format: "fg:bg", for example: "lightred:blue")
-
type: string
-
values: any string
-
default value:
"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: text color for offline nick (not in nicklist anymore); this color is used only if option weechat.look.color_nick_offline is enabled
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
242
-
-
weechat.color.chat_nick_offline_highlight
-
description: text color for offline nick with highlight; this color is used only if option weechat.look.color_nick_offline is enabled
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
weechat.color.chat_nick_offline_highlight_bg
-
description: background color for offline nick with highlight; this color is used only if option weechat.look.color_nick_offline is enabled
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
17
-
-
-
description: text color for other nick in private buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
weechat.color.chat_nick_prefix
-
description: color for nick prefix (string displayed before nick in prefix)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
-
description: text color for local nick in chat window
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
weechat.color.chat_nick_suffix
-
description: color for nick suffix (string displayed after nick in prefix)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
weechat.color.chat_prefix_action
-
description: text color for action prefix
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
weechat.color.chat_prefix_buffer
-
description: text color for buffer name (before prefix, when many buffers are merged with same number)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
180
-
-
weechat.color.chat_prefix_buffer_inactive_buffer
-
description: text color for inactive buffer name (before prefix, when many buffers are merged with same number and if buffer is not selected)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
weechat.color.chat_prefix_error
-
description: text color for error prefix
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
weechat.color.chat_prefix_join
-
description: text color for join prefix
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightgreen
-
-
weechat.color.chat_prefix_more
-
description: text color for "+" when prefix is too long
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightmagenta
-
-
weechat.color.chat_prefix_network
-
description: text color for network prefix
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
magenta
-
-
weechat.color.chat_prefix_quit
-
description: text color for quit prefix
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightred
-
-
weechat.color.chat_prefix_suffix
-
description: text color for suffix (after prefix)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
24
-
-
weechat.color.chat_read_marker
-
description: text color for unread data marker
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
magenta
-
-
weechat.color.chat_read_marker_bg
-
description: background color for unread data marker
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: text color for server names
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
weechat.color.chat_status_disabled
-
description: text color for "disabled" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
red
-
-
weechat.color.chat_status_enabled
-
description: text color for "enabled" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
-
description: text color for tags after messages (displayed with command /debug tags)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
red
-
-
-
description: text color for marker on lines where text sought is found
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
weechat.color.chat_text_found_bg
-
description: background color for marker on lines where text sought is found
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightmagenta
-
-
-
description: text color for time in chat window
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
weechat.color.chat_time_delimiters
-
description: text color for time delimiters
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
-
description: text color for values
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
-
description: text color for null values (undefined)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
blue
-
-
-
description: text color for emphasized text (for example when searching text); this option is used only if option weechat.look.emphasized_attributes is an empty string (default value)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: background color for emphasized text (for example when searching text); used only if option weechat.look.emphasized_attributes is an empty string (default value)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
54
-
-
weechat.color.eval_syntax_colors
-
description: text color for syntax highlighting in evaluated strings, with "${raw_hl:...}" and "${hl:...}" (comma separated list of colors, background is allowed with format: "fg:bg", for example: "lightred:blue")
-
type: string
-
values: any string
-
default value:
"green,lightred,lightblue,lightmagenta,yellow,cyan"
-
-
-
description: text color for actions in input line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightgreen
-
-
weechat.color.input_text_not_found
-
description: text color for unsuccessful text search in input line
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
red
-
-
-
description: text color for away item
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: text color for away nicknames
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
240
-
-
-
description: text color for groups in nicklist
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
-
description: color for window separators (when split) and separators beside bars (like nicklist)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
236
-
-
weechat.color.status_count_highlight
-
description: text color for count of highlight messages in hotlist (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
magenta
-
-
weechat.color.status_count_msg
-
description: text color for count of messages in hotlist (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
weechat.color.status_count_other
-
description: text color for count of other messages in hotlist (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
weechat.color.status_count_private
-
description: text color for count of private messages in hotlist (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
weechat.color.status_data_highlight
-
description: text color for buffer with highlight (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightmagenta
-
-
-
description: text color for buffer with new messages (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
weechat.color.status_data_other
-
description: text color for buffer with new data (not messages) (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
weechat.color.status_data_private
-
description: text color for buffer with private message (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightgreen
-
-
-
description: text color for filter indicator in status bar
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
-
description: text color for buffer modes in status bar
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: text color for buffer with new data (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: text color for mouse indicator in status bar
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightgreen
-
-
-
description: text color for current buffer name in status bar
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
weechat.color.status_name_insecure
-
description: text color for current buffer name in status bar, if data are exchanged and not secured with a protocol like TLS
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightmagenta
-
-
-
description: text color for current buffer name in status bar, if data are exchanged and secured with a protocol like TLS
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
weechat.color.status_nicklist_count
-
description: text color for number of nicks in nicklist (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: text color for current buffer number in status bar
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: text color for time (status bar)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
weechat.completion.base_word_until_cursor
-
description: if enabled, the base word to complete ends at char before cursor; otherwise the base word ends at first space after cursor
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.completion.case_sensitive
-
description: if enabled, the completion is case-sensitive by default
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.completion.command_inline
-
description: if enabled, the commands inside command line are completed (the command at beginning of line has higher priority and is used first); note: when this option is enabled, there is no more automatic completion of paths beginning with "/" (outside commands arguments)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.completion.default_template
-
description: default completion template (please see documentation for template codes and values: plugin API reference, function "weechat_hook_command")
-
type: string
-
values: any string
-
default value:
"%(nicks)|%(irc_channels)"
-
-
weechat.completion.nick_add_space
-
description: add space after nick completion (when nick is not first word on command line)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.completion.nick_case_sensitive
-
description: case-sensitive completion for nicks
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.completion.nick_completer
-
description: string inserted after nick completion (when nick is first word on command line)
-
type: string
-
values: any string
-
default value:
": "
-
-
weechat.completion.nick_first_only
-
description: complete only with first nick found
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.completion.nick_ignore_chars
-
description: chars ignored for nick completion
-
type: string
-
values: any string
-
default value:
"[]`_-^"
-
-
weechat.completion.nick_ignore_words
-
description: comma-separated list of nicks to ignore (not completed); the whole nick must be set in this option even if chars are ignored in completion with option weechat.completion.nick_ignore_chars; look up for nicks is with exact case then lower case, so it's possible to use only lower case for nicks in this option
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.completion.partial_completion_alert
-
description: send alert (BEL) when a partial completion occurs
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.completion.partial_completion_command
-
description: partially complete command names (stop when many commands found begin with same letters)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.completion.partial_completion_command_arg
-
description: partially complete command arguments (stop when many arguments found begin with same prefix)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.completion.partial_completion_count
-
description: display count for each partial completion in bar item
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.completion.partial_completion_other
-
description: partially complete outside commands (stop when many words found begin with same letters)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.completion.partial_completion_templates
-
description: comma-separated list of templates for which partial completion is enabled by default (with Tab key instead of shift-Tab); the list of templates is in documentation: plugin API reference, function "weechat_hook_command"
-
type: string
-
values: any string
-
default value:
"config_options"
-
-
weechat.history.display_default
-
description: maximum number of commands to display by default in history listing (0 = unlimited)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
5
-
-
weechat.history.max_buffer_lines_minutes
-
description: maximum number of minutes in history per buffer (0 = unlimited); examples: 1440 = one day, 10080 = one week, 43200 = one month, 525600 = one year; use 0 ONLY if option weechat.history.max_buffer_lines_number is NOT set to 0
-
type: integer
-
values: 0 .. 2147483647
-
default value:
0
-
-
weechat.history.max_buffer_lines_number
-
description: maximum number of lines in history per buffer (0 = unlimited); use 0 ONLY if option weechat.history.max_buffer_lines_minutes is NOT set to 0
-
type: integer
-
values: 0 .. 2147483647
-
default value:
4096
-
-
-
description: maximum number of user commands in history (0 = unlimited, NOT RECOMMENDED: no limit in memory usage)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
100
-
-
weechat.history.max_visited_buffers
-
description: maximum number of visited buffers to keep in memory
-
type: integer
-
values: 0 .. 1000
-
default value:
50
-
-
-
description: "backspace" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_previous_char"
-
-
-
description: "ctrl-_" (default)
-
type: string
-
values: any string
-
default value:
"/input undo"
-
-
-
description: "ctrl-a" (default)
-
type: string
-
values: any string
-
default value:
"/input move_beginning_of_line"
-
-
-
description: "ctrl-b" (default)
-
type: string
-
values: any string
-
default value:
"/input move_previous_char"
-
-
-
description: "ctrl-c,_" (default)
-
type: string
-
values: any string
-
default value:
"/input insert \x1F"
-
-
-
description: "ctrl-c,b" (default)
-
type: string
-
values: any string
-
default value:
"/input insert \x02"
-
-
-
description: "ctrl-c,c" (default)
-
type: string
-
values: any string
-
default value:
"/input insert \x03"
-
-
-
description: "ctrl-c,d" (default)
-
type: string
-
values: any string
-
default value:
"/input insert \x04"
-
-
-
description: "ctrl-c,i" (default)
-
type: string
-
values: any string
-
default value:
"/input insert \x1D"
-
-
-
description: "ctrl-c,o" (default)
-
type: string
-
values: any string
-
default value:
"/input insert \x0F"
-
-
-
description: "ctrl-c,v" (default)
-
type: string
-
values: any string
-
default value:
"/input insert \x16"
-
-
-
description: "ctrl-d" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_next_char"
-
-
-
description: "ctrl-down" (default)
-
type: string
-
values: any string
-
default value:
"/input history_global_next"
-
-
-
description: "ctrl-e" (default)
-
type: string
-
values: any string
-
default value:
"/input move_end_of_line"
-
-
-
description: "ctrl-f" (default)
-
type: string
-
values: any string
-
default value:
"/input move_next_char"
-
-
-
description: "ctrl-f1" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll buflist * -100%"
-
-
-
description: "ctrl-f11" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist * -100%"
-
-
-
description: "ctrl-f12" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist * +100%"
-
-
-
description: "ctrl-f2" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll buflist * +100%"
-
-
-
description: "ctrl-k" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_end_of_line"
-
-
-
description: "ctrl-l" (default)
-
type: string
-
values: any string
-
default value:
"/window refresh"
-
-
-
description: "ctrl-left" (default)
-
type: string
-
values: any string
-
default value:
"/input move_previous_word"
-
-
-
description: "ctrl-n" (default)
-
type: string
-
values: any string
-
default value:
"/buffer +1"
-
-
-
description: "ctrl-o" (default)
-
type: string
-
values: any string
-
default value:
"/input history_use_get_next"
-
-
-
description: "ctrl-p" (default)
-
type: string
-
values: any string
-
default value:
"/buffer -1"
-
-
-
description: "ctrl-r" (default)
-
type: string
-
values: any string
-
default value:
"/input search_history"
-
-
-
description: "ctrl-right" (default)
-
type: string
-
values: any string
-
default value:
"/input move_next_word"
-
-
-
description: "ctrl-s" (default)
-
type: string
-
values: any string
-
default value:
"/input search_text_here"
-
-
-
description: "ctrl-t" (default)
-
type: string
-
values: any string
-
default value:
"/input transpose_chars"
-
-
-
description: "ctrl-u" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_beginning_of_line"
-
-
-
description: "ctrl-up" (default)
-
type: string
-
values: any string
-
default value:
"/input history_global_previous"
-
-
-
description: "ctrl-w" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_previous_word_whitespace"
-
-
-
description: "ctrl-x" (default)
-
type: string
-
values: any string
-
default value:
"/buffer switch"
-
-
-
description: "ctrl-y" (default)
-
type: string
-
values: any string
-
default value:
"/input clipboard_paste"
-
-
-
description: "ctrl-z" (default)
-
type: string
-
values: any string
-
default value:
"/sys suspend"
-
-
-
description: "delete" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_next_char"
-
-
-
description: "down" (default)
-
type: string
-
values: any string
-
default value:
"/input history_next"
-
-
-
description: "end" (default)
-
type: string
-
values: any string
-
default value:
"/input move_end_of_line"
-
-
-
description: "f1" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll buflist * -100%"
-
-
-
description: "f10" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll title * +30%"
-
-
-
description: "f11" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist * -100%"
-
-
-
description: "f12" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist * +100%"
-
-
-
description: "f2" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll buflist * +100%"
-
-
-
description: "f5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer -1"
-
-
-
description: "f6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer +1"
-
-
-
description: "f7" (default)
-
type: string
-
values: any string
-
default value:
"/window -1"
-
-
-
description: "f8" (default)
-
type: string
-
values: any string
-
default value:
"/window +1"
-
-
-
description: "f9" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll title * -30%"
-
-
-
description: "home" (default)
-
type: string
-
values: any string
-
default value:
"/input move_beginning_of_line"
-
-
-
description: "left" (default)
-
type: string
-
values: any string
-
default value:
"/input move_previous_char"
-
-
-
description: "meta--" (default)
-
type: string
-
values: any string
-
default value:
"/filter toggle @"
-
-
[[option_weechat.key.meta-/]] weechat.key.meta-/
-
description: "meta-/" (default)
-
type: string
-
values: any string
-
default value:
"/buffer jump last_displayed"
-
-
-
description: "meta-0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *10"
-
-
-
description: "meta-1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *1"
-
-
-
description: "meta-2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *2"
-
-
-
description: "meta-3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *3"
-
-
-
description: "meta-4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *4"
-
-
-
description: "meta-5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *5"
-
-
-
description: "meta-6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *6"
-
-
-
description: "meta-7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *7"
-
-
-
description: "meta-8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *8"
-
-
-
description: "meta-9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *9"
-
-
[[option_weechat.key.meta-<]] weechat.key.meta-<
-
description: "meta-<" (default)
-
type: string
-
values: any string
-
default value:
"/buffer jump prev_visited"
-
-
[[option_weechat.key.meta-=]] weechat.key.meta-=
-
description: "meta-=" (default)
-
type: string
-
values: any string
-
default value:
"/filter toggle"
-
-
[[option_weechat.key.meta→]] weechat.key.meta->
-
description: "meta->" (default)
-
type: string
-
values: any string
-
default value:
"/buffer jump next_visited"
-
-
-
description: "meta-B" (default)
-
type: string
-
values: any string
-
default value:
"/buflist toggle"
-
-
-
description: "meta-N" (default)
-
type: string
-
values: any string
-
default value:
"/bar toggle nicklist"
-
-
-
description: "meta-R" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_input"
-
-
-
description: "meta-U" (default)
-
type: string
-
values: any string
-
default value:
"/allbuf /buffer set unread"
-
-
-
description: "meta-_" (default)
-
type: string
-
values: any string
-
default value:
"/input redo"
-
-
-
description: "meta-a" (default)
-
type: string
-
values: any string
-
default value:
"/buffer jump smart"
-
-
-
description: "meta-b" (default)
-
type: string
-
values: any string
-
default value:
"/input move_previous_word"
-
-
-
description: "meta-backspace" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_previous_word"
-
-
-
description: "meta-ctrl-k" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_end_of_input"
-
-
-
description: "meta-ctrl-l" (default)
-
type: string
-
values: any string
-
default value:
"/remote togglecmd"
-
-
-
description: "meta-ctrl-u" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_beginning_of_input"
-
-
-
description: "meta-d" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_next_word"
-
-
-
description: "meta-down" (default)
-
type: string
-
values: any string
-
default value:
"/buffer +1"
-
-
-
description: "meta-end" (default)
-
type: string
-
values: any string
-
default value:
"/window scroll_bottom"
-
-
-
description: "meta-f" (default)
-
type: string
-
values: any string
-
default value:
"/input move_next_word"
-
-
-
description: "meta-f1" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll buflist * b"
-
-
-
description: "meta-f11" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist * b"
-
-
-
description: "meta-f12" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist * e"
-
-
-
description: "meta-f2" (default)
-
type: string
-
values: any string
-
default value:
"/bar scroll buflist * e"
-
-
-
description: "meta-h,meta-R" (default)
-
type: string
-
values: any string
-
default value:
"/hotlist restore -all"
-
-
-
description: "meta-h,meta-c" (default)
-
type: string
-
values: any string
-
default value:
"/hotlist clear"
-
-
-
description: "meta-h,meta-m" (default)
-
type: string
-
values: any string
-
default value:
"/hotlist remove"
-
-
-
description: "meta-h,meta-r" (default)
-
type: string
-
values: any string
-
default value:
"/hotlist restore"
-
-
-
description: "meta-home" (default)
-
type: string
-
values: any string
-
default value:
"/window scroll_top"
-
-
-
description: "meta-j,0,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *1"
-
-
-
description: "meta-j,0,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *2"
-
-
-
description: "meta-j,0,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *3"
-
-
-
description: "meta-j,0,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *4"
-
-
-
description: "meta-j,0,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *5"
-
-
-
description: "meta-j,0,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *6"
-
-
-
description: "meta-j,0,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *7"
-
-
-
description: "meta-j,0,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *8"
-
-
-
description: "meta-j,0,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *9"
-
-
-
description: "meta-j,1,0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *10"
-
-
-
description: "meta-j,1,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *11"
-
-
-
description: "meta-j,1,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *12"
-
-
-
description: "meta-j,1,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *13"
-
-
-
description: "meta-j,1,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *14"
-
-
-
description: "meta-j,1,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *15"
-
-
-
description: "meta-j,1,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *16"
-
-
-
description: "meta-j,1,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *17"
-
-
-
description: "meta-j,1,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *18"
-
-
-
description: "meta-j,1,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *19"
-
-
-
description: "meta-j,2,0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *20"
-
-
-
description: "meta-j,2,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *21"
-
-
-
description: "meta-j,2,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *22"
-
-
-
description: "meta-j,2,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *23"
-
-
-
description: "meta-j,2,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *24"
-
-
-
description: "meta-j,2,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *25"
-
-
-
description: "meta-j,2,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *26"
-
-
-
description: "meta-j,2,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *27"
-
-
-
description: "meta-j,2,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *28"
-
-
-
description: "meta-j,2,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *29"
-
-
-
description: "meta-j,3,0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *30"
-
-
-
description: "meta-j,3,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *31"
-
-
-
description: "meta-j,3,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *32"
-
-
-
description: "meta-j,3,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *33"
-
-
-
description: "meta-j,3,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *34"
-
-
-
description: "meta-j,3,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *35"
-
-
-
description: "meta-j,3,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *36"
-
-
-
description: "meta-j,3,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *37"
-
-
-
description: "meta-j,3,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *38"
-
-
-
description: "meta-j,3,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *39"
-
-
-
description: "meta-j,4,0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *40"
-
-
-
description: "meta-j,4,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *41"
-
-
-
description: "meta-j,4,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *42"
-
-
-
description: "meta-j,4,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *43"
-
-
-
description: "meta-j,4,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *44"
-
-
-
description: "meta-j,4,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *45"
-
-
-
description: "meta-j,4,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *46"
-
-
-
description: "meta-j,4,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *47"
-
-
-
description: "meta-j,4,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *48"
-
-
-
description: "meta-j,4,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *49"
-
-
-
description: "meta-j,5,0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *50"
-
-
-
description: "meta-j,5,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *51"
-
-
-
description: "meta-j,5,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *52"
-
-
-
description: "meta-j,5,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *53"
-
-
-
description: "meta-j,5,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *54"
-
-
-
description: "meta-j,5,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *55"
-
-
-
description: "meta-j,5,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *56"
-
-
-
description: "meta-j,5,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *57"
-
-
-
description: "meta-j,5,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *58"
-
-
-
description: "meta-j,5,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *59"
-
-
-
description: "meta-j,6,0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *60"
-
-
-
description: "meta-j,6,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *61"
-
-
-
description: "meta-j,6,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *62"
-
-
-
description: "meta-j,6,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *63"
-
-
-
description: "meta-j,6,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *64"
-
-
-
description: "meta-j,6,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *65"
-
-
-
description: "meta-j,6,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *66"
-
-
-
description: "meta-j,6,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *67"
-
-
-
description: "meta-j,6,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *68"
-
-
-
description: "meta-j,6,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *69"
-
-
-
description: "meta-j,7,0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *70"
-
-
-
description: "meta-j,7,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *71"
-
-
-
description: "meta-j,7,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *72"
-
-
-
description: "meta-j,7,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *73"
-
-
-
description: "meta-j,7,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *74"
-
-
-
description: "meta-j,7,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *75"
-
-
-
description: "meta-j,7,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *76"
-
-
-
description: "meta-j,7,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *77"
-
-
-
description: "meta-j,7,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *78"
-
-
-
description: "meta-j,7,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *79"
-
-
-
description: "meta-j,8,0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *80"
-
-
-
description: "meta-j,8,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *81"
-
-
-
description: "meta-j,8,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *82"
-
-
-
description: "meta-j,8,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *83"
-
-
-
description: "meta-j,8,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *84"
-
-
-
description: "meta-j,8,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *85"
-
-
-
description: "meta-j,8,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *86"
-
-
-
description: "meta-j,8,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *87"
-
-
-
description: "meta-j,8,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *88"
-
-
-
description: "meta-j,8,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *89"
-
-
-
description: "meta-j,9,0" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *90"
-
-
-
description: "meta-j,9,1" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *91"
-
-
-
description: "meta-j,9,2" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *92"
-
-
-
description: "meta-j,9,3" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *93"
-
-
-
description: "meta-j,9,4" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *94"
-
-
-
description: "meta-j,9,5" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *95"
-
-
-
description: "meta-j,9,6" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *96"
-
-
-
description: "meta-j,9,7" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *97"
-
-
-
description: "meta-j,9,8" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *98"
-
-
-
description: "meta-j,9,9" (default)
-
type: string
-
values: any string
-
default value:
"/buffer *99"
-
-
-
description: "meta-j,meta-f" (default)
-
type: string
-
values: any string
-
default value:
"/buffer -"
-
-
-
description: "meta-j,meta-l" (default)
-
type: string
-
values: any string
-
default value:
"/buffer +"
-
-
-
description: "meta-j,meta-r" (default)
-
type: string
-
values: any string
-
default value:
"/server raw"
-
-
-
description: "meta-j,meta-s" (default)
-
type: string
-
values: any string
-
default value:
"/server jump"
-
-
-
description: "meta-k" (default)
-
type: string
-
values: any string
-
default value:
"/input grab_key_command"
-
-
-
description: "meta-l" (default)
-
type: string
-
values: any string
-
default value:
"/window bare"
-
-
-
description: "meta-left" (default)
-
type: string
-
values: any string
-
default value:
"/buffer -1"
-
-
-
description: "meta-m" (default)
-
type: string
-
values: any string
-
default value:
"/mute mouse toggle"
-
-
-
description: "meta-n" (default)
-
type: string
-
values: any string
-
default value:
"/window scroll_next_highlight"
-
-
-
description: "meta-p" (default)
-
type: string
-
values: any string
-
default value:
"/window scroll_previous_highlight"
-
-
-
description: "meta-pgdn" (default)
-
type: string
-
values: any string
-
default value:
"/window scroll_down"
-
-
-
description: "meta-pgup" (default)
-
type: string
-
values: any string
-
default value:
"/window scroll_up"
-
-
-
description: "meta-r" (default)
-
type: string
-
values: any string
-
default value:
"/input delete_line"
-
-
-
description: "meta-return" (default)
-
type: string
-
values: any string
-
default value:
"/input insert \n"
-
-
-
description: "meta-right" (default)
-
type: string
-
values: any string
-
default value:
"/buffer +1"
-
-
-
description: "meta-s" (default)
-
type: string
-
values: any string
-
default value:
"/mute spell toggle"
-
-
-
description: "meta-u" (default)
-
type: string
-
values: any string
-
default value:
"/window scroll_unread"
-
-
-
description: "meta-up" (default)
-
type: string
-
values: any string
-
default value:
"/buffer -1"
-
-
-
description: "meta-w,meta-b" (default)
-
type: string
-
values: any string
-
default value:
"/window balance"
-
-
-
description: "meta-w,meta-down" (default)
-
type: string
-
values: any string
-
default value:
"/window down"
-
-
-
description: "meta-w,meta-left" (default)
-
type: string
-
values: any string
-
default value:
"/window left"
-
-
-
description: "meta-w,meta-right" (default)
-
type: string
-
values: any string
-
default value:
"/window right"
-
-
-
description: "meta-w,meta-s" (default)
-
type: string
-
values: any string
-
default value:
"/window swap"
-
-
-
description: "meta-w,meta-up" (default)
-
type: string
-
values: any string
-
default value:
"/window up"
-
-
-
description: "meta-x" (default)
-
type: string
-
values: any string
-
default value:
"/buffer zoom"
-
-
-
description: "meta-z" (default)
-
type: string
-
values: any string
-
default value:
"/window zoom"
-
-
-
description: "pgdn" (default)
-
type: string
-
values: any string
-
default value:
"/window page_down"
-
-
-
description: "pgup" (default)
-
type: string
-
values: any string
-
default value:
"/window page_up"
-
-
-
description: "return" (default)
-
type: string
-
values: any string
-
default value:
"/input return"
-
-
-
description: "right" (default)
-
type: string
-
values: any string
-
default value:
"/input move_next_char"
-
-
-
description: "shift-down" (default)
-
type: string
-
values: any string
-
default value:
"/input move_next_line"
-
-
-
description: "shift-end" (default)
-
type: string
-
values: any string
-
default value:
"/input move_end_of_input"
-
-
-
description: "shift-home" (default)
-
type: string
-
values: any string
-
default value:
"/input move_beginning_of_input"
-
-
-
description: "shift-left" (default)
-
type: string
-
values: any string
-
default value:
"/input move_previous_char"
-
-
-
description: "shift-right" (default)
-
type: string
-
values: any string
-
default value:
"/input move_next_char"
-
-
-
description: "shift-tab" (default)
-
type: string
-
values: any string
-
default value:
"/input complete_previous"
-
-
-
description: "shift-up" (default)
-
type: string
-
values: any string
-
default value:
"/input move_previous_line"
-
-
-
description: "tab" (default)
-
type: string
-
values: any string
-
default value:
"/input complete_next"
-
-
-
description: "up" (default)
-
type: string
-
values: any string
-
default value:
"/input history_previous"
-
-
-
description: "@chat:Q" (cursor)
-
type: string
-
values: any string
-
default value:
"hsignal:chat_quote_time_prefix_message;/cursor stop"
-
-
-
description: "@chat:l" (cursor)
-
type: string
-
values: any string
-
default value:
"hsignal:chat_quote_focused_line;/cursor stop"
-
-
-
description: "@chat:m" (cursor)
-
type: string
-
values: any string
-
default value:
"hsignal:chat_quote_message;/cursor stop"
-
-
-
description: "@chat:q" (cursor)
-
type: string
-
values: any string
-
default value:
"hsignal:chat_quote_prefix_message;/cursor stop"
-
-
weechat.key_cursor.@item(buffer_nicklist):K
-
description: "@item(buffer_nicklist):K" (cursor)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/kickban ${nick}"
-
-
weechat.key_cursor.@item(buffer_nicklist):b
-
description: "@item(buffer_nicklist):b" (cursor)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/ban ${nick}"
-
-
weechat.key_cursor.@item(buffer_nicklist):k
-
description: "@item(buffer_nicklist):k" (cursor)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/kick ${nick}"
-
-
weechat.key_cursor.@item(buffer_nicklist):q
-
description: "@item(buffer_nicklist):q" (cursor)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/query ${nick};/cursor stop"
-
-
weechat.key_cursor.@item(buffer_nicklist):w
-
description: "@item(buffer_nicklist):w" (cursor)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/whois ${nick}"
-
-
-
description: "down" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move down"
-
-
-
description: "left" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move left"
-
-
-
description: "meta-down" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move edge_bottom"
-
-
-
description: "meta-end" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move bottom_right"
-
-
-
description: "meta-home" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move top_left"
-
-
-
description: "meta-left" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move edge_left"
-
-
-
description: "meta-right" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move edge_right"
-
-
weechat.key_cursor.meta-shift-down
-
description: "meta-shift-down" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move area_down"
-
-
weechat.key_cursor.meta-shift-left
-
description: "meta-shift-left" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move area_left"
-
-
weechat.key_cursor.meta-shift-right
-
description: "meta-shift-right" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move area_right"
-
-
weechat.key_cursor.meta-shift-up
-
description: "meta-shift-up" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move area_up"
-
-
-
description: "meta-up" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move edge_top"
-
-
-
description: "return" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor stop"
-
-
-
description: "right" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move right"
-
-
-
description: "up" (cursor)
-
type: string
-
values: any string
-
default value:
"/cursor move up"
-
-
-
description: "ctrl-o" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input history_use_get_next"
-
-
-
description: "ctrl-q" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input search_stop"
-
-
-
description: "ctrl-r" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input search_previous"
-
-
-
description: "ctrl-s" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input search_next"
-
-
-
description: "ctrl-x" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input search_switch_regex"
-
-
-
description: "down" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input search_next"
-
-
-
description: "meta-c" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input search_switch_case"
-
-
-
description: "return" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input search_stop_here"
-
-
-
description: "tab" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input search_switch_where"
-
-
-
description: "up" (histsearch)
-
type: string
-
values: any string
-
default value:
"/input search_previous"
-
-
-
description: "@*:button3" (mouse)
-
type: string
-
values: any string
-
default value:
"/cursor go ${_x},${_y}"
-
-
weechat.key_mouse.@bar(buflist):ctrl-wheeldown
-
description: "@bar(buflist):ctrl-wheeldown" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@bar(buflist):ctrl-wheelup
-
description: "@bar(buflist):ctrl-wheelup" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@bar(input):button2
-
description: "@bar(input):button2" (mouse)
-
type: string
-
values: any string
-
default value:
"/input grab_mouse_area"
-
-
weechat.key_mouse.@bar(nicklist):button1-gesture-down
-
description: "@bar(nicklist):button1-gesture-down" (mouse)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist ${_window_number} +100%"
-
-
weechat.key_mouse.@bar(nicklist):button1-gesture-down-long
-
description: "@bar(nicklist):button1-gesture-down-long" (mouse)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist ${_window_number} e"
-
-
weechat.key_mouse.@bar(nicklist):button1-gesture-up
-
description: "@bar(nicklist):button1-gesture-up" (mouse)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist ${_window_number} -100%"
-
-
weechat.key_mouse.@bar(nicklist):button1-gesture-up-long
-
description: "@bar(nicklist):button1-gesture-up-long" (mouse)
-
type: string
-
values: any string
-
default value:
"/bar scroll nicklist ${_window_number} b"
-
-
weechat.key_mouse.@bar:wheeldown
-
description: "@bar:wheeldown" (mouse)
-
type: string
-
values: any string
-
default value:
"/bar scroll ${_bar_name} ${_window_number} +20%"
-
-
weechat.key_mouse.@bar:wheelup
-
description: "@bar:wheelup" (mouse)
-
type: string
-
values: any string
-
default value:
"/bar scroll ${_bar_name} ${_window_number} -20%"
-
-
weechat.key_mouse.@chat(fset.fset):button1
-
description: "@chat(fset.fset):button1" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/fset -go ${fset_option_index}"
-
-
weechat.key_mouse.@chat(fset.fset):button2*
-
description: "@chat(fset.fset):button2*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:fset_mouse"
-
-
weechat.key_mouse.@chat(fset.fset):wheeldown
-
description: "@chat(fset.fset):wheeldown" (mouse)
-
type: string
-
values: any string
-
default value:
"/fset -down 5"
-
-
weechat.key_mouse.@chat(fset.fset):wheelup
-
description: "@chat(fset.fset):wheelup" (mouse)
-
type: string
-
values: any string
-
default value:
"/fset -up 5"
-
-
weechat.key_mouse.@chat(irc.list_*):button1
-
description: "@chat(irc.list_*):button1" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/list -go ${_chat_line_y}"
-
-
weechat.key_mouse.@chat(irc.list_*):button2*
-
description: "@chat(irc.list_*):button2*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:irc_list_mouse"
-
-
weechat.key_mouse.@chat(irc.list_*):wheeldown
-
description: "@chat(irc.list_*):wheeldown" (mouse)
-
type: string
-
values: any string
-
default value:
"/list -down 5"
-
-
weechat.key_mouse.@chat(irc.list_*):wheelup
-
description: "@chat(irc.list_*):wheelup" (mouse)
-
type: string
-
values: any string
-
default value:
"/list -up 5"
-
-
weechat.key_mouse.@chat(script.scripts):button1
-
description: "@chat(script.scripts):button1" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/script -go ${_chat_line_y}"
-
-
weechat.key_mouse.@chat(script.scripts):button2
-
description: "@chat(script.scripts):button2" (mouse)
-
type: string
-
values: any string
-
default value:
"/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: string
-
values: any string
-
default value:
"/script -down 5"
-
-
weechat.key_mouse.@chat(script.scripts):wheelup
-
description: "@chat(script.scripts):wheelup" (mouse)
-
type: string
-
values: any string
-
default value:
"/script -up 5"
-
-
weechat.key_mouse.@chat:button1
-
description: "@chat:button1" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number}"
-
-
weechat.key_mouse.@chat:button1-gesture-left
-
description: "@chat:button1-gesture-left" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/buffer -1"
-
-
weechat.key_mouse.@chat:button1-gesture-left-long
-
description: "@chat:button1-gesture-left-long" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/buffer 1"
-
-
weechat.key_mouse.@chat:button1-gesture-right
-
description: "@chat:button1-gesture-right" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/buffer +1"
-
-
weechat.key_mouse.@chat:button1-gesture-right-long
-
description: "@chat:button1-gesture-right-long" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/buffer +"
-
-
weechat.key_mouse.@chat:ctrl-wheeldown
-
description: "@chat:ctrl-wheeldown" (mouse)
-
type: string
-
values: any string
-
default value:
"/window scroll_horiz -window ${_window_number} +10%"
-
-
weechat.key_mouse.@chat:ctrl-wheelup
-
description: "@chat:ctrl-wheelup" (mouse)
-
type: string
-
values: any string
-
default value:
"/window scroll_horiz -window ${_window_number} -10%"
-
-
weechat.key_mouse.@chat:wheeldown
-
description: "@chat:wheeldown" (mouse)
-
type: string
-
values: any string
-
default value:
"/window scroll_down -window ${_window_number}"
-
-
weechat.key_mouse.@chat:wheelup
-
description: "@chat:wheelup" (mouse)
-
type: string
-
values: any string
-
default value:
"/window scroll_up -window ${_window_number}"
-
-
weechat.key_mouse.@item(buffer_nicklist):button1
-
description: "@item(buffer_nicklist):button1" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/query ${nick}"
-
-
weechat.key_mouse.@item(buffer_nicklist):button1-gesture-left
-
description: "@item(buffer_nicklist):button1-gesture-left" (mouse)
-
type: string
-
values: any string
-
default value:
"/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: string
-
values: any string
-
default value:
"/window ${_window_number};/kickban ${nick}"
-
-
weechat.key_mouse.@item(buffer_nicklist):button2
-
description: "@item(buffer_nicklist):button2" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/whois ${nick}"
-
-
weechat.key_mouse.@item(buffer_nicklist):button2-gesture-left
-
description: "@item(buffer_nicklist):button2-gesture-left" (mouse)
-
type: string
-
values: any string
-
default value:
"/window ${_window_number};/ban ${nick}"
-
-
weechat.key_mouse.@item(buflist):button1*
-
description: "@item(buflist):button1*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@item(buflist):button2*
-
description: "@item(buflist):button2*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@item(buflist2):button1*
-
description: "@item(buflist2):button1*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@item(buflist2):button2*
-
description: "@item(buflist2):button2*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@item(buflist3):button1*
-
description: "@item(buflist3):button1*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@item(buflist3):button2*
-
description: "@item(buflist3):button2*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@item(buflist4):button1*
-
description: "@item(buflist4):button1*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@item(buflist4):button2*
-
description: "@item(buflist4):button2*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@item(buflist5):button1*
-
description: "@item(buflist5):button1*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
weechat.key_mouse.@item(buflist5):button2*
-
description: "@item(buflist5):button2*" (mouse)
-
type: string
-
values: any string
-
default value:
"hsignal:buflist_mouse"
-
-
-
description: "ctrl-q" (search)
-
type: string
-
values: any string
-
default value:
"/input search_stop"
-
-
-
description: "ctrl-r" (search)
-
type: string
-
values: any string
-
default value:
"/input search_previous"
-
-
-
description: "ctrl-s" (search)
-
type: string
-
values: any string
-
default value:
"/input search_next"
-
-
-
description: "ctrl-x" (search)
-
type: string
-
values: any string
-
default value:
"/input search_switch_regex"
-
-
-
description: "down" (search)
-
type: string
-
values: any string
-
default value:
"/input search_next"
-
-
-
description: "meta-c" (search)
-
type: string
-
values: any string
-
default value:
"/input search_switch_case"
-
-
-
description: "return" (search)
-
type: string
-
values: any string
-
default value:
"/input search_stop_here"
-
-
-
description: "tab" (search)
-
type: string
-
values: any string
-
default value:
"/input search_switch_where"
-
-
-
description: "up" (search)
-
type: string
-
values: any string
-
default value:
"/input search_previous"
-
-
weechat.look.align_end_of_lines
-
description: alignment for end of lines (all lines after the first): they are starting under this data (time, buffer, prefix, suffix, message (default))
-
type: enum
-
values: time, buffer, prefix, suffix, message
-
default value:
message
-
-
weechat.look.align_multiline_words
-
description: alignment for multiline words according to option weechat.look.align_end_of_lines; if disabled, the multiline words will not be aligned, which can be useful to not break long URLs
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: string displayed when bar can be scrolled down (for bars with filling different from "horizontal")
-
type: string
-
values: any string
-
default value:
"+"+
-
-
-
description: string displayed when bar can be scrolled to the left (for bars with filling "horizontal")
-
type: string
-
values: any string
-
default value:
"<<"
-
-
-
description: string displayed when bar can be scrolled to the right (for bars with filling "horizontal")
-
type: string
-
values: any string
-
default value:
">>"
-
-
-
description: string displayed when bar can be scrolled up (for bars with filling different from "horizontal")
-
type: string
-
values: any string
-
default value:
"--"
-
-
weechat.look.bare_display_exit_on_input
-
description: exit the bare display mode on any changes in input
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.bare_display_time_format
-
description: time format in bare display mode (see API man strftime for date/time specifiers, extra specifiers are supported, see function util_strftimeval in Plugin API reference)
-
type: string
-
values: any string
-
default value:
"%H:%M"
-
-
weechat.look.buffer_auto_renumber
-
description: automatically renumber buffers to have only consecutive numbers and start with number 1; if disabled, gaps between buffer numbers are allowed and the first buffer can have a number greater than 1
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.buffer_notify_default
-
description: default notify level for buffers (used to tell WeeChat if buffer must be displayed in hotlist or not, according to importance of message): all=all messages (default), message=messages+highlights, highlight=highlights only, none=never display in hotlist
-
type: enum
-
values: none, highlight, message, all
-
default value:
all
-
-
-
description: position of a new buffer: end = after the end of list (number = last number + 1) (default), first_gap = at first available number in the list (after the end of list if no number is available); this option is used only if the buffer has no layout number
-
type: enum
-
values: end, first_gap
-
default value:
end
-
-
weechat.look.buffer_search_case_sensitive
-
description: default text search in buffer: case-sensitive or not
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.buffer_search_force_default
-
description: force default values for text search in buffer (instead of using values from last search in buffer)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.buffer_search_history
-
description: default text search command line history: local (buffer) or global history
-
type: enum
-
values: local, global
-
default value:
local
-
-
weechat.look.buffer_search_regex
-
description: default text search in buffer: if enabled, search POSIX extended regular expression, otherwise search simple string
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.buffer_search_where
-
description: default text search in buffer: in message, prefix, prefix and message
-
type: enum
-
values: prefix, message, prefix_message
-
default value:
prefix_message
-
-
weechat.look.buffer_time_format
-
description: time format for each line displayed in buffers (see man strftime for date/time specifiers, extra specifiers are supported, see function util_strftimeval in Plugin API reference) (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval); variable "${highlight}" can be used in a condition to have a format specific to lines with highlight (see also option weechat.look.highlight_prefix); for example time using grayscale: "${color:252}%H${color:243}%M${color:237}%S", the same with milliseconds: "${color:252}%H${color:243}%M${color:237}%S.%.3", red background in case of highlight: "${if:${highlight}?${color:,red}}%H:%M:%S", red background in case of highlight with grayscale: ${if:${highlight}?${color:yellow,124}%H${color:187}%M${color:181}%S.%.3:${color:252}%H${color:243}%M${color:237}%S.%.3}
-
type: string
-
values: any string
-
default value:
"%H:%M:%S"
-
-
-
description: time displayed for a message with same time as previous message: use a space " " to hide time, another string to display this string instead of time, or an empty string to disable feature (display time) (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: keep a space on the right side of chat area if there is a bar displayed on the right (for both text and read marker)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.color_basic_force_bold
-
description: force "bold" attribute for light colors and "darkgray" in basic colors (this option is disabled by default: bold is used only if terminal has less than 16 colors)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.color_inactive_buffer
-
description: use a different color for lines in inactive buffer (when line is from a merged buffer not selected)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.color_inactive_message
-
description: use a different color for inactive message (when window is not current window, or if line is from a merged buffer not selected)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.color_inactive_prefix
-
description: use a different color for inactive prefix (when window is not current window, or if line is from a merged buffer not selected)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.color_inactive_prefix_buffer
-
description: use a different color for inactive buffer name in prefix (when window is not current window, or if line is from a merged buffer not selected)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.color_inactive_time
-
description: use a different color for inactive time (when window is not current window, or if line is from a merged buffer not selected)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.color_inactive_window
-
description: use a different color for lines in inactive window (when window is not current window)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.color_nick_offline
-
description: use a different color for offline nicks (not in nicklist anymore)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.color_pairs_auto_reset
-
description: automatically reset table of color pairs when number of available pairs is lower or equal to this number (-1 = disable automatic reset, and then a manual "/color reset" is needed when table is full)
-
type: integer
-
values: -1 .. 256
-
default value:
5
-
-
-
description: if set, uses real white color, disabled by default for terms with white background (if you never use white background, you should turn on this option to see real white instead of default term foreground color)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: chars used to determine if input string is a command or not: input must start with one of these chars; the slash ("/") is always considered as command prefix (example: ".$")
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.look.command_incomplete
-
description: if set, incomplete and unambiguous commands are allowed, for example /he for /help
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.config_permissions
-
description: permissions for configuration files (*.conf), as octal value (see man chmod); it must be a number with 3 digits, each digit can be 0 (no permissions), 2 (write only), 4 (read only) or 6 (read and write); the first digit must be 6 so that the user can read and write the file; by default configuration files can be read and written by the user only, for security reasons; for example 660 = "rw-rw-r--" = file readable and writable by the user and members of the group
-
type: string
-
values: any string
-
default value:
"600"
-
-
-
description: if set, /quit command must be confirmed with extra argument "-yes" (see /help quit)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: if set, /upgrade command must be confirmed with extra argument "-yes" (see /help upgrade)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: display special message when day changes
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.day_change_message_1date
-
description: message displayed when the day has changed, with one date displayed (for example at beginning of buffer) (see man strftime for date/time specifiers) (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)
-
type: string
-
values: any string
-
default value:
"-- %a, %d %b %Y --"
-
-
weechat.look.day_change_message_2dates
-
description: message displayed when the day has changed, with two dates displayed (between two messages); the second date specifiers must start with two "%" because strftime is called two times on this string (see man strftime for date/time specifiers) (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)
-
type: string
-
values: any string
-
default value:
"-- %%a, %%d %%b %%Y (%a, %d %b %Y) --"
-
-
weechat.look.eat_newline_glitch
-
description: if set, the eat_newline_glitch will be set to 0; this is used to not add new line char at end of each line, and then not break text when you copy/paste text from WeeChat to another application (this option is disabled by default because it can cause serious display bugs)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.emphasized_attributes
-
description: attributes for emphasized text: one or more attribute chars ("%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline); if the string is empty, the colors weechat.color.emphasized* are used
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: comma separated list of words to highlight; case-insensitive comparison (use "(?-i)" at beginning of words to make them case-sensitive), words may begin or end with "*" for partial match; example: "test,(?-i)*toto*,flash*"
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.look.highlight_disable_regex
-
description: POSIX extended regular expression used to prevent any highlight from a message: this option has higher priority over other highlight options (if the string is found in the message, the highlight is disabled and the other options are ignored), regular expression is case-insensitive (use "(?-i)" at beginning to make it case-sensitive), examples: "
", "(?-i) " -
type: string
-
values: any string
-
default value:
""
-
-
-
description: use a specific color for prefix of line in case of highlight (see also option weechat.look.buffer_time_format)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: POSIX extended regular expression used to check if a message has highlight or not, at least one match in string must be surrounded by delimiters (chars different from: alphanumeric, "-", "_" and "|"), regular expression is case-insensitive (use "(?-i)" at beginning to make it case-sensitive), examples: "flashcode|flashy", "(?-i)FlashCode|flashy"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: comma separated list of tags to highlight; case-insensitive comparison; wildcard "*" is allowed in each tag; many tags can be separated by "+" to make a logical "and" between tags; examples: "nick_flashcode" for messages from nick "FlashCode", "irc_notice+nick_toto*" for notices from a nick starting with "toto"
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.look.hotlist_add_conditions
-
description: conditions to add a buffer in hotlist (if notify level is OK for the buffer); you can use in these conditions: "window" (current window pointer), "buffer" (buffer pointer to add in hotlist), "priority" (0 = low, 1 = message, 2 = private, 3 = highlight); by default a buffer is added to hotlist if you are away, or if the buffer is not visible on screen (not displayed in any window), or if at least one relay client is connected via the weechat protocol
-
type: string
-
values: any string
-
default value:
"${away} || ${buffer.num_displayed} == 0 || ${info:relay_client_count,weechat,connected} > 0"
-
-
weechat.look.hotlist_buffer_separator
-
description: string displayed between buffers in hotlist
-
type: string
-
values: any string
-
default value:
", "
-
-
weechat.look.hotlist_count_max
-
description: max number of messages count to display in hotlist for a buffer: 0 = never display messages count, other number = display max N messages count (from the highest to lowest priority)
-
type: integer
-
values: 0 .. 4
-
default value:
2
-
-
weechat.look.hotlist_count_min_msg
-
description: display messages count if number of messages is greater or equal to this value
-
type: integer
-
values: 1 .. 100
-
default value:
2
-
-
weechat.look.hotlist_names_count
-
description: max number of names in hotlist (0 = no name displayed, only buffer numbers)
-
type: integer
-
values: 0 .. 10000
-
default value:
3
-
-
weechat.look.hotlist_names_length
-
description: max length of names in hotlist (0 = no limit)
-
type: integer
-
values: 0 .. 32
-
default value:
0
-
-
weechat.look.hotlist_names_level
-
description: level for displaying names in hotlist (combination of: 1=join/part, 2=message, 4=private, 8=highlight, for example: 12=private+highlight)
-
type: integer
-
values: 1 .. 15
-
default value:
12
-
-
weechat.look.hotlist_names_merged_buffers
-
description: if set, force display of names in hotlist for merged buffers
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: text displayed at the beginning of the hotlist
-
type: string
-
values: any string
-
default value:
"H: "
-
-
-
description: remove buffers in hotlist: buffer = remove buffer by buffer, merged = remove all visible merged buffers at once
-
type: enum
-
values: buffer, merged
-
default value:
merged
-
-
weechat.look.hotlist_short_names
-
description: if set, uses short names to display buffer names in hotlist (start after first "." in name)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: comma-separated list of fields to sort hotlist; each field is a hdata variable of hotlist ("var") or a hdata variable of buffer ("buffer.var"); char "-" can be used before field to reverse order, char "~" can be used to do a case-insensitive comparison; examples: "-priority,buffer.number" for sort on hotlist priority then by buffer number, "-~buffer.full_name" for case-insensitive and reverse sort on buffer full name
-
type: string
-
values: any string
-
default value:
"-priority,time,time_usec"
-
-
-
description: text displayed at the end of the hotlist
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.look.hotlist_unique_numbers
-
description: keep only unique numbers in hotlist (this applies only on hotlist items where name is NOT displayed after number)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.hotlist_update_on_buffer_switch
-
description: update the hotlist when switching buffers
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.input_cursor_scroll
-
description: number of chars displayed after end of input line when scrolling to display end of line
-
type: integer
-
values: 0 .. 100
-
default value:
20
-
-
weechat.look.input_multiline_lead_linebreak
-
description: start the input text on a new line when the input contains multiple lines, so that the start of the lines align
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: share commands, text, or both in input for all buffers (there is still local history for each buffer)
-
type: enum
-
values: none, commands, text, all
-
default value:
none
-
-
weechat.look.input_share_overwrite
-
description: if set and input is shared, always overwrite input in target buffer
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: max number of "undo" for command line, by buffer (0 = undo disabled)
-
type: integer
-
values: 0 .. 65535
-
default value:
32
-
-
weechat.look.item_away_message
-
description: display server away message in away bar item
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.item_buffer_filter
-
description: string used to show that some lines are filtered in current buffer (bar item "buffer_filter")
-
type: string
-
values: any string
-
default value:
"*"
-
-
-
description: string used to show zoom on merged buffer (bar item "buffer_zoom")
-
type: string
-
values: any string
-
default value:
"!"
-
-
weechat.look.item_mouse_status
-
description: string used to show if mouse is enabled (bar item "mouse_status")
-
type: string
-
values: any string
-
default value:
"M"
-
-
-
description: time format for "time" bar item (see man strftime for date/time specifiers) (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)
-
type: string
-
values: any string
-
default value:
"%H:%M"
-
-
weechat.look.jump_current_to_previous_buffer
-
description: jump to previous buffer displayed when jumping to current buffer number with /buffer *N (where N is a buffer number), to easily switch to another buffer, then come back to current buffer
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.jump_previous_buffer_when_closing
-
description: jump to previously visited buffer when closing a buffer (if disabled, then jump to buffer number - 1)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.jump_smart_back_to_buffer
-
description: jump back to initial buffer after reaching end of hotlist
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: allow only binding of "safe" keys (beginning with a ctrl or meta code)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: default delay (in milliseconds) to grab a key (using default key alt-k); this delay can be overridden in the /input command (see /help input)
-
type: integer
-
values: 1 .. 10000
-
default value:
800
-
-
-
description: enable mouse support
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: force color for some nicks: hash computed with nickname to find color will not be used for these nicks (format is: "nick1:color1;nick2:color2"); look up for nicks is with exact case then lower case, so it's possible to use only lower case for nicks in this option; color can include background with the format "text,background", for example "yellow,red"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: hash algorithm used to find the color for a nick: djb2 = variant of djb2 (position of letters matters: anagrams of a nick have different color), djb2_32 = variant of djb2 using 32-bit instead of 64-bit integer, sum = sum of letters, sum_32 = sum of letters using 32-bit instead of 64-bit integer
-
type: enum
-
values: djb2, sum, djb2_32, sum_32
-
default value:
djb2
-
-
weechat.look.nick_color_hash_salt
-
description: salt for the hash algorithm used to find nick colors (the nickname is appended to this salt and the hash algorithm operates on this string); modifying this shuffles nick colors
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.look.nick_color_stop_chars
-
description: chars used to stop in nick when computing color with letters of nick (at least one char outside this list must be in string before stopping) (example: nick "|nick|away" with "|" in chars will return color of nick "|nick"); this option has an impact on option weechat.look.nick_color_force, so the nick for the forced color must not contain the chars ignored by this option
-
type: string
-
values: any string
-
default value:
"_|["
-
-
-
description: text to display before nick in prefix of message, example: "<"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: text to display after nick in prefix of message, example: ">"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: enable terminal "bracketed paste mode" (not supported in all terminals/multiplexers): in this mode, pasted text is bracketed with control sequences so that WeeChat can differentiate pasted text from typed-in text ("ESC[200~", followed by the pasted text, followed by "ESC[201~")
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.paste_bracketed_timer_delay
-
description: force end of bracketed paste after this delay (in seconds) if the control sequence for end of bracketed paste ("ESC[201~") was not received in time
-
type: integer
-
values: 1 .. 60
-
default value:
10
-
-
-
description: max number of lines for paste without asking user (-1 = disable this feature); this option is used only if the bar item "input_paste" is used in at least one bar (by default it is used in "input" bar)
-
type: integer
-
values: -1 .. 2147483647
-
default value:
100
-
-
-
description: prefix for action messages (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)
-
type: string
-
values: any string
-
default value:
" *"
-
-
-
description: prefix alignment (none, left, right (default))
-
type: enum
-
values: none, left, right
-
default value:
right
-
-
-
description: max size for prefix (0 = no max size)
-
type: integer
-
values: 0 .. 128
-
default value:
0
-
-
-
description: min size for prefix
-
type: integer
-
values: 0 .. 128
-
default value:
0
-
-
weechat.look.prefix_align_more
-
description: char to display if prefix is truncated (must be exactly one char on screen)
-
type: string
-
values: any string
-
default value:
""+
-
-
weechat.look.prefix_align_more_after
-
description: display the truncature char (by default "+") after the text (by replacing the space that should be displayed here); if disabled, the truncature char replaces last char of text
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.prefix_buffer_align
-
description: prefix alignment for buffer name, when many buffers are merged with same number (none, left, right (default))
-
type: enum
-
values: none, left, right
-
default value:
right
-
-
weechat.look.prefix_buffer_align_max
-
description: max size for buffer name, when many buffers are merged with same number (0 = no max size)
-
type: integer
-
values: 0 .. 128
-
default value:
0
-
-
weechat.look.prefix_buffer_align_more
-
description: char to display if buffer name is truncated (when many buffers are merged with same number) (must be exactly one char on screen)
-
type: string
-
values: any string
-
default value:
""+
-
-
weechat.look.prefix_buffer_align_more_after
-
description: display the truncature char (by default "+") after the text (by replacing the space that should be displayed here); if disabled, the truncature char replaces last char of text
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: prefix for error messages (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)
-
type: string
-
values: any string
-
default value:
"=!="
-
-
-
description: prefix for join messages (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)
-
type: string
-
values: any string
-
default value:
"-->"
-
-
-
description: prefix for network messages (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)
-
type: string
-
values: any string
-
default value:
"--"
-
-
-
description: prefix for quit messages (note: content is evaluated, so you can use colors with format "${color:xxx}", see /help eval)
-
type: string
-
values: any string
-
default value:
"<--"
-
-
-
description: prefix displayed for a message with same nick as previous but not next message: use a space " " to hide prefix, another string to display this string instead of prefix, or an empty string to disable feature (display prefix)
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.look.prefix_same_nick_middle
-
description: prefix displayed for a message with same nick as previous and next message: use a space " " to hide prefix, another string to display this string instead of prefix, or an empty string to disable feature (display prefix)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: string displayed after prefix
-
type: string
-
values: any string
-
default value:
"│"
-
-
weechat.look.quote_nick_prefix
-
description: text to display before nick when quoting a message (see /help cursor)
-
type: string
-
values: any string
-
default value:
"<"
-
-
weechat.look.quote_nick_suffix
-
description: text to display after nick when quoting a message (see /help cursor)
-
type: string
-
values: any string
-
default value:
">"
-
-
weechat.look.quote_time_format
-
description: time format when quoting a message (see /help cursor) (see man strftime for date/time specifiers, extra specifiers are supported, see function util_strftimeval in Plugin API reference)
-
type: string
-
values: any string
-
default value:
"%H:%M:%S"
-
-
-
description: use a marker (line or char) on buffers to show first unread line
-
type: enum
-
values: none, line, char
-
default value:
line
-
-
weechat.look.read_marker_always_show
-
description: always show read marker, even if it is after last buffer line
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.read_marker_string
-
description: string used to draw read marker line (string is repeated until end of line)
-
type: string
-
values: any string
-
default value:
"- "
-
-
weechat.look.read_marker_update_on_buffer_switch
-
description: update the read marker when switching buffers
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.save_config_on_exit
-
description: save configuration file on exit
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.save_config_with_fsync
-
description: use fsync to synchronize the configuration file with the storage device (see man fsync); this is slower but should prevent any data loss in case of power failure during the save of configuration file
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.save_layout_on_exit
-
description: save layout on exit (buffers, windows, or both)
-
type: enum
-
values: none, buffers, windows, all
-
default value:
none
-
-
-
description: how many lines to scroll by with scroll_up and scroll_down
-
type: integer
-
values: 1 .. 2147483647
-
default value:
3
-
-
weechat.look.scroll_bottom_after_switch
-
description: scroll to bottom of window after switch to another buffer (do not remember scroll position in windows); the scroll is done only for buffers with formatted content (not free content)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.scroll_page_percent
-
description: percent of screen to scroll when scrolling one page up or down (for example 100 means one page, 50 half-page)
-
type: integer
-
values: 1 .. 100
-
default value:
100
-
-
weechat.look.search_text_not_found_alert
-
description: alert user when text sought is not found in buffer
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.separator_horizontal
-
description: char used to draw horizontal separators around bars and windows (empty value will draw a real line with ncurses, but may cause bugs with URL selection under some terminals); width on screen must be exactly one char
-
type: string
-
values: any string
-
default value:
"-"
-
-
weechat.look.separator_vertical
-
description: char used to draw vertical separators around bars and windows (empty value will draw a real line with ncurses); width on screen must be exactly one char
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.look.tab_whitespace_char
-
description: first char to display for tabulations when whitespace mode is enabled with command `/debug whitespace`; width on screen must be exactly one char; subsequent chars are set by option weechat.look.whitespace_char
-
type: string
-
values: any string
-
default value:
"→"
-
-
-
description: number of spaces used to display tabs in messages
-
type: integer
-
values: 1 .. 64
-
default value:
1
-
-
-
description: time format for dates converted to strings and displayed in messages (see man strftime for date/time specifiers)
-
type: string
-
values: any string
-
default value:
"%a, %d %b %Y %T"
-
-
-
description: char to display for spaces when whitespace mode is enabled with command `/debug whitespace`; width on screen must be exactly one char; see also option weechat.look.tab_whitespace_char
-
type: string
-
values: any string
-
default value:
"·"
-
-
-
description: automatically zoom on current window if the terminal becomes too small to display all windows (use alt-z to unzoom windows when the terminal is big enough)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
weechat.look.window_separator_horizontal
-
description: display an horizontal separator between windows
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.look.window_separator_vertical
-
description: display a vertical separator between windows
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: title for window (terminal for Curses GUI), set on startup; an empty string will keep title unchanged (note: content is evaluated, see /help eval); example: "WeeChat ${info:version}"
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.look.word_chars_highlight
-
description: comma-separated list of chars (or range of chars) that are considered part of words for highlights; each item can be a single char, a range of chars (format: a-z), a class of wide character (for example "alnum", see man wctype); a "!" before the item makes it negative (ie the char is NOT considered part of words); the value "*" matches any char; unicode chars are allowed with the format \u1234, for example \u00A0 for unbreakable space (see /help print for supported formats)
-
type: string
-
values: any string
-
default value:
"!\u00A0,-,_,|,alnum"
-
-
-
description: comma-separated list of chars (or range of chars) that are considered part of words for command line; each item can be a single char, a range of chars (format: a-z), a class of wide character (for example "alnum", see man wctype); a "!" before the item makes it negative (ie the char is NOT considered part of words); the value "*" matches any char; unicode chars are allowed with the format \u1234, for example \u00A0 for unbreakable space (see /help print for supported formats)
-
type: string
-
values: any string
-
default value:
"!\u00A0,-,_,|,alnum"
-
-
weechat.network.connection_timeout
-
description: timeout (in seconds) for connection to a remote host (made in a child process)
-
type: integer
-
values: 1 .. 2147483647
-
default value:
60
-
-
weechat.network.gnutls_ca_system
-
description: load system's default trusted certificate authorities on startup; this can be turned off to save some memory only if you are not using TLS connections at all
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.network.gnutls_ca_user
-
description: extra file(s) with certificate authorities; multiple files must be separated by colons (each path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.network.gnutls_handshake_timeout
-
description: timeout (in seconds) for gnutls handshake
-
type: integer
-
values: 1 .. 2147483647
-
default value:
30
-
-
-
description: name of proxy used for download of URLs with Curl (used to download list of scripts and in scripts calling function hook_process); the proxy must be defined with command /proxy
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: comma separated list of plugins to load automatically at startup, "*" means all plugins found, a name beginning with "!" is a negative value to prevent a plugin from being loaded, wildcard "*" is allowed in names (examples: "*" or "*,!lua,!tcl")
-
type: string
-
values: any string
-
default value:
"*"
-
-
-
description: comma separated list of file name extensions for plugins
-
type: string
-
values: any string
-
default value:
".so,.dll"
-
-
-
description: path for searching plugins (path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
"${weechat_data_dir}/plugins"
-
-
weechat.plugin.save_config_on_unload
-
description: save configuration files when unloading plugins
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
"${if:${info:weechat_headless}?/reload:/quit -yes}"
-
-
-
description: command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
"/quit -yes"
-
-
-
description: command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
"/quit -yes"
-
-
-
description: command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: command to execute when the signal is received, multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.startup.command_after_plugins
-
description: command executed when WeeChat starts, after loading plugins; multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
""
-
-
weechat.startup.command_before_plugins
-
description: command executed when WeeChat starts, before loading plugins; multiple commands can be separated by semicolons (note: commands are evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: display WeeChat logo at startup
-
type: boolean
-
values: on, off
-
default value:
on
-
-
weechat.startup.display_version
-
description: display WeeChat version at startup
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: set resource limits for WeeChat process, format is: "res1:limit1,res2:limit2"; resource name is the end of constant (RLIMIT_XXX) in lower case (see man setrlimit for values); limit -1 means "unlimited"; example: set unlimited size for core file and max 1GB of virtual memory: "core:-1,as:1000000000"
-
type: string
-
values: any string
-
default value:
""
-
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>
où <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
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.
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
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 |
---|---|---|
|
Liste des CTCP supportés |
|
|
Version de WeeChat |
|
|
Version de WeeChat + version Git (1) |
|
|
Version Git (1) |
|
|
Date de compilation WeeChat |
|
|
Information sur l’OS |
|
|
Site WeeChat |
|
|
Site WeeChat, page téléchargement |
|
|
Date/heure courante |
|
|
Nom d’utilisateur sur le serveur |
|
|
Nom réel sur le serveur |
|
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 |
|
|
SOURCE |
|
|
TIME |
|
|
VERSION |
|
|
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 |
---|---|---|
|
erreur |
|
|
invité sur un canal |
|
|
join |
|
|
kick |
|
|
kill |
|
|
mode |
|
|
notice |
|
|
part |
|
|
quit |
|
|
topic |
|
|
wallops |
|
|
ctcp (envoyé ou reçu, dans un message privmsg ou notice) |
|
|
chaîne de mode utilisateur |
|
|
|
whois (connexion sécurisée) |
|
|
whois (absent) |
|
ison |
|
|
|
non absent |
|
|
absent |
|
|
whois (pseudo enregistré) |
|
|
whois (mode aide) |
|
|
whois (utilisateur) |
|
|
whois (serveur) |
|
|
whois (opérateur) |
|
|
whowas |
|
|
who (fin) |
|
|
whois (inactivité) |
|
|
whois (fin) |
|
|
whois (canaux) |
|
|
whois (utilisateur identifié) |
|
|
list (début) |
|
|
list (canal) |
|
|
list (fin) |
|
|
whois (a les privilèges oper) |
|
|
whois (machine) |
|
URL du canal |
|
|
date de création du canal |
|
|
|
whois (identifié comme) |
|
pas de titre ("topic") pour le canal |
|
|
titre du canal ("topic") |
|
|
infos sur le titre ("topic") |
|
|
|
whois (est un robot sur) |
|
|
whois (machine) |
|
invitation |
|
|
|
whois (est opéré comme) |
|
|
reop canal |
|
|
reop canal (fin) |
|
|
liste des invitations |
|
|
liste des invitations (fin) |
|
|
liste des exceptions |
|
|
liste des exceptions (fin) |
|
version du serveur |
|
|
|
who |
|
|
liste des utilisateurs sur le canal |
|
|
fin de la liste /names |
|
|
liste de bannissement |
|
|
fin de la liste de bannissement |
|
|
whowas (fin) |
|
|
whois (connexion depuis) |
|
|
whois (utilise les modes) |
|
|
pas de tel pseudo/canal |
|
|
pas de tel serveur |
|
pseudo erroné |
|
|
pseudo déjà en cours d’utilisation |
|
|
pas autorisé à changer de pseudo |
|
|
|
whois (connexion sécurisée) |
|
|
liste des "quiet" |
|
|
fin de la liste des "quiet" |
|
|
liste des pseudos surveillés |
|
|
liste des pseudos surveillés (fin) |
|
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
: send a CTCP action to a nick or channel
/action [-server <server>] <target>[,<target>...] <text> server: send to this server (internal name) target: nick or channel (may be mask, "*" = current channel) text: text to send
-
admin
: find information about the administrator of the server
/admin [<target>] target: server name
-
allchan
: execute a command on all channels of all connected servers
/allchan [-current] [-parted|-all] [-exclude=<channel>[,<channel>...]] <command> [-current] [-parted|-all] -include=<channel>[,<channel>...] <command> -current: execute command for channels of current server only -parted: execute command on parted channels (by default: execute command on active channels only) -all: execute command on all channels (active and parted) -exclude: exclude some channels (wildcard "*" is allowed) -include: include only some channels (wildcard "*" is allowed) command: command to execute (or text to send to buffer if command does not start with "/") Command and arguments are evaluated (see /help eval), the following variables are replaced: $server: server name $channel: channel name $nick: nick on server ${irc_server.xxx}: variable xxx in server ${irc_channel.xxx}: variable xxx in channel Examples: execute "/me is testing" on all channels: /allchan /me is testing say "hello" everywhere but not on #weechat: /allchan -exclude=#weechat hello say "hello" everywhere but not on #weechat and channels beginning with #linux: /allchan -exclude=#weechat,#linux* hello say "hello" on all channels beginning with #linux: /allchan -include=#linux* hello close all buffers with parted channels: /allchan -parted /close
-
allpv
: execute a command on all private buffers of all connected servers
/allpv [-current] [-exclude=<nick>[,<nick>...]] <command> [-current] -include=<nick>[,<nick>...] <command> -current: execute command for private buffers of current server only -exclude: exclude some nicks (wildcard "*" is allowed) -include: include only some nicks (wildcard "*" is allowed) command: command to execute (or text to send to buffer if command does not start with "/") Command and arguments are evaluated (see /help eval), the following variables are replaced: $server: server name $channel: channel name $nick: nick on server ${irc_server.xxx}: variable xxx in server ${irc_channel.xxx}: variable xxx in channel Examples: execute "/me is testing" on all private buffers: /allpv /me is testing say "hello" everywhere but not for nick foo: /allpv -exclude=foo hello say "hello" everywhere but not for nick foo and nicks beginning with bar: /allpv -exclude=foo,bar* hello say "hello" for all nicks beginning with bar: /allpv -include=bar* hello close all private buffers: /allpv /close
-
allserv
: execute a command on all connected servers
/allserv [-exclude=<server>[,<server>...]] <command> -include=<server>[,<server>...] <command> -exclude: exclude some servers (wildcard "*" is allowed) -include: include only some servers (wildcard "*" is allowed) command: command to execute (or text to send to buffer if command does not start with "/") Command and arguments are evaluated (see /help eval), the following variables are replaced: $server: server name $nick: nick on server ${irc_server.xxx}: variable xxx in server Examples: change nick on all servers: /allserv /nick newnick do a whois on my nick on all servers: /allserv /whois $nick
-
auth
: authenticate with SASL
/auth [<username> <password>] username: SASL username (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name) password: SASL password or path to file with private key (content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name) If username and password are not provided, the values from server options "sasl_username" and "sasl_password" (or "sasl_key") are used. Examples: authenticate with username/password defined in the server: /auth authenticate as a different user: /auth user2 password2 authenticate as a different user with mechanism ecdsa-nist256p-challenge: /auth user2 ${weechat_config_dir}/ecdsa2.pem
-
autojoin
: configure the "autojoin" server option
/autojoin add [<channel>...] addraw <channel1>[,<channel2>...] [<key1>[,<key2>...]] del [<channel>...] apply join sort [buffer] add: add current channel or a list of channels (with optional keys) to the autojoin option; if you are on the channel and the key is not provided, the key is read in the channel addraw: use the IRC raw format (same as /join command): all channels separated by commas, optional keys separated by commas del: delete current channel or a list of channels from the autojoin option channel: channel name key: key for the channel apply: set currently joined channels in the autojoin option join: join the channels in the autojoin option sort: sort alphabetically channels in the autojoin option; with "buffer": first sort by buffer number, then alphabetically Examples: /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
: ban nicks or hosts
/ban [<channel>] [<nick>...] channel: channel name nick: nick or host Without argument, this command displays the ban list for current channel.
-
cap
: client capability negotiation
/cap ls list req|ack [<capability>...] end ls: list the capabilities supported by the server list: list the capabilities currently enabled req: request a new capability or remove a capability (if starting with "-", for example: "-multi-prefix") ack: acknowledge capabilities which require client-side acknowledgement end: end the capability negotiation Without argument, "ls" and "list" are sent. Capabilities supported by WeeChat are: 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. The capabilities to automatically enable on servers can be set in option irc.server_default.capabilities (or by server in option irc.server.xxx.capabilities). Examples: display supported and enabled capabilities: /cap request capabilities multi-prefix and away-notify: /cap req multi-prefix away-notify request capability extended-join, remove capability multi-prefix: /cap req extended-join -multi-prefix remove capability away-notify: /cap req -away-notify
-
connect
: connect to IRC server(s)
/connect [<server>...] [-<option>[=<value>]] [-no<option>] [-nojoin] [-switch] -all|-auto|-open [-nojoin] [-switch] server: server name, which can be: - internal server name (added by /server add, recommended usage) - hostname/port or IP/port, port is 6697 by default for TLS, 6667 otherwise - URL with format: irc[6][s]://[nickname[:password]@]irc.example.org[:port][/#channel1][,#channel2[...]] Note: for an address/IP/URL, a temporary server is added (NOT SAVED), see /help irc.look.temporary_servers option: set option for server (for boolean option, value can be omitted) nooption: set boolean option to "off" (for example: -notls) -all: connect to all servers defined in configuration -auto: connect to servers with autoconnect enabled -open: connect to all opened servers that are not currently connected -nojoin: do not join any channel (even if autojoin is enabled on server) -switch: switch to next server address To disconnect from a server or stop any connection attempt, use command /disconnect. Examples: /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
: send a CTCP message (Client-To-Client Protocol)
/ctcp [-server <server>] <target>[,<target>...] <type> [<arguments>] server: send to this server (internal name) target: nick or channel ("*" = current channel) type: CTCP type (examples: "version", "ping", etc.) arguments: arguments for CTCP Examples: /ctcp toto time /ctcp toto version /ctcp * version
-
cycle
: leave and rejoin a channel
/cycle [<channel>[,<channel>...]] [<message>] channel: channel name message: part message (displayed to other users)
-
dcc
: start a DCC (passive file transfer or direct chat)
/dcc chat <nick> send <nick> <file> nick: nick file: filename (on local host) Examples: /dcc chat toto /dcc send toto /home/foo/bar.txt
-
dehalfop
: remove channel half-operator status from nick(s)
/dehalfop <nick>... * -yes nick: nick or mask (wildcard "*" is allowed) *: remove channel half-operator status from everybody on channel except yourself
-
deop
: remove channel operator status from nick(s)
/deop <nick>... * -yes nick: nick or mask (wildcard "*" is allowed) *: remove channel operator status from everybody on channel except yourself
-
devoice
: remove voice from nick(s)
/devoice <nick>... * -yes nick: nick or mask (wildcard "*" is allowed) *: remove voice from everybody on channel
-
die
: shutdown the server
/die [<target>] target: server name
-
disconnect
: disconnect from one or all IRC servers
/disconnect [<server>|-all|-pending [<reason>]] server: internal server name -all: disconnect from all servers -pending: cancel auto-reconnection on servers currently reconnecting reason: reason for the "quit"
-
halfop
: give channel half-operator status to nick(s)
/halfop <nick>... * -yes nick: nick or mask (wildcard "*" is allowed) *: give channel half-operator status to everybody on channel
-
ignore
: ignore nicks/hosts from servers or channels
/ignore list add|addreplace [re:]<nick> [<server> [<channel>]] del <number>|-all list: list all ignores add: add an ignore addreplace: add or replace an existing ignore nick: nick or hostname; can be a POSIX extended regular expression if "re:" is given or a mask using "*" to replace zero or more chars (the regular expression can start with "(?-i)" to become case-sensitive) del: delete an ignore number: number of ignore to delete (look at list to find it) -all: delete all ignores server: internal server name where ignore is working channel: channel name where ignore is working Note: if option irc.look.ignore_tag_messages is enabled, the ignored messages are just tagged with "irc_ignored" instead of being completely removed. Examples: /ignore add toto /ignore add toto@domain.com libera /ignore add toto*@*.domain.com libera #weechat
-
info
: get information describing the server
/info [<target>] target: server name
-
invite
: invite a nick on a channel
/invite <nick>... [<channel>] nick: nick channel: channel name
-
ison
: check if a nick is currently on IRC
/ison <nick>... nick: nick
-
join
: join a channel
/join [-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]] -noswitch: do not switch to new buffer server: send to this server (internal name) channel: channel name key: key to join the channel (channels with a key must be the first in list) Examples: /join #weechat /join #protectedchan,#weechat key /join -server libera #weechat /join -noswitch #weechat
-
kick
: kick a user out of a channel
/kick [<channel>] <nick> [<reason>] channel: channel name nick: nick reason: reason (evaluated, see /help eval; special variables ${nick} (self nick), ${target} (target nick), ${channel} and ${server} are replaced by their values)
-
kickban
: kick a user out of a channel and ban the host
/kickban [<channel>] <nick> [<reason>] channel: channel name nick: nick reason: reason (evaluated, see /help eval; special variables ${nick} (self nick), ${target} (target nick), ${channel} and ${server} are replaced by their values) It is possible to kick/ban with a mask, nick will be extracted from mask and replaced by "*". Example: /kickban toto!*@host.com
-
kill
: close client-server connection
/kill <nick> [<reason>] nick: nick reason: reason
-
knock
: send a notice to an invitation-only channel, requesting an invite
/knock <channel> [<message>] channel: channel name message: message to send
-
links
: list all server names which are known by the server answering the query
/links [[<target>] <server_mask>] target: this remote server should answer the query server_mask: list of servers must match this mask
-
list
: list channels and their topics
/list [-server <server>] [<channel>[,<channel>...]] [<target>] [-server <server>] [-raw *|<regex>] -up|-down [<number>] -left|-right [<percent>] -go <line>|end -join -export <filename> server: send to this server (internal name) channel: channel name target: server name -raw: display result on server buffer instead of a dedicated buffer regex: POSIX extended regular expression used to filter results (case-insensitive, can start by "(?-i)" to become case-sensitive); the special value "*" doesn't filter results -up: move the selected line up by "number" lines -down: move the selected line down by "number" lines -left: scroll the buffer by "percent" of width on the left -right: scroll the buffer by "percent" of width on the right -go: select a line by number, first line number is 0 ("end" to select the last line) -join: join the channel on the selected line -export: export list of channels to a file For keys, input and mouse actions on the buffer, see key bindings in User's guide. Sort keys on /list buffer: name: channel name (eg: "##test") name2: channel name without prefix (eg: "test") users: number of users on channel topic: channel topic Examples: list all channels on server buffer (no dedicated buffer and can be slow on large networks): /list -raw * list all channels beginning with "#weechat" on server buffer (no dedicated buffer and can be slow on large networks): /list -raw #weechat.* list all channels on a dedicated buffer (can be slow on large networks): /list list channel #weechat on a dedicated buffer: /list #weechat on /list buffer: channels with "weechat" in name: n:weechat channels with at least 100 users: u:100 channels with "freebsd" (case-insensitive) in topic and more than 10 users: c:${topic} =- freebsd && ${users} > 10 sort channels by users (big channels first), then name2 (name without prefix): s:-users,name2
-
lusers
: get statistics about the size of the IRC network
/lusers [<mask> [<target>]] mask: servers matching the mask only target: server for forwarding request
-
map
: show a graphical map of the IRC network
-
me
: send a CTCP action to the current channel
/me <message> message: message to send
-
mode
: change channel or user mode
/mode [<channel>] [+|-]o|p|s|i|t|n|m|l|b|e|v|k [<arguments>] <nick> [+|-]i|s|w|o channel: channel name to modify (default is current one) Channel modes: o: give/take channel operator privileges p: private channel s: secret channel i: invite-only channel t: topic settable by channel operator only n: no messages to channel from clients on the outside m: moderated channel l: set the user limit to channel b: set a ban mask to keep users out e: set exception mask v: give/take the ability to speak on a moderated channel k: set a channel key (password) User modes: nick: nick to modify i: invisible s: user receives server notices w: user receives wallops o: operator List of modes is not comprehensive, you should read documentation about your server to see all possible modes. Examples: /mode #weechat +t /mode nick +i
-
motd
: get the "Message Of The Day"
/motd [<target>] target: server name
-
msg
: send message to a nick or channel
/msg [-server <server>] <target>[,<target>...] <text> server: send to this server (internal name) target: nick or channel (may be mask, "*" = current channel) text: text to send
-
names
: list nicks on channels
/names [-count | -x] [<channel>[,<channel>...]] -count: display only number of users -x: display only users with this mode: -o for ops, -h for halfops, -v for voiced, etc. and -* for regular users channel: channel name
-
nick
: change current nick
/nick [-all] <nick> -all: set new nick for all connected servers nick: new nick
-
notice
: send notice message to user
/notice [-server <server>] <target> <text> server: send to this server (internal name) target: nick or channel name text: text to send
-
notify
: add a notification for presence or away status of nicks on servers
/notify add|addreplace <nick> [<server> [-away]] del <nick>|-all [<server>] add: add a notification addreplace: add or replace a notification nick: nick server: internal server name (by default current server) -away: notify when away message is changed (by doing whois on nick) del: delete a notification -all: delete all notifications Without argument, this command displays notifications for current server (or all servers if command is issued on core buffer). Examples: /notify add toto /notify add toto libera /notify add toto libera -away
-
op
: give channel operator status to nick(s)
/op <nick>... * -yes nick: nick or mask (wildcard "*" is allowed) *: give channel operator status to everybody on channel
-
oper
: get operator privileges
/oper <user> <password> user: user password: password
-
part
: leave a channel
/part [<channel>[,<channel>...]] [<message>] channel: channel name message: part message (displayed to other users)
-
ping
: send a ping to server
/ping <target1> [<target2>] target1: server target2: forward ping to this server
-
pong
: answer to a ping message
/pong <daemon> [<daemon2>] daemon: daemon who has responded to Ping message daemon2: forward message to this daemon
-
query
: send a private message to a nick
/query [-noswitch] [-server <server>] <nick>[,<nick>...] [<text>] -noswitch: do not switch to new buffer server: send to this server (internal name) nick: nick text: text to send
-
quiet
: quiet nicks or hosts
/quiet [<channel>] [<nick>...] channel: channel name nick: nick or host Without argument, this command displays the quiet list for current channel.
-
quote
: send raw data to server without parsing
/quote [-server <server>] <data> server: send to this server (internal name) data: raw data to send
-
reconnect
: reconnect to server(s)
/reconnect <server>... [-nojoin] [-switch] -all [-nojoin] [-switch] server: internal server name -all: reconnect to all servers -nojoin: do not join any channel (even if autojoin is enabled on server) -switch: switch to next server address
-
rehash
: tell the server to reload its config file
/rehash [<option>] option: extra option, for some servers
-
remove
: force a user to leave a channel
/remove [<channel>] <nick> [<reason>] channel: channel name nick: nick reason: reason (special variables $nick, $channel and $server are replaced by their values)
-
restart
: tell the server to restart itself
/restart [<target>] target: server name
-
rules
: request the server rules
-
sajoin
: force a user to join channel(s)
/sajoin <nick> <channel>[,<channel>...] nick: nick channel: channel name
-
samode
: change mode on channel, without having operator status
/samode [<channel>] <mode> channel: channel name mode: mode for channel
-
sanick
: force a user to use another nick
/sanick <nick> <new_nick> nick: nick new_nick: new nick
-
sapart
: force a user to leave channel(s)
/sapart <nick> <channel>[,<channel>...] nick: nick channel: channel name
-
saquit
: force a user to quit server with a reason
/saquit <nick> <reason> nick: nick reason: reason
-
server
: list, add or remove IRC servers
/server list|listfull [-connected] [<name>] add|addreplace <name> <hostname>[/<port>] [-temp] [-<option>[=<value>]] [-no<option>] copy|rename <name> <new_name> reorder <name>... open <name>|-all [<name>...] del|keep <name> deloutq|jump raw [<filter>] list: list servers (without argument, this list is displayed) listfull: list servers with detailed info for each server -connected: list only connected servers add: add a new server addreplace: add or replace an existing server name: server name, for internal and display use; this name is used to connect to the server (/connect name) and to set server options: irc.server.name.xxx hostname: name or IP address of server, with optional port (default: 6697 for TLS, 6667 otherwise), many addresses can be separated by a comma -temp: add a temporary server (not saved) option: set option for server (for boolean option, value can be omitted) nooption: set boolean option to "off" (for example: -notls) copy: duplicate a server rename: rename a server reorder: reorder list of servers open: open the server buffer without connecting keep: keep server in config file (for temporary servers only) del: delete a server deloutq: delete messages out queue for all servers (all messages WeeChat is currently sending) jump: jump to server buffer raw: open buffer with raw IRC data filter: set a new filter to see only matching messages (this filter can be used as input in raw IRC data buffer as well); allowed formats are: `*`: show all messages (no filter) `xxx`: show only messages containing "xxx" `s:xxx`: show only messages for server "xxx" `f:xxx`: show only messages with a flag: recv (message received), sent (message sent), modified (message modified by a modifier), redirected (message redirected) `m:xxx`: show only IRC command "xxx" `c:xxx`: show only messages matching the evaluated condition "xxx", using following variables: output of function irc_message_parse (like nick, command, channel, text, etc., see function info_get_hashtable in plugin API reference for the list of all variables), date (format: "%FT%T.%f", see function util_strftimeval in Plugin API reference), server, recv, sent, modified, redirected Examples: /server listfull /server list -connected /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
: register a new service
/service <nick> <reserved> <distribution> <type> <reserved> <info> distribution: visibility of service type: reserved for future usage
-
servlist
: list services currently connected to the network
/servlist [<mask> [<type>]] mask: list only services matching this mask type: list only services of this type
-
setname
: set real name
/setname <realname> realname: new real name
-
squery
: deliver a message to a service
/squery <service> <text> service: name of service text: text to send
-
squit
: disconnect server links
/squit <target> <comment> target: server name comment: comment
-
stats
: query statistics about server
/stats [<query> [<target>]] query: c/h/i/k/l/m/o/y/u (see RFC1459) target: server name
-
summon
: give users who are on a host running an IRC server a message asking them to please join IRC
/summon <user> [<target> [<channel>]] user: username target: server name channel: channel name
-
time
: query local time from server
/time [<target>] target: query time from specified server
-
topic
: get/set channel topic
/topic [<channel>] [<topic>|-delete] channel: channel name topic: new topic -delete: delete channel topic
-
trace
: find the route to specific server
/trace [<target>] target: server name
-
unban
: unban nicks or hosts
/unban [<channel>] <nick>|<number>|<n1>-<n2>... channel: channel name nick: nick or host number: ban number (as displayed by command /ban) n1: interval start number n2: interval end number
-
unquiet
: unquiet nicks or hosts
/unquiet [<channel>] <nick>|<number>|<n1>-<n2>... channel: channel name nick: nick or host number: quiet number (as displayed by command /quiet) n1: interval start number n2: interval end number
-
userhost
: return a list of information about nicks
/userhost <nick>... nick: nick
-
users
: list of users logged into the server
/users [<target>] target: server name
-
version
: give the version info of nick or server (current or specified)
/version [<target>|<nick>] target: server name nick: nick
-
voice
: give voice to nick(s)
/voice <nick>... * -yes nick: nick or mask (wildcard "*" is allowed) *: give voice to everybody on channel
-
wallchops
: send a notice to channel ops
/wallchops [<channel>] <text> channel: channel name text: text to send
-
wallops
: send a message to all currently connected users who have set the "w" user mode for themselves
/wallops <text> text: text to send
-
who
: generate a query which returns a list of information
/who [<mask> [o]] mask: only information which match this mask o: only operators are returned according to the mask supplied
-
whois
: query information about user(s)
/whois [<target>] [<nick>[,<nick>...]] target: server name nick: nick (may be a mask) Without argument, this command will do a whois on: - your own nick if buffer is a server/channel - remote nick if buffer is a private. If option irc.network.whois_double_nick is enabled, two nicks are sent (if only one nick is given), to get idle time in answer.
-
whowas
: ask for information about a nick which no longer exists
/whowas <nick>[,<nick>...] [<count> [<target>]] nick: nick count: number of replies to return (full search if negative number) target: reply should match this mask
8.10. Options
Sections dans le fichier irc.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
|
|
Couleurs. |
|
|
Options réseau. |
|
|
Tampon cible pour les messages IRC (les options peuvent être ajoutées/supprimées dans la section). |
|
|
Réponses CTCP (les options peuvent être ajoutées/supprimées dans la section). |
|
Personnes ignorées. |
|
|
|
Valeurs par défaut pour serveurs (les options peuvent être ajoutées/supprimées dans la section). |
|
|
Serveurs. |
Options :
-
-
description: color for nick in input bar
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightcyan
-
-
-
description: color for lag indicator, when counting (pong not received from server, lag is increasing)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for lag indicator, when pong has been received from server
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: color for nick modes in bar item "input_prompt"
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
irc.color.item_tls_version_deprecated
-
description: color for deprecated TLS versions in bar item "tls_version"
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
irc.color.item_tls_version_insecure
-
description: color for insecure TLS versions in bar item "tls_version"
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
red
-
-
-
description: color for higher supported TLS version in bar item "tls_version"
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
irc.color.list_buffer_line_selected
-
description: color for selected line on /list buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
irc.color.list_buffer_line_selected_bg
-
description: background color for selected line on /list buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
24
-
-
-
description: color for text in account messages
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
-
description: color for text in "chghost" messages
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
-
description: color for text in join messages
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
-
description: color for text in kick/kill messages
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
red
-
-
-
description: color for text in part/quit messages
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
red
-
-
-
description: color for text in "setname" messages
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
-
description: remap mirc colors in messages using a hashtable (used only for standard colors, not RGB colors): keys are "fg,bg" as integers between -1 (not specified) and 15, values are WeeChat color names or numbers (format is: "1,-1:color1;2,7:color2"), example: "1,-1:darkgray;1,2:white,blue" to remap black to "darkgray" and black on blue to "white,blue"; default WeeChat colors for IRC codes: 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: string
-
values: any string
-
default value:
"1,-1:darkgray"
-
-
-
description: color for nick prefixes using mode char (o=op, h=halfop, v=voice, ..), format is: "o:color1;h:color2;v:color3" (if a mode is not found, WeeChat will try with next modes received from server ("PREFIX"); a special mode "*" can be used as default color if no mode has been found in list)
-
type: string
-
values: any string
-
default value:
"y:lightred;q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue"
-
-
-
description: color for text "Notice" in notices
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
-
description: color for reason in kick/kill messages
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for reason in part/quit messages
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
244
-
-
-
description: remap terminal color numbers in messages using a hashtable (used only for RGB colors as hexadecimal, which are first translated to terminal color numbers): keys are "fg,bg" as integers between -1 (not specified) and 255, values are WeeChat color names or numbers (format is: "1,-1:color1;2,7:color2"), example: "0,-1:darkgray;0,90:white,blue" to remap black to "darkgray" and black on dark magenta to "white,blue"
-
type: string
-
values: any string
-
default value:
"0,-1:darkgray"
-
-
-
description: color for current channel topic (when joining a channel or using /topic)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: color for new channel topic (when topic is changed)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
36
-
-
-
description: color for old channel topic (when topic is changed)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
244
-
-
-
description: format for CTCP reply or empty string for blocking CTCP (no reply); content is evaluated, see /help eval; following variables are replaced: ${clientinfo}: list of supported CTCP, ${version}: WeeChat version, ${git}: Git version, ${versiongit}: WeeChat version and Git version, ${compilation}: compilation date, ${osinfo}: info about OS, ${site}: WeeChat site, ${download}: WeeChat site, download page, ${time}: current date and time as text, ${username}: username on server, ${realname}: realname on server
-
type: string
-
values: any string
-
default value:
"${clientinfo}"
-
-
-
description: format for CTCP reply or empty string for blocking CTCP (no reply); content is evaluated, see /help eval; following variables are replaced: ${clientinfo}: list of supported CTCP, ${version}: WeeChat version, ${git}: Git version, ${versiongit}: WeeChat version and Git version, ${compilation}: compilation date, ${osinfo}: info about OS, ${site}: WeeChat site, ${download}: WeeChat site, download page, ${time}: current date and time as text, ${username}: username on server, ${realname}: realname on server
-
type: string
-
values: any string
-
default value:
"${download}"
-
-
-
description: format for CTCP reply or empty string for blocking CTCP (no reply); content is evaluated, see /help eval; following variables are replaced: ${clientinfo}: list of supported CTCP, ${version}: WeeChat version, ${git}: Git version, ${versiongit}: WeeChat version and Git version, ${compilation}: compilation date, ${osinfo}: info about OS, ${site}: WeeChat site, ${download}: WeeChat site, download page, ${time}: current date and time as text, ${username}: username on server, ${realname}: realname on server
-
type: string
-
values: any string
-
default value:
"${time}"
-
-
-
description: format for CTCP reply or empty string for blocking CTCP (no reply); content is evaluated, see /help eval; following variables are replaced: ${clientinfo}: list of supported CTCP, ${version}: WeeChat version, ${git}: Git version, ${versiongit}: WeeChat version and Git version, ${compilation}: compilation date, ${osinfo}: info about OS, ${site}: WeeChat site, ${download}: WeeChat site, download page, ${time}: current date and time as text, ${username}: username on server, ${realname}: realname on server
-
type: string
-
values: any string
-
default value:
"WeeChat ${version}"
-
-
irc.look.buffer_open_before_autojoin
-
description: open channel buffer before the JOIN is received from server when it is auto joined (with server option "autojoin"); this is useful to open channels with always the same buffer numbers on startup
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.look.buffer_open_before_join
-
description: open channel buffer before the JOIN is received from server when it is manually joined (with /join command)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
irc.look.buffer_switch_autojoin
-
description: auto switch to channel buffer when it is auto joined (with server option "autojoin")
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: auto switch to channel buffer when it is manually joined (with /join command)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: use nick color in output of /names (or list of nicks displayed when joining a channel)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
irc.look.color_nicks_in_nicklist
-
description: use nick color in nicklist
-
type: boolean
-
values: on, off
-
default value:
off
-
-
irc.look.color_nicks_in_server_messages
-
description: use nick color in messages from server
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.look.color_pv_nick_like_channel
-
description: use same nick color for channel and private
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: time format used in answer to message CTCP TIME (see man strftime for date/time specifiers, extra specifiers are supported, see function util_strftimeval in Plugin API reference)
-
type: string
-
values: any string
-
default value:
"%a, %d %b %Y %T %z"
-
-
irc.look.display_account_message
-
description: display ACCOUNT messages received when capability account-notify is enabled
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display message when (un)marking as away (off: do not display/send anything, local: display locally, channel: send action to channels)
-
type: enum
-
values: off, local, channel
-
default value:
local
-
-
-
description: display CTCP message even if it is blocked
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display CTCP reply sent by WeeChat
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display CTCP message even if it is unknown CTCP
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.look.display_extended_join
-
description: display extra information in the JOIN messages: account name and real name (capability extended-join must be enabled)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display host in join messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.look.display_host_join_local
-
description: display host in join messages from local client
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display host in notice messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display host in part/quit messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display host in wallops messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: comma-separated list of messages to display after joining a channel: 324 = channel modes, 329 = channel creation date, 332 = topic, 333 = nick/date for topic, 353 = names on channel, 366 = names count
-
type: string
-
values: any string
-
default value:
"329,332,333,366"
-
-
-
description: display old topic when channel topic is changed
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display remote away message only once in private
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display a message in private when user is back (after quit on server)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.look.display_pv_nick_change
-
description: display nick change in private
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.look.display_pv_warning_address
-
description: display a warning in private buffer if the address of remote nick has changed; this option is disabled by default because servers like bitlbee are causing this warning to be displayed when it is not expected (the address of remote nick changes multiple times on login)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: comma separated list of words to highlight in channel buffers (case-insensitive, use "(?-i)" at beginning of words to make them case-sensitive; special variables $nick, $channel and $server are replaced by their values), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"
-
type: string
-
values: any string
-
default value:
"$nick"
-
-
-
description: comma separated list of words to highlight in private buffers (case-insensitive, use "(?-i)" at beginning of words to make them case-sensitive; special variables $nick, $channel and $server are replaced by their values), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"
-
type: string
-
values: any string
-
default value:
"$nick"
-
-
-
description: comma separated list of words to highlight in server buffers (case-insensitive, use "(?-i)" at beginning of words to make them case-sensitive; special variables $nick, $channel and $server are replaced by their values), these words are added to buffer property "highlight_words" only when buffer is created (it does not affect current buffers), an empty string disables default highlight on nick, examples: "$nick", "(?-i)$nick"
-
type: string
-
values: any string
-
default value:
"$nick"
-
-
irc.look.highlight_tags_restrict
-
description: restrict highlights to these tags on irc buffers (to have highlight on user messages but not server messages); tags must be separated by a comma and "+" can be used to make a logical "and" between tags; wildcard "*" is allowed in tags; an empty value allows highlight on any tag
-
type: string
-
values: any string
-
default value:
"irc_privmsg,irc_notice"
-
-
-
description: add tag "irc_ignored" in ignored messages instead of removing them; that way messages can be filtered with /filter command and toggled on-demand
-
type: boolean
-
values: on, off
-
default value:
off
-
-
irc.look.item_channel_modes_hide_args
-
description: hide channel modes arguments if at least one of these modes is in channel modes ("*" to always hide all arguments, empty value to never hide arguments); example: "kf" to hide arguments if "k" or "f" are in channel modes
-
type: string
-
values: any string
-
default value:
"k"
-
-
-
description: name of bar item where IRC server is displayed (for status bar)
-
type: enum
-
values: buffer_plugin, buffer_name
-
default value:
buffer_plugin
-
-
-
description: display nick modes in bar item "input_prompt"
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: display nick prefix in bar item "input_prompt"
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.look.join_auto_add_chantype
-
description: automatically add channel type in front of channel name on command /join if the channel name does not start with a valid channel type for the server; for example: "/join weechat" will in fact send: "/join #weechat"
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: use a dedicated buffer for the output of /list
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.look.list_buffer_format_export
-
description: format of each channel exported in a file (note: content is evaluated, see /help list)
-
type: string
-
values: any string
-
default value:
"${name} (${users}): \"${topic}\""
-
-
irc.look.list_buffer_scroll_horizontal
-
description: left/right scroll in /list buffer (percent of width)
-
type: integer
-
values: 1 .. 100
-
default value:
10
-
-
-
description: comma-separated list of fields to sort channels (see /help list for a list of fields); char "-" can be used before field to reverse order, char "~" can be used to do a case-insensitive comparison; example: "-count,~name" for biggest channels first then case-insensitive sort on name
-
type: string
-
values: any string
-
default value:
"~name2"
-
-
irc.look.list_buffer_topic_strip_colors
-
description: strip channel topic colors in /list buffer
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: default target buffer for msgbuffer options when target is private and that private buffer is not found
-
type: enum
-
values: current, server
-
default value:
current
-
-
-
description: force position of new channel in list of buffers (none = default position (should be last buffer), next = current buffer + 1, near_server = after last channel/pv of server)
-
type: enum
-
values: none, next, near_server
-
default value:
none
-
-
-
description: force position of new /list buffer in list of buffers (none = default position (should be last buffer), next = current buffer + 1, near_server = after last channel/pv of server)
-
type: enum
-
values: none, next, near_server
-
default value:
none
-
-
-
description: force position of new private in list of buffers (none = default position (should be last buffer), next = current buffer + 1, near_server = after last channel/pv of server)
-
type: enum
-
values: none, next, near_server
-
default value:
none
-
-
irc.look.nick_completion_smart
-
description: smart completion for nicks (completes first with last speakers): speakers = all speakers (including highlights), speakers_highlights = only speakers with highlight
-
type: enum
-
values: off, speakers, speakers_highlights
-
default value:
speakers
-
-
-
description: display nick mode (op, voice, ...) before nick (none = never, prefix = in prefix only (default), action = in action messages only, both = prefix + action messages)
-
type: enum
-
values: none, prefix, action, both
-
default value:
prefix
-
-
-
description: display a space if nick mode is enabled but nick has no mode (not op, voice, ...)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: comma separated list of nicks for which passwords will be hidden when a message is sent, for example to hide password in message displayed by "/msg nickserv identify password", example: "nickserv,nickbot"
-
type: string
-
values: any string
-
default value:
"nickserv"
-
-
-
description: display notices as private messages (if auto, use private buffer if found)
-
type: enum
-
values: auto, never, always
-
default value:
auto
-
-
irc.look.notice_nicks_disable_notify
-
description: comma separated list of nicks for which notifications are disabled in notice messages (comparison is case-insensitive)
-
type: string
-
values: any string
-
default value:
"chanserv,nickserv"
-
-
irc.look.notice_welcome_redirect
-
description: automatically redirect channel welcome notices to the channel buffer; such notices have the nick as target but a channel name in beginning of notice message, for example the ENTRYMSG notices sent by Atheme IRC Services which look like: "[#channel] Welcome to this channel..."
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: comma separated list of tags used in a welcome notices redirected to a channel, for example: "notify_private"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: comma separated list of tags used in messages displayed by notify when a nick joins or quits server (result of command ison or monitor), for example: "notify_message", "notify_private" or "notify_highlight"
-
type: string
-
values: any string
-
default value:
"notify_message"
-
-
-
description: comma separated list of tags used in messages displayed by notify when a nick away status changes (result of command whois), for example: "notify_message", "notify_private" or "notify_highlight"
-
type: string
-
values: any string
-
default value:
"notify_message"
-
-
irc.look.open_pv_buffer_echo_msg
-
description: open a private buffer on self message when capability echo-message is enabled
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: close buffer when /part is issued on a channel
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: merge private buffers
-
type: enum
-
values: independent, merge_by_server, merge_all
-
default value:
independent
-
-
-
description: comma separated list of tags used in private messages, for example: "notify_message", "notify_private" or "notify_highlight"
-
type: string
-
values: any string
-
default value:
"notify_private"
-
-
-
description: number of raw messages to save in memory when raw data buffer is closed (messages will be displayed when opening raw data buffer)
-
type: integer
-
values: 0 .. 65535
-
default value:
256
-
-
-
description: merge server buffers; this option has no effect if a layout is saved and is conflicting with this value (see /help layout)
-
type: enum
-
values: merge_with_core, merge_without_core, independent
-
default value:
merge_with_core
-
-
-
description: filter join/part/quit/nick messages for a nick if not speaking for some minutes on channel (you must create a filter on tag "irc_smart_filter", see /help filter)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: enable smart filter for "account" messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: enable smart filter for "chghost" messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: delay for filtering join/part/quit messages (in minutes): if the nick did not speak during the last N minutes, the join/part/quit is filtered
-
type: integer
-
values: 1 .. 10080
-
default value:
5
-
-
-
description: enable smart filter for "join" messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.look.smart_filter_join_unmask
-
description: delay for unmasking a join message that was filtered with tag "irc_smart_filter" (in minutes): if a nick has joined max N minutes ago and then says something on channel (message, notice or update on topic), the join is unmasked, as well as nick changes after this join (0 = disable: never unmask a join)
-
type: integer
-
values: 0 .. 10080
-
default value:
30
-
-
-
description: enable smart filter for "mode" messages: "*" to filter all modes, "+" to filter all modes in server prefixes (for example "ovh"), "xyz" to filter only modes x/y/z, "-xyz" to filter all modes but not x/y/z; examples: "ovh": filter modes o/v/h, "-bkl": filter all modes but not b/k/l
-
type: string
-
values: any string
-
default value:
""+
-
-
-
description: enable smart filter for "nick" messages (nick changes)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: enable smart filter for "part" and "quit" messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: enable smart filter for "setname" messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: enable automatic addition of temporary servers with command /connect
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: strip colors in topic (used only when displaying buffer title)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: display nicks typing on the channel in bar item "typing" (option typing.look.enabled_nicks must be enabled and capability "message-tags" must be enabled on the server)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: send self typing status to channels so that other users see when you are typing a message (option typing.look.enabled_self must be enabled and capability "message-tags" must be enabled on the server)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
irc.network.autoreconnect_delay_growing
-
description: growing factor for autoreconnect delay to server (1 = always same delay, 2 = delay*2 for each retry, etc.)
-
type: integer
-
values: 1 .. 100
-
default value:
2
-
-
irc.network.autoreconnect_delay_max
-
description: maximum autoreconnect delay to server (in seconds, 0 = no maximum)
-
type: integer
-
values: 0 .. 604800
-
default value:
600
-
-
-
description: default ban mask for commands /ban, /unban and /kickban; variables $nick, $user, $ident and $host are replaced by their values (extracted from "nick!user@host"); $ident is the same as $user if $user does not start with "~", otherwise it is set to "*"; this default mask is used only if WeeChat knows the host for the nick
-
type: string
-
values: any string
-
default value:
"*!$ident@$host"
-
-
-
description: when off, colors codes are ignored in incoming messages
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: allow user to send colors with special codes (ctrl-c + a code and optional color: b=bold, cxx=color, cxx,yy=color+background, i=italic, o=disable color/attributes, r=reverse, u=underline)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: interval between two checks for lag (in seconds, 0 = never check)
-
type: integer
-
values: 0 .. 604800
-
default value:
60
-
-
-
description: maximum lag (in seconds): if this lag is reached, WeeChat will consider that the answer from server (pong) will never be received and will give up counting the lag (0 = never give up)
-
type: integer
-
values: 0 .. 604800
-
default value:
1800
-
-
-
description: minimum lag to show (in milliseconds)
-
type: integer
-
values: 0 .. 86400000
-
default value:
500
-
-
-
description: reconnect to server if lag is greater than or equal to this value (in seconds, 0 = never reconnect); this value must be less than or equal to irc.network.lag_max
-
type: integer
-
values: 0 .. 604800
-
default value:
300
-
-
irc.network.lag_refresh_interval
-
description: interval between two refreshes of lag item, when lag is increasing (in seconds)
-
type: integer
-
values: 1 .. 3600
-
default value:
1
-
-
-
description: interval between two checks for notify with IRC command "ison" (in minutes)
-
type: integer
-
values: 1 .. 10080
-
default value:
1
-
-
irc.network.notify_check_whois
-
description: interval between two checks for notify with IRC command "whois" (in minutes)
-
type: integer
-
values: 1 .. 10080
-
default value:
5
-
-
irc.network.sasl_fail_unavailable
-
description: cause SASL authentication failure when SASL is requested but unavailable on the server; when this option is enabled, it has effect only if option "sasl_fail" is set to "reconnect" or "disconnect" in the server
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.network.send_unknown_commands
-
description: send unknown commands to server
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: double the nick in /whois command (if only one nick is given), to get idle time in answer; for example: "/whois nick" will send "whois nick nick"
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: list of hostname/port or IP/port for server (separated by comma) (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: delay in milliseconds between two messages sent to server (anti-flood protection); 0 = disable protection and always send messages immediately (not recommended because the server can close the connection if you send several messages in a short time); internally there are queues with different priorities: when connecting to the server all messages are sent immediately and your messages have higher priority than some automatic messages that are sent in background by WeeChat
-
type: integer
-
values: 0 .. 60000
-
default value:
2000
-
-
irc.server_default.autoconnect
-
description: automatically connect to server when WeeChat is starting
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: comma separated list of channels to join after connection to server (and after executing command + delay if they are set); the channels that require a key must be at beginning of the list, and all the keys must be given after the channels (separated by a space) (example: "#channel1,#channel2,#channel3 key1,key2" where #channel1 and #channel2 are protected by key1 and key2) (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
irc.server_default.autojoin_delay
-
description: delay (in seconds) before auto-join of channels (example: give some time for authentication before joining channels)
-
type: integer
-
values: 0 .. 3600
-
default value:
0
-
-
irc.server_default.autojoin_dynamic
-
description: set automatically the "autojoin" option according to the channels you manually join and part with commands /join and /part
-
type: boolean
-
values: on, off
-
default value:
off
-
-
irc.server_default.autoreconnect
-
description: automatically reconnect to server when disconnected
-
type: boolean
-
values: on, off
-
default value:
on
-
-
irc.server_default.autoreconnect_delay
-
description: delay (in seconds) before trying again to reconnect to server
-
type: integer
-
values: 1 .. 65535
-
default value:
10
-
-
-
description: automatically rejoin channels after kick; you can define a buffer local variable on a channel to override this value (name of variable: "autorejoin", value: "on" or "off")
-
type: boolean
-
values: on, off
-
default value:
off
-
-
irc.server_default.autorejoin_delay
-
description: delay (in seconds) before autorejoin (after kick)
-
type: integer
-
values: 0 .. 86400
-
default value:
30
-
-
-
description: interval between two checks for away (in minutes, 0 = never check)
-
type: integer
-
values: 0 .. 10080
-
default value:
0
-
-
irc.server_default.away_check_max_nicks
-
description: do not check away nicks on channels with high number of nicks (0 = unlimited)
-
type: integer
-
values: 0 .. 1000000
-
default value:
25
-
-
irc.server_default.capabilities
-
description: comma-separated list of client capabilities to enable for server if they are available (see /help cap for a list of capabilities supported by WeeChat); "*" enables all capabilities by default (supported by both server and WeeChat); wildcard "*" is allowed; a capability beginning with "!" is excluded (example: "*,!account-*,!extended-join")
-
type: string
-
values: any string
-
default value:
"*"
-
-
irc.server_default.charset_message
-
description: part of the IRC message (received or sent) which is decoded/encoded to the target charset; message = the whole IRC message (default), channel = starting from the channel name only (if found, with fallback on text), text = starting from the text only (you should try this value if you have issues with the channel name encoding)
-
type: enum
-
values: message, channel, text
-
default value:
message
-
-
-
description: command(s) to run after connection to server and before auto-join of channels (many commands can be separated by ";", use "\;" for a semicolon, special variables $nick, $channel and $server are replaced by their values) (note: commands are evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
irc.server_default.command_delay
-
description: delay (in seconds) before execution of command
-
type: integer
-
values: 0 .. 3600
-
default value:
0
-
-
irc.server_default.connection_timeout
-
description: timeout (in seconds) between TCP connection to server and message 001 received, if this timeout is reached before 001 message is received, WeeChat will disconnect from server
-
type: integer
-
values: 1 .. 3600
-
default value:
60
-
-
irc.server_default.default_chantypes
-
description: channel type prefixes to use if the server does not send them in message 005 (default is "#&")
-
type: string
-
values: any string
-
default value:
"#&"
-
-
-
description: use IPv6 protocol for server communication
-
type: enum
-
values: disable, auto, force
-
default value:
auto
-
-
irc.server_default.local_hostname
-
description: custom local hostname/IP for server (optional, if empty local hostname is used)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: default kick message used by commands "/kick" and "/kickban" (note: content is evaluated, see /help eval; special variables ${nick} (self nick), ${target} (target nick), ${channel} and ${server} are replaced by their values)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: default part message (leaving channel) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their values; "%v" is replaced by WeeChat version if there is no ${...} in string)
-
type: string
-
values: any string
-
default value:
"WeeChat ${info:version}"
-
-
-
description: default quit message (disconnecting from server) (note: content is evaluated, see /help eval; special variables ${nick}, ${channel} and ${server} are replaced by their values; "%v" is replaced by WeeChat version if there is no ${...} in string)
-
type: string
-
values: any string
-
default value:
"WeeChat ${info:version}"
-
-
-
description: nicknames to use on server (separated by comma) (note: content is evaluated, see /help eval; ${username} is replaced by system username (fallback to "weechat" if not found), server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
"${username},${username}2,${username}3,${username}4,${username}5"
-
-
irc.server_default.nicks_alternate
-
description: get an alternate nick when all the declared nicks are already used on server: add some "_" until the nick has a length of 9, and then replace last char (or the two last chars) by a number from 1 to 99, until we find a nick not used on server
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: notify list for server (you should not change this option but use /notify command instead)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: password for server (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: name of proxy used for this server (optional, proxy must be defined with command /proxy)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: real name to use on server (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
irc.server_default.registered_mode
-
description: mode that is set on registered users (default is "r")
-
type: string
-
values: any string
-
default value:
"r"
-
-
-
description: action to perform if SASL authentication fails: "continue" to ignore the authentication problem, "reconnect" to schedule a reconnection to the server, "disconnect" to disconnect from server (see also option irc.network.sasl_fail_unavailable)
-
type: enum
-
values: continue, reconnect, disconnect
-
default value:
reconnect
-
-
-
description: file with ECC private key for mechanism "ecdsa-nist256p-challenge" (path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
""
-
-
irc.server_default.sasl_mechanism
-
description: mechanism for SASL authentication: "plain" for plain text password, "scram-sha-1" for SCRAM authentication with SHA-1 digest algorithm, "scram-sha-256" for SCRAM authentication with SHA-256 digest algorithm, "scram-sha-512" for SCRAM authentication with SHA-512 digest algorithm, "ecdsa-nist256p-challenge" for key-based challenge authentication, "external" for authentication using client side TLS certificate
-
type: enum
-
values: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external
-
default value:
plain
-
-
irc.server_default.sasl_password
-
description: password for SASL authentication; this option is not used for mechanisms "ecdsa-nist256p-challenge" and "external" (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
irc.server_default.sasl_timeout
-
description: timeout (in seconds) before giving up SASL authentication
-
type: integer
-
values: 1 .. 3600
-
default value:
15
-
-
irc.server_default.sasl_username
-
description: username for SASL authentication; this option is not used for mechanism "external" (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
irc.server_default.split_msg_max_length
-
description: split outgoing IRC messages to fit in this number of chars; the default value is 512, this is a safe and recommended value; value 0 disables the split (not recommended, unless you know what you do); allowed values are 0 or any integer between 128 and 4096; this option should be changed only on non-standard IRC servers, for example gateways like bitlbee
-
type: integer
-
values: 0 .. 4096
-
default value:
512
-
-
-
description: use TLS for server communication
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: TLS certificate file used to automatically identify your nick (path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
""
-
-
irc.server_default.tls_dhkey_size
-
description: size of the key used during the Diffie-Hellman Key Exchange
-
type: integer
-
values: 0 .. 2147483647
-
default value:
2048
-
-
irc.server_default.tls_fingerprint
-
description: fingerprint of certificate which is trusted and accepted for the server; only hexadecimal digits are allowed (0-9, a-f): 128 chars for SHA-512, 64 chars for SHA-256, 40 chars for SHA-1 (insecure, not recommended); many fingerprints can be separated by commas; if this option is set, the other checks on certificates are NOT performed (option "tls_verify") (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
irc.server_default.tls_password
-
description: password for TLS certificate's private key; only used with gnutls version >= 3.1.0 (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
irc.server_default.tls_priorities
-
description: string with priorities for gnutls (for syntax, see documentation of function gnutls_priority_init in gnutls manual, common strings are: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")
-
type: string
-
values: any string
-
default value:
"NORMAL"
-
-
-
description: check that the TLS connection is fully trusted
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: user mode(s) to set after connection to server and before executing command and the auto-join of channels; examples: "+R" (to set mode "R"), "+R-i" (to set mode "R" and remove "i"); see /help mode for the complete mode syntax (note: content is evaluated, see /help eval; server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: user name to use on server (note: content is evaluated, see /help eval; ${username} is replaced by system username (fallback to "weechat" if not found), server options are evaluated with ${irc_server.xxx} and ${server} is replaced by the server name)
-
type: string
-
values: any string
-
default value:
"${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
: send a CTCP action to remote host
/me <message> message: message to send
-
xfer
: xfer control
/xfer [list|listfull] list: list xfer listfull: list xfer (verbose) Without argument, this command opens buffer with xfer list.
9.2. Options
Sections dans le fichier xfer.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
|
|
Couleurs. |
|
|
Options réseau. |
|
|
Options pour les fichiers envoyés/reçus. |
Options :
-
-
description: text color for "aborted" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightred
-
-
-
description: text color for "active" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightblue
-
-
-
description: text color for "connecting" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: text color for "done" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightgreen
-
-
-
description: text color for "failed" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightred
-
-
-
description: text color for "waiting" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightcyan
-
-
-
description: text color in xfer buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: background color in xfer buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: text color of selected line in xfer buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: automatically accept chat requests (use carefully!)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: automatically accept incoming files (use carefully!)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: comma-separated list of nicks for which the incoming files and chats are automatically accepted; format is "server.nick" (for a specific server) or "nick" (for all servers); example: "libera.FlashCode,andrew"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: automatically check CRC32 file checksum if it is found in the filename (8 hexadecimal chars)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: rename incoming files if already exists (add ".1", ".2", ...)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: automatically resume file transfer if connection with remote host is lost
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: convert spaces to underscores when sending and receiving files
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: path for writing incoming files (path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
"${weechat_data_dir}/xfer"
-
-
xfer.file.download_temporary_suffix
-
description: temporary filename suffix used during the transfer for a file received, it is removed after successful transfer; if empty string, no filename suffix is used during the transfer
-
type: string
-
values: any string
-
default value:
".part"
-
-
-
description: path for reading files when sending (path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
"~"
-
-
xfer.file.use_nick_in_filename
-
description: use remote nick as prefix in local filename when receiving a file
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: auto open xfer buffer when a new xfer is added to list
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: size of progress bar, in chars (if 0, progress bar is disabled)
-
type: integer
-
values: 0 .. 256
-
default value:
20
-
-
-
description: comma separated list of tags used in private messages, for example: "notify_message", "notify_private" or "notify_highlight"
-
type: string
-
values: any string
-
default value:
"notify_private"
-
-
-
description: block size for sending packets, in bytes
-
type: integer
-
values: 1024 .. 102400
-
default value:
65536
-
-
-
description: does not wait for ACK when sending file
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: IP or DNS address used for sending and passively receiving files/chats (if empty, local interface IP is used)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: restricts outgoing files/chats and incoming/passive files to use only ports in the given range (useful for NAT) (syntax: a single port, ie. 5000 or a port range, ie. 5000-5015, empty value means any port, it's recommended to use ports greater than 1024, because only root can use ports below 1024)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: send acks when receiving files; if disabled, the transfer may freeze if the sender is waiting for acks (for example a WeeChat sending a file with option xfer.network.fast_send set to off); on the other hand, disabling send of acks may prevent a freeze if the acks are not sent immediately to the sender
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: speed limit for receiving files, in kilo-bytes by second (0 means no limit)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
0
-
-
-
description: speed limit for sending files, in kilo-bytes by second (0 means no limit)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
0
-
-
-
description: timeout for xfer request (in seconds)
-
type: integer
-
values: 5 .. 2147483647
-
default value:
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. |
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 |
---|---|---|
|
|
Aspect/présentation. |
Options :
-
typing.look.delay_purge_paused
-
description: number of seconds after paused status has been set: if reached, the typing status is removed
-
type: integer
-
values: 1 .. 2147483647
-
default value:
30
-
-
typing.look.delay_purge_typing
-
description: number of seconds after typing status has been set: if reached, the typing status is removed
-
type: integer
-
values: 1 .. 2147483647
-
default value:
6
-
-
-
description: number of seconds after typing last char: if reached, the typing status becomes "paused" and no more typing signals are sent
-
type: integer
-
values: 1 .. 2147483647
-
default value:
10
-
-
-
description: typing enabled for other nicks (display typing info for nicks typing in the current buffer)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: typing enabled for self messages (send typing info to other users)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: min number of chars in message to trigger send of typing signals
-
type: integer
-
values: 1 .. 2147483647
-
default value:
4
-
-
-
description: max number of chars displayed in the bar item "typing" (0 = do not truncate content)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
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 :
-
FreeOTP : Android ↗, iOS ↗ (site web ↗)
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
: relay control
/relay list|listfull|listrelay add|addreplace <name> <port>|<path> del|start|restart|stop <name> raw tlscertkey list: list relay clients (only active relays) listfull: list relay clients (verbose, all relays) listrelay: list relays (name and port) add: add a relay (listen on a port/path) addreplace: add or replace an existing relay del: remove a relay (clients remain connected) start: listen on port restart: close the server socket and listen again on port (clients remain connected) stop: close the server socket (clients remain connected) name: relay name (see format below) port: port used for relay path: path used for relay (for UNIX domain socket only); path is evaluated (see function string_eval_path_home in plugin API reference) raw: open buffer with raw Relay data tlscertkey: set TLS certificate/key using path in option relay.network.tls_cert_key Relay name is: [ipv4.][ipv6.][tls.]<protocol.name> or unix.[tls.]<protocol.name>: - ipv4: force use of IPv4 - ipv6: force use of IPv6 - tls: enable TLS - unix: use UNIX domain socket - protocol.name: protocol and name to relay: - protocol "irc": name is the server to share (optional, if not given, the server name must be sent by client in command "PASS", with format: "PASS server:password") - protocol "api" (name is not used) - protocol "weechat" (name is not used) The "irc" protocol allows any IRC client (including WeeChat itself) to connect on the port. The "api" protocol allows a remote interface (including WeeChat itself) to connect on the port. The "weechat" protocol allows a remote interface (but not WeeChat itself) to connect on the port. The list of remote interfaces is here: https://weechat.org/about/interfaces/ Without argument, this command opens buffer with list of relay clients. Examples: /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
: control of remote relay servers
/remote list|listfull [<name>] add|addreplace <name> <url> [-<option>[=<value>]] connect|reconnect|disconnect|del <name> send <name> <json> rename <name> <new_name> togglecmd list: list remote relay servers (without argument, this list is displayed) listfull: list remote relay servers (verbose) add: add a remote relay server addreplace: add or replace an existing remote relay server name: name of remote relay server, for internal and display use; this name is used to connect to the remote relay and to set remote relay options: relay.remote.name.xxx url: URL of the remote relay, format is https://example.com:9000 or http://example.com:9000 (plain-text connection, not recommended) option: set option for remote relay connect: connect to a remote relay server reconnect: reconnect to a remote relay server disconnect: disconnect from a remote relay server del: delete a remote relay server send: send JSON data to a remote relay server rename: rename a remote relay server togglecmd: toggle execution of commands on a remote buffer: on the remote WeeChat or locally (default key: alt+ctrl+l) Examples: /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 |
---|---|---|
|
|
Aspect/présentation. |
|
|
Couleurs. |
|
|
Options réseau. |
|
|
Options spécifiques au protocole irc (proxy irc). |
|
|
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: growing factor for autoreconnect delay to remote relay (1 = always same delay, 2 = delay*2 for each retry, etc.)
-
type: integer
-
values: 1 .. 100
-
default value:
2
-
-
relay.api.remote_autoreconnect_delay_max
-
description: maximum autoreconnect delay to remote relay (in seconds, 0 = no maximum)
-
type: integer
-
values: 0 .. 604800
-
default value:
600
-
-
-
description: number of lines to retrieve on each buffer when connecting to a remote relay
-
type: integer
-
values: 0 .. 2147483647
-
default value:
1000
-
-
relay.api.remote_input_cmd_local
-
description: text displayed after user input when the command would be executed locally (NOT sent to the remote WeeChat) (note: content is evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
" ${color:green}<local cmd>"
-
-
relay.api.remote_input_cmd_remote
-
description: text displayed after user input when the command would be executed on the remote WeeChat (NOT executed locally) (note: content is evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
" ${color:red}<remote cmd>"
-
-
-
description: text color for client description
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
-
description: text color for "connected" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
green
-
-
relay.color.status_auth_failed
-
description: text color for "authentication failed" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightmagenta
-
-
relay.color.status_authenticating
-
description: text color for "authenticating" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: text color for "connecting" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
relay.color.status_disconnected
-
description: text color for "disconnected" status
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightred
-
-
-
description: text color in relay buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: background color in relay buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: text color of selected line in relay buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: maximum number of minutes in backlog per IRC channel (0 = unlimited, examples: 1440 = one day, 10080 = one week, 43200 = one month, 525600 = one year)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
0
-
-
-
description: maximum number of lines in backlog per IRC channel (0 = unlimited)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
1024
-
-
relay.irc.backlog_since_last_disconnect
-
description: display backlog starting from last client disconnect
-
type: boolean
-
values: on, off
-
default value:
on
-
-
relay.irc.backlog_since_last_message
-
description: display backlog starting from your last message
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: comma-separated list of messages tags which are displayed in backlog per IRC channel (supported tags: "irc_join", "irc_part", "irc_quit", "irc_nick", "irc_privmsg"), "*" = all supported tags
-
type: string
-
values: any string
-
default value:
"irc_privmsg"
-
-
-
description: format for time in backlog messages (see man strftime for format) (not used if server capability "server-time" was enabled by client, because time is sent as irc tag); empty string = disable time in backlog messages
-
type: string
-
values: any string
-
default value:
"[%H:%M] "
-
-
-
description: auto open relay buffer when a new client is connecting using one of these protocols (comma-separated list); allowed protocols: "api", "irc", "weechat"
-
type: string
-
values: any string
-
default value:
"irc,weechat"
-
-
-
description: display messages when clients connect/disconnect from relay using one of these protocols (comma-separated list); allowed protocols: "api", "irc", "weechat"
-
type: string
-
values: any string
-
default value:
"irc,weechat"
-
-
-
description: number of raw messages to save in memory when raw data buffer is closed (messages will be displayed when opening raw data buffer)
-
type: integer
-
values: 0 .. 65535
-
default value:
256
-
-
relay.look.raw_messages_max_length
-
description: max number of chars to display in raw messages (very long messages can cause slowness); 0 = display whole messages
-
type: integer
-
values: 0 .. 2147483647
-
default value:
4096
-
-
relay.network.allow_empty_password
-
description: allow empty password in relay (it should be enabled only for tests or local network)
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: POSIX extended regular expression with IPs allowed to use relay (case-insensitive, use "(?-i)" at beginning to make it case-sensitive), example: "^(123\.45\.67\.89|192\.160\..*)$"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: timeout (in seconds) for client authentication: connection is closed if the client is still not authenticated after this delay and the client status is set to "authentication failed" (0 = wait forever)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
60
-
-
-
description: address for bind (if empty, connection is possible on all interfaces, use "127.0.0.1" to allow connections from local machine only with IPv4 and "::ffff:127.0.0.1" with IPv6)
-
type: string
-
values: any string
-
default value:
""
-
-
relay.network.clients_purge_delay
-
description: delay for purging disconnected clients (in minutes, 0 = purge clients immediately, -1 = never purge)
-
type: integer
-
values: -1 .. 43200
-
default value:
0
-
-
-
description: comma-separated list of commands allowed/denied when input data (text or command) is received from a client ("api" and "weechat" protocols); "*" means any command, a name beginning with "!" is a negative value to prevent a command from being executed, wildcard "*" is allowed in names; this option should be set if the relay client is not safe (someone could use it to run commands); for example "*,!exec,!quit" allows any command except /exec and /quit
-
type: string
-
values: any string
-
default value:
"*,!quit"
-
-
-
description: compression of messages sent to clients with "api" and "weechat" protocols: 0 = disable compression, 1 = low compression / fast ... 100 = best compression / slow; the value is a percentage converted to 1-9 for zlib and 1-19 for zstd; the default value is recommended, it offers a good compromise between compression and speed
-
type: integer
-
values: 0 .. 100
-
default value:
20
-
-
-
description: listen on IPv6 socket by default (in addition to IPv4 which is default); protocols IPv4 and IPv6 can be forced (individually or together) in the protocol name (see /help relay)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: maximum number of clients connecting to a port (0 = no limit)
-
type: integer
-
values: 0 .. 2147483647
-
default value:
5
-
-
-
description: size of nonce (in bytes), generated when a client connects; the client must use this nonce, concatenated to the client nonce and the password when hashing the password in the "init" command of the weechat protocol
-
type: integer
-
values: 8 .. 128
-
default value:
16
-
-
-
description: password required by clients to access this relay (empty value means no password required, see option relay.network.allow_empty_password) (note: content is evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
""
-
-
relay.network.password_hash_algo
-
description: comma separated list of hash algorithms used for password authentication in weechat protocol, among these values: "plain" (password in plain text, not hashed), "sha256", "sha512", "pbkdf2+sha256", "pbkdf2+sha512"), "*" means all algorithms, a name beginning with "!" is a negative value to prevent an algorithm from being used, wildcard "*" is allowed in names (examples: "*", "pbkdf2*", "*,!plain")
-
type: string
-
values: any string
-
default value:
"*"
-
-
relay.network.password_hash_iterations
-
description: number of iterations asked to the client in weechat protocol when a hashed password with algorithm PBKDF2 is used for authentication; more iterations is better in term of security but is slower to compute; this number should not be too high if your CPU is slow
-
type: integer
-
values: 1 .. 1000000
-
default value:
100000
-
-
-
description: number of seconds to allow before and after the current time for the hash of time + password in "api" protocol
-
type: integer
-
values: 0 .. 256
-
default value:
5
-
-
-
description: file with TLS certificate and private key (for serving clients with TLS) (path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
"${weechat_config_dir}/tls/relay.pem"
-
-
-
description: string with priorities for gnutls (for syntax, see documentation of function gnutls_priority_init in gnutls manual, common strings are: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")
-
type: string
-
values: any string
-
default value:
"NORMAL"
-
-
-
description: secret for the generation of the Time-based One-Time Password (TOTP), encoded in base32 (only letters and digits from 2 to 7); it is used as second factor in "api" and "weechat" protocols, in addition to the password, which must not be empty (empty value means no TOTP is required) (note: content is evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: number of Time-based One-Time Passwords to accept before and after the current one: 0 = accept only the current password, 1 = accept one password before, the current, and one after, 2 = accept two passwords before, the current, and two after, ...; a high number reduces the security level (0 or 1 are recommended values)
-
type: integer
-
values: 0 .. 256
-
default value:
0
-
-
relay.network.websocket_allowed_origins
-
description: POSIX extended regular expression with origins allowed in websockets (case-insensitive, use "(?-i)" at beginning to make it case-sensitive), example: "^https?://(www\.)?example\.(com|org)"
-
type: string
-
values: any string
-
default value:
""
-
-
relay.network.websocket_permessage_deflate
-
description: enable websocket extension "permessage-deflate" to compress websocket frames ("api" protocol only); if disabled, WeeChat (as server) will not enable permessage-deflate even if the client supports it, and when connecting to a remote WeeChat (api relay only), permessage-deflate support is not advertised by WeeChat; it is recommended to keep this option enabled, and you should disable it only if you have troubles with this extension, either with WeeChat or the client
-
type: boolean
-
values: on, off
-
default value:
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
: execute external commands
/exec -list [-sh|-nosh] [-bg|-nobg] [-stdin|-nostdin] [-buffer <name>] [-l|-o|-oc|-n|-nf] [-oerr] [-cl|-nocl] [-sw|-nosw] [-ln|-noln] [-flush|-noflush] [-color ansi|auto|irc|weechat|strip] [-rc|-norc] [-timeout <timeout>] [-name <name>] [-pipe <command>] [-hsignal <name>] <command> -in <id> <text> -inclose <id> [<text>] -signal <id> <signal> -kill <id> -killall -set <id> <property> <value> -del <id>|-all [<id>...] -list: list commands -sh: use the shell to execute the command, many commands can be piped (WARNING: use this option ONLY if all arguments are safe, see option -nosh) -nosh: do not use the shell to execute the command (required if the command has some unsafe data, for example the content of a message from another user) (default) -bg: run process in background: do not display process output neither return code (not compatible with options -o/-oc/-n/-nf/-pipe/-hsignal) -nobg: catch process output and display return code (default) -stdin: create a pipe for sending data to the process (with /exec -in/-inclose) -nostdin: do not create a pipe for stdin (default) -buffer: display/send output of command on this buffer (if the buffer is not found, a new buffer with name "exec.exec.xxx" is created) -l: display locally output of command on buffer (default) -o: send output of command to the buffer without executing commands (not compatible with options -bg/-pipe/-hsignal) -oc: send output of command to the buffer and execute commands (lines starting with "/" or another custom command char) (not compatible with options -bg/-pipe/-hsignal) -n: display output of command in a new buffer (not compatible with options -bg/-pipe/-hsignal) -nf: display output of command in a new buffer with free content (no word-wrap, no limit on number of lines) (not compatible with options -bg/-pipe/-hsignal) -oerr: also send stderr (error output) to the buffer (can be used only with options -o and -oc) -cl: clear the new buffer before displaying output -nocl: append to the new buffer without clear (default) -sw: switch to the output buffer (default) -nosw: don't switch to the output buffer -ln: display line numbers (default in new buffer only) -noln: don't display line numbers -flush: display output of command in real time (default) -noflush: display output of command after its end -color: action on ANSI colors in output: ansi: keep ANSI codes as-is auto: convert ANSI colors to WeeChat/IRC (default) irc: convert ANSI colors to IRC colors weechat: convert ANSI colors to WeeChat colors strip: remove ANSI colors -rc: display return code (default) -norc: don't display return code -timeout: set a timeout for the command (in seconds) -name: set a name for the command (to name it later with /exec) -pipe: send the output to a WeeChat/plugin command (line by line); if there are spaces in command/arguments, enclose them with double quotes; variable $line is replaced by the line (by default the line is added after the command, separated by a space) (not compatible with options -bg/-o/-oc/-n/-nf) -hsignal: send the output as a hsignal (to be used for example in a trigger) (not compatible with options -bg/-o/-oc/-n/-nf) command: the command to execute; if beginning with "url:", the shell is disabled and the content of URL is downloaded and sent as output id: command identifier: either its number or name (if set with "-name xxx") -in: send text on standard input of process -inclose: same as -in, but stdin is closed after (and text is optional: without text, the stdin is just closed) -signal: send a signal to the process; the signal can be an integer or one of these names: hup, int, quit, kill, term, usr1, usr2 -kill: alias of "-signal <id> kill" -killall: kill all running processes -set: set a hook property (see function hook_set in plugin API reference) property: hook property value: new value for hook property -del: delete a terminated command -all: delete all terminated commands Default options can be set in the option exec.command.default_options. Examples: /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 |
---|---|---|
|
|
Options pour les commandes. |
|
|
Couleurs. |
Options :
-
-
description: text color for a finished command flag in list of commands
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightred
-
-
-
description: text color for a running command flag in list of commands
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightgreen
-
-
-
description: default options for command /exec (see /help exec); example: "-nosh -bg" to run all commands in background (no output), and without using the shell
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: delay for purging finished commands (in seconds, 0 = purge commands immediately, -1 = never purge)
-
type: integer
-
values: -1 .. 25920000
-
default value:
0
-
-
-
description: shell to use with command "/exec -sh"; it can be just the name of shell if it is in PATH (for example "bash") or the absolute path to the shell (for example "/bin/bash"); if value is empty, "sh" is used (note: content is evaluated, see /help eval)
-
type: string
-
values: any string
-
default value:
"${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
: fifo plugin configuration
/fifo enable|disable|toggle enable: enable FIFO pipe disable: disable FIFO pipe toggle: toggle FIFO pipe FIFO pipe is used as remote control of WeeChat: you can send commands or text to the FIFO pipe from your shell. By default the FIFO pipe is called weechat_fifo_xxx (where xxx is the WeeChat process id) and located in the WeeChat runtime directory (see /debug dirs). The expected format is one of: plugin.buffer *text or command here *text or command here For example to change your libera nick: echo 'irc.server.libera */nick newnick' >/run/user/1000/weechat/weechat_fifo_12345 Please read the user's guide for more info and examples.
13.2. Options
Sections dans le fichier fifo.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Contrôle du tube FIFO. |
Options :
-
-
description: enable FIFO pipe
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: path for FIFO file; WeeChat PID can be used in path with ${info:pid} (path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
"${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 |
---|---|---|
|
Faire un bip sur un message de highlight ou privé. |
|
|
modifier |
Cacher le mot de passe dans les commandes :
|
|
modifier |
Cacher le mot de passe dans la commande |
|
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). |
|
modifier |
Cacher le mot de passe du serveur dans les commandes |
14.2. Anatomie d’un trigger
Un trigger a les options suivantes (les noms sont
trigger.trigger.<nom>.<option>
) :
Option | Valeurs | Description |
---|---|---|
|
|
Lorsque l’option est |
|
|
Le "hook" utilisé dans le trigger. Pour plus d’information, voir la Référence API extension WeeChat / Hooks ↗. |
|
chaîne |
Les paramètres pour le "hook", ils dépendent du type de hook utilisé. |
|
chaîne |
Conditions pour exécuter le trigger : elles sont évaluées (voir la commande /eval). |
|
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. |
|
chaîne |
Commande à exécuter (plusieurs commandes peuvent être séparées par des points-virgules) ; elle est évaluée (voir la commande /eval). |
|
|
Le code retour de la fonction de rappel ( |
|
|
Action à effectuer sur le trigger après l’exécution ( |
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é :
-
vérifier les conditions du trigger : si faux, sortir
-
remplacer du texte dans le trigger en utilisant des expressions régulières
-
exécuter la/les commande(s)
-
sortir avec un code retour (sauf pour les "hooks" modifier, line, focus, info et info_hashtable)
-
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) |
|
|
hsignal |
1. nom de signal (priorité autorisée) (obligatoire) |
|
|
modifier |
1. nom de modificateur (priorité autorisée) (obligatoire) |
|
|
line |
1. type de tampon |
|
|
1. nom de tampon |
|
||
command |
1. nom de commande (priorité autorisée) (obligatoire) |
|
|
command_run |
1. commande (priorité autorisée) (obligatoire) |
|
|
timer |
1. intervalle, en millisecondes (obligatoire) |
|
|
config |
1. nom d’option (priorité autorisée) (obligatoire) |
|
|
focus |
1. nom d’aire (priorité autorisée) (obligatoire) |
|
|
info |
1. nom de l’info (priorité autorisée) (obligatoire) |
|
|
info_hashtable |
1. nom de l’info (priorité autorisée) (obligatoire) |
|
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
ouy
: une lettre avec la commande ; si manquante, la commande par défaut ests
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 |
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 |
---|---|---|
|
chaîne |
Nom du trigger. |
|
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 |
---|---|---|
|
chaîne |
Nom du signal. |
|
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 |
---|---|---|
|
pointeur |
Pointeur vers le serveur IRC (les variables dans le hdata de type "irc_server" peuvent être utilisées, comme |
|
pointeur |
Pointeur vers le canal IRC (les variables dans le hdata de type "irc_channel" peuvent être utilisées, comme |
|
chaîne |
Nom du serveur (exemple : "libera"). |
|
chaîne |
Étiquettes dans le message (rarement utilisées). |
|
chaîne |
Message sans les étiquettes. |
|
chaîne |
Pseudo. (1) |
|
chaîne |
Nom d’hôte. |
|
chaîne |
Commande IRC (exemple : "PRIVMSG", "NOTICE", …). |
|
chaîne |
Canal IRC. |
|
chaîne |
Paramètres de la commande (inclut la valeur de channel). |
|
chaîne |
Texte (par exemple message utilisateur). |
|
chaîne |
L’index de command dans le message ("-1" si command n’a pas été trouvé). |
|
chaîne |
L’index de arguments dans le message ("-1" si arguments n’a pas été trouvé). |
|
chaîne |
L’index de channel dans le message ("-1" si channel n’a pas été trouvé). |
|
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 |
---|---|---|
|
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 |
---|---|---|
|
chaîne |
Nom du modificateur. |
|
chaîne |
Données envoyées avec le modificateur. |
|
chaîne |
La chaîne qui peut être modifiée. |
|
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 |
---|---|---|
|
pointeur |
Tampon où le message est affiché. |
|
chaîne |
Extension du tampon où le message est affiché. |
|
chaîne |
Nom complet du tampon où le message est affiché. |
|
chaîne |
Préfixe du message affiché. |
|
chaîne |
Préfixe sans les codes couleur. |
|
chaîne |
Message affiché. |
|
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 |
---|---|---|
|
pointeur |
Tampon. |
|
chaîne |
Nom du tampon. |
|
chaîne |
Type de tampon ("formatted" ou "free"). |
|
chaîne |
Numéro de ligne pour un tampon avec contenu libre (≥ 0), -1 pour un tampon avec contenu formaté. |
|
chaîne |
Date de la ligne (horodatage). |
|
chaîne |
Microsecondes de la date de la ligne. |
|
chaîne |
Date d’affichage de la ligne (horodatage). |
|
chaîne |
Microsecondes de la date d’affichage de la ligne. |
|
chaîne |
Date pour l’affichage. Elle peut contenir des codes couleur. |
|
chaîne |
Étiquettes du message (avec une virgule en début/fin de chaîne). |
|
chaîne |
"1" si affichée, "0" si la ligne est filtrée. |
|
chaîne |
"-1" = pas de notification, "0" = niveau bas, "1" = message, "2" = message privé, "3" = highlight |
|
chaîne |
"1" si highlight, sinon "0". |
|
chaîne |
Préfixe. |
|
chaîne |
Préfixe sans les codes couleur. |
|
chaîne |
Message. |
|
chaîne |
Message sans les codes couleur. |
Variables définies avec les étiquettes du message :
Variable | Type | Description |
---|---|---|
|
chaîne |
Nombre d’étiquettes dans le message. |
|
chaîne |
Pseudo (depuis l’étiquette "nick_xxx"). |
|
chaîne |
Couleur du pseudo dans le préfixe (depuis l’étiquette "prefix_nick_ccc"). |
|
chaîne |
Nom d’utilisateur et hôte, format : utilisateur@hôte (depuis l’étiquette "host_xxx"). |
|
chaîne |
Niveau de notification (none, message, private, highlight). |
|
chaîne |
Étiquette de message IRC (clé "xxx"). (1) |
|
chaîne |
Niveau de notification, si différent de none. |
|
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). |
La fonction de rappel "print" définit les variables suivantes dans la table de hachage :
Variable | Type | Description |
---|---|---|
|
pointeur |
Tampon. |
|
chaîne |
Date/heure du message (format : |
|
chaîne |
"1" si affiché, "0" si ligne filtrée. |
|
chaîne |
"1" si highlight, sinon "0". |
|
chaîne |
Préfixe. |
|
chaîne |
Préfixe sans les codes couleur. |
|
chaîne |
Message. |
|
chaîne |
Message sans les codes couleur. |
Variables définies avec les étiquettes du message :
Variable | Type | Description |
---|---|---|
|
chaîne |
Étiquettes du message (avec une virgule en début/fin de chaîne). |
|
chaîne |
Nombre d’étiquettes dans le message. |
|
chaîne |
Pseudo (depuis l’étiquette "nick_xxx"). |
|
chaîne |
Couleur du pseudo dans le préfixe (depuis l’étiquette "prefix_nick_ccc"). |
|
chaîne |
Nom d’utilisateur et hôte, format : utilisateur@hôte (depuis l’étiquette "host_xxx"). |
|
chaîne |
Niveau de notification (none, message, private, highlight). |
|
chaîne |
Étiquette de message IRC (clé "xxx"). (1) |
|
chaîne |
Niveau de notification, si différent de none. |
|
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 |
---|---|---|
|
pointeur |
Tampon. |
|
chaîne |
Nombre de paramètres (la commande elle-même compte pour un). |
|
chaîne |
Paramètre n°N ( |
|
chaîne |
Depuis le paramètre n°N jusqu’à la fin des paramètres ( |
|
chaîne |
Nombre de paramètres avec un découpage comme le fait le shell (la commande elle-même compte pour un). |
|
chaîne |
Paramètre n°N avec un découpage comme le fait le shell ( |
Command_run
La fonction de rappel "command_run" définit les variables suivantes dans la table de hachage :
Variable | Type | Description |
---|---|---|
|
pointeur |
Tampon. |
|
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 |
---|---|---|
|
chaîne |
Nombre d’appels restants. |
|
chaîne |
Date/heure courante (format : |
Config
La fonction de rappel "config" définit les variables suivantes dans la table de hachage :
Variable | Type | Description |
---|---|---|
|
chaîne |
Option. |
|
chaîne |
Valeur. |
Focus
La fonction de rappel "focus" définit les variables suivantes dans la table de hachage :
Variable | Type | Description |
---|---|---|
|
pointeur |
Fenêtre. |
|
pointeur |
Tampon. |
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
: manage triggers, the Swiss Army knife for WeeChat
/trigger list [-o|-ol|-i|-il] listfull listdefault add|addoff|addreplace <name> <hook> ["<arguments>" ["<conditions>" ["<regex>" ["<command>" ["<return_code>" ["<post_action>"]]]]]] addinput [<hook>] input|output|recreate <name> set <name> <option> <value> rename|copy <name> <new_name> enable|disable|toggle [<name>|<mask>...] restart <name>|<mask>... show <name> del <name>|<mask>... restore <name>|<mask>... default -yes monitor [<filter>] list: list triggers (without argument, this list is displayed) -o: send list of triggers enabled to buffer (string in English) -ol: send list of triggers enabled to buffer (translated string) -i: copy list of triggers enabled in command line (for sending to buffer) (string in English) -il: copy list of triggers enabled in command line (for sending to buffer) (translated string) listfull: list triggers with detailed info for each trigger listdefault: list default triggers add: add a trigger addoff: add a trigger (disabled) addreplace: add or replace an existing trigger name: name of trigger hook: signal, hsignal, modifier, line, print, command, command_run, timer, config, focus, info, info_hashtable arguments: arguments for the hook, depending on hook (separated by semicolons): type `signal`: name(s) of signal (required) type `hsignal`: name(s) of hsignal (required) type `modifier`: name(s) of modifier (required) type `line`: buffer type ("formatted", "free" or "*"), list of buffer masks, tags type `print`: buffer, tags, message, strip colors type `command`: command (required), description, arguments, description of arguments, completion (all arguments except command are evaluated, "${tg_trigger_name}" is replaced by the trigger name, see /help eval) type `command_run`: command(s) (required) type `timer`: interval (required), align on second, max calls type `config`: name(s) of option (required) type `focus`: name(s) of area (required) type `info`: name(s) of info (required) type `info_hashtable`: name(s) of info (required) conditions: evaluated conditions for the trigger regex: one or more regular expressions to replace strings in variables command: command to execute (many commands can be separated by ";") return_code: return code in callback (ok (default), ok_eat, error) post_action: action to take after execution (none (default), disable, delete) addinput: set input with default arguments to create a trigger input: set input with the command used to create the trigger output: send the command to create the trigger on the buffer recreate: same as "input", with option "addreplace" instead of "add" set: set an option in a trigger option: name of option: name, hook, arguments, conditions, regex, command, return_code (for help on option, you can type: /help trigger.trigger.<name>.<option>) value: new value for the option rename: rename a trigger copy: copy a trigger enable: enable triggers (without arguments: enable triggers globally) disable: disable triggers (without arguments: disable triggers globally) toggle: toggle triggers (without arguments: toggle triggers globally) restart: restart triggers (recreate the hooks) show: show detailed info on a trigger (with some stats) del: delete triggers restore: restore triggers with the default values (works only for default triggers) mask: name where wildcard "*" is allowed default: delete all triggers and restore default ones monitor: open the trigger monitor buffer, with optional filter filter: filter hooks/triggers to display (a hook must start with "@", for example "@signal"), many filters can be separated by commas; wildcard "*" is allowed in each trigger name When a trigger callback is called, following actions are performed, in this order: 1. check conditions; if false, exit 2. replace text using POSIX extended regular expression(s) (if defined in trigger) 3. execute command(s) (if defined in trigger) 4. exit with a return code (except for modifier, line, focus, info and info_hashtable) 5. perform post action Examples (you can also look at default triggers with /trigger listdefault): add text attributes *bold*, _underline_ and /italic/ (only in user messages): /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}/" hide nicklist bar on small terminals: /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" silently save config each hour: /trigger add cfgsave timer 3600000;0;0 "" "" "/mute /save" silently save WeeChat session at midnight (see /help upgrade): /trigger add session_save signal day_changed "" "" "/mute /upgrade -save" open trigger monitor and show only modifiers and triggers whose name starts with "resize": /trigger monitor @modifier,resize*
14.11. Options
Sections dans le fichier trigger.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
|
|
Couleurs. |
|
|
Options des triggers. |
Options :
-
-
description: text color for command flag (in /trigger list)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightgreen
-
-
-
description: text color for conditions flag (in /trigger list)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
trigger.color.flag_post_action
-
description: text color for post action flag (in /trigger list)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightblue
-
-
-
description: text color for regex flag (in /trigger list)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightcyan
-
-
trigger.color.flag_return_code
-
description: text color for return code flag (in /trigger list)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightmagenta
-
-
-
description: text color for trigger context identifier in monitor buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
-
description: text color for regular expressions
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: text color for replacement text (for regular expressions)
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
cyan
-
-
-
description: enable trigger support
-
type: boolean
-
values: on, off
-
default value:
on
-
-
trigger.look.monitor_strip_colors
-
description: strip colors in hashtable values displayed on monitor buffer
-
type: boolean
-
values: on, off
-
default value:
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
: WeeChat script manager
/script enable list [-o|-ol|-i|-il] search <text> show <script> load|unload|reload <script>... autoload|noautoload|toggleautoload <script>... install|remove|installremove|hold [-q] <script>... upgrade update -up|-down [<number>] -go <line>|end enable: enable download of scripts (turn on option script.scripts.download_enabled) list: list loaded scripts (all languages) -o: send list of loaded scripts to buffer (string in English) -ol: send list of loaded scripts to buffer (translated string) -i: copy list of loaded scripts in command line (for sending to buffer) (string in English) -il: copy list of loaded scripts in command line (for sending to buffer) (translated string) search: search scripts by tags, language (python, perl, ...), filename extension (py, pl, ...) or text; result is displayed on scripts buffer show: show detailed info about a script load: load script(s) unload: unload script(s) reload: reload script(s) autoload: autoload the script noautoload: do not autoload the script toggleautoload: toggle autoload install: install/upgrade script(s) remove: remove script(s) installremove: install or remove script(s), depending on current state hold: hold/unhold script(s) (a script held will not be upgraded anymore and cannot be removed) -q: quiet mode: do not display messages upgrade: upgrade all installed scripts which are obsolete (new version available) update: update local scripts cache -up: move the selected line up by "number" lines -down: move the selected line down by "number" lines -go: select a line by number, first line number is 0 ("end" to select the last line) Without argument, this command opens a buffer with list of scripts. On script buffer, the possible status for each script are: `*`: popular script `i`: installed `a`: autoloaded `H`: held `r`: running (loaded) `N`: obsolete (new version available) In output of /script list, this additional status can be displayed: `?`: unknown script (cannot be downloaded/updated) In input of script buffer, word(s) are used to filter scripts on description, tags, ...). The input "*" removes the filter. For keys, input and mouse actions on the buffer, see key bindings in User's guide. Examples: /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 |
---|---|---|
|
|
Aspect/présentation. |
|
|
Couleurs. |
|
|
Options pour le téléchargement des scripts. |
Options :
-
script.color.status_autoloaded
-
description: color for status "autoloaded" ("a")
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
39
-
-
-
description: color for status "held" ("H")
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: color for status "installed" ("i")
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightcyan
-
-
-
description: color for status "obsolete" ("N")
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightmagenta
-
-
-
description: color for status "popular" ("*")
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: color for status "running" ("r")
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightgreen
-
-
-
description: color for status "unknown" ("?")
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
lightred
-
-
-
description: text color in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: background color in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
default
-
-
-
description: background color for selected line in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
24
-
-
-
description: text color of dates in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
65
-
-
script.color.text_date_selected
-
description: text color of dates for selected line in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
50
-
-
-
description: text color of delimiters in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
240
-
-
-
description: text color of description in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
249
-
-
script.color.text_description_selected
-
description: text color of description for selected line in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: text color of extension in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
242
-
-
script.color.text_extension_selected
-
description: text color of extension for selected line in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
248
-
-
-
description: text color of script name in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
73
-
-
script.color.text_name_selected
-
description: text color of script name for selected line in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
51
-
-
-
description: text color for selected line in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
-
description: text color of tags in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
brown
-
-
script.color.text_tags_selected
-
description: text color of tags for selected line in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
yellow
-
-
-
description: text color of version in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
100
-
-
script.color.text_version_loaded
-
description: text color of version loaded in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
246
-
-
script.color.text_version_loaded_selected
-
description: text color of version loaded for selected line in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
white
-
-
script.color.text_version_selected
-
description: text color of version for selected line in script buffer
-
type: color
-
values: a WeeChat color name (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), a terminal color number or an alias; attributes are allowed before color (for text color only, not background): "%" for blink, "." for "dim" (half bright), "*" for bold, "!" for reverse, "/" for italic, "_" for underline
-
default value:
228
-
-
-
description: format of columns displayed in script buffer: following column identifiers are replaced by their values: %a=author, %d=description, %D=date added, %e=extension, %l=language, %L=license, %n=name with extension, %N=name, %r=requirements, %s=status, %t=tags, %u=date updated, %v=version, %V=version loaded, %w=min_weechat, %W=max_weechat)
-
type: string
-
values: any string
-
default value:
"%s %n %V %v %u | %d | %t"
-
-
-
description: colorize output of diff
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: command used to show differences between script installed and the new version in repository ("auto" = auto detect diff command (git or diff), empty value = disable diff, other string = name of command, for example "diff")
-
type: string
-
values: any string
-
default value:
"auto"
-
-
-
description: display source code of script on buffer with detail on a script (script is downloaded in a temporary file when detail on script is displayed)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: quiet actions on script buffer: do not display messages on core buffer when scripts are installed/removed/loaded/unloaded (only errors are displayed)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: default sort keys for scripts: comma-separated list of identifiers: a=author, A=autoloaded, d=date added, e=extension, i=installed, l=language, n=name, o=obsolete, p=popularity, r=running, u=date updated; char "-" can be used before identifier to reverse order; example: "i,u": installed scripts first, sorted by update date
-
type: string
-
values: any string
-
default value:
"i,p,n"
-
-
script.look.translate_description
-
description: translate description of scripts (if translation is available in your language, otherwise English version is used)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: use keys alt+X in script buffer to do actions on scripts (alt+i = install, alt+r = remove, ...); if disabled, only the input is allowed: i, r, ...
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: autoload scripts installed (make a link in "autoload" directory to script in parent directory)
-
type: boolean
-
values: on, off
-
default value:
on
-
-
-
description: local cache expiration time, in minutes (-1 = never expires, 0 = always expire)
-
type: integer
-
values: -1 .. 525600
-
default value:
1440
-
-
script.scripts.download_enabled
-
description: enable download of files from the scripts repository when the /script command is used (list of scripts and scripts themselves); the list of scripts is downloaded from the URL specified in the option script.scripts.url; WeeChat will sometimes download again the list of scripts when you use the /script command, even if you don't install a script
-
type: boolean
-
values: on, off
-
default value:
off
-
-
script.scripts.download_timeout
-
description: timeout (in seconds) for download of scripts and list of scripts
-
type: integer
-
values: 1 .. 3600
-
default value:
30
-
-
-
description: scripts to "hold": comma-separated list of scripts which will never been upgraded and cannot be removed, for example: "go.py,urlserver.py"
-
type: string
-
values: any string
-
default value:
""
-
-
-
description: local cache directory for scripts (path is evaluated, see function string_eval_path_home in plugin API reference)
-
type: string
-
values: any string
-
default value:
"${weechat_cache_dir}/script"
-
-
-
description: URL for file with list of scripts
-
type: string
-
values: any string
-
default value:
"https://weechat.org/files/plugins.xml.gz"
-
Extensions pour les scripts
Commandes Python
-
python
: list/load/unload scripts
/python list|listfull [<name>] load [-q] <filename> autoload reload|unload [-q] [<name>] eval [-o|-oc] <code> version list: list loaded scripts listfull: list loaded scripts (verbose) load: load a script autoload: load all scripts in "autoload" directory reload: reload a script (if no name given, unload all scripts, then load all scripts in "autoload" directory) unload: unload a script (if no name given, unload all scripts) filename: script (file) to load -q: quiet mode: do not display messages name: a script name (name used in call to "register" function) eval: evaluate source code and display result on current buffer -o: send evaluation result to the buffer without executing commands -oc: send evaluation result to the buffer and execute commands code: source code to evaluate version: display the version of interpreter used Without argument, this command lists all loaded scripts.
Commandes Perl
-
perl
: list/load/unload scripts
/perl list|listfull [<name>] load [-q] <filename> autoload reload|unload [-q] [<name>] eval [-o|-oc] <code> version list: list loaded scripts listfull: list loaded scripts (verbose) load: load a script autoload: load all scripts in "autoload" directory reload: reload a script (if no name given, unload all scripts, then load all scripts in "autoload" directory) unload: unload a script (if no name given, unload all scripts) filename: script (file) to load -q: quiet mode: do not display messages name: a script name (name used in call to "register" function) eval: evaluate source code and display result on current buffer -o: send evaluation result to the buffer without executing commands -oc: send evaluation result to the buffer and execute commands code: source code to evaluate version: display the version of interpreter used Without argument, this command lists all loaded scripts.
Commandes Ruby
-
ruby
: list/load/unload scripts
/ruby list|listfull [<name>] load [-q] <filename> autoload reload|unload [-q] [<name>] eval [-o|-oc] <code> version list: list loaded scripts listfull: list loaded scripts (verbose) load: load a script autoload: load all scripts in "autoload" directory reload: reload a script (if no name given, unload all scripts, then load all scripts in "autoload" directory) unload: unload a script (if no name given, unload all scripts) filename: script (file) to load -q: quiet mode: do not display messages name: a script name (name used in call to "register" function) eval: evaluate source code and display result on current buffer -o: send evaluation result to the buffer without executing commands -oc: send evaluation result to the buffer and execute commands code: source code to evaluate version: display the version of interpreter used Without argument, this command lists all loaded scripts.
Commandes Lua
-
lua
: list/load/unload scripts
/lua list|listfull [<name>] load [-q] <filename> autoload reload|unload [-q] [<name>] eval [-o|-oc] <code> version list: list loaded scripts listfull: list loaded scripts (verbose) load: load a script autoload: load all scripts in "autoload" directory reload: reload a script (if no name given, unload all scripts, then load all scripts in "autoload" directory) unload: unload a script (if no name given, unload all scripts) filename: script (file) to load -q: quiet mode: do not display messages name: a script name (name used in call to "register" function) eval: evaluate source code and display result on current buffer -o: send evaluation result to the buffer without executing commands -oc: send evaluation result to the buffer and execute commands code: source code to evaluate version: display the version of interpreter used Without argument, this command lists all loaded scripts.
Commandes Tcl
-
tcl
: list/load/unload scripts
/tcl list|listfull [<name>] load [-q] <filename> autoload reload|unload [-q] [<name>] eval [-o|-oc] <code> version list: list loaded scripts listfull: list loaded scripts (verbose) load: load a script autoload: load all scripts in "autoload" directory reload: reload a script (if no name given, unload all scripts, then load all scripts in "autoload" directory) unload: unload a script (if no name given, unload all scripts) filename: script (file) to load -q: quiet mode: do not display messages name: a script name (name used in call to "register" function) eval: evaluate source code and display result on current buffer -o: send evaluation result to the buffer without executing commands -oc: send evaluation result to the buffer and execute commands code: source code to evaluate version: display the version of interpreter used Without argument, this command lists all loaded scripts.
Commandes Guile
-
guile
: list/load/unload scripts
/guile list|listfull [<name>] load [-q] <filename> autoload reload|unload [-q] [<name>] eval [-o|-oc] <code> version list: list loaded scripts listfull: list loaded scripts (verbose) load: load a script autoload: load all scripts in "autoload" directory reload: reload a script (if no name given, unload all scripts, then load all scripts in "autoload" directory) unload: unload a script (if no name given, unload all scripts) filename: script (file) to load -q: quiet mode: do not display messages name: a script name (name used in call to "register" function) eval: evaluate source code and display result on current buffer -o: send evaluation result to the buffer without executing commands -oc: send evaluation result to the buffer and execute commands code: source code to evaluate version: display the version of interpreter used Without argument, this command lists all loaded scripts.
Options Python
Sections dans le fichier python.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
Options :
-
-
description: check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower
-
type: boolean
-
values: on, off
-
default value:
on
-
Options Perl
Sections dans le fichier perl.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
Options :
-
-
description: check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower
-
type: boolean
-
values: on, off
-
default value:
on
-
Options Ruby
Sections dans le fichier ruby.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
Options :
-
-
description: check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower
-
type: boolean
-
values: on, off
-
default value:
on
-
Options Lua
Sections dans le fichier lua.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
Options :
-
-
description: check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower
-
type: boolean
-
values: on, off
-
default value:
on
-
Options Tcl
Sections dans le fichier tcl.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
Options :
-
-
description: check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower
-
type: boolean
-
values: on, off
-
default value:
on
-
Options Guile
Sections dans le fichier guile.conf :
Section | Commande de contrôle | Description |
---|---|---|
|
|
Aspect/présentation. |
Options :
-
-
description: check the license of scripts when they are loaded: if the license is different from the plugin license, a warning is displayed
-
type: boolean
-
values: on, off
-
default value:
off
-
-
-
description: keep context between two calls to the source code evaluation (option "eval" of script command or info "%s_eval"); a hidden script is used to eval script code; if this option is disabled, this hidden script is unloaded after each eval: this uses less memory, but is slower
-
type: boolean
-
values: on, off
-
default value:
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 ↗.