2726 lines
111 KiB
Plaintext
2726 lines
111 KiB
Plaintext
Guide Utilisateur WeeChat
|
|
=========================
|
|
Sébastien Helleu <flashcode@flashtux.org>
|
|
|
|
|
|
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 :
|
|
http://weechat.org/doc
|
|
|
|
|
|
[[introduction]]
|
|
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.
|
|
|
|
[[features]]
|
|
Fonctionnalités
|
|
~~~~~~~~~~~~~~~
|
|
|
|
Ses principales fonctionnalités sont les suivantes :
|
|
|
|
* multi-protocoles (IRC, Jabber)
|
|
* connexion multi-serveurs (avec SSL, IPv6, proxy)
|
|
* petit, rapide et léger
|
|
* paramétrable et extensible avec des extensions et des scripts
|
|
* conforme aux RFCs IRC http://tools.ietf.org/html/rfc1459[1459],
|
|
http://tools.ietf.org/html/rfc2810[2810],
|
|
http://tools.ietf.org/html/rfc2811[2811],
|
|
http://tools.ietf.org/html/rfc2812[2812] et
|
|
http://tools.ietf.org/html/rfc2813[2813]
|
|
* multi plates-formes (GNU/Linux, *BSD, MacOS X, Windows et d'autres systèmes)
|
|
* 100% GPL, logiciel libre
|
|
|
|
La page d'accueil de WeeChat est ici : http://weechat.org/
|
|
|
|
[[pre-requisites]]
|
|
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)
|
|
* la bibliothèque ncurses
|
|
|
|
[[install]]
|
|
Installation
|
|
------------
|
|
|
|
[[binary_packages]]
|
|
Paquets binaires
|
|
~~~~~~~~~~~~~~~~
|
|
|
|
Les paquets binaires sont disponibles pour beaucoup de distributions, dont :
|
|
|
|
* Debian (ou toute distribution compatible Debian) :
|
|
`apt-get install weechat-curses`
|
|
* Mandriva/RedHat (ou toute distribution compatible avec les RPM) :
|
|
`rpm -i /path/to/weechat-x.y.z-1.i386.rpm`
|
|
* Gentoo : `emerge weechat`
|
|
* Arch Linux : `pacman -S weechat`
|
|
* Fedora Core : `yum install weechat`
|
|
* Sourcemage : `cast 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.
|
|
|
|
[[source_package]]
|
|
Paquet source
|
|
~~~~~~~~~~~~~
|
|
|
|
WeeChat peut être compilé avec cmake ou les autotools (cmake est la méthode
|
|
recommandée).
|
|
|
|
[[dependencies]]
|
|
Dépendances
|
|
^^^^^^^^^^^
|
|
|
|
Le tableau suivant liste les paquets qui sont requis ou optionnels pour
|
|
compiler WeeChat.
|
|
|
|
[width="100%",cols="5,^3,^3,13",options="header"]
|
|
|========================================
|
|
| Paquet ^(1)^ | Version | Requis | Fonctionnalité
|
|
| cmake | | *oui* | construction (autotools toujours possible, mais cmake est recommandé)
|
|
| libncursesw5-dev ^(2)^ | | *oui* | interface ncurses
|
|
| libcurl4-gnutls-dev | | *oui* | transfert d'URL
|
|
| zlib1g-dev | | *oui* | compression des paquets dans l'extension relay (protocole weechat), extension script
|
|
| libgcrypt11-dev | | *oui* | authentification IRC SASL (DH-BLOWFISH/DH-AES), extension script
|
|
| libgnutls-dev | ≥ 2.2.0 | | connexion SSL au serveur IRC, support SSL dans l'extension relay
|
|
| gettext | | | internationalisation (traduction des messages; la langue de base est l'anglais)
|
|
| ca-certificates | | | certificats pour les connexions SSL
|
|
| libaspell-dev ou libenchant-dev | | | extension aspell
|
|
| python-dev | ≥ 2.5 ^(3)^ | | extension python
|
|
| libperl-dev | | | extension perl
|
|
| ruby1.9.1-dev | ≥ 1.8 | | extension ruby
|
|
| liblua5.1-0-dev | | | extension lua
|
|
| tcl-dev | ≥ 8.5 | | extension tcl
|
|
| guile-2.0-dev | ≥ 2.0 | | extension guile (scheme)
|
|
| asciidoc | ≥ 8.5.0 | | construction de la documentation (fichiers HTML)
|
|
| source-highlight | | | coloration des sources dans la documentation HTML
|
|
| xsltproc,
|
|
docbook-xml, docbook-xsl | | | construction de la page de manuel
|
|
|========================================
|
|
|
|
[NOTE]
|
|
^(1)^ Le nom provient de la distribution GNU/Linux Debian, la version dans le
|
|
nom du paquet peut être différente. +
|
|
^(2)^ WeeChat peut compiler avec libncurses5-dev, mais ce n'est *PAS* recommandé
|
|
(vous aurez des bugs d'affichage avec les caractères larges). +
|
|
^(3)^ La version recommandée de Python est 2.7 (tous les scripts tournent bien
|
|
avec la version 2.7, mais pas avec les versions ≤ 2.6 ou ≥ 3.0).
|
|
|
|
[[compile_with_cmake]]
|
|
Compilation avec cmake
|
|
^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
* Installation dans les répertoires systèmes (nécessite les droits 'root') :
|
|
|
|
----------------------------------------
|
|
$ mkdir build
|
|
$ cd build
|
|
$ cmake ..
|
|
$ make
|
|
% make install (en root)
|
|
----------------------------------------
|
|
|
|
* Installation dans un répertoire spécifique :
|
|
|
|
----------------------------------------
|
|
$ mkdir build
|
|
$ cd build
|
|
$ cmake .. -DPREFIX=/chemin/vers/repertoire
|
|
$ make
|
|
$ make install
|
|
----------------------------------------
|
|
|
|
Des options peuvent être utilisées pour cmake, avec le format: "-DOPTION=VALUE".
|
|
|
|
Liste des options couramment utilisées :
|
|
|
|
[width="100%",cols="2m,2,2m,12",options="header"]
|
|
|========================================
|
|
| Option | Valeurs | Valeur par défaut | Description
|
|
|
|
| CMAKE_BUILD_TYPE | `Debug`, `Release`, `RelWithDebInfo`, `MinSizeRel` | |
|
|
Type de construction: `Debug` (ou `RelWithDebInfo`) est recommandé si vous
|
|
utilisez une version de développement de WeeChat.
|
|
|
|
| PREFIX | répertoire | /usr/local |
|
|
Le répertoire dans lequel WeeChat sera installé.
|
|
|
|
| WEECHAT_HOME | répertoire | ~/.weechat |
|
|
Le répertoire "maison" par défaut lors du lancement de WeeChat.
|
|
|
|
| ENABLE_ALIAS | `ON`, `OFF` | ON |
|
|
Compiler <<alias_plugin,l'extension Alias>>.
|
|
|
|
| ENABLE_ASPELL | `ON`, `OFF` | ON |
|
|
Compiler <<aspell_plugin,l'extension Aspell>>.
|
|
|
|
| ENABLE_CHARSET | `ON`, `OFF` | ON |
|
|
Compiler <<charset_plugin,l'extension Charset>>.
|
|
|
|
| ENABLE_DEMO | `ON`, `OFF` | OFF |
|
|
Compiler l'extension Demo.
|
|
|
|
| ENABLE_DOC | `ON`, `OFF` | OFF |
|
|
Compiler la documentation (cela prend beaucoup de temps, recommandé
|
|
seulement si vous construisez un paquet binaire intégrant la documentation ou
|
|
si vous ne pouvez pas consulter la documentation en ligne).
|
|
|
|
| ENABLE_ENCHANT | `ON`, `OFF` | OFF |
|
|
Compiler <<aspell_plugin,l'extension Aspell>> avec Enchant.
|
|
|
|
| ENABLE_FIFO | `ON`, `OFF` | ON |
|
|
Compiler <<fifo_plugin,l'extension Fifo>>.
|
|
|
|
| ENABLE_GNUTLS | `ON`, `OFF` | ON |
|
|
Activer Gnutls (pour SSL).
|
|
|
|
| ENABLE_GUILE | `ON`, `OFF` | ON |
|
|
Compiler <<scripts_plugins,l'extension Guile>> (Scheme).
|
|
|
|
| ENABLE_IRC | `ON`, `OFF` | ON |
|
|
Compiler <<irc_plugin,l'extension IRC>>.
|
|
|
|
| ENABLE_LARGEFILE | `ON`, `OFF` | ON |
|
|
Support des gros fichiers.
|
|
|
|
| ENABLE_LOGGER | `ON`, `OFF` | ON |
|
|
Compiler <<logger_plugin,l'extension Logger>>.
|
|
|
|
| ENABLE_LUA | `ON`, `OFF` | ON |
|
|
Compiler <<scripts_plugins,l'extension Lua>>.
|
|
|
|
| ENABLE_NCURSES | `ON`, `OFF` | ON |
|
|
Compiler l'interface Ncurses.
|
|
|
|
| ENABLE_NLS | `ON`, `OFF` | ON |
|
|
Activer NLS (traductions).
|
|
|
|
| ENABLE_PERL | `ON`, `OFF` | ON |
|
|
Compiler <<scripts_plugins,l'extension Perl>>.
|
|
|
|
| ENABLE_PYTHON | `ON`, `OFF` | ON |
|
|
Compiler <<scripts_plugins,l'extension Python>>.
|
|
|
|
| ENABLE_PYTHON3 | `ON`, `OFF` | OFF |
|
|
Compiler <<scripts_plugins,l'extension Python>> en utilisant Python 3 (*NON*
|
|
recommandé car beaucoup de scripts ne sont pas compatibles avec Python 3).
|
|
|
|
| ENABLE_RELAY | `ON`, `OFF` | ON |
|
|
Compiler <<relay_plugin,l'extension Relay>>.
|
|
|
|
| ENABLE_RMODIFIER | `ON`, `OFF` | ON |
|
|
Compiler <<rmodifier_plugin,l'extension Rmodifier>>.
|
|
|
|
| ENABLE_RUBY | `ON`, `OFF` | ON |
|
|
Compiler <<scripts_plugins,l'extension Ruby>>.
|
|
|
|
| ENABLE_SCRIPT | `ON`, `OFF` | ON |
|
|
Compiler <<scripts_plugins,l'extension Script>>.
|
|
|
|
| ENABLE_SCRIPTS | `ON`, `OFF` | ON |
|
|
Compiler <<scripts_plugins,les extensions de script>> (Python, Perl, Ruby,
|
|
Lua, Tcl, Guile).
|
|
|
|
| ENABLE_TCL | `ON`, `OFF` | ON |
|
|
Compiler <<scripts_plugins,l'extension Tcl>>.
|
|
|
|
| ENABLE_XFER | `ON`, `OFF` | ON |
|
|
Compiler <<xfer_plugin,l'extension Xfer>>.
|
|
|========================================
|
|
|
|
Les autres options peuvent être affichées avec cette commande :
|
|
|
|
----------------------------------------
|
|
$ cmake -LA
|
|
----------------------------------------
|
|
|
|
Ou avec l'interface Curses :
|
|
|
|
----------------------------------------
|
|
$ ccmake ..
|
|
----------------------------------------
|
|
|
|
[[compile_with_autotools]]
|
|
Compilation avec autotools
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
[WARNING]
|
|
Seulement cmake est officiellement supporté pour construire WeeChat. Vous ne
|
|
devriez utiliser les autotools que si vous n'avez pas la possibilité d'utiliser
|
|
cmake. +
|
|
La compilation avec les autotools requiert plus de dépendances et est plus lente
|
|
qu'avec cmake.
|
|
|
|
* Installation dans les répertoires systèmes (nécessite les droits 'root') :
|
|
|
|
----------------------------------------
|
|
$ ./autogen.sh
|
|
$ ./configure
|
|
$ make
|
|
% make install (en root)
|
|
----------------------------------------
|
|
|
|
* Installation dans un répertoire spécifique :
|
|
|
|
----------------------------------------
|
|
$ ./autogen.sh
|
|
$ ./configure --prefix=/chemin/vers/repertoire
|
|
$ make
|
|
$ make install
|
|
----------------------------------------
|
|
|
|
Des options peuvent être utilisées pour le script 'configure', elles peuvent
|
|
être affichées avec cette commande :
|
|
|
|
----------------------------------------
|
|
$ ./configure --help
|
|
----------------------------------------
|
|
|
|
[[git_sources]]
|
|
Sources Git
|
|
~~~~~~~~~~~
|
|
|
|
Attention : les sources git sont réservés 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 git://git.sv.gnu.org/weechat.git
|
|
----------------------------------------
|
|
|
|
Suivez alors les instructions du paquet source (voir
|
|
<<source_package,paquet source>>).
|
|
|
|
[[report_crashes]]
|
|
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)
|
|
* activer les fichiers 'core' sur votre système
|
|
* installer gdb
|
|
|
|
[[debug_info]]
|
|
Infos de debug
|
|
^^^^^^^^^^^^^^
|
|
|
|
Si vous compilez avec cmake :
|
|
|
|
----------------------------------------
|
|
$ cmake .. -DCMAKE_BUILD_TYPE=Debug
|
|
----------------------------------------
|
|
|
|
Si vous compilez avec les autotools, le debug est par défaut (`--with-debug=1`).
|
|
|
|
Si vous avez installé un paquet binaire, alors installez le paquet
|
|
'weechat-dbg'.
|
|
|
|
[[core_files]]
|
|
Fichiers core
|
|
^^^^^^^^^^^^^
|
|
|
|
Pour activer les fichiers 'core', vous pouvez utiliser l'option
|
|
<<option_weechat.startup.sys_rlimit,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
|
|
----------------------------------------
|
|
|
|
[[gdb_backtrace]]
|
|
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).
|
|
Ce fichier est créé dans le répertoire où vous avez lancé WeeChat (ce n'est
|
|
*pas* le répertoire où WeeChat est installé !).
|
|
|
|
Par exemple si 'weechat-curses' est installé dans '/usr/bin/' et que le fichier
|
|
'core' est dans '/home/xxx/', alors lancez gdb avec cette commande :
|
|
|
|
----------------------------------------
|
|
gdb /usr/bin/weechat-curses /home/xxx/core
|
|
----------------------------------------
|
|
|
|
[NOTE]
|
|
Si vous avez installé le paquet binaire 'weechat-dbg' (par exemple sous Debian),
|
|
alors vous pouvez utiliser ce chemin pour l'exécutable WeeChat :
|
|
'/usr/lib/debug/usr/bin/weechat-curses'
|
|
|
|
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/wee-hook.c:1364
|
|
hook_process = 0x254eb90
|
|
status = <value optimized out>
|
|
#5 0x000000000044cc7d in hook_timer_exec () at /some_path/src/core/wee-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_running_weechat]]
|
|
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-curses) :
|
|
|
|
----------------------------------------
|
|
gdb /usr/bin/weechat-curses 12345
|
|
----------------------------------------
|
|
|
|
Ensuite comme pour un crash, utilisez la commande `bt full` :
|
|
|
|
----------------------------------------
|
|
(gdb) bt full
|
|
----------------------------------------
|
|
|
|
[[usage]]
|
|
Utilisation
|
|
-----------
|
|
|
|
[[running_weechat]]
|
|
Lancer WeeChat
|
|
~~~~~~~~~~~~~~
|
|
|
|
Paramètres de ligne de commande :
|
|
|
|
include::cmdline_options.fr.txt[]
|
|
|
|
Pour lancer WeeChat, tapez cette commande :
|
|
|
|
----------------------------------------
|
|
$ weechat-curses
|
|
----------------------------------------
|
|
|
|
Lorsque vous lancez WeeChat pour la première fois, un fichier de configuration
|
|
par défaut est créé, avec les options par défaut.
|
|
Le fichier de configuration par défaut est : '~/.weechat/weechat.conf'.
|
|
|
|
Vous pouvez éditer ce fichier pour configurer WeeChat à votre convenance ou
|
|
vous pouvez modifier les paramètres dans WeeChat avec la commande `/set`
|
|
(voir <<weechat_commands,commandes WeeChat>>).
|
|
|
|
[[screen_layout]]
|
|
Organisation de l'écran
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
Exemple de terminal avec WeeChat :
|
|
|
|
........................................
|
|
┌─────────────────────────────────────────────────────────────────────────────────────────┐
|
|
│Bienvenue sur #test, canal de test │ ◀ barre "title"
|
|
│12:52:27 --> | Flashy (flashcode@weechat.org) a rejoint #test │@Flashy│
|
|
│12:52:27 -- | Pseudos #test: [@Flashy @joe +weebot] │@joe │
|
|
│12:52:27 -- | Canal #test: 4 pseudos (2 ops, 0 halfop, 1 voice, 1 normal) │+weebot│
|
|
│12:52:27 -- | Canal créé le Tue Jan 27 06:30:17 2009 │peter │
|
|
│12:54:15 peter | bonjour ! │ │
|
|
│12:55:01 @joe | salut │ │
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │ ◀ discussion + barre "nicklist"
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │
|
|
│ │ │
|
|
│[12:55] [6] [irc/freenode] 3:#test(+n){4}* [Act: 4:#abc(2,5), 6] │ ◀ barre "status"
|
|
│[@Flashy] salut peter !█ │ ◀ barre "input"
|
|
└─────────────────────────────────────────────────────────────────────────────────────────┘
|
|
........................................
|
|
|
|
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 '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 'status' contient les objets (items) suivants par défaut :
|
|
|
|
[width="100%",cols="^3,^3l,10",options="header"]
|
|
|========================================
|
|
| Objet (item) | Exemple | Description
|
|
| time | [12:55] | heure
|
|
| buffer_count | [6] | nombre de tampons ouverts
|
|
| buffer_plugin | [irc/freenode] | extension du tampon courant (l'extension irc peut afficher le nom du serveur IRC auquel est rattaché ce tampon)
|
|
| buffer_number | 3 | numéro du tampon courant
|
|
| buffer_name | #test | nom du tampon courant
|
|
| buffer_modes | +n | modes du canal IRC
|
|
| buffer_nicklist_count | {4} | nombre de pseudos dans la liste des pseudos
|
|
| buffer_filter | * | indicateur de filtrage : `*` signifie que des lignes sont filtrées (cachées), une valeur vide signifie que toutes les lignes sont affichées
|
|
| lag | [Lag: 2.5] | indicateur de "lag" (ralentissements réseau), en secondes (caché si le lag est faible)
|
|
| hotlist | [Act: 4:#abc(2,5), 6] | 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 6)
|
|
| completion | abc(2) def(5) | liste des mots pour la complétion, avec le nombre de complétions possibles pour chaque mot
|
|
| scroll | -PLUS(50)- | indicateur de scroll, avec le nombre de lignes sous la dernière ligne affichée
|
|
|========================================
|
|
|
|
La barre 'input' contient les objets (items) suivants par défaut :
|
|
|
|
[width="100%",cols="^3,^6l,8",options="header"]
|
|
|========================================
|
|
| Objet (item) | Exemple | Description
|
|
| input_paste | [Coller 7 lignes ? [ctrl-Y] Oui [ctrl-N] Non] | question à l'utilisateur pour coller des lignes
|
|
| input_prompt | [@Flashy] | prompt (pseudo pour l'extension irc)
|
|
| away | (absent) | indicateur d'absence
|
|
| input_search | [Recherche texte] | indicateur de recherche de texte
|
|
| input_text | salut peter ! | texte entré
|
|
|========================================
|
|
|
|
[[buffers_and_windows]]
|
|
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
|
|
* privé 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.
|
|
|
|
Chaque fenêtre affiche un tampon. Un tampon peut être caché (affiché par
|
|
aucune fenêtre) ou affiché par une ou plusieurs fenêtres.
|
|
|
|
Exemple de découpage horizontal (`/window splith`) :
|
|
|
|
........................................
|
|
┌─────────────────────────────────────────────────────────────────────────────────────────┐
|
|
│Bienvenue sur #abc, canal sur rien ! │
|
|
│12:55:12 Max | bonjour │@Flashy│
|
|
│12:55:20 @Flashy | salut Max ! │Max │
|
|
│12:55:32 Max | ça va bien ? │ │
|
|
│ │ │
|
|
│ │ │ ◀ fenêtre n°2
|
|
│ │ │ (tampon n°4)
|
|
│ │ │
|
|
│ │ │
|
|
│[12:55] [6] [irc/freenode] 4:#abc(+n){2} │
|
|
│[@Flashy] │
|
|
│─────────────────────────────────────────────────────────────────────────────────────────│
|
|
│Bienvenue sur #test, canal de test │
|
|
│12:54:15 peter | ohé ! │@Flashy│
|
|
│12:55:01 @joe | salut │@joe │
|
|
│ │+weebot│
|
|
│ │peter │
|
|
│ │ │ ◀ fenêtre n°1
|
|
│ │ │ (tampon n°3)
|
|
│ │ │
|
|
│ │ │
|
|
│[12:55] [6] [irc/freenode] 3:#test(+n){4} │
|
|
│[@Flashy] salut peter!█ │
|
|
└─────────────────────────────────────────────────────────────────────────────────────────┘
|
|
........................................
|
|
|
|
Exemple de découpage vertical (`/window splitv`) :
|
|
|
|
........................................
|
|
┌─────────────────────────────────────────────────────────────────────────────────────────┐
|
|
│Bienvenue sur #test, canal de test │Bienvenue sur #abc, canal sur rien ! │
|
|
│12:54:15 peter | ohé ! │@Flashy│12:55:12 Max | bonjour │@Flashy│
|
|
│12:55:01 @joe | salut │@joe │12:55:20 @Flashy | salut Max ! │Max │
|
|
│ │+weebot│12:55:32 Max | ça va bien ? │ │
|
|
│ │peter │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│[12:55] [6] [irc/freenode] 3:#test(+n){4} │[12:55] [6] [irc/freenode] 4:#abc(+n){2} │
|
|
│[@Flashy] salut peter!█ │[@Flashy] │
|
|
└─────────────────────────────────────────────────────────────────────────────────────────┘
|
|
▲ fenêtre n°1 ▲ fenêtre n°2
|
|
(tampon n°3) (tampon n°4)
|
|
........................................
|
|
|
|
Exemple de découpage vertical + horizontal :
|
|
|
|
........................................
|
|
┌─────────────────────────────────────────────────────────────────────────────────────────┐
|
|
│Bienvenue sur #test, canal de test │Bienvenue sur #def, autre canal │
|
|
│12:54:15 peter | ohé ! │@Flashy│12:55:42 @Flashy | salut le monde │@Flashy│
|
|
│12:55:01 @joe | salut │@joe │12:55:56 alex | salut Flashy │alex │
|
|
│ │+weebot│ │ │
|
|
│ │peter │ │ │ ◀ fenêtre n°3
|
|
│ │ │ │ │ (tampon n°5)
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│ │ │[12:55] [6] [irc/freenode] 5:#def(+n){2} │
|
|
│ │ │[@Flashy] │
|
|
│ │ │────────────────────────────────────────────│
|
|
│ │ │Bienvenue sur #abc, canal sur rien ! │
|
|
│ │ │12:55:12 Max | bonjour │@Flashy│
|
|
│ │ │12:55:20 @Flashy | salut Max ! │Max │
|
|
│ │ │12:55:32 Max | ça va bien ? │ │
|
|
│ │ │ │ │
|
|
│ │ │ │ │ ◀ fenêtre n°2
|
|
│ │ │ │ │ (tampon n°4)
|
|
│ │ │ │ │
|
|
│ │ │ │ │
|
|
│[12:55] [6] [irc/freenode] 3:#test(+n){4} │ [12:55] [6] [irc/freenode] 4:#abc(+n){2} │
|
|
│[@Flashy] salut peter !█ │ [@Flashy] │
|
|
└─────────────────────────────────────────────────────────────────────────────────────────┘
|
|
▲ fenêtre n°1
|
|
(tampon n°3)
|
|
........................................
|
|
|
|
[[bars]]
|
|
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 :
|
|
|
|
[width="100%",cols="2m,2,10",options="header"]
|
|
|========================================
|
|
| Option | Valeurs | Description
|
|
|
|
| type | `root`, `window` |
|
|
Une barre avec le type `root` est affichée exactement une fois à l'écran, en
|
|
dehors de toutes les fenêtres. Il n'y a pas de barre root par défaut, mais un
|
|
exemple est la barre 'buffers' créée par le script 'buffers.pl' (barre
|
|
latérale avec la liste des tampons). +
|
|
Une barre avec le type `window` est affichée dans chaque fenêtre, par exemple
|
|
si vous découpez l'écran (avec `/window splith` ou `/window splitv`), vous
|
|
aurez une barre dans chaque fenêtre. Les quatre barres par défaut ('title',
|
|
'status', 'input', 'nicklist') sont de type `window`.
|
|
|
|
| position | `top`, `bottom`, `left`, `right` |
|
|
Position de la barre : au dessus/en dessous de la discussion, sur la
|
|
gauche/droite.
|
|
|
|
| priority | entier ≥ 0 |
|
|
Priorité de la barre : elle est utilisée pour ordonner les barres à l'écran,
|
|
quand plusieurs barres utilisent le même type et position. +
|
|
Les barres sont affichées depuis le bord de l'écran vers le centre. Une
|
|
priorité plus haute affichera la barre au début, donc près du bord. +
|
|
Exemple : la barre 'input' a une priorité de 1000, donc elle est affichée
|
|
avant la barre 'status', qui a une priorité de 500.
|
|
|
|
| size | entier ≥ 0 |
|
|
La taille de la barre : nombre de colonnes pour une position left/right,
|
|
nombre de lignes pour une position top/bottom. Une taille de `0` signifie
|
|
automatique, donc la taille sera calculée en fonction du contenu affiché dans
|
|
la barre.
|
|
|
|
| size_max | entier ≥ 0 |
|
|
La taille maximum pour la barre, `0` = pas de limite (cette option est
|
|
utilisée seulement si `size` = `0`).
|
|
|
|
| color_bg | couleur |
|
|
La couleur par défaut du fond de la barre.
|
|
|
|
| color_fg | couleur |
|
|
La couleur par défaut du texte dans la barre.
|
|
|
|
| color_delim | couleur |
|
|
La couleur des délimiteurs dans la barre.
|
|
|
|
| hidden | `on`, `off` |
|
|
Lorsque l'option est `on`, la barre est cachée. +
|
|
Note : plutôt que de changer cette option, il est préférable d'utiliser la
|
|
commande `/bar`, par exemple : `/bar toggle nicklist` (voir la commande
|
|
<<command_weechat_bar,/bar>>).
|
|
|
|
| separator | `on`, `off` |
|
|
Lorsque l'option est `on`, un séparateur (ligne) est affiché entre la barre et
|
|
les autres barres (ou la discussion).
|
|
|
|
| items | chaîne |
|
|
Une liste d'objets (voir <<bar_items,objets>> pour plus d'infos).
|
|
|
|
| filling_left_right | `horizontal`, `vertical`, `columns_horizontal`, `columns_vertical` |
|
|
Type de remplissage pour la barre lorsqu'elle a une position `left` ou
|
|
`right` (voir <<bar_filling,remplissage>> pour plus d'infos).
|
|
|
|
| filling_top_bottom | `horizontal`, `vertical`, `columns_horizontal`, `columns_vertical` |
|
|
Type de remplissage pour la barre lorsqu'elle a une position `top` ou `bottom`
|
|
(voir <<bar_filling,remplissage>> pour plus d'infos).
|
|
|
|
| conditions | chaîne |
|
|
Les conditions pour afficher la barre (voir <<bar_conditions,conditions>> pour
|
|
plus d'infos).
|
|
|========================================
|
|
|
|
[[bar_items]]
|
|
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`.
|
|
|
|
Exemple de barre avec les objets
|
|
"[time],buffer_number+:+buffer_plugin+.+buffer_name" :
|
|
|
|
........................................
|
|
┌─────────────────────────────────────────────────────────────────────────────────────────┐
|
|
│[12:55] 3:irc/freenode.#weechat │
|
|
└─────────────────────────────────────────────────────────────────────────────────────────┘
|
|
........................................
|
|
|
|
[[bar_filling]]
|
|
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/freenode] 3:#test(+n){24} │
|
|
└──────────────────────────────────────────────────┘
|
|
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/freenode] 3:#test(+n){24} │
|
|
└──────────────────────────────────────────────────┘
|
|
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 ▲
|
|
........................................
|
|
|
|
[[bar_conditions]]
|
|
Conditions
|
|
^^^^^^^^^^
|
|
|
|
L'option 'conditions' est une chaîne évaluée pour savoir si la barre doit être
|
|
affichée ou non dans la fenêtre (elle est utilisée seulement pour les barres
|
|
avec type 'window').
|
|
|
|
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
|
|
<<command_weechat_eval,/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 de fenêtre est supérieurs à 100 :
|
|
|
|
----------------------------------------
|
|
/set weechat.bar.nicklist.conditions "${nicklist} && ${window.win_width} > 100"
|
|
----------------------------------------
|
|
|
|
Même condition, mais afficher toujours la liste de pseudos sur le tampon
|
|
'&bitlbee' (même si la fenêtre est petite) :
|
|
|
|
----------------------------------------
|
|
/set weechat.bar.nicklist.conditions "${nicklist} && (${window.win_width} > 100 || ${buffer.full_name} == irc.bitlbee.&bitlbee)"
|
|
----------------------------------------
|
|
|
|
[[notify_levels]]
|
|
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
|
|
<<option_weechat.look.buffer_notify_default,weechat.look.buffer_notify_default>>,
|
|
la valeur par défaut est 'all'.
|
|
|
|
[width="50%",cols="3m,10",options="header"]
|
|
|========================================
|
|
| Niveau de notification | Niveau des messages ajoutés à la hotlist
|
|
| none | (aucun)
|
|
| highlight | 'highlight' + 'private'
|
|
| message | 'highlight' + 'private' + 'message'
|
|
| all | 'highlight' + 'private' + 'message' + 'low'
|
|
|========================================
|
|
|
|
Le niveau de notification peut être défini pour un ensemble de tampons, par
|
|
exemple tous les tampons du serveur irc "freenode" :
|
|
|
|
----------------------------------------
|
|
/set weechat.notify.irc.freenode message
|
|
----------------------------------------
|
|
|
|
Définir le niveau de notification 'highlight' sur le canal "#weechat" seulement :
|
|
|
|
----------------------------------------
|
|
/set weechat.notify.irc.freenode.#weechat highlight
|
|
----------------------------------------
|
|
|
|
Le niveau de notification pour un tampon peut aussi être défini avec la
|
|
commande `/buffer` :
|
|
|
|
----------------------------------------
|
|
/buffer notify highlight
|
|
----------------------------------------
|
|
|
|
[[key_bindings]]
|
|
Raccourcis clavier par défaut
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
// 'C-' = ctrl, 'A-' = alt, 'S-' = shift
|
|
|
|
[[key_bindings_command_line]]
|
|
Touches pour la ligne de commande
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
[width="100%",cols="^.^3,.^10,.^5l",options="header"]
|
|
|========================================
|
|
| Touche | Description | Commande
|
|
| @k(←) .2+| Aller au caractère précédent sur la ligne de commande .2+| /input move_previous_char
|
|
| @k(C-)@k(b)
|
|
| @k(→) .2+| Aller au caractère suivant sur la ligne de commande .2+| /input move_next_char
|
|
| @k(C-)@k(f)
|
|
| @k(C-)@k(←) .2+| Aller au mot précédent sur la ligne de commande .2+| /input move_previous_word
|
|
| @k(A-)@k(b)
|
|
| @k(C-)@k(→) .2+| Aller au mot suivant sur la ligne de commande .2+| /input move_next_word
|
|
| @k(A-)@k(f)
|
|
| @k(Home) .2+| Aller au début de la ligne de commande .2+| /input move_beginning_of_line
|
|
| @k(C-)@k(a)
|
|
| @k(End) .2+| Aller à la fin de la ligne de commande .2+| /input move_end_of_line
|
|
| @k(C-)@k(e)
|
|
| @k(C-)@k(c) , @k(b) | Insérer le code pour mettre le texte en gras | /input insert \x02
|
|
| @k(C-)@k(c) , @k(c) | Insérer le code pour écrire en couleur | /input insert \x03
|
|
| @k(C-)@k(c) , @k(i) | Insérer le code pour mettre le texte en italique | /input insert \x1D
|
|
| @k(C-)@k(c) , @k(o) | Insérer le code pour réinitialiser la couleur | /input insert \x0F
|
|
| @k(C-)@k(c) , @k(r) | Insérer le code pour écrire en couleur inversée | /input insert \x12
|
|
| @k(C-)@k(c) , @k(u) | Insérer le code pour écrire en souligné | /input insert \x15
|
|
| @k(Del) .2+| Effacer le caractère suivant sur la ligne de commande .2+| /input delete_next_char
|
|
| @k(C-)@k(d)
|
|
| @k(Backsp.) .2+| Effacer le caractère précédent sur la ligne de commande .2+| /input delete_previous_char
|
|
| @k(C-)@k(h)
|
|
| @k(C-)@k(k) | Effacer du curseur jusqu'à la fin de la ligne de commande (la chaîne supprimée est copiée dans le presse-papiers) | /input delete_end_of_line
|
|
| @k(C-)@k(r) | Chercher du texte dans l'historique du tampon (voir <<key_bindings_search_context,les touches pour le contexte de recherche>>) | /input search_text
|
|
| @k(C-)@k(t) | Inverser deux caractères | /input transpose_chars
|
|
| @k(C-)@k(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) | /input delete_beginning_of_line
|
|
| @k(C-)@k(w) | Effacer le mot précédent sur la ligne de commande (la chaîne supprimée est copiée dans le presse-papiers) | /input delete_previous_word
|
|
| @k(C-)@k(y) | Coller le contenu du presse-papiers | /input clipboard_paste
|
|
| @k(C-)@k(_) | Défaire la dernière action sur la ligne de commande | /input undo
|
|
| @k(A-)@k(_) | Refaire la dernière action sur la ligne de commande | /input redo
|
|
| @k(Tab) | Compléter la commande ou le pseudo (@k(Tab) de nouveau : trouver la complétion suivante) | /input complete_next
|
|
| @k(S-)@k(Tab) | Sans complétion, effectue une complétion partielle. Avec une complétion en cours, complète avec la complétion précédente | /input complete_previous
|
|
| @k(Enter) .3+| Exécuter la commande ou envoyer le message (en mode recherche : arrêter la recherche) .3+| /input return
|
|
| @k(C-)@k(j)
|
|
| @k(C-)@k(m)
|
|
| @k(↑) | Rappeler la commande précédente (en mode recherche : chercher plus haut) | /input history_previous
|
|
| @k(↓) | Rappeler la commande suivante (en mode recherche : chercher plus bas) | /input history_next
|
|
| @k(C-)@k(↑) | Rappeler la commande précédente dans l'historique global (commun à tous les tampons) | /input history_global_previous
|
|
| @k(C-)@k(↓) | Rappeler la commande suivante dans l'historique global (commun à tous les tampons) | /input history_global_next
|
|
| @k(A-)@k(d) | Effacer le mot suivant (la chaîne supprimée est copiée dans le presse-papiers) | /input delete_next_word
|
|
| @k(A-)@k(k) | Capturer une touche et insérer son code (et la commande associée si la commande existe) sur la ligne de commande | /input grab_key_command
|
|
| @k(A-)@k(r) | Effacer entièrement la ligne de commande | /input delete_line
|
|
| @k(A-)@k(s) | Activer/désactiver aspell | /mute aspell toggle
|
|
|========================================
|
|
|
|
[[key_bindings_buffers_windows]]
|
|
Touches pour les tampons / fenêtres
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
[width="100%",cols="^.^3,.^10,.^5l",options="header"]
|
|
|========================================
|
|
| Touche | Description | Commande
|
|
| @k(C-)@k(l) | Réafficher toute la fenêtre | /window refresh
|
|
| @k(C-)@k(s) , @k(C-)@k(u) | Positionner le marqueur de données non lues sur tous les tampons | /input set_unread
|
|
| @k(C-)@k(x) | Changer de tampon courant si plusieurs tampons sont attachés avec le même numéro | /input switch_active_buffer
|
|
| @k(A-)@k(x) | Zoomer sur le tampon mélangé (@k(A-)@k(x) de nouveau : afficher tous les tampons mélangés) | /input zoom_merged_buffer
|
|
| @k(PgUp) | Monter d'une page dans l'historique du tampon | /window page_up
|
|
| @k(PgDn) | Descendre d'une page dans l'historique du tampon | /window page_down
|
|
| @k(A-)@k(PgUp) | Monter de quelques lignes dans l'historique du tampon | /window scroll_up
|
|
| @k(A-)@k(PgDn) | Descendre de quelques lignes dans l'historique du tampon | /window scroll_down
|
|
| @k(A-)@k(Home) | Aller au début du tampon | /window scroll_top
|
|
| @k(A-)@k(End) | Aller à la fin du tampon | /window scroll_bottom
|
|
| @k(A-)@k(←) .4+| Aller au tampon précédent .4+| /buffer -1
|
|
| @k(A-)@k(↑)
|
|
| @k(C-)@k(p)
|
|
| @k(F5)
|
|
| @k(A-)@k(→) .4+| Aller au tampon suivant .4+| /buffer +1
|
|
| @k(A-)@k(↓)
|
|
| @k(C-)@k(n)
|
|
| @k(F6)
|
|
| @k(F7) | Aller à la fenêtre précédente | /window -1
|
|
| @k(F8) | Aller à la fenêtre suivante | /window +1
|
|
| @k(F9) | Faire défiler le titre du tampon vers la gauche | /bar scroll title * -30%
|
|
| @k(F10) | Faire défiler le titre du tampon vers la droite | /bar scroll title * +30%
|
|
| @k(F11) | Monter d'une page dans la liste des pseudos | /bar scroll nicklist * -100%
|
|
| @k(F12) | Descendre d'une page dans la liste des pseudos | /bar scroll nicklist * +100%
|
|
| @k(A-)@k(F11) | Aller au début de la liste des pseudos | /bar scroll nicklist * b
|
|
| @k(A-)@k(F12) | Aller à la fin de la liste des pseudos | /bar scroll nicklist * e
|
|
| @k(A-)@k(a) | Sauter au prochain tampon avec activité (avec priorité : highlight, message, autre) | /input jump_smart
|
|
| @k(A-)@k(h) | Vider la hotlist (notification d'activité sur les autres tampons) | /input hotlist_clear
|
|
| @k(A-)@k(j) , @k(A-)@k(l) | Sauter au dernier tampon | /input jump_last_buffer
|
|
| @k(A-)@k(j) , @k(A-)@k(r) | Sauter au tampon IRC de données brutes | /server raw
|
|
| @k(A-)@k(j) , @k(A-)@k(s) | Sauter au tampon IRC du serveur | /server jump
|
|
| @k(A-)@k(0...9) | Sauter au tampon qui porte ce numéro (0 = 10) | /buffer *N
|
|
| @k(A-)@k(j) , @k(01...99) | Sauter au tampon qui porte ce numéro | /buffer NN
|
|
| @k(A-)@k(m) | Activer/désactiver la souris | /mouse toggle
|
|
| @k(A-)@k(n) | Se positionner sur le highlight suivant | /window scroll_next_highlight
|
|
| @k(A-)@k(p) | Se positionner sur le highlight précédent | /window scroll_previous_highlight
|
|
| @k(A-)@k(u) | Se positionner sur la première ligne non lue du tampon | /window scroll_unread
|
|
| @k(A-)@k(w) , @k(A-)@k(↑) | Sauter à la fenêtre au dessus | /window up
|
|
| @k(A-)@k(w) , @k(A-)@k(↓) | Sauter à la fenêtre en dessous | /window down
|
|
| @k(A-)@k(w) , @k(A-)@k(←) | Sauter à la fenêtre de gauche | /window left
|
|
| @k(A-)@k(w) , @k(A-)@k(→) | Sauter à la fenêtre de droite | /window right
|
|
| @k(A-)@k(w) , @k(A-)@k(b) | Equilibrer la taille de toutes les fenêtres | /window balance
|
|
| @k(A-)@k(w) , @k(A-)@k(s) | Echanger les tampons de deux fenêtres | /window swap
|
|
| @k(A-)@k(z) | Zoomer sur la fenêtre courante (@k(A-)@k(z) de nouveau : restaurer l'état initial des fenêtres, avant le zoom) | /window zoom
|
|
| @k(A-)@k(<) | Sauter au tampon précédent dans la liste des tampons visités | /input jump_previously_visited_buffer
|
|
| @k(A-)@k(>) | Sauter au tampon suivant dans la liste des tampons visités | /input jump_next_visited_buffer
|
|
| @k(A-)@k(/) | Sauter au dernier tampon affiché (avant le dernier saut vers un tampon) | /input jump_last_buffer_displayed
|
|
| @k(A-)@k(=) | Activer/désactiver les filtres | /filter toggle
|
|
|========================================
|
|
|
|
[[key_bindings_search_context]]
|
|
Touches pour le contexte "search"
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
Ces touches sont utilisées dans le contexte "search" (lorsque @k(C-)@k(r) est
|
|
pressé pour chercher du texte dans le tampon).
|
|
|
|
[width="100%",cols="^.^3,.^10,.^5l",options="header"]
|
|
|========================================
|
|
| Touche | Description | Commande
|
|
| @k(C-)@k(r) | Basculer la casse exacte pour la recherche | /input search_switch_case
|
|
| @k(↑) | Chercher la ligne précédente | /input search_previous
|
|
| @k(↓) | Chercher la ligne suivante | /input search_next
|
|
| @k(Enter) .3+| Arrêter la recherche .3+| /input search_stop
|
|
| @k(C-)@k(j)
|
|
| @k(C-)@k(m)
|
|
|========================================
|
|
|
|
[[key_bindings_cursor_context]]
|
|
Touches pour le contexte "cursor"
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
Ces touches sont utilisées dans le contexte "cursor" (mouvement libre du curseur
|
|
à l'écran).
|
|
|
|
[width="100%",cols="^.^3,^.^3,.^10,.^8l",options="header"]
|
|
|========================================
|
|
| Touche | Zone | Description | Commande
|
|
| @k(↑) | - | Déplacer le curseur d'une ligne vers le haut | /cursor move up
|
|
| @k(↓) | - | Déplacer le curseur d'une ligne vers le bas | /cursor move down
|
|
| @k(←) | - | Déplacer le curseur d'une colonne vers la gauche | /cursor move left
|
|
| @k(→) | - | Déplacer le curseur d'une colonne vers la droite | /cursor move right
|
|
| @k(A-)@k(↑) | - | Déplacer le curseur vers la zone au dessus | /cursor move area_up
|
|
| @k(A-)@k(↓) | - | Déplacer le curseur vers la zone en dessous | /cursor move area_down
|
|
| @k(A-)@k(←) | - | Déplacer le curseur vers la zone sur la gauche | /cursor move area_left
|
|
| @k(A-)@k(→) | - | Déplacer le curseur vers la zone sur la droite | /cursor move area_right
|
|
| @k(m) | chat | Citer le message | hsignal:chat_quote_message;/cursor stop
|
|
| @k(q) | chat | Citer le préfixe + le message | hsignal:chat_quote_prefix_message;/cursor stop
|
|
| @k(Q) | chat | Citer l'heure + le préfixe + le message | hsignal:chat_quote_time_prefix_message;/cursor stop
|
|
| @k(b) | liste des pseudos | Bannir le pseudo | /window ${_window_number};/ban ${nick}
|
|
| @k(k) | liste des pseudos | Retirer par la force le pseudo | /window ${_window_number};/kick ${nick}
|
|
| @k(K) | liste des pseudos | Retirer par la force et bannir le pseudo | /window ${_window_number};/kickban ${nick}
|
|
| @k(q) | liste des pseudos | Ouvrir une discussion avec le pseudo | /window ${_window_number};/query ${nick};/cursor stop
|
|
| @k(w) | liste des pseudos | Effectuer un whois sur le pseudo | /window ${_window_number};/whois ${nick}
|
|
| @k(Enter) .3+| - .3+| Arrêter le mode curseur ("cursor") .3+| /cursor stop
|
|
| @k(C-)@k(j)
|
|
| @k(C-)@k(m)
|
|
|========================================
|
|
|
|
[[key_bindings_mouse_context]]
|
|
Touches pour le contexte "mouse"
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
Ces touches sont utilisées dans le contexte "mouse", c'est-à-dire lorsqu'un
|
|
évènement de la souris se produit.
|
|
|
|
[width="100%",cols="^.^3,^.^3,^.^3,.^10,.^8l",options="header"]
|
|
|========================================
|
|
| Bouton ^(1)^ | Geste | Zone | Description | Commande
|
|
| ◾◽◽ | - | chat | Aller à la fenêtre | /window ${_window_number}
|
|
| ◾◽◽ | left | chat | Aller au tampon précédent | /window ${_window_number};/buffer +1
|
|
| ◾◽◽ | right | chat | Aller au tampon suivant | /window ${_window_number};/buffer +1
|
|
| ◾◽◽ | left (long) | chat | Aller au premier tampon | /window ${_window_number};/buffer 1
|
|
| ◾◽◽ | right (long) | chat | Aller au dernier tampon | /window ${_window_number};/input jump_last_buffer
|
|
| ◾◽◽ | - | chat (tampon script) | Sélectionner la ligne dans le tampon script | /script go ${_chat_line_y}
|
|
| ◽◽◾ | - | chat (tampon script) | Installer/supprimer un script | /script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}
|
|
| ⇑ | - | chat | Monter de quelques lignes dans l'historique du tampon | /window scroll_up -window ${_window_number}
|
|
| ⇓ | - | chat | Descendre de quelques lignes dans l'historique du tampon | /window scroll_down -window ${_window_number}
|
|
| ⇑ | - | chat (tampon script) | Monter de 5 lignes dans le tampon script | /script up 5
|
|
| ⇓ | - | chat (tampon script) | Descendre de 5 lignes dans le tampon script | /script down 5
|
|
| @k(C-)⇑ | - | chat | Faire défiler horizontalement vers la gauche | /window scroll_horiz -window ${_window_number} -10%
|
|
| @k(C-)⇓ | - | chat | Faire défiler horizontalement vers la droite | /window scroll_horiz -window ${_window_number} +10%
|
|
| ◾◽◽ | up | liste des pseudos | Monter d'une page dans la liste des pseudos | /bar scroll nicklist ${_window_number} -100%
|
|
| ◾◽◽ | down | liste des pseudos | Descendre d'une page dans la liste des pseudos | /bar scroll nicklist ${_window_number} +100%
|
|
| ◾◽◽ | up (long) | liste des pseudos | Aller au début de la liste des pseudos | /bar scroll nicklist ${_window_number} b
|
|
| ◾◽◽ | down (long) | liste des pseudos | Aller à la fin de la liste des pseudos | /bar scroll nicklist ${_window_number} e
|
|
| ◾◽◽ | - | liste des pseudos | Ouvrir une discussion avec le pseudo | /window ${_window_number};/query ${nick}
|
|
| ◽◽◾ | - | liste des pseudos | Effectuer un whois sur le pseudo | /window ${_window_number};/whois ${nick}
|
|
| ◾◽◽ | left | liste des pseudos | Retirer par la force le pseudo | /window ${_window_number};/kick ${nick}
|
|
| ◾◽◽ | left (long) | liste des pseudos | Retirer par la force et bannir le pseudo | /window ${_window_number};/kickban ${nick}
|
|
| ◽◽◾ | left | liste des pseudos | Bannir le pseudo | /window ${_window_number};/ban ${nick}
|
|
| ◽◽◾ | - | ligne de commande | Capturer un évènement de la souris et insérer son code sur la ligne de commande | /input grab_mouse_area
|
|
| ⇑ | - | toute barre | Faire défiler la barre de -20% | /bar scroll ${_bar_name} ${_window_number} -20%
|
|
| ⇓ | - | toute barre | Faire défiler la barre de +20% | /bar scroll ${_bar_name} ${_window_number} +20%
|
|
| ◽◾◽ | - | n'importe où | Démarrer le mode curseur ("cursor") à ce point | /cursor go ${_x},${_y}
|
|
|========================================
|
|
|
|
[NOTE]
|
|
^(1)^ "⇑" et "⇓" sont la roulette vers le haut et le bas.
|
|
|
|
[[mouse]]
|
|
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.
|
|
|
|
[[mouse_enable]]
|
|
Activer la souris
|
|
^^^^^^^^^^^^^^^^^
|
|
|
|
Pour activer la souris au démarrage :
|
|
|
|
----------------------------------------
|
|
/set weechat.look.mouse on
|
|
----------------------------------------
|
|
|
|
Pour activer la souris maintenant, appuyez sur @k(A-)@k(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 @k(A-)@k(x) pour désactiver la souris pendant 10
|
|
secondes :
|
|
|
|
----------------------------------------
|
|
/key bind meta-x /mouse toggle 10
|
|
----------------------------------------
|
|
|
|
Lorsque la souris est activée dans WeeChat, vous pouvez utiliser la touche
|
|
@k(-S-) pour sélectionner ou cliquer dans le terminal, comme si la souris était
|
|
désactivée (sous certains terminaux comme iTerm, vous devez utiliser @k(-A-) au
|
|
lieu de @k(-S-)).
|
|
|
|
[NOTE]
|
|
Pour tout problème avec la souris, merci de consulter la 'FAQ WeeChat'.
|
|
|
|
[[mouse_bind_events]]
|
|
Associer des évènements souris à des commandes
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
De nombreux évènements souris sont déjà définis par WeeChat (voir
|
|
<<key_bindings_mouse_context,les touches pour le contexte "mouse">>).
|
|
|
|
Vous pouvez modifier ou ajouter des associations avec la commande `/key` en
|
|
utilisant le contexte "mouse" (pour la syntaxe voir
|
|
<<command_weechat_key,la commande /key>>).
|
|
|
|
Un nom d'évènement consiste en un modifieur (facultatif), un bouton/roulette et
|
|
un geste (facultatif). Les différents éléments sont séparés par "-".
|
|
|
|
Liste des modifieurs :
|
|
|
|
[width="50%",cols="3m,4",options="header"]
|
|
|========================================
|
|
| Modifieur | Description
|
|
| ctrl | touche @k(-C-)
|
|
| alt | touche @k(-A-)
|
|
| ctrl-alt | touches @k(-C-) et @k(-A-)
|
|
|========================================
|
|
|
|
Liste des boutons/roulette :
|
|
|
|
[width="50%",cols="3m,4",options="header"]
|
|
|========================================
|
|
| Bouton/roulette | Description
|
|
| button1 | clic sur le bouton gauche
|
|
| button2 | clic sur le bouton droit
|
|
| button3 | clic sur le bouton du milieu (souvent clic sur la roulette)
|
|
| button4 ... button9 | clic sur un bouton additionnel
|
|
| wheelup | roulette (haut)
|
|
| wheeldown | roulette (bas)
|
|
|========================================
|
|
|
|
Liste des gestes (seulement pour les boutons, pas la roulette) :
|
|
|
|
[width="50%",cols="3m,4",options="header"]
|
|
|========================================
|
|
| Geste | Distance
|
|
| gesture-up | 3 ... 19
|
|
| gesture-up-long | ≥ 20
|
|
| gesture-down | 3 ... 19
|
|
| gesture-down-long | ≥ 20
|
|
| gesture-left | 3 ... 39
|
|
| gesture-left-long | ≥ 40
|
|
| gesture-right | 3 ... 39
|
|
| gesture-right-long | ≥ 40
|
|
|========================================
|
|
|
|
Liste des évènements incomplets (seulement pour les boutons, pratique pour les
|
|
extensions/scripts) :
|
|
|
|
[width="50%",cols="3m,4",options="header"]
|
|
|========================================
|
|
| Evènement | Description
|
|
| event-down | le bouton a été pressé mais pas encore relâché
|
|
| event-drag | la souris a bougé avec le bouton pressé
|
|
|========================================
|
|
|
|
Exemples d'évènements :
|
|
|
|
* `button1`
|
|
* `ctrl-button1`
|
|
* `button1-gesture-right`
|
|
* `button1-event-down`
|
|
* `button1-event-drag`
|
|
* `alt-button2-gesture-down-long`
|
|
* `wheelup`
|
|
* `ctrl-alt-wheeldown`
|
|
* ...
|
|
|
|
[TIP]
|
|
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.
|
|
|
|
[TIP]
|
|
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.
|
|
|
|
[[command_line]]
|
|
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.
|
|
|
|
[[command_line_syntax]]
|
|
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
|
|
----------------------------------------
|
|
|
|
[[command_line_colors]]
|
|
Codes couleurs
|
|
^^^^^^^^^^^^^^
|
|
|
|
Pour certaines extensions comme IRC, il est possible d'utiliser des codes
|
|
couleur et attributs comme suit (appuyer sur @k(C-)@k(c) puis sur la lettre qui
|
|
suit et éventuellement une valeur) :
|
|
|
|
@k(C-)@k(c) , @k(b)::
|
|
texte gras
|
|
|
|
@k(C-)@k(c) , @k(c) , @k(xx)::
|
|
couleur du texte `xx` (voir la liste des couleurs ci-dessous)
|
|
|
|
@k(C-)@k(c) , @k(c) , @k(xx,yy)::
|
|
couleur du texte `xx` et du fond `yy` (voir la liste des couleurs
|
|
ci-dessous)
|
|
|
|
@k(C-)@k(c) , @k(o)::
|
|
désactiver la couleur et tous les attributs
|
|
|
|
@k(C-)@k(c) , @k(r)::
|
|
vidéo inverse (inversion de la couleur d'écriture et du fond)
|
|
|
|
@k(C-)@k(c) , @k(u)::
|
|
texte souligné
|
|
|
|
[NOTE]
|
|
Le même code (sans le numéro pour @k(C-)@k(c) , @k(c)) peut être utilisé pour
|
|
stopper l'attribut défini.
|
|
|
|
Les codes couleur pour @k(C-)@k(c) , @k(c) sont :
|
|
|
|
[width="50%",cols="^1m,3,3",options="header"]
|
|
|========================================
|
|
| Code | IRC | WeeChat (curses)
|
|
| 00 | blanc | white
|
|
| 01 | noir | black
|
|
| 02 | bleu foncé | blue
|
|
| 03 | vert foncé | green
|
|
| 04 | rouge clair | lightred
|
|
| 05 | rouge foncé | red
|
|
| 06 | violet | magenta
|
|
| 07 | orange | brown
|
|
| 08 | jaune | yellow
|
|
| 09 | vert clair | lightgreen
|
|
| 10 | cyan | cyan
|
|
| 11 | cyan clair | lightcyan
|
|
| 12 | bleu clair | lightblue
|
|
| 13 | violet clair | lightmagenta
|
|
| 14 | gris | gray
|
|
| 15 | gris clair | white
|
|
|========================================
|
|
|
|
Exemple : affichage de "bonjour tout le monde !" avec "bonjour" en bleu clair
|
|
gras, et "tout le monde" en rouge clair souligné :
|
|
|
|
----------------------------------------
|
|
^Cc12^Cbbonjour ^Cb^Cc04^Cutout le monde^Cu^Cc !
|
|
----------------------------------------
|
|
|
|
[NOTE]
|
|
Dans l'extension irc, vous pouvez réassigner les couleurs en utilisant l'option
|
|
<<option_irc.color.mirc_remap,irc.color.mirc_remap>>.
|
|
|
|
[[colors]]
|
|
Couleurs
|
|
~~~~~~~~
|
|
|
|
WeeChat peut utiliser jusqu'à 256 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 :
|
|
|
|
[width="50%",cols="8,>2,>2",options="header"]
|
|
|========================================
|
|
| $TERM | Couleurs | Paires ^(1)^
|
|
| "rxvt-unicode", "xterm", ... | 88 | 256
|
|
| "rxvt-256color", "xterm-256color", ... | 256 | 32767
|
|
| "screen" | 8 | 64
|
|
| "screen-256color" | 256 | 32767
|
|
|========================================
|
|
|
|
[NOTE]
|
|
^(1)^ Même si votre terminal supporte plus de 256 paires, seules 256 paires
|
|
peuvent être utilisées dans WeeChat, en raison d'une limitation de ncurses.
|
|
|
|
Vous pouvez lancer `weechat-curses --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'
|
|
* en dehors de screen : '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é,
|
|
ne paniquez pas ! Vous pouvez la changer sans redémarrer, grâce au script
|
|
'shell.py' :
|
|
|
|
----------------------------------------
|
|
/shell setenv TERM=screen-256color
|
|
/upgrade
|
|
----------------------------------------
|
|
|
|
[[colors_basic]]
|
|
Couleurs de base
|
|
^^^^^^^^^^^^^^^^
|
|
|
|
Les couleurs de base dans WeeChat sont :
|
|
|
|
[width="50%",cols="^3m,8",options="header"]
|
|
|========================================
|
|
| Nom | Couleur
|
|
| default | couleur par défaut du terminal (transparent pour le fond)
|
|
| black | noir
|
|
| darkgray | gris foncé
|
|
| red | rouge foncé
|
|
| lightred | rouge clair
|
|
| green | vert foncé
|
|
| lightgreen | vert clair
|
|
| brown | marron
|
|
| yellow | jaune
|
|
| blue | bleu foncé
|
|
| lightblue | bleu clair
|
|
| magenta | violet foncé
|
|
| lightmagenta | violet clair
|
|
| cyan | cyan foncé
|
|
| lightcyan | cyan clair
|
|
| gray | gray
|
|
| white | white
|
|
|========================================
|
|
|
|
[[colors_extended]]
|
|
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 @k(A-)@k(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
|
|
----------------------------------------
|
|
|
|
[[colors_aliases]]
|
|
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
|
|
----------------------------------------
|
|
|
|
[[colors_attributes]]
|
|
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 :
|
|
|
|
* `*` : texte gras
|
|
* `!` : mode vidéo inverse
|
|
* `_` : texte souligné
|
|
* `|` : garder les attributs : ne pas réinitialiser 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
|
|
----------------------------------------
|
|
|
|
[[weechat_options]]
|
|
Options WeeChat (weechat.conf)
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
include::autogen/user/weechat_options.txt[]
|
|
|
|
[[weechat_commands]]
|
|
Commandes WeeChat
|
|
~~~~~~~~~~~~~~~~~
|
|
|
|
include::autogen/user/weechat_commands.txt[]
|
|
|
|
[[plugins]]
|
|
Extensions
|
|
----------
|
|
|
|
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'.
|
|
|
|
[[plugins_in_weechat]]
|
|
Extensions dans WeeChat
|
|
~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
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.
|
|
|
|
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`.
|
|
|
|
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, tous les tampons créés par cette
|
|
extension sont automatiquement fermés.
|
|
|
|
Exemples pour charger, décharger et afficher les extensions :
|
|
|
|
----------------------------------------
|
|
/plugin load irc
|
|
/plugin unload irc
|
|
/plugin list
|
|
----------------------------------------
|
|
|
|
Les extensions par défaut sont :
|
|
|
|
[width="50%",cols="^1,5",options="header"]
|
|
|========================================
|
|
| Extension | Description
|
|
| alias | Définir des alias pour les commandes
|
|
| aspell | Vérification orthographique de la ligne de commande
|
|
| charset | Encodage/encodage avec jeu de caractère sur les tampons
|
|
| demo | Extension de démonstration (non compilée par défaut)
|
|
| fifo | Tube FIFO pour envoyer des commandes à distance vers WeeChat
|
|
| irc | Discussion avec le protocole IRC
|
|
| logger | Enregistrement des tampons dans des fichiers
|
|
| relay | Relai de données via le réseau (proxy IRC)
|
|
| rmodifier | Modification des chaînes de "modifier" avec des expressions régulières
|
|
| 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)
|
|
| xfer | Transfert de fichier et discussion directe
|
|
|========================================
|
|
|
|
[[alias_plugin]]
|
|
Extension Alias
|
|
~~~~~~~~~~~~~~~
|
|
|
|
L'extension Alias permet de définir des alias pour des commandes (WeeChat ou
|
|
d'autres extensions).
|
|
|
|
[[alias_commands]]
|
|
Commandes
|
|
^^^^^^^^^
|
|
|
|
include::autogen/user/alias_commands.txt[]
|
|
|
|
[[aspell_plugin]]
|
|
Extension Aspell
|
|
~~~~~~~~~~~~~~~~
|
|
|
|
L'extension Aspell permet de vérifier l'orthographe de la ligne de commande.
|
|
Il est possible d'utiliser plusieurs langages par tampon.
|
|
|
|
[[aspell_options]]
|
|
Options (aspell.conf)
|
|
^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/aspell_options.txt[]
|
|
|
|
[[aspell_commands]]
|
|
Commandes
|
|
^^^^^^^^^
|
|
|
|
include::autogen/user/aspell_commands.txt[]
|
|
|
|
[[aspell_speller_options]]
|
|
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 aspell.option.ignore-case "true"
|
|
----------------------------------------
|
|
|
|
[[aspell_suggestions]]
|
|
Suggestions
|
|
^^^^^^^^^^^
|
|
|
|
Les suggestions sont affichées dans un objet de barre appelé "aspell_suggest".
|
|
Le nombre de suggestions est défini dans l'option 'aspell.check.suggestions'.
|
|
|
|
Pour activer les suggestions, vous devez modifier l'option
|
|
'aspell.check.suggestions' avec un entier ≥ 0 et ajouter l'objet de barre
|
|
"aspell_suggest" à une barre, par exemple 'status'.
|
|
|
|
Exemple de suggestions avec un dictionnaire anglais (`en`) :
|
|
|
|
........................................
|
|
│[12:55] [6] [irc/freenode] 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/freenode] 3:#test(+n){4} [print,prone,prune/prime,primer,primé] │
|
|
│[@Flashy] prinr █ │
|
|
└─────────────────────────────────────────────────────────────────────────────────┘
|
|
........................................
|
|
|
|
[[charset_plugin]]
|
|
Extension 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
|
|
........................................
|
|
|
|
[[charset_options]]
|
|
Options (charset.conf)
|
|
^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/charset_options.txt[]
|
|
|
|
[[charset_commands]]
|
|
Commandes
|
|
^^^^^^^^^
|
|
|
|
include::autogen/user/charset_commands.txt[]
|
|
|
|
[[charset_set]]
|
|
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 voir tous les jeux de caractères utilisés, utilisez la commande suivante :
|
|
|
|
----------------------------------------
|
|
/set charset.*
|
|
----------------------------------------
|
|
|
|
[[charset_troubleshooting]]
|
|
En cas de problème
|
|
^^^^^^^^^^^^^^^^^^
|
|
|
|
Pour tout problème avec les jeux de caractères, merci de consulter la
|
|
'FAQ WeeChat'.
|
|
|
|
[[fifo_plugin]]
|
|
Extension Fifo
|
|
~~~~~~~~~~~~~~
|
|
|
|
Vous pouvez contrôler WeeChat à distance, en envoyant des commandes ou du
|
|
texte dans un tube FIFO (si l'option 'plugins.var.fifo.fifo' est activée,
|
|
elle l'est par défaut).
|
|
|
|
Le tube FIFO est dans le répertoire '~/.weechat/' et s'appelle
|
|
'weechat_fifo_xxxx' (où 'xxxx' est l'ID du processus (PID) du WeeChat qui
|
|
tourne).
|
|
|
|
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
|
|
........................................
|
|
|
|
Quelques exemples :
|
|
|
|
* changement du pseudo sur freenode en "autrepseudo" :
|
|
|
|
----------------------------------------
|
|
$ echo 'irc.server.freenode */nick autrepseudo' >~/.weechat/weechat_fifo_12345
|
|
----------------------------------------
|
|
|
|
* affichage de texte sur le canal IRC #weechat :
|
|
|
|
----------------------------------------
|
|
$ echo 'irc.freenode.#weechat *bonjour !' >~/.weechat/weechat_fifo_12345
|
|
----------------------------------------
|
|
|
|
* affichage de texte sur le tampon courant :
|
|
|
|
----------------------------------------
|
|
$ echo '*bonjour !' >~/.weechat/weechat_fifo_12345
|
|
----------------------------------------
|
|
|
|
* envoyer deux commandes pour décharger/recharger les scripts Python (vous devez
|
|
les séparer par "\n") :
|
|
|
|
----------------------------------------
|
|
$ echo -e '*/python unload\n*/python autoload' >~/.weechat/weechat_fifo_12345
|
|
----------------------------------------
|
|
|
|
Vous pouvez écrire un script qui envoie les commandes à tous les WeeChat qui
|
|
tournent en même temps, par exemple :
|
|
|
|
[source,shell]
|
|
----------------------------------------
|
|
#!/bin/sh
|
|
if [ $# -eq 1 ]; then
|
|
for fifo in ~/.weechat/weechat_fifo_*
|
|
do
|
|
echo -e "$1" >$fifo
|
|
done
|
|
fi
|
|
----------------------------------------
|
|
|
|
Si le script s'appelle "auto_weechat_command", vous pouvez le lancer ainsi :
|
|
|
|
----------------------------------------
|
|
$ ./auto_weechat_command 'irc.freenode.#weechat *bonjour'
|
|
----------------------------------------
|
|
|
|
[[irc_plugin]]
|
|
Extension 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 <<xfer_plugin,extension Xfer>>).
|
|
|
|
[[irc_command_line_options]]
|
|
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 '#toto' sur le serveur 'irc.freenode.net',
|
|
port par défaut (6667), avec le pseudo 'nono' :
|
|
|
|
----------------------------------------
|
|
$ weechat-curses irc://nono@irc.freenode.net/#weechat,#toto
|
|
----------------------------------------
|
|
|
|
[[irc_options]]
|
|
Options (irc.conf)
|
|
^^^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/irc_options.txt[]
|
|
|
|
[[irc_commands]]
|
|
Commandes
|
|
^^^^^^^^^
|
|
|
|
include::autogen/user/irc_commands.txt[]
|
|
|
|
[[irc_ssl_certificates]]
|
|
Certificats SSL
|
|
^^^^^^^^^^^^^^^
|
|
|
|
Lors de la connexion à un serveur IRC avec SSL, WeeChat vérifie par défaut que
|
|
la connexion est entièrement de confiance.
|
|
|
|
Quelques options sont utilisées pour contrôler la connexion SSL :
|
|
|
|
weechat.network.gnutls_ca_file::
|
|
chemin vers le fichier avec les certificats de confiance (par défaut :
|
|
"%h/ssl/CAs.pem")
|
|
|
|
irc.server.xxx.ssl_cert::
|
|
fichier de certificat SSL utilisé pour authentifier automatiquement votre
|
|
pseudo (par exemple CertFP sur oftc, voir ci-dessous)
|
|
|
|
irc.server.xxx.ssl_dhkey_size::
|
|
taille de clé utilisée pour l'échange de clé Diffie-Hellman (par défaut :
|
|
2048)
|
|
|
|
irc.server.xxx.ssl_verify::
|
|
vérifier que la connexion SSL est entièrement de confiance (activé par
|
|
défaut)
|
|
|
|
[NOTE]
|
|
L'option "ssl_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.
|
|
|
|
[[irc_connect_oftc_with_certificate]]
|
|
Premier exemple : se connecter à oftc en vérifiant le certificat
|
|
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
|
|
* Importer le certificat sous le shell :
|
|
|
|
----------------------------------------
|
|
$ mkdir -p ~/.weechat/ssl
|
|
$ wget -O ~/.weechat/ssl/CAs.pem http://www.spi-inc.org/ca/spi-cacert.crt
|
|
----------------------------------------
|
|
|
|
Note: il est possible de concaténer plusieurs certificats dans une le fichier
|
|
CAs.pem.
|
|
|
|
* Sous WeeChat, avec le serveur "oftc" déjà créé :
|
|
|
|
----------------------------------------
|
|
/connect oftc
|
|
----------------------------------------
|
|
|
|
[[irc_connect_oftc_with_certfp]]
|
|
Second exemple : se connecter à oftc en utilisant CertFP
|
|
++++++++++++++++++++++++++++++++++++++++++++++++++++++++
|
|
|
|
* Créer le certificat sous le shell :
|
|
|
|
----------------------------------------
|
|
$ mkdir -p ~/.weechat/ssl
|
|
$ cd ~/.weechat/ssl
|
|
$ openssl req -nodes -newkey rsa:2048 -keyout nick.pem -x509 -days 365 -out nick.pem
|
|
----------------------------------------
|
|
|
|
* Sous WeeChat, avec le serveur "oftc" déjà créé :
|
|
|
|
----------------------------------------
|
|
/set irc.server.oftc.ssl_cert "%h/ssl/nick.pem"
|
|
/connect oftc
|
|
/msg nickserv cert add
|
|
----------------------------------------
|
|
|
|
Pour plus d'informations, consulter http://www.oftc.net/oftc/NickServ/CertFP
|
|
|
|
[[irc_sasl_authentication]]
|
|
Authentification avec SASL
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
WeeChat supporte l'authentification avec SASL, en utilisant différents
|
|
mécanismes :
|
|
|
|
* 'plain' : mot de passe en clair
|
|
* 'dh-blowfish' : mot de passe chiffré avec blowfish
|
|
* 'dh-aes' : mot de passe chiffré avec AES
|
|
* 'external' : certificat SSL 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_username' : nom d'utilisateur (pseudo)
|
|
* 'sasl_password' : mot de passe
|
|
|
|
Si vous voulez utiliser "dh-blowfish" par défaut pour tous les serveurs :
|
|
|
|
----------------------------------------
|
|
/set irc.server_default.sasl_mechanism dh-blowfish
|
|
----------------------------------------
|
|
|
|
[NOTE]
|
|
La librairie "gcrypt" est requise lors de la compilation de WeeChat pour
|
|
utiliser le mécanisme "dh-blowfish" (voir <<dependencies,les dépendances>>).
|
|
|
|
[[irc_tor_freenode]]
|
|
Connexion à Freenode avec TOR/SASL
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
En plus du SSL, les serveurs Freenode supportent les connexions avec TOR
|
|
(https://www.torproject.org/), un réseau de tunnels virtuels qui permet aux
|
|
personnes et groupes d'améliorer leur vie privée et sécurité sur Internet.
|
|
|
|
Premièrement, assurez-vous d'avoir compilé WeeChat avec
|
|
<<dependencies,libgcrypt11-dev>> (si construit depuis les sources); ce n'est
|
|
pas obligatoire, mais "dh-blowfish" assure une meilleure sécurité comparé à
|
|
l'authentification "plain" avec SASL.
|
|
|
|
En premier lieu, installez TOR. Pour Debian (et dérivés) :
|
|
|
|
----------------------------------------
|
|
$ sudo apt-get install tor
|
|
----------------------------------------
|
|
|
|
Sous WeeChat vous devez créer 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, créez un nouveau serveur, par exemple :
|
|
|
|
----------------------------------------
|
|
/server add freenode-tor p4fsi4ockecnea7l.onion
|
|
----------------------------------------
|
|
|
|
Définissez le proxy pour TOR :
|
|
|
|
----------------------------------------
|
|
/set irc.server.freenode-tor.proxy "tor"
|
|
----------------------------------------
|
|
|
|
Définissez l'authentification SASL :
|
|
|
|
----------------------------------------
|
|
/set irc.server.freenode-tor.sasl_mechanism dh-blowfish
|
|
/set irc.server.freenode-tor.sasl_username "votre_pseudo"
|
|
/set irc.server.freenode-tor.sasl_password "votre_mot_de_passe"
|
|
----------------------------------------
|
|
|
|
Et enfin, la connexion au serveur :
|
|
|
|
----------------------------------------
|
|
/connect freenode-tor
|
|
----------------------------------------
|
|
|
|
Pour plus d'informations à propos de Freenode et TOR :
|
|
http://freenode.net/irc_servers.shtml#tor
|
|
|
|
[[irc_smart_filter_join_part_quit]]
|
|
Filtre intelligent pour les messages join/part/quit
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
Un filtre intelligent est disponible pour filtrer les messages join/part/quit
|
|
lorsque le pseudo n'a rien dit durant les X dernières minutes sur le canal.
|
|
|
|
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 `/help filter`) :
|
|
|
|
----------------------------------------
|
|
/filter add irc_smart_weechat irc.freenode.#weechat irc_smart_filter *
|
|
/filter add irc_smart_weechats irc.freenode.#weechat* irc_smart_filter *
|
|
----------------------------------------
|
|
|
|
Vous pouvez cacher seulement les join ou part/quit avec les options suivantes :
|
|
|
|
----------------------------------------
|
|
/set irc.look.smart_filter_join on
|
|
/set irc.look.smart_filter_quit on
|
|
----------------------------------------
|
|
|
|
Vous pouvez modifier le délai (en minutes) :
|
|
|
|
----------------------------------------
|
|
/set irc.look.smart_filter_delay 5
|
|
----------------------------------------
|
|
|
|
Si le pseudo n'a pas parlé durant les 5 dernières minutes, ses join et/ou
|
|
part/quit seront cachés sur le canal.
|
|
|
|
[[irc_ctcp_replies]]
|
|
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 !"
|
|
----------------------------------------
|
|
|
|
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.freenode.version "WeeChat $version (pour freenode)"
|
|
----------------------------------------
|
|
|
|
Si vous voulez restaurer la réponse CTCP standard, alors supprimez l'option :
|
|
|
|
----------------------------------------
|
|
/unset irc.ctcp.version
|
|
----------------------------------------
|
|
|
|
Les codes suivants peuvent être utilisés dans les chaînes et sont
|
|
automatiquement remplacées par WeeChat lors de la réponse au CTCP :
|
|
|
|
[width="100%",cols="^2l,4,8l",options="header"]
|
|
|========================================
|
|
| Code | Description | Valeur / exemple
|
|
| $clientinfo | liste des CTCP supportés | ACTION DCC CLIENTINFO FINGER PING SOURCE TIME USERINFO VERSION
|
|
| $version | version de WeeChat | 0.4.0-dev
|
|
| $versiongit | version de WeeChat + version git | 0.4.0-dev (git: v0.3.9-104-g7eb5cc4)
|
|
| $git | version git | v0.3.9-104-g7eb5cc4
|
|
| $compilation | date de compilation WeeChat | Dec 16 2012
|
|
| $osinfo | information sur l'OS | Linux 2.6.32-5-amd64 / x86_64
|
|
| $site | site WeeChat | http://www.weechat.org/
|
|
| $download | site WeeChat, page téléchargement | http://www.weechat.org/download
|
|
| $time | date/heure courante | Sun, 16 Dec 2012 10:40:48 +0100
|
|
| $username | nom d'utilisateur sur le serveur | nom
|
|
| $realname | nom réel sur le serveur | John Doe
|
|
|========================================
|
|
|
|
[NOTE]
|
|
La version git est la sortie de la commande `git describe`. Elle est connue
|
|
seulement si WeeChat a été compilé dans le repository git et si git était
|
|
installé.
|
|
|
|
Si les options CTCP ne sont pas définies (par défaut), les réponses CTCP sont :
|
|
|
|
[width="100%",cols="^2,4l,8l",options="header"]
|
|
|========================================
|
|
| CTCP | Format de réponse | Exemple
|
|
| CLIENTINFO | $clientinfo | ACTION DCC CLIENTINFO FINGER PING SOURCE TIME USERINFO VERSION
|
|
| FINGER | WeeChat $versiongit | WeeChat 0.4.0-dev (git: v0.3.9-104-g7eb5cc4)
|
|
| SOURCE | $download | http://www.weechat.org/download
|
|
| TIME | $time | Sun, 16 Dec 2012 10:40:48 +0100
|
|
| USERINFO | $username ($realname) | nom (John Doe)
|
|
| VERSION | WeeChat $versiongit ($compilation) | WeeChat 0.4.0-dev (git: v0.3.9-104-g7eb5cc4) (Dec 16 2012)
|
|
|========================================
|
|
|
|
[[irc_target_buffer]]
|
|
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 :
|
|
|
|
[width="60%",cols="^1m,^3m,8",options="header"]
|
|
|========================================
|
|
| message | alias | description
|
|
| error | | erreur
|
|
| invite | | invité sur un canal
|
|
| join | | join
|
|
| kick | | kick
|
|
| kill | | kill
|
|
| mode | | mode
|
|
| notice | | notice
|
|
| part | | part
|
|
| quit | | quit
|
|
| topic | | topic
|
|
| wallops | | wallops
|
|
| | ctcp | ctcp (envoyé ou reçu, dans un message privmsg ou notice)
|
|
| 221 | | chaîne de mode utilisateur
|
|
| 275 | whois | whois (connexion sécurisée)
|
|
| 301 | whois | whois (absent)
|
|
| 303 | | ison
|
|
| 305 | unaway | non absent
|
|
| 306 | away | absent
|
|
| 307 | whois | whois (pseudo enregistré)
|
|
| 310 | whois | whois (mode aide)
|
|
| 311 | whois | whois (utilisateur)
|
|
| 312 | whois | whois (serveur)
|
|
| 313 | whois | whois (opérateur)
|
|
| 314 | whowas | whowas
|
|
| 315 | who | who (fin)
|
|
| 317 | whois | whois (inactivité)
|
|
| 318 | whois | whois (fin)
|
|
| 319 | whois | whois (canaux)
|
|
| 320 | whois | whois (utilisateur identifié)
|
|
| 321 | list | list (début)
|
|
| 322 | list | list (canal)
|
|
| 323 | list | list (fin)
|
|
| 326 | whois | whois (a les privilèges oper)
|
|
| 327 | whois | whois (machine)
|
|
| 328 | | URL du canal
|
|
| 329 | | date de création du canal
|
|
| 330 | whois | whois (identifié comme)
|
|
| 331 | | pas de titre ("topic") pour le canal
|
|
| 332 | | titre du canal ("topic")
|
|
| 333 | | infos sur le titre ("topic")
|
|
| 335 | whois | whois (est un robot sur)
|
|
| 338 | whois | whois (machine)
|
|
| 341 | | invitation
|
|
| 343 | whois | whois (est opéré comme)
|
|
| 344 | reop | reop canal
|
|
| 345 | reop | reop canal (fin)
|
|
| 346 | invitelist | liste des invitations
|
|
| 347 | invitelist | liste des invitations (fin)
|
|
| 348 | exceptionlist | liste des exceptions
|
|
| 349 | exceptionlist | liste des exceptions (fin)
|
|
| 351 | | version du serveur
|
|
| 352 | who | who
|
|
| 353 | names | liste des utilisateurs sur le canal
|
|
| 366 | names | fin de la liste /names
|
|
| 367 | banlist | liste de bannissement
|
|
| 368 | banlist | fin de la liste de bannissement
|
|
| 369 | whowas | whowas (fin)
|
|
| 378 | whois | whois (connexion depuis)
|
|
| 379 | whois | whois (utilise les modes)
|
|
| 432 | | pseudo erroné
|
|
| 433 | | pseudo déjà en cours d'utilisation
|
|
| 438 | | pas autorisé à changer de pseudo
|
|
| 671 | whois | whois (connexion sécurisée)
|
|
| 728 | quietlist | liste des "quiet"
|
|
| 729 | quietlist | fin de la liste des "quiet"
|
|
| 901 | | vous êtes maintenant identifié
|
|
|========================================
|
|
|
|
Les autres messages numériques peuvent être paramétrés de la même manière.
|
|
|
|
Le message peut être préfixé par le nom du serveur pour être spécifique à un
|
|
serveur IRC (par exemple: `freenode.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 "freenode"
|
|
seulement :
|
|
|
|
----------------------------------------
|
|
/set irc.msgbuffer.freenode.invite current
|
|
----------------------------------------
|
|
|
|
* afficher le message "303" (ison) sur le tampon "core" WeeChat:
|
|
|
|
----------------------------------------
|
|
/set irc.msgbuffer.303 weechat
|
|
----------------------------------------
|
|
|
|
[[logger_plugin]]
|
|
Extension Logger
|
|
~~~~~~~~~~~~~~~~
|
|
|
|
L'extension Logger permet de sauvegarder le contenu des tampons dans des
|
|
fichiers, avec des options sur comment et quoi sauvegarder.
|
|
|
|
[[logger_options]]
|
|
Options (logger.conf)
|
|
^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/logger_options.txt[]
|
|
|
|
[[logger_commands]]
|
|
Commandes
|
|
^^^^^^^^^
|
|
|
|
include::autogen/user/logger_commands.txt[]
|
|
|
|
[[logger_log_levels]]
|
|
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.freenode.#weechat 3
|
|
----------------------------------------
|
|
|
|
* affecter le niveau 3 pour le tampon serveur freenode :
|
|
|
|
----------------------------------------
|
|
/set logger.level.irc.server.freenode 3
|
|
----------------------------------------
|
|
|
|
* affecter le niveau 3 pour tous les canaux sur le serveur freenode :
|
|
|
|
----------------------------------------
|
|
/set logger.level.irc.freenode 3
|
|
----------------------------------------
|
|
|
|
* affecter le niveau 2 pour tous les tampons IRC :
|
|
|
|
----------------------------------------
|
|
/set logger.level.irc 2
|
|
----------------------------------------
|
|
|
|
[[logger_filenames_masks]]
|
|
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 du tampon courant :
|
|
|
|
----------------------------------------
|
|
/buffer localvar
|
|
----------------------------------------
|
|
|
|
Par exemple, sur le tampon "irc.freenode.#weechat", WeeChat cherchera un masque
|
|
avec le nom de l'option, dans cet ordre :
|
|
|
|
----------------------------------------
|
|
logger.mask.irc.freenode.#weechat
|
|
logger.mask.irc.freenode
|
|
logger.mask.irc
|
|
logger.file.mask
|
|
----------------------------------------
|
|
|
|
Cela signifie que vous pouvez avoir un masque spécifique pour certaines
|
|
serveurs IRC ("logger.mask.irc.freenode") ou pour une extension
|
|
("logger.mask.irc").
|
|
|
|
[[logger_files_by_date]]
|
|
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 :
|
|
|
|
........................................
|
|
~/.weechat/
|
|
|--- logs/
|
|
|--- 2010/
|
|
|--- 11/
|
|
| irc.server.freenode.weechatlog
|
|
| irc.freenode.#weechat.weechatlog
|
|
|--- 2010/
|
|
|--- 12/
|
|
| irc.server.freenode.weechatlog
|
|
| irc.freenode.#weechat.weechatlog
|
|
........................................
|
|
|
|
[[logger_irc_files_by_server_channel]]
|
|
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 :
|
|
|
|
........................................
|
|
~/.weechat/
|
|
|--- logs/
|
|
|--- irc/
|
|
|--- freenode/
|
|
| freenode.weechatlog
|
|
| #weechat.weechatlog
|
|
| #mychan.weechatlog
|
|
|--- oftc/
|
|
| oftc.weechatlog
|
|
| #chan1.weechatlog
|
|
| #chan2.weechatlog
|
|
........................................
|
|
|
|
[[relay_plugin]]
|
|
Extension 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
|
|
* 'weechat' : protocole utilisé par les interfaces distantes (par exemple
|
|
QWeeChat ou weechat-android).
|
|
|
|
[[relay_options]]
|
|
Options (relay.conf)
|
|
^^^^^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/relay_options.txt[]
|
|
|
|
[[relay_commands]]
|
|
Commandes
|
|
^^^^^^^^^
|
|
|
|
include::autogen/user/relay_commands.txt[]
|
|
|
|
[[relay_password]]
|
|
Mot de passe
|
|
^^^^^^^^^^^^
|
|
|
|
Il est fortement recommandé de définir un mot de passe pour le relai, avec la
|
|
commande :
|
|
|
|
----------------------------------------
|
|
/set relay.network.password "motdepasse"
|
|
----------------------------------------
|
|
|
|
Ce mot de passe sera utilisé pour les protocoles 'irc' et 'weechat'.
|
|
|
|
[[relay_ssl]]
|
|
SSL
|
|
^^^
|
|
|
|
Vous pouvez utiliser SSL en créant un certificat et clé privée et en utilisant
|
|
le préfixe "ssl." dans le nom du protocole.
|
|
|
|
Le fichier par défaut pour le certificat/clé est '~/.weechat/ssl/relay.pem'
|
|
(option <<option_relay.network.ssl_cert_key,relay.network.ssl_cert_key>>).
|
|
|
|
Vous pouvez créer le certificat et la clé privée avec les commandes suivantes :
|
|
|
|
----------------------------------------
|
|
$ mkdir -p ~/.weechat/ssl
|
|
$ cd ~/.weechat/ssl
|
|
$ openssl req -nodes -newkey rsa:2048 -keyout relay.pem -x509 -days 365 -out relay.pem
|
|
----------------------------------------
|
|
|
|
Si WeeChat tourne déjà, vous pouvez recharger le certificat et clé privée avec la
|
|
commande :
|
|
|
|
----------------------------------------
|
|
/relay sslcertkey
|
|
----------------------------------------
|
|
|
|
[[relay_irc_proxy]]
|
|
IRC proxy
|
|
^^^^^^^^^
|
|
|
|
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 :
|
|
|
|
----------------------------------------
|
|
PASS serveur:motdepasse
|
|
----------------------------------------
|
|
|
|
Exemple : proxy IRC avec SSL pour tout serveur (le client choisira) :
|
|
|
|
----------------------------------------
|
|
/relay add ssl.irc 8000
|
|
----------------------------------------
|
|
|
|
Exemple : proxy IRC sans SSL seulement pour le serveur "freenode" :
|
|
|
|
----------------------------------------
|
|
/relay add irc.freenode 8000
|
|
----------------------------------------
|
|
|
|
Maintenant vous pouvez vous connecter sur le port 8000 avec n'importe quel
|
|
client IRC en utilisant le mot de passe "motdepasse" (ou "freenode:motdepasse"
|
|
si aucun serveur n'a été spécifié dans le relai).
|
|
|
|
[[relay_weechat_protocol]]
|
|
Protocole WeeChat
|
|
^^^^^^^^^^^^^^^^^
|
|
|
|
L'extension Relay peut envoyer les données à une interface distante en
|
|
utilisant le protocole WeeChat.
|
|
|
|
Par exemple :
|
|
|
|
----------------------------------------
|
|
/relay add weechat 9000
|
|
----------------------------------------
|
|
|
|
Maintenant vous pouvez vous connecter sur le port 9000 avec une interface
|
|
distante en utilisant le mot de passe "motdepasse".
|
|
|
|
[[relay_websocket]]
|
|
WebSocket
|
|
^^^^^^^^^
|
|
|
|
Le protocole WebSocket (http://tools.ietf.org/html/rfc6455[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
|
|
<<option_relay.network.websocket_allowed_origins,relay.network.websocket_allowed_origins>>).
|
|
|
|
Un WebSocket peut être ouvert dans une page HTML5 avec une seule ligne de
|
|
JavaScript :
|
|
|
|
[source,js]
|
|
----------------------------------------
|
|
websocket = new WebSocket("ws://server.com:9000/weechat");
|
|
----------------------------------------
|
|
|
|
Le port (9000 dans l'exemple) est le port défini dans l'extension Relay.
|
|
L'URI doit toujours se terminer par "/weechat" (pour les protocoles 'irc' et
|
|
'weechat').
|
|
|
|
[[rmodifier_plugin]]
|
|
Extension Rmodifier
|
|
~~~~~~~~~~~~~~~~~~~
|
|
|
|
L'extension Rmodifier vous permet de modifier les chaînes de "modifier" avec
|
|
des expressions régulières.
|
|
|
|
L'utilisation typique est pour cacher les mots de passe lorsque vous les tapez,
|
|
ou lorsque WeeChat les sauvegarde dans l'historique des commandes. Il est
|
|
possible par exemple de remplacer chaque lettre de ces mots de passe par `*`.
|
|
|
|
[[rmodifier_options]]
|
|
Options (rmodifier.conf)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/rmodifier_options.txt[]
|
|
|
|
[[rmodifier_commands]]
|
|
Commandes
|
|
^^^^^^^^^
|
|
|
|
include::autogen/user/rmodifier_commands.txt[]
|
|
|
|
[[rmodifier_creation]]
|
|
Création d'un rmodifier
|
|
^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
Un rmodifier se compose de trois éléments :
|
|
|
|
. un ou plusieurs "modifiers"
|
|
. une expression régulière, permettant de capturer des "groupes"
|
|
. une chaîne décrivant la sortie en utilisant les numéros de "groupes" capturés
|
|
dans l'expression régulière
|
|
|
|
Pour la liste des modifiers utilisés par WeeChat ou des extensions, voir la
|
|
'Référence API Extension WeeChat', fonction 'weechat_hook_modifier'.
|
|
|
|
Pour chaque groupe capturé, les actions suivantes sont possibles :
|
|
|
|
* garder le groupe tel quel (en utilisant son numéro)
|
|
* remplacer tous les caractères du groupe pour cacher le contenu
|
|
(numéro du groupe + `*`)
|
|
* supprimer le groupe (si le groupe n'est pas utilisé dans la chaîne)
|
|
|
|
Exemple du rmodifier par défaut pour la commande `/oper` :
|
|
|
|
* modifiers : `history_add,input_text_display`
|
|
** `history_add` : appelé lorsque WeeChat stocke la commande dans l'historique
|
|
** `input_text_display` : appelé lorsque la ligne de commande a changé
|
|
(agit uniquement sur l'affichage, pas le contenu de la ligne de commande)
|
|
* expression régulière : `^(/oper +\S+ +)(.*)`
|
|
* groupes : `1,2*`
|
|
|
|
A chaque fois que les modifiers "history_add" ou "input_text_display" sont
|
|
appelés, l'expression régulière est vérifiée. Si la chaîne correspond, alors
|
|
elle est remplacée par les groupes capturés, tels que définis dans la chaîne
|
|
des groupes.
|
|
|
|
Dans cet exemple, on garde le groupe numéro 1 tel quel, et on remplace tous les
|
|
caractères du groupe 2 par le caractère de remplacement défini dans la
|
|
configuration (option 'rmodifier.look.hide_char').
|
|
|
|
Si la ligne de commande contient : `/oper nick password` alors l'affichage
|
|
sera : `/oper nick ********`.
|
|
|
|
[[scripts_plugins]]
|
|
Extensions Scripts
|
|
~~~~~~~~~~~~~~~~~~
|
|
|
|
WeeChat fournit 6 extensions pour scripts : Python, Perl, Ruby, Lua, Tcl et
|
|
Guile (scheme).
|
|
Ces extensions peuvent charger, exécuter et décharger des scripts pour ces
|
|
langages.
|
|
|
|
Une autre extension appelée "script" est un gestionnaire de scripts et est
|
|
utilisé pour charger/décharger des scripts pour n'importe quel langage, et
|
|
installer/supprimer des scripts du repository WeeChat, qui sont visibles à cette
|
|
URL: http://weechat.org/scripts
|
|
|
|
Pour plus d'informations sur comment écrire des scripts, ou sur l'API
|
|
WeeChat pour les scripts, merci de lire le 'Le Guide pour Scripts WeeChat'.
|
|
|
|
[[script_options]]
|
|
Options Script (script.conf)
|
|
^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/script_options.txt[]
|
|
|
|
[[script_commands]]
|
|
Commandes Script
|
|
^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/script_commands.txt[]
|
|
|
|
[[python_commands]]
|
|
Commandes Python
|
|
^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/python_commands.txt[]
|
|
|
|
[[perl_commands]]
|
|
Commandes Perl
|
|
^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/perl_commands.txt[]
|
|
|
|
[[ruby_commands]]
|
|
Commandes Ruby
|
|
^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/ruby_commands.txt[]
|
|
|
|
[[lua_commands]]
|
|
Commandes Lua
|
|
^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/lua_commands.txt[]
|
|
|
|
[[tcl_commands]]
|
|
Commandes Tcl
|
|
^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/tcl_commands.txt[]
|
|
|
|
[[guile_commands]]
|
|
Commandes Guile
|
|
^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/guile_commands.txt[]
|
|
|
|
[[xfer_plugin]]
|
|
Extension 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
|
|
|
|
[[xfer_options]]
|
|
Options (xfer.conf)
|
|
^^^^^^^^^^^^^^^^^^^
|
|
|
|
include::autogen/user/xfer_options.txt[]
|
|
|
|
[[xfer_commands]]
|
|
Commandes
|
|
^^^^^^^^^
|
|
|
|
include::autogen/user/xfer_commands.txt[]
|
|
|
|
[[support]]
|
|
Support
|
|
-------
|
|
|
|
Avant de faire appel au support, merci de lire la documentation et la FAQ de
|
|
WeeChat (la documentation est le document que vous êtes en train de lire, si
|
|
vous n'avez pas tout lu jusqu'ici, il est encore temps de recommencer !).
|
|
|
|
Moyens d'obtenir du support :
|
|
|
|
* IRC : serveur 'irc.freenode.net', canaux '#weechat' (anglais) et
|
|
'#weechat-fr' (français)
|
|
* Liste de diffusion :
|
|
** inscription : http://mail.nongnu.org/mailman/listinfo/weechat-support
|
|
** envoi d'un mail à weechat-support@nongnu.org
|
|
** archives : http://mail.nongnu.org/archive/html/weechat-support
|