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
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
|
= WeeChat FAQ (Questions Fréquemment Posées)
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: fr
:toc: left
:toc-title: Table des matières
:toclevels: 2
:sectnums:
:sectnumlevels: 2
:docinfo1:
Ce document est écrit pour les versions de WeeChat ≥ 0.3.0 mais devrait être
utilisé de préférence avec la dernière version stable de WeeChat.
toc::[]
== Général
[[weechat_name]]
=== D'où vient le nom "WeeChat" ?
"Wee" est un acronyme récursif qui signifie "Wee Enhanced Environment".
Donc le nom complet est "Wee Enhanced Environment for Chat".
"Wee" signifie également "très petit" (et oui, il y a une autre signification,
mais elle ne s'applique pas à WeeChat !).
[[why_choose_weechat]]
=== Pourquoi choisir WeeChat ? X-Chat et Irssi sont si bien...
Parce que WeeChat est très léger et apporte des fonctionnalités innovantes.
Plus d'infos sur la page des fonctionnalités WeeChat :
https://weechat.org/about/features
[[compilation_install]]
== Compilation / installation
[[gui]]
=== J'ai entendu parler de plusieurs interfaces pour WeeChat. Comment puis-je les compiler/utiliser ?
Des interfaces distantes sont disponibles, voir la page avec les interfaces
distantes : https://weechat.org/about/interfaces
[[compile_git]]
=== Je ne peux pas compiler WeeChat après avoir cloné la base git, pourquoi ?
La méthode recommandée pour compiler WeeChat est d'utiliser
link:weechat_user.fr.html#compile_with_cmake[cmake].
Si vous compilez avec les link:weechat_user.fr.html#compile_with_autotools[autotools]
(et non cmake), vérifiez que vous avez bien la dernière version d'autoconf et
automake.
Une autre façon de faire est de compiler le "paquet devel", qui nécessite moins
de dépendances. Ce paquet est construit quasiment tous les jours à partir de la
base git. Notez que ce paquet peut ne pas correspondre exactement à la base
git et qu'il est moins pratique que de cloner la base git pour installer des
mises à jour.
[[compile_macos]]
=== Comment puis-je installer WeeChat sous macOS ?
Il est recommandé d'utiliser https://brew.sh/[Homebrew], vous pouvez avoir de
l'aide avec :
----
brew info weechat
----
Vous pouvez installer WeeChat avec cette commande :
----
brew install weechat --with-aspell --with-curl --with-python --with-perl --with-ruby --with-lua --with-guile
----
[[lost]]
=== J'ai lancé WeeChat, mais je suis perdu, que puis-je faire ?
Pour obtenir de l'aide tapez `/help`. Pour de l'aide sur une commande, tapez
`/help commande`. Les link:weechat_user.fr.html#key_bindings[touches] et
link:weechat_user.fr.html#commands_and_options[commandes] sont listées dans la
documentation.
Il est recommandé pour les nouveaux utilisateurs de lire le
link:weechat_quickstart.fr.html[Guide de démarrage rapide].
[[display]]
== Affichage
[[charset]]
=== Je ne vois pas bien certains accents dans WeeChat, que faire ?
C'est un problème courant avec beaucoup de causes possibles, merci de lire
attentivement et vérifier *TOUS* les points ci-dessous :
* Vérifiez que weechat est lié avec libncursesw (attention : nécessaire
sur beaucoup de distributions, mais pas toutes) :
`ldd /chemin/vers/weechat`.
* Vérifiez que l'extension "charset" est chargée avec la commande `/plugin`
(s'il ne l'est pas, vous devez peut-être installer le paquet
"weechat-plugins").
* Vérifiez la sortie de la commande `/charset` (sur le tampon "core"), vous
devriez voir _ISO-XXXXXX_ ou _UTF-8_ pour le charset du terminal. Si vous
voyez _ANSI_X3.4-1968_ ou d'autres valeurs, votre locale est probablement
erronée. +
Pour corriger votre locale, vérifiez les locales installées avec `locale -a`
et définissez une valeur appropriée pour $LANG, par exemple :
`export LANG=en_US.UTF-8`.
* Affectez la valeur pour le décodage global, par exemple :
`/set charset.default.decode "ISO-8859-15"`.
* Si vous utilisez la locale UTF-8 :
** Vérifiez que votre terminal est compatible UTF-8
(un terminal conseillé pour l'UTF-8 est rxvt-unicode).
** Si vous utilisez screen, vérifiez qu'il est lancé en mode UTF-8
("`defutf8 on`" dans ~/.screenrc ou `screen -U` pour lancer screen).
* Vérifiez que l'option
link:weechat_user.fr.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_]
est désactivée (cette option peut causer des problèmes d'affichage).
[NOTE]
La locale UTF-8 est recommandée pour WeeChat. Si vous utilisez ISO ou une autre
locale, assurez-vous que *tout* soit configuré en ISO (terminal, screen, ...)
et *pas* en UTF-8.
[[unicode_chars]]
=== Certains caractères unicode sont affichés dans le terminal, mais pas dans WeeChat, pourquoi ?
Cela peut être causé par un bug de la libc dans la fonction _wcwidth_ et
devrait être corrigé dans la glibc 2.22 (peut-être pas encore disponible dans
votre distribution).
Il y a un moyen de contournement pour utiliser la fonction _wcwidth_ corrigée :
https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat
Voir ce rapport de bug pour plus d'informations :
https://github.com/weechat/weechat/issues/79
[[bars_background]]
=== Des barres telles que le titre et le statut ne sont pas remplies, la couleur de fond s'arrête après le texte, pourquoi ?
Cela peut être du à la variable TERM qui n'a pas la bonne valeur (regardez la
sortie de `echo $TERM` dans votre terminal).
Selon la façon de lancer WeeChat, vous devriez avoir :
* Si WeeChat tourne en local ou sur une machine distante sans screen ni tmux :
cela dépend du terminal utilisé : _xterm_, _xterm-256color_, _rxvt-unicode_,
_rxvt-256color_, etc.
* Si WeeChat tourne sous screen, vous devriez avoir _screen_ ou _screen-256color_.
* Si WeeChat tourne sous tmux, vous devriez avoir _tmux_, _tmux-256color_,
_screen_ ou _screen-256color_.
Si besoin, corrigez la variable TERM : `export TERM="xxx"`.
[[screen_weird_chars]]
=== Quand j'utilise weechat sous screen/tmux, j'ai des caractères bizarres et aléatoires, comment corriger ça ?
Cela peut être du à la variable TERM qui n'a pas la bonne valeur (regardez la
sortie de `echo $TERM` dans votre terminal, *en dehors de screen/tmux*). +
Par exemple _xterm-color_ provoque ce genre de problèmes, utilisez
_xterm_ qui est ok (comme plein d'autres valeurs). +
Si besoin, corrigez la variable TERM : `export TERM="xxx"`.
Si vous utilisez gnome-terminal, vérifiez que l'option
"Ambiguous-width characters" dans le menu Preferences/Profile/Compatibility
est positionnée à `narrow`.
[[macos_display_broken]]
=== J'ai compilé WeeChat sous macOS, et je vois des "(null)" partout sur l'écran, pourquoi ?
Si vous avez compilé ncursesw vous-même, essayez avec le ncurses standard (celui
fourni avec le système).
De plus, sous macOS, il est recommandé d'installer WeeChat avec le gestionnaire
de paquets Homebrew.
[[buffer_vs_window]]
=== J'ai entendu parler de "buffer" et "window", quelle est la différence ?
Un tampon (_buffer_) est composé d'un numéro, un nom, des lignes affichées
(ainsi que d'autres données).
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 ou un ensemble de tampons mélangés. Un tampon
peut être caché (affiché par aucune fenêtre) ou affiché par une ou plusieurs
fenêtres.
[[buffers_list]]
=== Comment afficher la liste des tampons sur la gauche ?
Avec WeeChat ≥ 1.8, l'extension link:weechat_user.fr.html#buflist_plugin[buflist]
est chargée et activée par défaut.
Avec une version plus ancienne, vous pouvez installer le script _buffers.pl_ :
----
/script install buffers.pl
----
Pour limiter la taille de la barre (remplacez "buflist" par "buffers" si vous
utilisez le script _buffers.pl_) :
----
/set weechat.bar.buffers.size_max 15
----
Pour déplacer la barre en bas :
----
/set weechat.bar.buffers.position bottom
----
Pour faire défiler la barre : si la souris est activée (touche : kbd:[Alt+m]),
vous pouvez faire défiler avec la roulette de votre souris.
Les touches par défaut pour faire défiler la barre _buflist_ sont kbd:[F1]
(ou kbd:[Ctrl+F1]), kbd:[F2] (ou kbd:[Ctrl+F2]), kbd:[Alt+F1] et kbd:[Alt+F2].
Pour le script _buffers.pl_, vous pouvez définir des touches, comme les touches
déjà existantes pour faire défiler la liste de pseudos. +
Par exemple pour utiliser kbd:[F1], kbd:[F2], kbd:[Alt+F1] et kbd:[Alt+F2] :
----
/key bind meta-OP /bar scroll buffers * -100%
/key bind meta-OQ /bar scroll buffers * +100%
/key bind meta-meta-OP /bar scroll buffers * b
/key bind meta-meta-OQ /bar scroll buffers * e
----
[NOTE]
Les touches "meta-OP" et "meta-OQ" peuvent être différentes dans votre terminal.
Pour trouver le code de la touche appuyez sur kbd:[Alt+k] puis la touche.
[[customize_prefix]]
=== Comment puis-je réduire la longueur des pseudos ou supprimer l'alignement des pseudos dans la zone de discussion ?
Pour réduire la longueur maximum des pseudos dans la zone de discussion :
----
/set weechat.look.prefix_align_max 15
----
Pour supprimer l'alignement sur les pseudos :
----
/set weechat.look.prefix_align none
----
[[status_hotlist]]
=== Que signifie [H: 3(1,8), 2(4)] dans la barre de statut ?
Il s'agit de la "hotlist", une liste de tampons avec le nombre de messages non
lus, par ordre : highlights, messages privés, messages, autres messages
(comme join/part). +
Le nombre de "messages non lus" est le nombre de nouveaux messages affichés/reçus
depuis que vous avez visité le tampon.
Dans l'exemple `[H: 3(1,8), 2(4)]`, il y a :
* 1 highlight et 8 messages non lus sur le tampon n°3,
* 4 messages non lus sur le tampon n°2.
La couleur du tampon/compter dépend du type de message, les couleurs par défaut
sont :
* highlight : `lightmagenta` / `magenta`
* message privé : `lightgreen` / `green`
* message : `yellow` / `brown`
* autre message : `default` / `default` (couleur du texte dans le terminal)
Ces couleurs peuvent être changées via les options __weechat.color.status_data_*__
(tampons) et __weechat.color.status_count_*__ (compteurs). +
Les autres options pour la "hotlist" peuvent être changées via les options
__weechat.look.hotlist_*__.
Voir le link:weechat_user.fr.html#screen_layout[Guide utilisateur / Organisation de l'écran]
pour plus d'information sur la "hotlist".
[[input_bar_size]]
=== Comment utiliser une ligne de commande sur plusieurs lignes ?
L'option _size_ dans la barre input peut être définie à une valeur supérieure
à 1 (pour une taille fixe, la taille par défaut est 1) ou 0 pour une taille
dynamique, et alors l'option _size_max_ définira la taille maximum (0 = pas de
limite).
Exemple avec une taille dynamique :
----
/set weechat.bar.input.size 0
----
Taille maximum de 2 :
----
/set weechat.bar.input.size_max 2
----
[[one_input_root_bar]]
=== Est-il possible d'avoir une seule bar input pour toutes les fenêtres (après un découpage) ?
Oui, vous devez créer une barre de type "root" (avec un objet pour savoir dans
quelle fenêtre vous êtes), puis supprimer la barre input courante.
Par exemple :
----
/bar add rootinput root bottom 1 0 [buffer_name]+[input_prompt]+(away),[input_search],[input_paste],input_text
/bar del input
----
Si jamais vous n'étiez pas satisfait avec ça, supprimez simplement la nouvelle
barre, WeeChat recréera automatiquement la barre par défaut "input" si l'objet
"input_text" n'est utilisé dans aucune barre :
----
/bar del rootinput
----
[[terminal_copy_paste]]
=== Comment puis-je copier/coller du texte sans coller la liste des pseudos ?
Avec WeeChat ≥ 1.0, vous pouvez utiliser l'affichage dépouillé (touche par
défaut : kbd:[Alt+l]), qui affiche juste le contenu de la fenêtre actuellement
sélectionnée sans aucun formatage.
Vous pouvez utiliser un terminal qui propose la sélection rectangulaire (comme
rxvt-unicode, konsole, gnome-terminal, etc.). La touche est habituellement
kbd:[Ctrl] + kbd:[Alt] + sélection à la souris.
Une autre solution est de déplacer la liste des pseudos en haut ou en bas, par
exemple :
----
/set weechat.bar.nicklist.position top
----
[[urls]]
=== Comment puis-je cliquer sur les longs URLs (plus d'une ligne) ?
Avec WeeChat ≥ 1.0, vous pouvez utiliser l'affichage dépouillé (touche par
défaut : kbd:[Alt+l]).
Pour rendre le clic d'URL plus facile, vous pouvez :
* déplacer la liste des pseudos en haut :
----
/set weechat.bar.nicklist.position top
----
* désactiver l'alignement pour les mots sur plusieurs lignes (WeeChat ≥ 1.7) :
----
/set weechat.look.align_multiline_words off
----
* ou pour toutes les lignes :
----
/set weechat.look.align_end_of_lines time
----
Avec WeeChat ≥ 0.3.6, vous pouvez activer l'option "eat_newline_glitch", pour
éviter qu'un caractère de nouvelle ligne soit affiché après chaque ligne (donc
cela ne cassera pas la sélection d'une URL) :
----
/set weechat.look.eat_newline_glitch on
----
[IMPORTANT]
Cette option peut causer des problèmes d'affichage. Si vous rencontrez de tels
problèmes, vous devez désactiver cette option.
Une autre solution est d'utiliser un script :
----
/script search url
----
[[change_locale_without_quit]]
=== Je souhaite changer la langue des messages affichés par WeeChat, mais sans quitter WeeChat, est-ce possible ?
Oui, avec WeeChat ≥ 1.0 :
----
/set env LANG fr_FR.UTF-8
/upgrade
----
Avec un ancien WeeChat :
----
/script install shell.py
/shell setenv LANG=fr_FR.UTF-8
/upgrade
----
[[use_256_colors]]
=== Comment puis-je utiliser 256 couleurs sous WeeChat ?
Les 256 couleurs sont supportées avec WeeChat ≥ 0.3.4.
Premièrement vérifiez que votre variable d'environnement _TERM_ est correcte,
les valeurs recommandées sont :
* sous screen : _screen-256color_
* sous tmux : _screen-256color_ ou _tmux-256color_
* en dehors de screen/tmux : _xterm-256color_, _rxvt-256color_,
_putty-256color_, ...
[NOTE]
Vous devrez peut-être installer le paquet "ncurses-term" pour utiliser ces
valeurs dans la variable _TERM_.
Si vous utilisez screen, vous pouvez ajouter cette ligne dans votre
_~/.screenrc_ :
----
term screen-256color
----
Si votre variable _TERM_ a une valeur erronée et que WeeChat est déjà lancé,
vous pouvez la changer avec ces deux commandes (avec WeeChat ≥ 1.0) :
----
/set env TERM screen-256color
/upgrade
----
Pour la version 0.3.4, vous devez utiliser la commande `/color` pour ajouter
des nouvelles couleurs.
Pour les versions ≥ 0.3.5, vous pouvez utiliser un numéro de couleur dans les
options (facultatif : vous pouvez ajouter des alias de couleurs avec la commande
`/color`).
Merci de lire le link:weechat_user.fr.html#colors[Guide utilisateur / Couleurs] pour
plus d'information sur la gestion des couleurs.
[[search_text]]
=== Comment puis-je chercher du texte dans le tampon (comme /lastlog dans irssi) ?
La touche par défaut est kbd:[Ctrl+r] (la commande est : `/input search_text_here`).
Et sauter aux highlights : kbd:[Alt+p] / kbd:[Alt+n].
Voir le link:weechat_user.fr.html#key_bindings[Guide utilisateur / Raccourcis clavier par défaut]
pour plus d'information sur cette fonctionnalité.
[[terminal_focus]]
=== Comment puis-je exécuter des commandes lorsque le terminal obtient/perd le focus ?
Vous devez activer les évènements du focus avec un code spécial envoyé au
terminal.
*Important* :
* Vous devez utiliser un terminal moderne compatible avec xterm.
* Il semble également important que la valeur de votre variable TERM soit égale à
_xterm_ ou _xterm-256color_.
* Si vous utilisez tmux, vous devez activer en plus les évènements focus
en ajoutant `set -g focus-events on` dans votre fichier _.tmux.conf_.
* Cela ne fonctionne *pas* sous screen.
Pour envoyer le code au démarrage de WeeChat :
----
/set weechat.startup.command_after_plugins "/print -stdout \033[?1004h\n"
----
Puis associez deux touches pour le focus (remplacez les commandes `/print` par
les commandes de votre choix) :
----
/key bind meta2-I /print -core focus
/key bind meta2-O /print -core unfocus
----
Par exemple pour marquer les tampons comme lus lorsque le terminal perd le focus :
----
/key bind meta2-O /input set_unread
----
[[screen_paste]]
=== Lorsque WeeChat tourne sous screen, le collage de texte dans une autre fenêtre screen ajoute ~0 et ~1 autour du texte, pourquoi ?
Cela est causé par l'option "bracketed paste" qui est activée par défaut, et
pas correctement gérée par screen dans les autres fenêtres.
Vous pouvez simplement désactiver le mode "bracketed paste" :
----
/set weechat.look.paste_bracketed off
----
[[key_bindings]]
== Raccourcis clavier
[[meta_keys]]
=== Quelques touches meta (alt + touche) ne fonctionnent pas, pourquoi ?
Si vous utilisez certains terminaux comme xterm ou uxterm, quelques touches
meta ne fonctionnent pas par défaut. Vous pouvez ajouter cette ligne dans le
fichier _~/.Xresources_ :
* Pour xterm :
----
XTerm*metaSendsEscape: true
----
* Pour uxterm :
----
UXTerm*metaSendsEscape: true
----
Puis recharger les ressources (`xrdb -override ~/.Xresources`) ou redémarrez X.
Si vous utilisez l'application Terminal sous macOS, activez l'option
"Use option as meta key" dans le menu Réglages/Clavier. Vous pouvez alors
utiliser la touche kbd:[Option] comme touche meta.
[[customize_key_bindings]]
=== Comment puis-je configurer les raccourcis clavier ?
Les raccourcis clavier sont modifiables avec la commande `/key`.
La touche par défaut kbd:[Alt+k] permet de capturer le code d'une touche et de
l'inclure dans la ligne de commande.
[[jump_to_buffer_11_or_higher]]
=== Quelle est la touche pour sauter vers le tampon 11 (ou numéro plus élevé) ?
La touche est kbd:[Alt+j] puis 2 chiffres, par exemple kbd:[Alt+j], kbd:[1],
kbd:[1] pour sauter au tampon 11.
Vous pouvez définir une touche, par exemple :
----
/key bind meta-q /buffer *11
----
La liste des touches par défaut est dans le
link:weechat_user.fr.html#key_bindings[Guide utilisateur / Raccourcis clavier par défaut].
Pour sauter vers les tampons ayant un numéro ≥ 100, vous pouvez définir un trigger
et utiliser les commandes comme `/123` pour sauter au tampon n°123 :
----
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----
[[global_history]]
=== Comment utiliser l'historique global (au lieu de l'historique du tampon) avec les touches haut et bas ?
Vous pouvez assigner les touches haut et bas sur l'historique global (les
touches par défaut pour l'historique global sont kbd:[Ctrl+↑] et kbd:[Ctrl+↓]).
Exemple :
----
/key bind meta2-A /input history_global_previous
/key bind meta2-B /input history_global_next
----
[NOTE]
Les touches "meta2-A" et "meta2-B" peuvent être différentes dans votre terminal.
Pour trouver le code de la touche appuyez sur kbd:[Alt+k] puis la touche.
[[mouse]]
== Souris
[[mouse_not_working]]
=== La souris ne fonctionne pas du tout, que puis-je faire ?
La souris est supportée avec WeeChat ≥ 0.3.6.
Premièrement essayez d'activer la souris :
----
/mouse enable
----
Si la souris ne fonctionne toujours pas, vérifiez la variable TERM dans votre
shell (regardez la sortie de `echo $TERM` dans votre terminal).
Selon le terminfo utilisé, la souris peut ne pas être supportée.
Vous pouvez tester le support de la souris dans le terminal :
----
$ printf '\033[?1002h'
----
Et cliquez sur le premier caractère du terminal (en haut à gauche). Vous devriez
voir " !!#!!".
Pour désactiver la souris dans le terminal :
----
$ printf '\033[?1002l'
----
[[mouse_coords]]
=== La souris ne fait rien pour un X ou Y supérieur à 94 (ou 222), pourquoi ?
Certains terminaux envoient seulement des caractères ISO pour les coordonnées
de la souris, donc cela ne fonctionne pas avec un X/Y supérieur à 94 (ou 222).
Vous devriez utiliser un terminal qui supporte les coordonnées UTF-8 pour la
souris, comme rxvt-unicode.
[[mouse_select_paste]]
=== Comment puis-je sélectionner ou coller du texte quand la souris est activée dans WeeChat ?
Lorsque la souris est activée dans WeeChat, vous pouvez utiliser la touche
kbd:[Shift] pour sélectionner ou cliquer dans le terminal, comme si la souris
était désactivée (sous certains terminaux comme iTerm, vous devez utiliser
kbd:[Alt] au lieu de kbd:[Shift]).
[[irc]]
== IRC
[[irc_ssl_connection]]
=== J'ai des problèmes pour me connecter au serveur avec SSL, que puis-je faire ?
Si vous utilisez macOS, vous devez installer `openssl` depuis Homebrew.
Un fichier CA sera installé avec le le trousseau système. Vous pouvez alors
définie le chemin vers les certificats sous WeeChat :
----
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
----
Si vous voyez des erreurs à propos de la poignée de main gnutls ("handshake"),
vous pouvez utiliser une valeur plus petite pour la clé Diffie-Hellman (par
défaut 2048) :
----
/set irc.server.example.ssl_dhkey_size 1024
----
Si vous voyez des erreurs à propos du certificat, vous pouvez désactiver
"ssl_verify" (attention, la connexion sera moins sûre en faisant cela) :
----
/set irc.server.example.ssl_verify off
----
Si le serveur a un certificat invalide et que vous savez ce que devrait être
le certificat, vous pouvez spécifier l'empreinte (SHA-512, SHA-256 ou SHA-1) :
----
/set irc.server.example.ssl_fingerprint 0c06e399d3c3597511dc8550848bfd2a502f0ce19883b728b73f6b7e8604243b
----
[[irc_ssl_handshake_error]]
=== Lors de la connexion SSL à un serveur, je vois juste une erreur "TLS handshake failed", que puis-je faire ?
Vous pouvez essayer une chaîne de priorité différente (WeeChat ≥ 0.3.5
seulement), remplacez "xxx" par le nom de votre serveur :
----
/set irc.server.xxx.ssl_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
----
[[irc_ssl_freenode]]
=== Comment puis-je me connecter à freenode avec SSL ?
Positionnez l'option _weechat.network.gnutls_ca_file_ avec le fichier des
certificats :
----
/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"
----
Note : si vous êtes sous macOS avec le paquet homebrew openssl installé, vous
pouvez lancer :
----
/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
----
[NOTE]
Vérifiez que vous avez bien ce fichier (fourni généralement par le paquet
"ca-certificates").
Configurez le port du serveur, SSL, puis connectez-vous :
----
/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/connect freenode
----
[[irc_oauth]]
=== Comment se connecter à un serveur qui requiert "oauth" ?
Des serveurs tels que _twitch_ requièrent oauth pour se connecter.
L'oauth est simplement un mot de passe avec la valeur "oauth:XXXX".
Vous pouvez ajouter un tel serveur et vous y connecter avec les commandes
suivantes (remplacez le nom et l'adresse par les valeurs appropriées) :
----
/server add nom irc.server.org -password=oauth:XXXX
/connect nom
----
[[irc_sasl]]
=== Comment puis-je être identifié avant de rejoindre les canaux ?
Si le serveur supporte SASL, vous devriez l'utiliser au lieu d'envoyer une
commande pour l'authentification avec nickserv, par exemple :
----
/set irc.server.freenode.sasl_username "mynick"
/set irc.server.freenode.sasl_password "xxxxxxx"
----
Si le serveur ne supporte pas SASL, vous pouvez ajouter un délai (entre la
commande et le join des canaux) :
----
/set irc.server.freenode.command_delay 5
----
[[edit_autojoin]]
=== Comment puis-je ajouter/supprimer des canaux de l'option autojoin ?
Vous pouvez utiliser la commande `/set` pour éditer la liste des canaux de
l'autojoin, par exemple pour le serveur freenode :
----
/set irc.server.freenode.autojoin [TAB]
----
[NOTE]
Vous pouvez compléter le nom et les valeurs de l'option avec la touche kbd:[Tab]
(ou kbd:[Shift+Tab] pour une complétion partielle, pratique pour le nom). +
De cette façon, vous n'avez pas à taper la liste complète des canaux.
Vous pouvez également utiliser la commande `/fset` pour éditer la liste
des canaux :
----
/fset autojoin
----
Une autre solution est d'utiliser un script :
----
/script search autojoin
----
[[ignore_vs_filter]]
=== Quelle est la différence entre les commandes /ignore et /filter ?
La commande `/ignore` est une commande IRC, donc elle s'applique uniquement aux
tampons IRC (serveurs et canaux).
Elle permet d'ignorer des pseudos ou nom d'hôtes pour un serveur ou un canal
(la commande ne s'applique pas au contenu des messages).
Les messages correspondants sont supprimés par l'extension IRC avant affichage
(donc vous ne les verrez jamais et ils ne peuvent pas être récupérés en
supprimant l'ignore).
La commande `/filter` est une commande "core" WeeChat, donc elle s'applique à
n'importe quel tampon.
Elle permet de filtrer des lignes dans les tampons à l'aide d'étiquettes ou
d'expression régulière pour le préfixe et contenu de la ligne.
Les lignes filtrées sont simplement cachées, pas supprimées, et il est possible
de les voir en désactivant les filtres (par défaut, la touche kbd:[Alt+=]
active/désactive les filtres).
[[filter_irc_join_part_quit]]
=== Comment puis-je filtrer les messages join/part/quit sur les canaux IRC ?
Avec le filtre intelligent (pour garder les join/part/quit des utilisateurs qui
ont parlé récemment) :
----
/set irc.look.smart_filter on
/filter add irc_smart * irc_smart_filter *
----
Avec un filtre global (pour cacher *tous* les join/part/quit) :
----
/filter add joinquit * irc_join,irc_part,irc_quit *
----
[NOTE]
Pour l'aide : `/help filter`, `/help irc.look.smart_filter` et voir
link:weechat_user.fr.html#irc_smart_filter_join_part_quit[Guide utilisateur / Filtre intelligent pour les messages join/part/quit].
[[filter_irc_join_channel_messages]]
=== Comment puis-je filtrer certains messages affichés quand je rejoins un canal IRC ?
Avec WeeChat ≥ 0.4.1, vous pouvez choisir les messages affichés lorsque
vous rejoignez un canal avec l'option _irc.look.display_join_message_ (voir
`/help irc.look.display_join_message` pour plus d'informations).
Pour cacher des messages (mais les garder dans le tampon), vous pouvez les
filtrer en utilisant l'étiquette (par exemple _irc_329_ pour la date de création
du canal). Voir `/help filter` pour l'aide sur les filtres.
[[filter_voice_messages]]
=== Comment puis-je filtrer les messages voice (par exemple sur le serveur Bitlbee) ?
Il n'est pas facile de filtrer les messages voice, car le mode voice peut être
positionné avec d'autres modes dans le même message IRC.
Si vous souhaitez faire cela, c'est probablement parce que Bitlbee utilise le
voice pour montrer les utilisateurs absents, et vous recevez plein de messages
voice. Par conséquent, vous pouvez changer cela et laisser WeeChat utiliser une
couleur spéciale pour les pseudos absents dans la liste des pseudos.
Pour Bitlbee ≥ 3, faites ceci sur le canal _&bitlbee_ :
----
channel set show_users online,away
----
Pour une version plus ancienne de Bitlbee, faites ceci sur le canal
_&bitlbee_ :
----
set away_devoice false
----
Pour vérifier les pseudos absents dans WeeChat, voir la question à propos des
<<color_away_nicks,pseudos absents>>.
Si vous voulez vraiment filtrer les messages voice, vous pouvez utiliser cette
commande, mais elle n'est pas parfaite (elle fonctionne seulement si le
premier mode changé est voice) :
----
/filter add hidevoices * irc_mode (\+|\-)v
----
[[color_away_nicks]]
=== Comment puis-je voir les pseudos absents dans la liste des pseudos ?
Vous devez positionner l'option _irc.server_default.away_check_ avec une valeur
positive (minutes entre chaque vérification des pseudos absents).
Vous pouvez aussi positionner l'option _irc.server_default.away_check_max_nicks_
pour limiter la vérification d'absence sur les petits canaux seulement.
Par exemple, pour vérifier les pseudos absents toutes les 5 minutes, pour les
canaux avec maximum 25 pseudos :
----
/set irc.server_default.away_check 5
/set irc.server_default.away_check_max_nicks 25
----
[NOTE]
Pour WeeChat ≤ 0.3.3, les options sont _irc.network.away_check_ et
_irc.network.away_check_max_nicks_.
[[highlight_notification]]
=== Comment être averti lorsque quelqu'un prononce mon pseudo sur un canal ?
Avec WeeChat ≥ 1.0, il y a un trigger "beep" qui envoie _BEL_ au terminal sur
un highlight ou un message privé. Par conséquent vous pouvez configurer votre
terminal (ou multiplexeur comme screen/tmux) pour lancer une commande ou jouer
un son lorsque le _BEL_ se produit.
Ou vous pouvez ajouter une commande dans le trigger "beep" :
----
/set trigger.trigger.beep.command "/print -beep;/exec -bg /chemin/vers/commande paramètres"
----
Avec un WeeChat plus ancien, vous pouvez utiliser un script comme _beep.pl_ ou
_launcher.pl_.
Pour _launcher.pl_, vous devez configurer la commande :
----
/set plugins.var.perl.launcher.signal.weechat_highlight "/chemin/vers/commande paramètres"
----
Autres scripts sur ce sujet :
----
/script search notify
----
[[disable_highlights_for_specific_nicks]]
=== Comment puis-je désactiver le highlight pour des pseudos spécifiques ?
Avec WeeChat ≥ 0.3.4 vous pouvez utiliser la propriété de tampon
link:weechat_user.en.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add]
pour définir le niveau maximum de hotlist pour certains pseudos, par tampon,
ou groupe de tampons (comme des serveurs IRC).
Pour désactiver seulement les highlights, vous pouvez positionner la valeur à 2:
----
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----
Cependant, cette propriété de tampon n'est pas sauvegardée dans la configuration.
Pour automatiquement réappliquer ces propriétés de tampons, vous aurez besoin
du script _buffer_autoset.py_ :
----
/script install buffer_autoset.py
----
Par exemple, pour désactiver de manière permanente les highlights de "mike" sur
#weechat sur le serveur IRC freenode :
----
/buffer_autoset add irc.freenode.#weechat hotlist_max_level_nicks_add mike:2
----
Pour l'appliquer à l'ensemble du serveur freenode :
----
/buffer_autoset add irc.freenode hotlist_max_level_nicks_add mike:2
----
Pour plus d'exemples, voir `/help buffer_autoset`.
[[irc_target_buffer]]
=== Comment puis-je changer le serveur cible pour les commandes avec des tampons mélangés (comme le tampon avec les serveurs) ?
La touche par défaut est kbd:[Ctrl+x] (la commande est :
`/input switch_active_buffer`).
[[plugins_scripts]]
== Extensions / scripts
[[openbsd_plugins]]
=== J'utilise OpenBSD et WeeChat ne charge aucune extension, pourquoi ?
Sous OpenBSD, le nom des extensions se termine par ".so.0.0" (".so" sous
Linux).
Vous devez configurer ça :
----
/set weechat.plugin.extension ".so.0.0"
/plugin autoload
----
[[install_scripts]]
=== Comment puis-je installer des scripts ? Les scripts sont-ils compatibles avec d'autres clients IRC ?
Avec WeeChat ≥ 0.3.9, vous pouvez utiliser la commande `/script` pour installer
et gérer les scripts (voir `/help script` pour de l'aide). Pour les versions
plus anciennes il y a weeget.py et script.pl.
Les scripts ne sont pas compatibles avec d'autres clients IRC.
[[scripts_update]]
=== La commande "/script update" ne peut pas lire les scripts, comment corriger ça ?
Consultez d'abord les questions à propos des connexions SSL dans cette FAQ
(en particulier l'option _weechat.network.gnutls_ca_file_).
Si cela ne fonctionne toujours pas, essayez de supprimer manuellement le fichier
avec les scripts (dans votre shell) :
----
$ rm ~/.weechat/script/plugins.xml.gz
----
Et mettez à jour les scripts à nouveau dans WeeChat :
----
/script update
----
Si vous avez toujours une erreur, alors vous devez désactiver la mise à jour
automatique du fichier dans WeeChat et télécharger le fichier manuellement
en dehors de WeeChat (cela signifie que vous devrez mettre à jour le fichier
vous-même pour obtenir les mises à jour) :
* dans WeeChat :
----
/set script.scripts.cache_expire -1
----
* dans votre shell, avec curl installé :
----
$ cd ~/.weechat/script
$ curl -O https://weechat.org/files/plugins.xml.gz
----
[[spell_dictionaries]]
=== J'ai installé des dictionnaires aspell sur mon système, comment les utiliser sans redémarrer WeeChat ?
Vous devez recharger l'extension spell :
----
/plugin reload spell
----
[NOTE]
Avec WeeChat ≤ 2.4, l'extension "spell" s'appelait "aspell", donc la commande est :
`/plugin reload aspell`.
[[settings]]
== Réglages
[[editing_config_files]]
=== Puis-je éditer les fichiers de configuration (*.conf) à la main ?
Vous pouvez, mais ce n'est *PAS* recommandé.
La commande `/set` dans WeeChat est recommandée :
* Vous pouvez compléter le nom et la valeur de l'option avec la touche kbd:[Tab]
(ou kbd:[Shift+Tab] pour une complétion partielle, pratique pour le nom).
* La valeur est vérifiée, un message est affiché en cas d'erreur.
* La valeur est utilisée immédiatement, et vous n'avez pas besoin de redémarrer
quoi que ce soit.
Si vous souhaitez quand même éditer les fichiers à la main, vous devez faire
attention :
* Si vous mettez une valeur invalide pour une option, WeeChat affichera une
erreur au chargement et ne tiendra pas compte de la valeur (la valeur par
défaut pour l'option sera utilisée).
* Si WeeChat tourne, vous devrez utiliser la commande `/reload`, et si des
options ont été changées mais non sauvées avec `/save`, vous les perdrez.
[[memory_usage]]
=== Comment configurer WeeChat pour consommer moins de mémoire ?
Vous pouvez essayer les astuces suivantes pour consommer moins de mémoire :
* Utiliser la dernière version stable (elle est supposée avoir moins de fuites
de mémoire que les versions plus anciennes).
* Ne pas charger les extensions si vous ne les utilisez pas, par exemple :
buflist, fifo, logger, perl, python, ruby, lua, tcl, guile, javascript, php,
spell, xfer (utilisé pour les DCC).
Voir `/help weechat.plugin.autoload`.
* Charger uniquement les scripts dont vous avez vraiment besoin.
* Ne pas charger les certificats si SSL n'est *PAS* utilisé : affecter une
chaîne vide pour l'option _weechat.network.gnutls_ca_file_.
* Réduire la valeur de l'option _weechat.history.max_buffer_lines_number_ ou
affecter une valeur à l'option _weechat.history.max_buffer_lines_minutes_.
* Réduire la valeur de l'option _weechat.history.max_commands_.
[[cpu_usage]]
=== Comment configurer WeeChat pour moins utiliser le processeur ?
Vous pouvez suivre les mêmes astuces que pour la <<memory_usage,mémoire>>, et
celles-ci :
* Cacher la barre "nicklist" : `/bar hide nicklist`.
* Supprimer l'affichage des secondes dans l'heure de la barre de statut :
`/set weechat.look.item_time_format "%H:%M"` (ceci est la valeur par défaut).
* Désactiver la vérification en temps réel des mots mal orthographiés dans la
ligne de commande (si vous l'avez activée) : `/set spell.check.real_time off`.
* Définir la variable _TZ_ (par exemple : `export TZ="Europe/Paris"`), pour
éviter un accès fréquent au fichier _/etc/localtime_.
[[security]]
=== Je suis paranoïaque sur la sécurité, quels paramètres puis-je changer pour être encore plus sûr ?
Désactivez les messages de part et quit IRC :
----
/set irc.server_default.msg_part ""
/set irc.server_default.msg_quit ""
----
Désactivez les réponses à toutes les demandes CTCP :
----
/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""
----
Déchargez et désactivez le chargement automatique de l'extension "xfer"
(utilisée pour le DCC IRC) :
----
/plugin unload xfer
/set weechat.plugin.autoload "*,!xfer"
----
Définissez une phrase de chiffrement et utilisez les données sécurisées partout
où vous le pouvez pour les données sensibles comme les mots de passe : voir
`/help secure` et `/help` sur les options (si vous pouvez utiliser les données
sécurisées, cela est mentionné dans l'aide).
Voir aussi link:weechat_user.fr.html#secured_data[Guide utilisateur / Données sécurisées].
Par exemple :
----
/secure passphrase xxxxxxxxxx
/secure set freenode_username username
/secure set freenode_password xxxxxxxx
/set irc.server.freenode.sasl_username "${sec.data.freenode_username}"
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"
----
[[sharing_config_files]]
=== Je souhaite partager ma configuration de WeeChat, quels fichiers dois-je partager et que dois-je garder privé ?
Vous pouvez partager les fichiers _~/.weechat/*.conf_ sauf le fichier
_sec.conf_ qui contient vos mots de passes chiffrés avec votre phrase
de chiffrement.
Quelques autres fichiers comme _irc.conf_ peuvent contenir des informations
sensibles comme les mots de passes des serveurs/canaux (s'ils ne sont pas
stockés dans _sec.conf_ avec la commande `/secure`).
Voir le link:weechat_user.fr.html#files_and_directories[Guide utilisateur / Fichiers et répertoires]
pour plus d'informations sur les fichiers de configuration.
[[development]]
== Développement
[[bug_task_patch]]
=== Comment puis-je reporter un bug, demander une nouvelle fonctionnalité ou envoyer un patch ?
Voir : https://weechat.org/about/support
[[gdb_error_threads]]
=== Quand je lance WeeChat sous gdb, il y a une erreur à propos des threads, que puis-je faire ?
Quand vous lancez WeeChat sous gdb, vous pouvez avoir cette erreur :
----
$ gdb /path/to/weechat
(gdb) run
[Thread debugging using libthread_db enabled]
Cannot find new threads: generic error
----
Pour corriger ça, vous pouvez lancer gdb avec cette commande (remplacez le
chemin vers libpthread et WeeChat avec les chemins sur votre système) :
----
$ LD_PRELOAD=/lib/libpthread.so.0 gdb /path/to/weechat
(gdb) run
----
[[supported_os]]
=== Quelle est la liste des plates-formes supportées par WeeChat ? Sera-t-il porté sur d'autres systèmes d'exploitation ?
La liste complète est sur cette page : https://weechat.org/download
Nous faisons le maximum pour supporter le plus de plates-formes possible.
Toute aide est la bienvenue pour les systèmes que nous n'avons pas, pour y
tester WeeChat.
[[help_developers]]
=== Je souhaiterais aider les développeurs WeeChat. Que puis-je faire ?
Il y a plusieurs choses à faire (test, code, documentation, etc.)
Merci de prendre contact avec nous par IRC ou mail, consultez la page
support : https://weechat.org/about/support
[[donate]]
=== Puis-je donner de l'argent ou d'autres choses aux développeurs WeeChat ?
Vous pouvez donner de l'argent pour aider le développement.
Plus de détails sur https://weechat.org/donate
|