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
|
[command]*`away`* attiva/disattiva lo stato di assenza::
........................................
/away [-all] [<messaggio>]
-all: attiva/disattiva lo stato di assenza su tutti i server connessi
messaggio: messaggio di assenza (se non specificato, lo stato di assenza viene rimosso)
........................................
[command]*`bar`* gestione barre::
........................................
/bar list|listfull|listitems
add <nome> <tipo>[,<cond1>[,<cond2>...]] <posizione> <dimensione> <separatore> <item1>[,<item2>...]
default
del <nome>|-all
set <nome> <opzione> <valore>
hide|show|toggle <nome>
scroll <nome> <buffer> <scroll_value>
list: elenca tutte le barre
listfull: elenca tutte le barre (dettagliato)
listitems: elenca tutti gli elementi della barra
add: aggiunge una nuova barra
nome: nome della barra (deve essere unico)
tipo: root: al di fuori delle finestre,
window: all'interno delle finestre, con opzioni condizionali (a seguire)
cond1,...: condizione(i) per visualizzare la barra (solo per il tipo "window"):
active: sulla finestra attiva
inactive: sulle finestre inattive
nicklist: sulle finestre con la lista nick
senza condizione, viene sempre mostrata
posizione: bottom (basso), top (alto), left (sinistra) o right (destra)
dimensione: dimensione della barra (in caratteri)
separatore: 1 per utilizzarlo (riga), 0 o nulla equivale a nessun separatore
item1,...: elementi per questa barra (possono essere separati da virgole (spazio tra gli elementi) o "+" (elementi incollati))
default: crea barre predefinite
del: elimina una barra (o tutte le barre con -all)
set: imposta un valore per la proprietà di una barra
opzione: opzione da cambiare (per una lista di opzioni, consultare /set weechat.bar.<barname>.*)
valore: nuovo valore per l'opzione
hide: nasconde una barra
show: mostra una barra nascosta
toggle: nascone/mostra una barra
scroll: scorre una barra
buffer: nome del buffer da scorrere ('*' indica il buffer corrente, si dovrebbe utilizzare '*' per le barre root)
scroll_value: valore per lo scorrimento: 'x' o 'y', seguite da '+', '-', 'b' (inizio) or 'e' (fine), valore (per +/-), e %% opzionale (per scorrere di %% di larghezza/altezza, altrimenti il valore è il numero di caratteri)
Esempi:
crea una barra con l'ora, numero del buffer + nome, e completamento:
/bar add miabarra root bottom 1 0 [time],buffer_number+:+buffer_name,completion
nasconde una barra:
/bar hide miabarra
scorre la lista nick di 10 righe in basso sul buffer corrente:
/bar scroll nicklist * y+10
scorre la lista nick di una pagina in alto sul buffer #weechat:
/bar scroll nicklist #weechat y-100%
scorre fino alla fine della lista nick sul buffer corrente:
/bar scroll nicklist * ye
........................................
[command]*`buffer`* gestione buffer::
........................................
/buffer list
clear [<numero>|-merged|-all]
move|merge <numero>
unmerge [<numero>]
close [<n1>[-<n2>]]
notify <livello>
localvar
set <proprietà> <valore>
get <proprietà>
<numero>|<nome>
list: elenca i buffer (senza argomento viene mostrata questa lista)
clear: pulisce il contenuto del buffer (numero per un buffer, -merged per i buffer incollati, -all per tutti i buffer o nessun parametro per quello corrente)
move: sposta il buffer nella lista (può essere relativo, ad esempio -1)
merge: unisce il buffer corrente ad un altro (l'area di chat risulterà un mix di entrambi)
(la combinazione predefinita ctrl-x alterna tra i buffer incollati)
unmerge: stacca il buffer dagli altri che hanno lo stesso numero
close: chiude buffer (numero/serie sono opzionali)
notify: imposta il livello di notifica per il buffer corrente: questo livello determina se il buffer deve essere aggiunto alla hotlist oppure no:
none: mai
highlight: solo per gli eventi
message: messaggi dagli utenti + eventi
all: tutti i messaggi
reset: ripristina al valore predefinito (tutto)
localvar: visualizza le variabili locali per il buffer corrente
set: imposta una proprietà per il buffer corrente
get: mostra una proprietà del buffer corrente
numero: passa al buffer per numero, prefisso possibile:
'+': passaggio relativo, aggiunge un numero a quello corrente
'-': passaggio relativo, sottrae un numero a quello corrente
'*': passa al numero, usando l'opzione "weechat.look.jump_current_to_previous_buffer"
nome: passa al buffer tramite nome (parziale)
Examples:
pulisce il buffer corrente:
/buffer clear
sposta il buffer al numero 5:
/buffer move 5
unisce con il buffer core:
/buffer merge 1
stacca il buffer:
/buffer unmerge
chiude il buffer corrente:
/buffer close
chiude i buffer da 5 a 7:
/buffer close 5-7
passa a #weechat:
/buffer #weechat
passa al buffer successivo:
/buffer +1
........................................
[command]*`color`* definisce gli alias dei colori e visualizza la tavolozza dei colori::
........................................
/color alias <colore> <alias>
unalias <colore>
reset
alias: aggiunge un alias per un colore
unalias: elimina un alias
colore: numero colore (>= 0, il massimo dipende dal terminale, di solito 63 o 255)
nome: nome alias per il colore (ad esempio: "arancione")
reset: ripristina tutte le coppie di colore (utile quando non ci sono più coppie disponibili)
senza argomento, il comando mostra i colori in un nuovo buffer.
Esempi:
aggiunge alias "arancione" per il colore 214:
/color alias 214 orange
elimina il colore 214:
/color unalias 214
........................................
[command]*`command`* esegui comando o plugin di WeeChat esplicito::
........................................
/command <plugin> <comando>
plugin: nome plugin ('weechat' per il comando interno di WeeChat)
comando: comando da eseguire (una '/' viene aggiunta automaticamente se non trovata all'inizio del comando)
........................................
[command]*`debug`* attiva debug per core/plugin::
........................................
/debug list
set <plugin> <livello>
dump [<plugin>]
buffer|color|memory|term|windows
list: elenca i plugin con i livelli di debug
set: imposta il livello di debug per il plugin
plugin: nome del plugin ("core" per il core di WeeChat)
livello: livello di debug per il plugin (0 = disattiva debug)
dump: salva un dump della memoria nel file di log di WeeChat (lo stesso dump viene salvato in caso di crash di WeeChat)
buffer: esegue un dump del contenuto del buffer con valori esadecimali nel file di log
color: mostra informazioni sulle coppie di colore correnti
memory: mostra informazioni sull'uso della memoria
term: mostra informazioni sul terminale
windows: mostra l'albero delle finestre
........................................
[command]*`filter`* filtra messaggi nei buffer, per nascondere/mostrare in base a tag o regexp::
........................................
/filter list
enable|disable|toggle [<nome>]
add <nome> <plugin.buffer> <tag> <regex>]
del <nome>|-all
list: elenca tutti i filtri
enable: abilita filtri (i filtri sono abilitati di default)
disable: disabilita filtri
toggle: abilita/disabilita filtri
nome: nome del filtro
add: aggiunge un filtro
del: elimina un filtro
-all: elimina tutti i filtri
plugin.buffer: plugin e buffer in cui il filtro è attivo ("*" per tutti i buffer)
tag: elenco di tag separati da virgole, per esempio: "irc_join,irc_part,irc_quit"
regex: espressione regolare da cercare nella riga
- utilizzare ' ' per separare il prefisso dal messaggio, caratteri speciali come "|" devono essere preceduti dal carattere escape: '\|')
- se l'espressione regolare inizia con '!', il risultato corrispondente viene invertito (usare '\!' per iniziare con '!')
nota: vengono create due espressioni regolari: una per il prefisso e l'altra per il messaggio
Il tasto predefinito alt+'=' abilita/disabilita il filtro.
Tag utilizzati di frequente:
no_filter, no_highlight, no_log, log0..log9 (livello di log),
notify_message, notify_private, notify_highlight,
nick_xxx (xxx è il nick nel messaggio),
irc_xxx (xxx è il nome comando o il numero, consultare /server raw), irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
Esempi:
usa il filtro intelligente IRC per i messaggi di entrata/uscita/abbandono:
/filter add irc_smart * irc_smart_filter *
filtra tutti i messaggi entrata/uscita/abbandono di IRC:
/filter add joinquit * irc_join,irc_part,irc_quit *
filtra i nick visualizzati all'ingresso in un canale o con /names:
/filter add nicks * irc_366 *
filtra il nick "tizio" sul canale IRC #weechat
/filter add tizio irc.freenode.#esempio * tizio\t
filtra solo il nick "caio" sul canale IRC #test:
/filter add caio irc.freenode.#test * !caio\t
filtra le righe contententi la parola "spam":
/filter add filterspam * * spam
filtra le righe contententi "weechat fa schifo" sul canale IRC #weechat:
/filter add schifo irc.freenode.#weechat * weechat fa schifo
........................................
[command]*`help`* visualizza l'aiuto su comandi e opzioni::
........................................
/help -list|-listfull [<plugin> [<plugin>...]]
<comando>
<opzione>
-list: elenca i comandi, per plugin (senza argomento, viene mostrata questa lista)
-listfull: elenca i comandi con la relativa descrizione, per plugin
plugin: elenca i comandi per questo plugin
comando: nome di un comando
opzione: nome di un'opzione (usare /set per consultare la lista)
........................................
[command]*`history`* mostra la cronologia dei comandi del buffer::
........................................
/history <clear
valore>
clear: pulisci cronologia
valore: numero delle voci nella cronologia da mostrare
........................................
[command]*`input`* funzioni per la riga di comando::
........................................
/input <azioni> [<argomenti>]
list of actions:
return: simulate key "enter"
complete_next: complete word with next completion
complete_previous: complete word with previous completion
search_text: search text in buffer
delete_previous_char: delete previous char
delete_next_char: delete next char
delete_previous_word: delete previous word
delete_next_word: delete next word
delete_beginning_of_line: delete from beginning of line until cursor
delete_end_of_line: delete from cursor until end of line
delete_line: delete entire line
clipboard_paste: paste from clipboard
transpose_chars: transpose two chars
undo: undo last command line action
redo: redo last command line action
move_beginning_of_line: move cursor to beginning of line
move_end_of_line: move cursor to end of line
move_previous_char: move cursor to previous char
move_next_char: move cursor to next char
move_previous_word: move cursor to previous word
move_next_word: move cursor to next word
history_previous: recall previous command in current buffer history
history_next: recall next command in current buffer history
history_global_previous: recall previous command in global history
history_global_next: recall next command in global history
jump_smart: jump to next buffer with activity
jump_last_buffer: jump to last buffer
jump_previously_visited_buffer: jump to previously visited buffer
jump_next_visited_buffer: jump to next visited buffer
hotlist_clear: clear hotlist
grab_key: grab a key
grab_key_command: grab a key with its associated command
scroll_unread: scroll to unread marker
set_unread: set unread marker for all buffers
set_unread_current_buffer: set unread marker for current buffer
switch_active_buffer: switch to next merged buffer
switch_active_buffer_previous: switch to previous merged buffer
insert: insert text in command line
This command is used by key bindings or plugins.
........................................
[command]*`key`* associa/disassocia tasti::
........................................
/key list|listdefault|listdiff
bind <tasto> [<comando> [<args>]]
unbind <tasto>
reset <tasto>
resetall -yes
missing
list: elenca tutti i tasti correnti (senza argomento, viene visualizzata questa lista)
listdefault: elenca i tasti predefiniti
listdiff: elenca le differenze tra tasti attuali e predefiniti (tasti aggiunti, ridefiniti o eliminati)
bind: associa un comando ad un tasto o visualizza il comando associato al tasto
unbind: rimuove una associazione di tasti
reset: ripristina un tasto all'assegnazione predefinita
resetall: ripristina le associazioni ai valori predefiniti ed elimina TUTTE le associazioni personalizzate (usare con cautela!)
missing: aggiunge tasti mancanti (utilizzando le associazioni predefinite), utile dopo l'installazione di una nuova versione di WeeChat
Al momento di associare un comando ad un tasto si raccomanda di utilizzare il tasto alt+k (oppure Esc e k), e digitare il tasto da associare: il codice tasto verrà inserito nella riga di comando.
Esempi:
il tasto alt-x per alternare la barra della nicklist:
/key bind meta-x /bar toggle nicklist
il tasto alt-r per passare al canale IRC #weechat:
/key bind meta-r /buffer #weechat
ripristinare l'associazione predefinita per il tasto alt-r:
/key reset meta-r
........................................
[command]*`layout`* salva/applica/ripristina il layout per i buffer e le finestre::
........................................
/layout save [buffers|windows]
apply [buffers|windows]
reset [buffers|windows]
save: salva il layout corrente
apply: applica il layout salvato
reset: elimina il layout salvato
buffers: salva/applica modifiche solo ai buffer (ordine dei buffer)
windows: salva/applica modifiche solo alle finestre (buffer visualizzato da ogni finestra)
Senza argomenti, il comando visualizza il layout salvato.
........................................
[command]*`mute`* esegue un comando in silenzio::
........................................
/mute [-current | -buffer <nome> | -all] comando
-current: nessun output sul buffer corrente
-buffer: nessun output sul buffer specificato
nome: nome completo del buffer (esempi: "irc.server.freenode", "irc.freenode.#weechat")
-all: nessun output su TUTTI i buffer
command: comando da eseguire in silenzio (una '/' viene aggiunta automaticamente all'inizio del comando se non trovata)
Se non viene specificata una destinazione (-current, -buffer o -all), la destinazione predefinita è il buffer core di WeeChat.
Esempi:
salva la configurazione:
/mute save
messaggio sul canale IRC corrente:
/mute -current msg * ciao!
messaggio sul canale #weechat:
/mute -buffer irc.freenode.#weechat msg #weechat ciao!
........................................
[command]*`plugin`* elenca/attiva/disattiva plugin::
........................................
/plugin list|listfull [<nome>]
load <nomefile>
autoload
reload|unload [<nome>]
list: elenca i plugin attivati
listfull: elenca i plugin attivati (dettagliato)
load: attiva un plugin
autoload: attiva automaticamente un plugin nella cartella di sistema o utente
reload: riattiva un plugin (se non viene dato un nome, disattiva e poi riattiva tutti i plugin)
unload: disattiva un plugin (se non viene dato un nome, disattiva tutti i plugin
Senza argomento, questo comando elenca i plugin attivati.
........................................
[command]*`proxy`* gestione proxy::
........................................
/proxy list
add <nome> <tipo> <indirizzo> <porta> [<nomeutente> [<password>]]
del <nome>|-all
set <nome> <opzione> <valore>
list: elenca tutti i proxy
add: aggiunge un nuovo proxy
nome: nome del proxy (deve essere unico)
tipo: http, socks4 o socks5
address: IP o nome host
port: porta
username: nome utente (opzionale)
password: password (opzionale)
del: elimina un proxy (o tutti i proxy con -all)
set: imposta un valore per la proprietà di un proxy
option: opzione da modificare (per una lista di opzioni, consultare /set weechat.proxy.<nomeproxy>.*)
value: nuovo valore per l'opzione
Esempi:
crea un proxy http, in esecuzione sull'host locale, porta 8888:
/proxy add local http 127.0.0.1 8888
crea un proxy http usando il protocollo IPv6:
/proxy add local http 127.0.0.1 8888
/proxy set local ipv6 on
crea un proxy socks5 con nomeutente/password:
/proxy add myproxy socks5 sample.host.org 3128 myuser mypass
elimina un proxy:
/proxy del mioproxy
........................................
[command]*`quit`* esce da WeeChat::
........................................
/quit [-yes] [<argomenti>]
-yes: richiesto se l'opzione option weechat.look.confirm_quit è abilitata
argomenti: testo inviato con il segnale "quit"
(ad esempio il plugin irc usa questo testo per inviare il messaggio di uscita al server)
........................................
[command]*`reload`* ricarica i file di configurazione da disco::
........................................
/reload [<file> [<file....>]]
file: file di configurazione da ricaricare (senza estensione ".conf")
Senza argomento, vengono ricaricati tutti i file (WeeChat e plugin).
........................................
[command]*`save`* salva i file di configurazione su disco::
........................................
/save [<file> [<file....>]]
file: file di configurazione da salvare (senza estensione ".conf")
Senza argomento, vengono salvati tutti i file (WeeChat e plugin).
........................................
[command]*`set`* imposta le opzioni di configurazione::
........................................
/set [<opzione> [<valore>]]
opzione: nome di un'opzione (può iniziare o terminare con "*" per visualizzare più opzioni)
valore: nuovo valore per l'opzione
Il nuovo valore può essere, a seconda del tipo di variabile:
booleano: on, off o toggle
intero : numero, ++numero o --numero
stringa : qualsiasi stringa ("" per una stringa vuota)
colore : nome colore, ++numeero o --numero
Per tutti i tipi, è possibile usare null per rimuovere il valore dell'opzione (valore non definito). Ciò funziona solo per alcune variabili speciali dei plugin.
Esempi:
mostra le opzioni relative agli eventi:
/set *highlight*
aggiunge una parola all'evento:
/set weechat.look.highlight "word"
........................................
[command]*`unset`* annulla/ripristina opzione::
........................................
/unset <opzione>
opzione: nome di un'opzione (può iniziare o terminare con "*" per il ripristino di più opzioni, attenzione!)
A seconda dell'opzione, essa viene ripristinata (per le opzioni standard) o rimossa (per le impostazioni opzionali, come i valori del server).
Esempi:
ripristina un'opzione:
/unset weechat.look.item_time_format
ripristina tutte le opzioni del colore:
/unset weechat.color.*
........................................
[command]*`upgrade`* aggiorna WeeChat senza disconnettere dai server::
........................................
/upgrade [<percorso_del_binario>]
percorso_del_binario: percorso del binario di WeeChat (quello corrente è il predefinito)
Questo comando esegue nuovamente un binario WeeChat, perciò deve essere stato compilato o installato con un gestore di pacchetti prima di eseguire questo comando.
Il processo di aggiornamento è diviso in 4 fasi:
1. salvataggio della sessione in file per il core e i plugin (buffer, cronologia, ..)
2. disattivazione di tutti i plugin (salvataggio delle configurazioni .conf)
3. salvataggio della configurazione di WeeChat (weechat.conf)
4. esecuzione del nuovo binario di WeeChat.
........................................
[command]*`uptime`* mostra l'uptime di WeeChat::
........................................
/uptime [-o | -ol]
-o: invia l'uptime al buffer corrente come input (stringa in inglese)
-ol: invia l'uptime al buffer corrente come input (stringa tradotta)
........................................
[command]*`version`* mostra la versione e la data di compilazione di WeeChat::
........................................
/version [-o | -ol]
-o: invia la versione al buffer corrente come input (stringa inglese)
-ol: invia la versione al buffer corrente come input (stringa tradotta)
........................................
[command]*`wait`* pianifica l'esecuzione di un comando::
........................................
/wait <numero>[<unità>] <comando>
numero: tempo di attesa (numero intero)
unità: valori opzionali sono:
ms: millisecondi
s: secondi (predefinito)
m: minuti
h: ore
comando: comando da eseguire (o testo da inviare al buffer se il comando non inizia con '/')
Nota: il comando viene eseguito sui buffer dove /wait è stato eseguito (se il buffer non viene trovato (per esempio se è stato chiuso prima dell'esecuzione), allora il comando verrà eseguito sul buffer core di WeeChat)
Esempi:
entra nel canale tra 10 secondi:
/wait 10 /join #test
imposta assenza tra 15 minuti:
/wait 15m /away -all Sono assente
scrive 'ciao' tra 2 minuti:
/wait 2m ciao
........................................
[command]*`window`* gestione finestre::
........................................
/window list
-1|+1|b#|up|down|left|right
splith|splitv [<pct>]
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
list: elenca le finestre aperte (senza argomento, questa lista viene visualizzata)
-1: salta alla finestra precedente
+1: salta alla finestra successiva
b#: salta alla finestra successiva che visualizza il buffer numero #
up: passa alla finestra superiore a quella corrente
down: passa alla finestra inferiore a quella attiva
left: passa alla finestra a sinistra
right: passa alla finestra a destra
splith: divide la finestra attiva orizzontalmente
splitv: divide la finestra attiva verticalmente
resize: ridimensiona finestra, la nuova dimensione è <pct> percentuale della finestra genitore
merge: unisce la finestra con un'altra (all = mantiente una sola finestra)
page_up: scorre di una pagina in alto
page_down: scorre di una pagina in basso
refresh: aggiorna lo schermo
scroll: scorre di un numero di righe (+/-N) o in base al tempo: s=secondi, m=minuti, h=ore, d=giorni, M=mesi, y=anni
scroll_up: scorre di alcune righe in alto
scroll_down: scorre di alcune righe in basso
scroll_top: scorre fino all'inizio del buffer
scroll_bottom: scorre fino alla fine del buffer buffer
scroll_previous_highlight: passa all'evento precedente
scroll_next_highlight: passa all'evento successivo
zoom: ingrandimento sulla finestra
Per splith e splitv, pct è una percentuale che rappresenta la dimensione della nuova finestra, calcolata con la finestra attiva come riferimento per la dimensione. Per esempio 25 vuol dire creare una finestra di dimensione = dimensione_attuale / 4
Esempi:
salta alla finestra che visualizza il buffer #1:
/window b1
scorre di due righe in alto:
/window scroll -2
scorre all'indietro di due giorni:
/window scroll -2d
scorre all'inizio del giorno attuale:
/window scroll -d
........................................
|