summaryrefslogtreecommitdiff
path: root/doc/sr/weechat_faq.sr.adoc
blob: 1bdfd71deb9f74a53294c5e28bceec204ad36763 (plain)
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
= WeeChat ЧПП (Често Постављана Питања)
:author: Sébastien Helleu
:email: flashcode@flashtux.org
:lang: sr
:toc-title: Садржај

Превод:

* Иван Пешић (<ivan.pesic@gmail.com>), 2021.

[[general]]
== Опште

[[weechat_name]]
=== Шта је порекло имена „WeeChat”?

„Wee” је рекурзивни акроним који значи „Wee Enhanced Environment”. (Wee Унапређено Окружење) Тако да је комплетно име „Wee Enhanced Environment for Chat”.

„Wee” такође значи и „веома мало” (јесте, постоји и друго значење, али се оно не примењује за WeeChat!).

[[why_choose_weechat]]
=== Зашто да изаберем WeeChat? X-Chat и Irssi су толико добри...

Јер WeeChat уопште не оптерећује систем и доноси иновативне могућности.

Више информација у вези са WeeChat је на
https://weechat.org/about/features/[страници са могућностима ^↗^^].

[[compilation_install]]
== Компајлирање / инсталација

[[gui]]
=== Чуо сам о многим ГКИ за WeeChat. Како да их компајлирам/користим?

Доступни су неки удаљени ГКИ, погледајте
https://weechat.org/about/interfaces/[страницу са удаљеним ГКИ ^↗^^].

[[compile_git]]
=== Након клонирања git репозиторијума не могу да компајлирам програм WeeChat, зашто?

WeeChat мора да се компајлира са CMake.

Молимо да пратите link:weechat_user.en.html#source_package[инструкције за изградњу ^↗^^]
и обезбедите да су све неопходне зависности инсталиране.

Ако и даље имате проблема, молимо вас да их пријавите програмерима.

[[compile_macos]]
=== Како да инсталирам програм WeeChat на macOS систем?

Препоручује се употребите https://brew.sh/[Homebrew ^↗^^], помоћ можете добити са:

----
brew info weechat
----

Програм WeeChat можете да инсталирате следећом командом:

----
brew install weechat
----

[[lost]]
=== Покренуо сам програм WeeChat, али не знам шта даље?

За помоћ можете да откуцате `/help`. За помоћ у вези команде, откуцајте `/help команда`. link:weechat_user.sr.html#key_bindings[Тастери ^↗^^] и link:weechat_user.sr.html#commands_and_options[команде ^↗^^] су наведени у документацији.

Препоручује се да нови корисници прочитају link:weechat_quickstart.sr.html[Водич за брзи почетак ^↗^^].

[[display]]
== Приказ

[[charset]]
=== Не виде се неки карактери са акцентима, шта да радим?

Ово је уобичајени проблем који има разне узроке, молимо вас да пажљиво прочитате и пробате *СВА* решења наведена ниже:

* Проверите да је weechat повезан са libncursesw (упозорење: потребно на многим дистрибуцијама, али не на свим): `ldd /путања/до/weechat`.
* Провери да је „charset” додатак учитан командом `/plugin` (ако није, онда вам је највероватније потребан „weechat-plugins” пакет).
* Проверите излаз команде `/charset` (над core бафером). Требало би да видите _ISO-XXXXXX_ или _UTF-8_ за скуп карактера терминала. Ако видите _ANSI_X3.4-1968_ или остале вредности, највероватније вам је погрешан локале. +
Да поправите свој локале, погледајте инсталиране локале са `locale -a` и поставите одговарајућу вредност у променљиву $LANG, на пример: `+export LANG=sr_RS.UTF-8+`.
* Поставите глобалну вредност за декодирање, на пример: `/set charset.default.decode "ISO-8859-15"`.
* Ако користите UTF-8 локале:
** Проверите да ли ваш терминал подржава UTF-8 (препоручени терминал за UTF-8 је rxvt-unicode).
** Ако користите screen, проверите да се извршава у UTF-8 режиму („`defutf8 on`” у ~/.screenrc или покрените screen са `screen -U`).
* Проверите да је опција link:weechat_user.sr.html#option_weechat.look.eat_newline_glitch[_weechat.look.eat_newline_glitch_ ^↗^^] искључена (ова опција може да изазове багове у приказу).

[NOTE]
За програм WeeChat се препоручује UTF-8 локале. Ако користите ISO или неки други локале, молимо вас да проверите ли су *сва* ваша подешавања (терминал, screen, ...) ISO, а *не* UTF-8.

[[unicode_chars]]
=== Неки уникод карактери се приказују у терминалу, али не у програму WeeChat, зашто?

Узрок овом проблему може бити libc баг у функцији _wcwidth_, који би требало да је исправљен у glibc 2.22 (можда још увек није доступна у вашој дистрибуцији).

Постоји решење да се користи исправљена _wcwidth_ функција: https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat[https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat ^↗^^].

За више информација, погледајте овај https://github.com/weechat/weechat/issues/79[извештај о багу ^↗^^].

[[bars_background]]
=== Траке као што су насловна и статусна нису испуњене, боја позадине се прекида након текста, зашто?

Узрок овоме може бити погрешна вредност променљиве TERM и важем командном окружењу (погледајте излаз команде `echo $TERM` у свом терминалу).

У зависности од тога где сте покренули програм WeeChat, требало би да имате:

* Ако се програм WeeChat извршава локално или на удаљеној машини без screen и без tmux, зависи од врсте терминала који користите: _xterm_, _xterm-256color_, _rxvt-unicode_, _rxvt-256color_, итд.
* Ако се програм WeeChat извршава под screen, требало би да добијете _screen_ или _screen-256color_.
* Ако се програм WeeChat извршава под tmux, требало би да добијете _tmux_, _tmux-256color_, _screen_ или _screen-256color_.

Ако је потребно, исправите своју TERM променљиву: `export TERM="xxx"`.

[[screen_weird_chars]]
=== Када програм weechat користим под screen/tmux, приказују ми се чудни карактери, како то да поправим?

Разлог за ово може бити погрешна вредност променљиве TERM у вашем командном окружењу (погледајте излаз команде `echo $TERM` у свом терминалу, *ван screen/tmux*). +
На пример, _xterm-color_ може да прикаже такве чудне карактере, па можете да користите _xterm_ што је OK (као и многе друге вредности). +
Ако је потребно, исправите своју TERM променљиву: `export TERM=„xxx”`.

Ако користите gnome-terminal, проверите да ли је опција „Ambiguous-width characters” у менију Preferences/Profile/Compatibility постављена на `narrow`.

[[macos_display_broken]]
=== Компајлирао сам програм WeeChat под macOS, и свуда на екрану видим „(null)”, шта није у реду?

Ако сте сами компајлирали ncursesw, покушајте да користите стандардни ncurses (који долази уз систем).

Уз то, на macOS систему се препоручује да се програм WeeChat инсталира са Homebrew менаџером пакета.

[[buffer_vs_window]]
=== Чуо сам о „баферима” и „прозорима”, у чему је разлика?

_бафер_ се састоји из броја, имена, приказаних линија (и још неких података).

_прозор_ је површина екрана која приказује бафер. Свој екран можете да изделите на више прозора.

Сваки прозор приказује један бафер, или скуп спојених бафера. Бафер може бити скривен (тада се не приказује у прозору) или може да се приказује у једном или више прозора.

[[buffers_list]]
=== Како да се са леве стране прикаже листа бафера?

Додатак link:weechat_user.sr.html#buflist[buflist ^↗^^]
је подразумевано учитан и укључен.

Ако желите да ограничите величину траке:

----
/set weechat.bar.buflist.size_max 15
----

Ако траку желите да померите на дно:

----
/set weechat.bar.buflist.position bottom
----

Ако желите да скролујете траку: у случају да је укључен миш (тастер: kbd:[Alt+m]), траку можете да скролујете точкићем миша.

Подразумевани тастери за скроловање _buflist_ траке су kbd:[F1] (или kbd:[Ctrl+F1]), kbd:[F2] (или kbd:[Ctrl+F2]), kbd:[Alt+F1] и kbd:[Alt+F2].

[[customize_buflist]]
=== Како могу да прилагодим листу бафера, као на пример боју активног бафера?

Све buflist опције можете да погледате командом:

----
/fset buflist
----

Позадина активног бафера је подразумевано плава, можете да је промените на следећи начин, на пример, на `red`:

----
/set buflist.format.buffer_current "${color:,red}${format_buffer}"
----

[NOTE]
Испред имена боје „red” постоји запета јер се користи као позадина, а не као боја текста. +
Уместо `red` можете да употребите било коју нумеричку боју, као што је `237` за тамно сиву.

Додатак buflist обезбеђује доста опција које можете да прилагодите својим потребама, молимо вас да прочитате помоћ у вези сваке опције.

Такође постоји и https://github.com/weechat/weechat/wiki/buflist[вики страница ^↗^^]
са примерима напредне конфигурације додатка buflist.

[[customize_prefix]]
=== Како да скратим дужину надимака или да уклоним поравнање надимка у простору за разговор?

Ако желите да у простору за разговор скратите максималну дужину надимака:

----
/set weechat.look.prefix_align_max 15
----

Ако желите да уклоните поравнање надимака:

----
/set weechat.look.prefix_align none
----

[[status_hotlist]]
=== Шта значи [H: 3(1,8), 2(4)] у статусној траци?

Ово се зове „врућа листа”, листа бафера са бројем порука које нисте прочитали, у следећем редоследу: истицања, приватне поруке, поруке, остале поруке (као што су join/part). +
Број „порука које нисте прочитали” је број нових порука приказаних/примљених од када сте посетили бафер.

У примеру `[H: 3(1,8), 2(4)]`, има:

* 1 истицање и 8 непрочитаних порука у баферу #3,
* 4 непрочитане поруке у баферу #2.

Боја бафера/бројача зависи од типа поруке, ово су подразумеване боје:

* истицање: `lightmagenta` / `magenta`
* приватна порука: `lightgreen` / `green`
* порука: `yellow` / `brown`
* остале поруке: `default` / `default` (боја текста у терминалу)

Ове боје могу да се промене опцијама __weechat.color.status_data_*__ (бафери) и __weechat.color.status_count_*__ (бројачи). +
Остале опције вруће листе могу да се промене опцијама __weechat.look.hotlist_*__.

За више информација у вези вруће листе, погледајте link:weechat_user.sr.html#screen_layout[Корисничко упутство / Распоред екрана ^↗^^].

[[input_bar_size]]
=== Како се користи командна линија са више од једне линије?

Опција _size_ у траци уноса може да се постави на вредност већу од 1 (за фиксну величину, подразумевана величина је 1) или на 0 за динамичку величину, у ком случају опција _size_max_ поставља максималну величину (0 = без ограничења).

Пример са динамичком величином:

----
/set weechat.bar.input.size 0
----

Максимална величина 2:

----
/set weechat.bar.input.size_max 2
----

[[one_input_root_bar]]
=== Да ли је могуће да се за све прозоре прикаже само једна трака за унос (након поделе)?

Могуће је, потребно је да креирате траку типа „root” (са ставком која ће вам говорити у ком прозору се налазите), па затим да обришете текућу траку за унос.

На пример:

----
/bar add rootinput root bottom 1 0 [buffer_name]+[input_prompt]+(away),[input_search],[input_paste],input_text
/bar del input
----

У случају да нисте задовољни са овим, једноставно обришите нову траку и програм WeeChat ће аутоматски да креира подразумевану траку „input” у случају да се ставка „input_text” не користи ни у једној постојећој траци:

----
/bar del rootinput
----

[[terminal_copy_paste]]
=== Како могу да копирам/налепљујем текст без налепљивања листе надимака?

Можете да употребите огољени приказ (подразумевани тастер: kbd:[Alt+l] (`L`)), који приказује
само садржај тренутно изабраног прозора, без било каквог форматирања.

Можете да користите терминал са правоугаоним избором (као rxvt-unicode, konsole, gnome-terminal, итд.). Тастер је обично kbd:[Ctrl] + kbd:[Alt] + избор мишем.

Друго решење је да листу надимака померите на врх или дно, на пример:

----
/set weechat.bar.nicklist.position top
----

[[urls]]
=== Како да кликнем на дугачке URL адресе (које заузимају више од једне линије)?

Можете да употребите огољени приказ (подразумевани тастер: kbd:[Alt+l] (`L`)).

Ако желите да олакшате отварање URL адреса, можете да:

* померите листу надимака на врх:

----
/set weechat.bar.nicklist.position top
----

* искључите поравнање за речи које се простиру на више линија:

----
/set weechat.look.align_multiline_words off
----

* или за све обавијене линије:

----
/set weechat.look.align_end_of_lines time
----

Можете да укључите опцију „eat_newline_glitch”, тако да се карактер нове линије не додаје на крај
сваке приказане линије (неће покварити избор URL адреса):

----
/set weechat.look.eat_newline_glitch on
----

[IMPORTANT]
Ова опција може да буде узрок багова у приказу. Ако имате такве проблеме, морате да искључите ову опцију.

Друго решење је да користите скрипту:

----
/script search url
----

[[change_locale_without_quit]]
=== Желим да променим језик који програм WeeChat користи за поруке, али без прекида извршавања програма WeeChat, да ли је то могуће?

Наравно да је могуће:

----
/set env LANG sr_RS.UTF-8
/upgrade
----

[[timezone]]
=== Како могу да променим временску зону?

У програму WeeChat не постоји опција за промену временске зоне, променљиву окружења `TZ` морате да поставите на жељену вредност.

У иницијализационом фајлу свог командног окружења или на командној линији, пре покретања програма WeeChat:

----
export TZ=America/New_York
----

Из програма WeeChat, нова вредност се користи тренутно:

----
/set env TZ America/New_York
----

[[use_256_colors]]
=== Како да користим 256 боја у програму WeeChat?

Најпре проверите да ли је вредност ваше променљиве окружења _TERM_ исправна, препоручене вредности су следеће:

* под screen: _screen-256color_
* под tmux: _screen-256color_ или _tmux-256color_
* ван screen/tmux: _xterm-256color_, _rxvt-256color_, _putty-256color_, ...

[NOTE]
Можда ће бити потребно да инсталирате пакет „ncurses-term” како бисте могли да у _TERM_ променљивој користите ове вредности.

Ако користите screen, можете да додате следећу линију у свој _~/.screenrc_:

----
term screen-256color
----

Ако је вредност ваше _TERM_ променљиве погрешна и програм WeeChat се већ извршава, можете да је промените помоћу следеће две команде:

----
/set env TERM screen-256color
/upgrade
----

У опцијама можете да користите било који број боје (није обавезно: командом `/color` можете да додате
алијасе боја).

За више информација у вези управљања бојама, молимо вас да прочитате link:weechat_user.sr.html#colors[Корисничко упутство / Боје ^↗^^].

[[search_text]]
=== Како могу да претражујем текст у баферу (као /lastlog у програму irssi)?

Подразумевани тастер је kbd:[Ctrl+r] (команда је: `+/input овде_текст_претраге+`). И скок на истицања: kbd:[Alt+p] / kbd:[Alt+n].

За више о овој могућности, погледајте link:weechat_user.sr.html#key_bindings[Корисничко упутство / Тастерске пречице ^↗^^].

[[terminal_focus]]
=== Како могу да извршим команде када терминал добије/изгуби фокус?

Морате да укључите фоку догађаје тако што терминалу пошаљете специјални кôд.

*Важно*:

* Морате да користите модерни xterm-компатибилни терминал.
* Уз то, изгледа да је важно и да вредност ваше TERM променљиве буде _xterm_ или _xterm-256color_.
* Ако користите tmux, морате да укључите фокус догађаје постављањем `set -g focus-events on` у свој _.tmux.conf_ фајл.
* Ово *не* функционише у програму screen.

Ако желите да се кôд пошаље током покретања програма WeeChat:

----
/set weechat.startup.command_after_plugins "/print -stdout \033[?1004h\n"
----

и да затим вежете две пречице за фокус (замените `/print` команде командама по свом избору):

----
/key bind meta-[I /print -core focus
/key bind meta-[O /print -core unfocus
----

Ако желите, на пример, да означите бафере као прочитане када терминал изгуби фокус:

----
/key bind meta-[O /allbuf /buffer set unread
----

[[screen_paste]]
=== Зашто када се програм WeeChat извршава у screen налепљивање текста у други screen прозор додаје ~0 и ~1 око текста?

Узрок овоме је опција ограђеног налепљивања, која је подразумевано укључена, а screen је не обрађује како треба у осталим прозорима.

Једноставно можете да искључите режим ограђеног налепљивања:

----
/set weechat.look.paste_bracketed off
----

[[small_terminal]]
=== Како могу да прилагодим приказ на веома малој величини терминала (као што је 80x25), како се не би траћио простор?

Можете да уклоните бочне траке (buflist и nicklist), промените формат времена
тако да се приказују само сати и минути, искључите поравнање порука и поставите
карактер за префикс/суфикс надимка:

----
/set buflist.look.enabled off
/bar hide nicklist
/set weechat.look.buffer_time_format "%H:%M"
/set weechat.look.prefix_align none
/set weechat.look.align_end_of_lines prefix
/set weechat.look.nick_suffix ">"
/set weechat.look.nick_prefix "<"
----

Терминал 80x25, са подразумеваном конфигурацијом:

....
┌────────────────────────────────────────────────────────────────────────────────┐
│1.local     │Welcome on WeeChat channel!                                        │
│  weechat   │16:27:16        --> | FlashCode (~flashcode@localhost)  │@FlashCode│
│2.  #weechat│                    | has joined #weechat               │ bob      │
│            │16:27:16         -- | Mode #weechat [+nt] by hades.arpa │          │
│            │16:27:16         -- | Channel #weechat: 1 nick (1 op, 0 │          │
│            │                    | voices, 0 normals)                │          │
│            │16:27:18         -- | Channel created on Sun, 22 Mar    │          │
│            │                    | 2020 16:27:16                     │          │
│            │17:02:28        --> | bob (~bob_user@localhost) has     │          │
│            │                    | joined #weechat                   │          │
│            │17:03:12 @FlashCode | hi bob, you're the first user     │          │
│            │                    | here, welcome on the WeeChat      │          │
│            │                    | support channel!                  │          │
│            │17:03:33        bob | hi FlashCode                      │          │
│            │                                                        │          │
│            │                                                        │          │
│            │                                                        │          │
│            │                                                        │          │
│            │                                                        │          │
│            │                                                        │          │
│            │                                                        │          │
│            │                                                        │          │
│            │                                                        │          │
│            │[17:04] [2] [irc/local] 2:#weechat(+nt){2}                         │
│            │[@FlashCode(i)] █                                                  │
└────────────────────────────────────────────────────────────────────────────────┘
....

Терминал 80x25, након измена:

....
┌────────────────────────────────────────────────────────────────────────────────┐
│Welcome on WeeChat channel!                                                     │
│16:27 --> FlashCode (~flashcode@localhost) has joined #weechat                  │
│16:27 -- Mode #weechat [+nt] by hades.arpa                                      │
│16:27 -- Channel #weechat: 1 nick (1 op, 0 voices, 0 normals)                   │
│16:27 -- Channel created on Sun, 22 Mar 2020 16:27:16                           │
│17:02 --> bob (~bob_user@localhost) has joined #weechat                         │
│17:03 <@FlashCode> hi bob, you're the first user here, welcome on the WeeChat   │
│      support channel!                                                          │
│17:03 <bob> hi FlashCode                                                        │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│                                                                                │
│[17:04] [2] [irc/local] 2:#weechat(+nt){2}                                      │
│[@FlashCode(i)] █                                                               │
└────────────────────────────────────────────────────────────────────────────────┘
....

[[key_bindings]]
== Тастерске пречице

[[meta_keys]]
=== Неки meta тастери (alt + тастер) не функционишу, зашто?

Ако користите неке терминале као што су xterm или uxterm, неки meta тастери подразумевано не функционишу. Можете додати линију у фајл _~/.Xresources_:

* За xterm:
----
XTerm*metaSendsEscape: true
----
* За uxterm:
----
UXTerm*metaSendsEscape: true
----

Па да поново учитате ресурсе (`xrdb -override ~/.Xresources`) или поново покренете X.

Ако користите macOS Terminal апликацију, укључите опцију „Use option as meta key” у менију Settings/Keyboard након чега можете користити тастер kbd:[Option] као meta тастер.

[[customize_key_bindings]]
=== Како могу да прилагодим тастерске пречице?

Тастерске пречице можете да прилагодите командом `/key`.

Подразумевани тастер kbd:[Alt+k] вам омогућава да покупите кôд и убаците га у командн линију.

[[jump_to_buffer_11_or_higher]]
=== Којим тастером се скаче на бафер 11 (или неки вечи број)?

Тастер је kbd:[Alt+j] па затим 2 цифре, на пример kbd:[Alt+j], kbd:[1], kbd:[1] ако желите да скочите на бафер 11.

Можете и да вежете тастер, на пример:

----
/key bind meta-q /buffer *11
----

Листа подразумеваних тастера је у link:weechat_user.sr.html#key_bindings[Корисничко упутство / Тастерске пречице ^↗^^].

Ако желите да скочите на бафере са бројем ≥ 100, можете да дефинишете окидач па да онда користите команде као што је `/123` за скок на бафер #123:

----
/trigger add numberjump modifier "2000|input_text_for_buffer" "${tg_string} =~ ^/[0-9]+$" "=\/([0-9]+)=/buffer *${re:1}=" "" "" "none"
----

За једноставно скакање на бафере, можете такође да инсталирате и _go.py_ скрипту:

----
/script install go.py
----

[[global_history]]
=== Како да се тастерима горе и доле користи глобална историја (уместо историје бафера)?

Можете да вежете тастере горе и доле за глобалну историју (подразумевани тастери за глобалну историју су kbd:[Ctrl+↑] и kbd:[Ctrl+↓]).

Пример:

----
/key bind up /input history_global_previous
/key bind down /input history_global_next
----

Са WeeChat ≤ 3.8, морате да користите сирови кôд тастера (притисните kbd:[Alt+k] па затим тастер
да се прикаже његов кôд):

----
/key bind meta2-A /input history_global_previous
/key bind meta2-B /input history_global_next
----

[[mouse]]
== Миш

[[mouse_not_working]]
=== Миш уопште не функционише, шта да радим?

Најпре покушајте да укључите миша:

----
/mouse enable
----

Ако миш и након тога не ради, проверите вредност променљиве TERM у вашем командном окружењу, (погледајте излаз `echo $TERM` у терминалу). У зависности од тога који terminfo се користи, миш можда није подржан.

Подршку за миша можете тестирати у терминалу са:

----
$ printf '\033[?1002h'
----

па затим кликните на први карактер терминала (горњи леви). Требало би да видите „ !!#!!”.

Ако желите да искључите употребу миша у терминалу:

----
$ printf '\033[?1002l'
----

[[mouse_coords]]
=== Миш не ради ништа за X или Y веће од 94 (или 222), зашто?

Неки терминали за координате миша шаљу само ISO карактере, а они не функционишу за X/Y веће од 94 (или 222).

Требало би да користите терминал који подржава UTF-8 координате за миша, као што је rxvt-unicode.

[[mouse_select_paste]]
=== Како могу у терминалу да изаберем или налепим текст када је у програму WeeChat укључен миш?

Када је у програму WeeChat укључен миш, за избор можете да користите модификатор kbd:[Shift] или клик у терминалу, као да је миш искључен (на неким терминалима као што је iTerm, морате да користите kbd:[Alt] уместо kbd:[Shift]).

[[irc]]
== IRC

[[irc_tls_connection]]
=== Имам проблеме са повезивањем на сервер преко TLS, шта може да се уради?

Ако користите macOS, морате инсталирати `openssl` из Homebrew. CA фајл ће се добавити употребом сертификата из системског свежња кључева.

Ако добијате грешке у вези gnutls руковања, можете покушати са мањим Дифи-Хелман кључем (подразумевани је дужине 2048):

----
/set irc.server.example.tls_dhkey_size 1024
----

Ако видите грешке у вези сертификата, можете да искључите „tls_verify” (али будите веома опрезни, због овога су везе мање безбедне):

----
/set irc.server.example.tls_verify off
----

Ако сервер поседује неважећи сертификат, а знате какав би он требало да буде, можете да наведете отисак (SHA-512, SHA-256 или SHA-1):

----
/set irc.server.example.tls_fingerprint 0c06e399d3c3597511dc8550848bfd2a502f0ce19883b728b73f6b7e8604243b
----

[[irc_tls_handshake_error]]
=== Када се успоставља веза са сервером преко TLS, видим само грешку „TLS handshake failed”, шта да радим?

Можете да покушате са другачијим стрингом приоритета, замените „xxx” са именом вашег сервера:

----
/set irc.server.xxx.tls_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"
----

[[irc_tls_libera]]
=== Како да се повежем са libera сервером преко TLS?

Проверите да су на вашем систему инсталирани сертификати, обично их обезбеђује пакет
„ca-certificates”.

Поставите порт сервера, TLS, затим се повежите:

----
/set irc.server.libera.addresses "irc.libera.chat/6697"
/set irc.server.libera.tls on
/connect libera
----

[[irc_oauth]]
=== Како да се повежем са сервером који захтева „oauth”?

Неки сервери као што је _twitch_ захтевају oauth за повезивање.

oauth је једноставно лозинка која има вредност „oauth:XXXX”.

Такав сервер можете да додате и да се повежете са њим користећи следеће команде (замените име и адресу са одговарајућим вредностима):

----
/server add име irc.server.org -password=oauth:XXXX
/connect име
----

[[irc_sasl]]
=== Како могу да се идентификујем пре приступа каналима?

Ако сервер подржава SASL, требало би то да користите уместо да шаљете команду за nickserv аутентификацију, на пример:

----
/set irc.server.libera.sasl_username "mynick"
/set irc.server.libera.sasl_password "xxxxxxx"
----

Ако сервер не подржава SASL, можете да додате кашњење (између команде и приступа каналима):

----
/set irc.server.libera.command_delay 5
----

[[edit_autojoin]]
=== Како да додам/уклоним канале из autojoin опције?

У WeeChat ≥ 3.5, можете аутоматски да забележите канале којима ручно приступате и које
напуштате у „autojoin” серверској опцији.

За све сервере:

----
/set irc.server_default.autojoin_dynamic on
----

За један сервер:

----
/set irc.server.libera.autojoin_dynamic on
----

Текући канал такође можете да додате "autojoin" опцијом сервера командом
`/autojoin`:

----
/autojoin add
----

Или неки други канал:

----
/autojoin add #test
----

Такође постоје и скрипте:

----
/script search autojoin
----

[[ignore_vs_filter]]
=== У чему је разлика између команди /ignore и /filter?

Команда `/ignore` је IRC команда, тако да се примењује само на IRC бафере (сервере и канале). Она вам омогућава да игноришете неке надимке или имена хостова корисника сервера или канала (команда се не примењује на садржај порука). IRC додатак брише поруке које се подударају пре него што се прикажу (тако да их уопште нећете видети, а не могу ни да се врате уклањањем игнорисања).

Команда `/filter` је команда језгра програма WeeChat, тако да се примењује на било који бафер. Помоћу ње можете да филтрирате неке линије у баферима са ознакама или регуларним изразом за префикс и садржај линије. Филтриране линије се само скривају, не бришу се, тако да их можете видети ако искључите филтере (тастер kbd:[Alt+=] подразумевано пребацује стање филтера).

[[filter_irc_join_part_quit]]
=== Како на IRC каналима могу да филтрирам join/part/quit и остале досадне поруке?

Погледајте link:weechat_user.sr.html#irc_smart_filter[Корисничко упутство / IRC паметни филтер ^↗^^].

[[filter_irc_join_channel_messages]]
=== Како да филтрирам неке поруке које се приказују када приступим IRC каналу?

Када приступате каналу опцијом _irc.look.display_join_message_ можете да изаберете које поруке ће се приказивати
(погледајте `+/help irc.look.display_join_message+` за детаљније информације).

Ако желите да сакријете поруке (али да их задржите у баферу), можете да их филтрирате употребом ознаке (на пример _irc_329_ за датум креирања канала). За помоћ у вези филтера, погледајте `/help filter`.

[[filter_voice_messages]]
=== Како да филтрирам поруке корисника са правом гласа (нпр. на Bitlbee серверу)?

Поруке корисника са правом гласа не могу једноставно да се филтрирају јер режим права гласа може да се постави заједно са осталим режимима у истој IRC поруци.

Ако то желите да урадите, највероватнији разлог је што Bitlbee користи поруке корисника са правом гласа како би приказао одсутне кориснике, па вас затрпава порукама са правом гласа. Дакле, ово можете да измените и допустите да програм WeeChat користи специјалну боју за надимке у листи надимака који су одсутни.

За Bitlbee ≥ 3, задајте следеће на контролном каналу _&bitlbee_:

----
channel set show_users online,away
----

За старије верзије програма Bitlbee, задајте следеће на контролном каналу _&bitlbee_:

----
set away_devoice false
----

За проверу одсутних надимака у програму WeeChat, погледајте питање у вези <<color_away_nicks,одсутних надимака>>.

Ако заиста желите да филтрирате поруке корисника са правом гласа, можете употребити следећу команду, али она није савршена (радиће само ако је први промењени режим voice):

----
/filter add hidevoices * irc_mode (\+|\-)v
----

[[color_away_nicks]]
=== Како у листи надимака могу да видим одсутне надимке?

Морате да поставите опцију _irc.server_default.away_check_ на позитивну вредност (број минута између провера на одсутне надимке).

Ако желите да проверу одсутности ограничите само на мале канале, поставите опцију _irc.server_default.away_check_max_nicks_.

На пример, ако желите да се провера на одсутност надимака врши сваких 5 минута, за канале са макс 24 надимака:

----
/set irc.server_default.away_check 5
/set irc.server_default.away_check_max_nicks 25
----

[[highlight_notification]]
=== Како могу да добијем упозорење када ме неко означи (истакне) на каналу?

Постоји подразумевани окидач „beep” који терминалу шаље _BEL_ када се догоди истицање
или прими приватна порука. Тако да свој терминал (или мултиплексер као што је screen/tmux)
можете подесити тако да покрене команду или пусти звук када прими _BEL_.

Или можете да додате команду у „beep” окидач:

----
/set trigger.trigger.beep.command "/print -beep;/exec -bg /путања/до/команде аргументи"
----

У старијим верзијама програма WeeChat, можете да употребите скрипту као што је _beep.pl_ или _launcher.pl_.

За _launcher.pl_, морате да подесите команду:

----
/set plugins.var.perl.launcher.signal.weechat_highlight "/путања/до/команде аргументи"
----

Остале скрипте на ову тему:

----
/script search notify
----

[[disable_highlights_for_specific_nicks]]
=== Како могу да искључим истицање за одређене надимке?

Бафер особину
link:weechat_user.sr.html#max_hotlist_level_nicks[hotlist_max_level_nicks_add ^↗^^]
можете користити да за неке надимке подесите максимални ниво вруће листе, по баферу, или по
групи бафера (као на пример IRC сервери).

Ако само желите да искључите истицања, треба да је поставите на 2:

----
/buffer set hotlist_max_level_nicks_add joe:2,mike:2
----

Међутим, ова особина бафера се не чува у конфигурацији. Ако желите да се ове особине бафера аутоматски поново примене, биће вам потребна скрипта _buffer_autoset.py_:

----
/script install buffer_autoset.py
----

На пример, ако за стално желите да искључите истицања од надимка „mike” са #weechat на IRC серверу libera:

----
/buffer_autoset add irc.libera.#weechat hotlist_max_level_nicks_add mike:2
----

Ако уместо овога желите да се примени на комплетан libera сервер:

----
/buffer_autoset add irc.libera hotlist_max_level_nicks_add mike:2
----

За још примера, погледајте `+/help buffer_autoset+`.

[[irc_target_buffer]]
=== Како могу да променим циљни бафер за команде над спојеним баферима (као што је бафер са серверима)?

Подразумевани тастер је kbd:[Ctrl+x] (команда је: `+/buffer switch+`).

[[plugins_scripts]]
== Додаци / скрипте

[[openbsd_plugins]]
=== Користим OpenBSD и програм WeeChat уопште не учитава додатке, шта није у реду?

Под OpenBSD, имена фајлова додатака се завршавају са „.so.0.0” („.so” за Linux).

То морате да подесите:

----
/set weechat.plugin.extension ".so.0.0"
/plugin autoload
----

[[install_scripts]]
=== Како могу да инсталирам скрипте? Да ли су скрипте компатибилне са осталим IRC клијентима?

Можете да употребите команду `/script` за инсталирање и управљање скриптама (погледајте `/help script`
за помоћ).

Скрипте нису компатибилне са осталим IRC клијентима.

[[scripts_update]]
=== Команда „/script update” не може да чита скрипте, како да то поправим?

Најпре погледајте питање у вези TLS везе у овом ЧПП.

Ако још увек не функционише, покушајте ручно да обришете фајл са скриптама (из свог командног окружења):

----
$ rm ~/.cache/weechat/script/plugins.xml.gz
----

[NOTE]
Ако не користите XDG директоријуме, путања би могла да буде: _~/.weechat/script/plugins.xml.gz_.

Па у програму WeeChat поново ажурирајте скрипте:

----
/script update
----

Ако још увек наилазите на грешку, онда морате да искључите аутоматско ажурирање фајла у програму WeeChat и да ручно преузмете фајл ван програма WeeChat (то значи да ћете фајл морати ручно да ажурирате онда када желите да добијете ажурирања):

* у програму WeeChat:

----
/set script.scripts.cache_expire -1
----

* у вашем командном окружењу, са инсталираним програмом curl:

----
$ cd ~/.cache/weechat/script
$ curl -O https://weechat.org/files/plugins.xml.gz
----

Ако користите macOS и величина преузетог фајла је 0 бајтова, покушајте
да поставите следећу променљиву у иницијализациони фајл ваше љуске или
у командној линији, пре покретања WeeChat:

----
export OBJC_DISABLE_INITIALIZE_FORK_SAFETY=YES
----

[[spell_dictionaries]]
=== Инсталирао сам aspell речнике у свој систем, како могу да их користим без потребе да поново покрећем програм WeeChat?

Морате поново да учитате spell додатак:

----
/plugin reload spell
----

[[settings]]
== Подешавања

[[editing_config_files]]
=== Могу ли ручно да уређујем конфигурационе (*.conf) фајлове?

Можете, али се то *НЕ* препоручује.

У програму WeeChat се препоручује команда `/set`:

* Име и вредност опције можете да довршите тастером kbd:[Tab] (или kbd:[Shift+Tab] за делимично довршавање, корисно за име).
* Вредност се проверава, у случају грешке се исписује порука.
* Вредност се користи тренутно, нема потребе да се било што поново покреће.

Ако и даље желите да фајлове уређујете ручно, требало би да будете пажљиви:

* Ако као вредност опције поставите неважећу вредност, програм WeeChat ће приликом учитавања да испише грешку и одбациће вредност (користиће се подразумевана вредност те опције).
* Ако се програм WeeChat извршава, мораћете да извршите команду `/reload`, а ако су нека подешавања промењена и нису сачувана командом `/save`, изгубићете их.

[[memory_usage]]
=== Како да подесим програм WeeChat тако да троши мање меморије?

Ако желите да програм троши мање меморије, следите следеће савете:

* Користите последњу стабилну верзију (требало би да има мање цурења меморије од старијих верзија).
* Не учитавајте додатке које заиста и не користите, на пример: buflist, fifo, logger, perl, python, ruby, lua, tcl, guile, javascript, php, spell, xfer (користи се за DCC). Погледајте `/help weechat.plugin.autoload`.
* Учитавајте само скрипте које су вам заста неопходне.
* Не учитавајте системске сертификате ако се TLS *НЕ* користи: искључите следећу опцију: _weechat.network.gnutls_ca_system.
* Смањите вредност опције _weechat.history.max_buffer_lines_number_ или поставите вредност опције _weechat.history.max_buffer_lines_minutes_.
* Смањите вредност опције _weechat.history.max_commands_.

[[cpu_usage]]
=== Како да подесим програм WeeChat тако да мање оптерећује CPU?

Можете да следите исте савете као за <<memory_usage,меморију>>, као и следеће:

* Сакријте „nicklist” траку: `/bar hide nicklist`.
* Уклоните приказ секунди из времена у статусној траци: `+/set weechat.look.item_time_format "%H:%M"+` (ово је и подразумевана вредност).
* Искључите проверу неисправно написаних речи у командној линији у реалном времену (ако сте је укључили): `+/set spell.check.real_time off+`.
* Поставите променљиву _TZ_ (на пример: `export TZ="Europe/Paris"`), тиме спречавате чест приступ фајлу _/etc/localtime_.

[[security]]
=== Имам параноју у вези безбедности, која подешавања би требало да изменим како би програм постао још сигурнији?

Искључите IRC part и quit поруке:

----
/set irc.server_default.msg_part ""
/set irc.server_default.msg_quit ""
----

Искључите одговоре на све 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 ""
----

Уклоните из меморије и искључите ауто учитавање „xfer” додатка (користи се за IRC DCC):

----
/plugin unload xfer
/set weechat.plugin.autoload "*,!xfer"
----

Дефинишите тајну реченицу и где год можете користите обезбеђене податке за осетљиве ствари као што су лозинке: погледајте `/help secure` и `/help` за опције (ако можете да користите обезбеђене податке, написано је у помоћи). Погледајте такође link:weechat_user.sr.html#secured_data[Корисничко упутство / Обезбеђени подаци ^↗^^].

На пример:

----
/secure passphrase xxxxxxxxxx
/secure set libera_username корисничкоиме
/secure set libera_password xxxxxxxx
/set irc.server.libera.sasl_username "${sec.data.libera_username}"
/set irc.server.libera.sasl_password "${sec.data.libera_password}"
----

[[sharing_config_files]]
=== Желим да делим своју WeeChat конфигурацију, које фајлови би требало да делим, а шта би требало да оставим приватно?

Можете да делите све конфигурационе фајлове _*.conf_ осим фајла _sec.conf_, јер он садржи лозинке шифроване вашом тајном реченицом.

И неки други фајлови могу да садрже осетљиве осетљиве информације као што су лозинке (у случају да нису сачуване у _sec.conf_ командом `/secure`).

Погледајте link:weechat_user.sr.html#files_and_directories[Корисничко упутство / Фајлови и директоријуми ^↗^^] за више информација о конфигурационим фајловима.

[[development]]
== Развој

[[bug_task_patch]]
=== Како би требало да пријавим багове, тражим нове могућности, или пошаљем закрпе?

Погледајте https://weechat.org/about/support/[ови страницу ^↗^^].

[[gdb_error_threads]]
=== Када програм WeeChat покренем под gdb, појави се грешка везана за нити, шта могу да урадим?

Када програм WeeChat покренете под gdb, можете добити следећу грешку:

----
$ gdb /путања/до/програма/weechat
(gdb) run
[Thread debugging using libthread_db enabled]
Cannot find new threads: generic error
----

Да бисте ово исправили, покрените gdb овом командом (замените путању до libpthread и WeeChat са путањама на вашем систему):

----
$ LD_PRELOAD=/lib/libpthread.so.0 gdb /путања/до/програма/weechat
(gdb) run
----

[[supported_os]]
=== Како изгледа листа платформи које подржава програм WeeChat? Да ли ће се портовати на друге оперативне системе?

WeeChat се лепо извршава на већини Linux/BSD дистрибуција, GNU/Hurd, Mac OS и Windows (Cygwin и Windows Subsystem for Linux).

Чинимо што год можемо како би се извршавао на што више различитих платформи. Потребна нам је помоћ око неких ОС које не поседујемо, како би могли да тестирамо програм WeeChat.

[[help_developers]]
=== Желим да помогнем програмерима који развијају програм WeeChat. Како да то учиним?

Постоји много задатака који могу да се ураде (тестирање, програмирање, документација, итд.)

Молимо вас да нас контактирате преко IRC или мејла, погледајте
https://weechat.org/about/support/[страницу подршке ^↗^^].

[[donate]]
=== Могу ли програмерима програма WeeChat да дам новац или нешто друго?

Можете нам послати новац и помогнете развој програма.
Детаљи се налазе на https://weechat.org/donate/[страници донација ^↗^^].