1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
|
• *`/away`* `[-all] [message]`::
........................................
basculer le statut absent
-all: basculer le statut absent sur tous les serveurs connectés
message: message pour l'absence (si pas de message donné, le statut d'absence est supprimé)
........................................
• *`/bar`* `[add nombarre type[,cond1,cond2,...] position taille separateur objet1,objet2,...] | [default] | [del nombarre|-all] | [set nombarre option valeur] | [hide|show|toggle nombarre] | [scroll nombarre tampon valeur_scroll] | [list] | [listfull] | [listitems]`::
........................................
gestion des barres
add: ajoute une nouvelle barre
nombarre: nom de la barre (doit être unique)
type: root: en dehors des fenêtres
window: dans les fenêtres, avec condition(s) optionnelle(s) (voir ci-dessous)
cond1,...: condition(s) pour afficher cette barre (seulement pour le type "window"):
active: sur la fenêtre active
inactive: sur les fenêtres inactives
nicklist: sur les fenêtres avec liste de pseudos
sans condition, la barre est toujours affichée
position: bottom (bas), top (haut), left (gauche) ou right (droite)
taille: taille de la barre (en caractères)
séparateur: 1 pour utiliser un séparateur (ligne), 0 ou rien signifie sans séparateur
objet1,...: objets pour cette barre (les objets peuvent être séparés par une virgule (espace entre les objets) ou "+" (objets collés))
default: créer les barres par défaut
del: supprime une barre (ou toutes les barres avec -all)
set: change la valeur d'une propriété de la barre
option: option à modifier (pour la liste des options, voir /set weechat.bar.<nombarre>.*
valeur: nouvelle valeur pour l'option
hide: cache la barre
show: montre une barre cachée
toggle: cache/montre une barre
scroll: défilement de la barre vers le haut/bas
tampon: catégorie et nom du tampon ('*' signifie le tampon courant, vous devez utiliser '*' pour les barres de type root)
valeur_scroll: valeur pour le défilement: 'x' ou 'y', suivi par '+', '-', 'b' (début) ou 'e' (fin), valeur (pour +/-), et un %% optionnel (pour faire défiler par %% de la largeur/hauteur, sinon la valeur est un nombre de caractères)
list: liste toutes les barres
listfull: liste toutes les barres (verbeux)
listitems: liste tous les objets de barre
Exemples:
créer une barre avec l'heure, numéro + nom de tampon, et la complétion:
/bar add mabarre root bottom 1 0 [time],buffer_number+:+buffer_name,completion
cacher une barre:
/bar hide mabarre
faire défiler la liste des pseudos de 10 lignes vers le bas sur le tampon courant:
/bar scroll nicklist * y+10
faire défiler la liste des pseudos d'une page vers le haut sur le tampon #weechat:
/bar scroll nicklist #weechat y-100%
faire défiler la liste des pseudos à la fin sur le tampon courant:
/bar scroll nicklist * ye
........................................
• *`/buffer`* `[clear [nombre | -merged | -all] | move nombre | merge nombre | unmerge [nombre] | close [n1[-n2]] | list | notify niveau | localvar | set propriété valeur | get propriété | nombre | nom]`::
........................................
gestion des tampons
clear: efface le contenu du tampon (un numéro pour un tampon, -merged pour les tampons mélangés, -all pour tous les tampons, ou rien pour le tampon courant)
move: déplace le tampon dans la liste (peut être relatif, par exemple -1)
merge: mélange le tampon courant avec un autre tampon (la zone de discussion sera un mélange des deux tampons)
(par défaut ctrl-x bascule entre les tampons mélangés)
unmerge: détache le tampon courant des autres tampons portant le même numéro
close: ferme le tampon (nombre/intervalle optionnel)
list: liste les tampons ouverts (sans paramètre, cette liste est affichée)
notify: définit le niveau de notification pour le tampon courant: ce niveau détermine si le buffer doit être ajouté à la hotlist ou pas:
none: jamais
highlight: pour les highlights seulement
message: pour les messages d'utilisateurs + highlights
all: pout tous les messages
reset: réinitialise à valeur par défaut (all)
localvar: affiche la liste des variables locales pour le tampon courant
set: modifier une propriété du tampon courant
get: afficher une propriété du tampon courant
nombre: saute au tampon qui a ce numéro, préfixe possible:
'+': saut relatif, ajoute le numéro au courant,
'-': saut relatif, soustrait le numéro au courant,
'*': saut au numéro en utilisant l'option "jump_current_to_previous_buffer"
nom: saute au tampon par nom (partiel)
Exemples:
effacer le tampon courant:
/buffer clear
déplacer le tampon vers le numéro 5:
/buffer move 5
mélanger avec le tampon core:
/buffer merge 1
détacher le tampon:
/buffer unmerge
fermer le tampon courant:
/buffer close
fermer les tampons 5 à 7:
/buffer close 5-7
aller sur #weechat:
/buffer #weechat
aller au tampon suivant:
/buffer +1
........................................
• *`/command`* `extension commande`::
........................................
lancer explicitement une commande WeeChat ou d'une extension
extension: nom de l'extension ('weechat' pour une commande interne WeeChat)
commande: commande à exécuter (un '/' est automatiquement ajouté s'il n'est pas trouvé au début de la commande)
........................................
• *`/debug`* `[list | set extension niveau | dump [extension] | buffer | windows | term]`::
........................................
contrôle du debug pour le coeur/les extensions
set: définir le niveau de log pour l'extension
extension: nom de l'extension ("core" pour le coeur de WeeChat)
niveau: niveau de debug pour l'extension
dump: affiche les variables mémoire WeeChat dans le fichier log (les mêmes messages sont affichés lorsque WeeChat plante)
buffer: affiche le contenu du tampon en valeurs hexadécimales dans le fichier log
windows: affiche l'arbre des fenêtres
term: afficher des infos sur le terminal et les couleurs disponibles
........................................
• *`/filter`* `[list] | [enable|disable|toggle [nom]] | [add nom extension.tampon tags regex] | [del nom|-all]`::
........................................
filtre les messages dans les tampons, pour les cacher/afficher selon des tags ou expressions régulières
list: liste tous les filtres
enable: active les filtres (par défaut les filtres sont activés)
disable: désactive les filtres
toggle: active/désactive les filtres
nom: nom de filtre
add: ajoute un filtre
del: supprime un filtre
-all: supprime tous les filtres
extension.tampon: extension et tampon où le filtre est actif ("*" pour tous les tampons)
tags: liste de tags, séparés par des virgules, par exemple: "irc_join,irc_part,irc_quit"
regex: expression régulière à rechercher dans la ligne
- utiliser '\t' pour séparer le préfixe du message, les caractères spéciaux comme '|' doivent être échappés: '\|'
- si l'expression régulière commence par '!' alors le résultat est inversé (utiliser '\!' pour démarrer par '!')
note: deux regex sont créées: une pour le préfixe et une pour le message
La touche par défaut alt+'=' active/désactive le filtrage.
Les tags les plus couramment utilisés:
no_filter, no_highlight, no_log, log0..log9 (niveau de log),
notify_message, notify_private, notify_highlight,
irc_xxx (xxx est un nom de commande ou nombre, voir /server raw), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
Exemples:
utiliser le filtre intelligent IRC pour les messages join/part/quit:
/filter add irc_smart * irc_smart_filter *
filtrer tous les messages IRC join/part/quit:
/filter add joinquit * irc_join,irc_part,irc_quit *
filtrer les pseudos afficher en rejoignant les canaux ou avec /names:
/filter add nicks * irc_366 *
filtrer le pseudo "toto" sur le canal IRC #weechat:
/filter add toto irc.freenode.#weechat * toto\t
garder uniquement le pseudo "titi" sur le canal IRC #test:
/filter add titi irc.freenode.#test * !titi\t
filtrer les lignes contenant le mot "spam":
/filter add filtrespam * * spam
filtrer les lignes contenant "weechat sucks" sur le canal IRC #weechat:
/filter add sucks irc.freenode.#weechat * weechat sucks
........................................
• *`/help`* `[commande | option]`::
........................................
afficher l'aide sur les commandes et les options
commande: nom d'une commande
option: nom d'une option (utilisez /set pour voir la liste)
........................................
• *`/history`* `[clear | valeur]`::
........................................
affiche l'historique des commandes du tampon
clear: effacer l'historique
valeur: nombre d'entrées dans l'historique à afficher
........................................
• *`/input`* `return | complete_next | complete_previous | search_next | delete_previous_char | delete_next_char | delete_previous_word | delete_next_word | delete_beginning_of_line | delete_end_of_line | delete_line | clipboard_paste | transpose_chars | undo | redo | move_beginning_of_line | move_end_of_line | move_previous_char | move_next_char | move_previous_word | move_next_word | history_previous | history_next | history_global_previous | history_global_next | jump_smart | jump_last_buffer | jump_previously_visited_buffer | jump_next_visited_buffer | hotlist_clear | grab_key | grab_key_command | scroll_unread | set_unread | set_unread_current_buffer | switch_active_buffer | switch_active_buffer_previous | insert [args]`::
........................................
fonctions pour la ligne de commande
Cette commande est utilisée par les associations de touches ou les extensions.
........................................
• *`/key`* `[list | listdefault | listdiff] | [bind touche [commande [args]]] | [unbind touche] | [reset touche] | [resetall -yes] | [missing]`::
........................................
associer/libérer des touches
list: affiche toutes les touches courantes (sans paramètre, cette liste est affichée)
listdefault: affiche les touches par défaut
listdiff: affiche les différences entre les touches courantes et celles par défaut (touches ajoutées, redéfinies ou supprimées)
bind: associe une commande à une touche ou affiche la commande associée à la touche
unbind: supprime l'association à une touche
reset: réinitialise une touche à son association par défaut
resetall: restaure les touches aux valeurs par défaut et supprime TOUTES les touches personnelles (utiliser avec précaution !)
missing: ajoute les touches manquantes (en utilisant les touches par défaut), pratique après installation d'une nouvelle version de WeeChat
Lors de l'association d'une commande à une touche, il est recommandé d'utiliser la touche alt+k (ou Echap puis k), et puis de presser la touche à associer: cela insère le code de la touche dans la ligne de commande.
Exemples:
touche alt-x pour activer/désactiver la liste des pseudos:
/key bind meta-x /bar toggle nicklist
touche alt-r pour aller sur le canal IRC #weechat:
/key bind meta-r /buffer #weechat
restaure l'association par défaut pour la touche alt-r:
/key reset meta-r
........................................
• *`/layout`* `[[save | apply | reset] [buffers | windows]]`::
........................................
sauve/applique/réinitialise la disposition des tampons et fenêtres
save: sauve la disposition courante
apply: applique la disposition sauvegardée
reset: supprime la disposition sauvegardée
buffers: sauve/applique seulement pour les tampons (ordre des tampons)
windows: sauve/applique seulement pour les fenêtres (le tampon affiché par chaque fenêtre)
Sans paramètre, cette commande affiche la disposition sauvegardée.
........................................
• *`/mute`* `[-current | -buffer nom | -all] commande`::
........................................
exécuter une commande silencieusement
-current: pas d'affichage sur le tampon courant
-buffer: pas d'affichage sur le tampon spécifié
nom: nom complet du tampon (exemples: "irc.server.freenode", "irc.freenode.#weechat")
-all: pas d'affichage sur TOUS les tampons
commande: commande à exécuter silencieusement (un '/' est automatiquement ajouté s'il n'est pas trouvé au début de la commande)
Si aucune cible n'est spécifiée (-current, -buffer ou -all), alors par défaut seul le tampon core WeeChat sera silencieux.
Exemples:
sauvegarde configuration:
/mute save
message au canal IRC courant:
/mute -current msg * bonjour !
message au canal #weechat:
/mute -buffer irc.freenode.#weechat msg #weechat bonjour !
........................................
• *`/plugin`* `[list [nom]] | [listfull [nom]] | [load fichier] | [autoload] | [reload [nom]] | [unload [nom]]`::
........................................
liste/charge/décharge des extensions
list: lister les extensions chargées
listfull: lister les extensions chargées (verbeux)
load: charger une extension
autoload: charger automatiquement les extensions dans un répertoire système ou utilisateur
reload: recharger une extension (si pas de nom donné, décharger toutes les extensions, puis puis recharger automatiquement les extensions)
unload: décharger une ou plusieurs exteneions
Sans paramètre, cette commande liste les extensions chargées.
........................................
• *`/proxy`* `[add nomproxy type addresse port [utilisateur [motdepasse]]] | [del nomproxy|-all] | [set nomproxy option valeur] | [list]`::
........................................
gestion des proxies
add: ajoute un nouveau proxy
nomproxy: nom du proxy (doit être unique)
type: http, socks4 ou socks5
addresse: IP ou nom de machine
port: port
utilisateur: nom d'utilisateur (optionnel)
motdepasse: mot de passe (optionnel)
del: supprime un proxy (ou tous les proxies avec -all)
set: change la valeur d'une propriété d'un proxy
option: option à modifier (pour la liste des options, voir /set weechat.proxy.<proxyname>.*)
valeur: nouvelle valeur pour l'option
list: liste de tous les proxies
Exemples:
créer un proxy http, tournant en local, port 8888:
/proxy add local http 127.0.0.1 8888
créer un proxy http en utilisant le protocole IPv6:
/proxy add local http 127.0.0.1 8888
/proxy set local ipv6 on
créer un proxy socks5 avec un utilisateur/mot de passe:
/proxy add myproxy socks5 sample.host.org 3128 myuser mypass
supprimer un proxy:
/proxy del myproxy
........................................
• *`/quit`* `[-yes] [paramètres]`::
........................................
quitter WeeChat
-yes: requis si l'option weechat.look.confirm_quit est activée
paramètres: texte envoyé avec le signal "quit"
(par exemple l'extension irc utilise ce texte pour envoyer le message de quit au serveur)
........................................
• *`/reload`* `[fichier [fichier...]]`::
........................................
recharger les fichiers de configuration depuis le disque
fichier: fichier de configuration à recharger
Sans paramètre, tous les fichiers (WeeChat et extensions) sont rechargés.
........................................
• *`/save`* `[fichier [fichier...]]`::
........................................
sauvegarder les fichiers de configuration sur disque
fichier: fichier de configuration à sauvegarder
Sans paramètre, tous les fichiers (WeeChat et extensions) sont sauvegardés.
........................................
• *`/set`* `[option [valeur]]`::
........................................
modifier des options de configuration
option: nom d'une option
valeur: nouvelle valeur pour l'option
La nouvelle valeur peut être, selon le type de l'option:
booléen: on, off ou toggle
entier : nombre, ++nombre ou --nombre
chaîne : toute chaîne ("" pour une chaîne vide)
couleur: nom de couleur, ++nombre ou --nombre
Pour tous les types, vous pouvez utiliser null pour supprimer la valeur de l'option (valeur non définie). Cela ne fonctionne qu'avec certaines options spéciales des extensions.
........................................
• *`/unset`* `[option]`::
........................................
supprimer/réinitialiser des options de configuration
option: nom d'une option (peut commencer ou se terminer par "*" pour réinitialiser plusieurs options, à utiliser avec prudence !)
Selon l'option, elle est réinitialisée (pour les options standards) ou supprimée (pour les options facultatives, comme les valeurs pour les serveurs).
........................................
• *`/upgrade`* `[chemin_vers_binaire]`::
........................................
mettre à jour WeeChat sans se déconnecter des serveurs
chemin_vers_binaire: chemin vers le binaire WeeChat (par défaut le binaire courant)
Cette commande lance à nouveau un binaire WeeChat, il doit donc avoir été compilé ou installé via un gestionnaire de paquet avant de lancer cette commande.
Le processus de mise à jour comporte 4 étapes :
1. sauvegarde de la session pour le coeur et les extensions (tampons, historique, ...)
2. déchargement de toutes les extensions (les configs *.conf sont sauvegardées)
3. sauvegarde de la config WeeChat (weechat.conf)
4. exécution du nouveau binaire WeeChat.
........................................
• *`/uptime`* `[-o | -ol]`::
........................................
montrer l'uptime de WeeChat
-o: envoyer l'uptime sur le tampon courant comme entrée (chaîne en anglais)
-ol: envoyer l'uptime sur le tampon courant comme entrée (chaîne traduite)
........................................
• *`/version`* `[-o | -ol]`::
........................................
afficher la version de WeeChat et la date de compilation
-o: envoyer la version sur le tampon courant comme entrée (chaîne en anglais)
-ol: envoyer la version sur le tampon courant comme entrée (chaîne traduite)
........................................
• *`/wait`* `nombre[unité] commande`::
........................................
planifie l'exécution d'une commande dans le futur
nombre: temps à attendre (nombre entier)
unité: optionnelle, valeurs possibles:
ms: millisecondes
s: secondes (par défaut)
m: minutes
h: heures
commande: commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')
Note : la commande est exécutée sur le tampon où /wait a été exécuté (si le tampon n'est pas trouvé, alors la commande est exécutée sur le tampon WeeChat principal).
Exemples:
rejoindre le canal dans 10 sec:
/wait 10 /join #test
passer absent dans 15 min:
/wait 15m /away -all I'm away
dire 'bonjour' dans 2 min:
/wait 2m bonjour
........................................
• *`/window`* `[list | -1 | +1 | b# | up | down | left | right | splith [pct] | splitv [ptc] | resize pct | merge [all] | page_up | page_down | refresh | scroll | scroll_up | scroll_down | scroll_top | scroll_bottom | scroll_previous_highlight | scroll_next_highlight | zoom]`::
........................................
gestion des fenêtres
list: liste les fenêtres ouvertes (sans paramètre, cette liste est affichée)
-1: saute à la fenêtre précédente
+1: saute à la fenêtre suivante
b#: saute à la fenêtre affichant le tampon #
up: saute à la fenêtre au dessus
down: saute à la fenêtre au dessous
left: saute à la fenêtre à gauche
right: saute à la fenêtre à droite
splith: éclate la fenêtre en deux horizontalement
splitv: éclate la fenêtre en deux verticalement
resize: redimensionne une fenêtre, la nouvelle taille est <pct> pourcentage de la fenêtre parent
merge: fusionne la fenêtre avec une autre
page_up: défilement d'une page vers le haut
page_down: défilement d'une page vers le bas
refresh: redessine l'écran
scroll: défilement d'un nombre de lignes (+/-N) ou avec du temps: s=secondes, m=minutes, h=heures, d=jours, M=mois, y=année
scroll_up: défilement de quelques lignes vers le haut
scroll_down: défilement de quelques lignes vers le bas
scroll_top: défilement jusqu'au début du tampon
scroll_bottom: défilement jusqu'au bas du tampon
scroll_previous_highlight: défilement jusqu'au highlight précédent
scroll_next_highlight: défilement jusqu'au highlight suivant
zoom: zoom sur la fenêtre
Pour splith et splitv, pct est un pourcentage qui représente la taille de la nouvelle fenêtre, calculée par rapport à la taille de la fenêtre courante. Par exemple 25 signifie créer une fenêtre qui a pour taille: taille_courante / 4
Exemples:
sauter à la fenêtre affichant le tampon 1:
/window b1
défilement de 2 lignes vers le haut:
/window scroll -2
défilement de 2 jours vers le haut:
/window scroll -2d
défilement jusqu'au début du jour courant:
/window scroll -d
........................................
|