|
|
= Guida per l'Utente di WeeChat |
|
|
:author: Sébastien Helleu |
|
|
:email: flashcode@flashtux.org |
|
|
:lang: it |
|
|
:toc: left |
|
|
:toclevels: 4 |
|
|
:toc-title: Indice |
|
|
:sectnums: |
|
|
:sectnumlevels: 3 |
|
|
:docinfo1: |
|
|
|
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Translators: |
|
|
|
|
|
* Marco Paolone <marcopaolone@gmail.com>, 2009-2012 |
|
|
|
|
|
|
|
|
Questo manuale documenta il client di chat WeeChat, ed è parte |
|
|
del programma stesso. |
|
|
|
|
|
È possibile trovare l'ultima versione di questo documento qui: |
|
|
https://weechat.org/doc |
|
|
|
|
|
|
|
|
[[introduction]] |
|
|
== Introduzione |
|
|
|
|
|
WeeChat (Wee Enhanced Environment for Chat) è un client di chat |
|
|
libero, veloce e leggero, realizzato per diversi sistemi operativi. |
|
|
|
|
|
[[features]] |
|
|
=== Caratteristiche |
|
|
|
|
|
Le principali caratteristiche: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
* multi-protocollo (mainly IRC) |
|
|
* connessione a server multipli (con SSL, IPv6, proxy) |
|
|
* piccolo, veloce e leggero |
|
|
* personalizzabile ed estensibile con plugin e script |
|
|
* conforme alle RFC di IRC |
|
|
https://tools.ietf.org/html/rfc1459[1459], |
|
|
https://tools.ietf.org/html/rfc2810[2810], |
|
|
https://tools.ietf.org/html/rfc2811[2811], |
|
|
https://tools.ietf.org/html/rfc2812[2812] e |
|
|
https://tools.ietf.org/html/rfc2813[2813] |
|
|
// TRANSLATION MISSING |
|
|
* IRC proxy and relay for remote interfaces |
|
|
* multi-piattaforma (GNU/Linux, *BSD, macOS, Windows ed altre) |
|
|
* 100% GPL, software libero |
|
|
|
|
|
La home page di WeeChat si trova qui: https://weechat.org/ |
|
|
|
|
|
[[prerequisites]] |
|
|
=== Requisiti |
|
|
|
|
|
Per poter installare WeeChat, è necessario: |
|
|
|
|
|
* un sistema GNU/Linux in esecuzione (con gli strumenti di |
|
|
compilazione per i sorgenti), oppure OS compatibile |
|
|
* privilegi di _root_ (per installare WeeChat in una directory di |
|
|
sistema) |
|
|
// TRANSLATION MISSING |
|
|
* some libraries (see <<dependencies,dependencies>>). |
|
|
|
|
|
[[install]] |
|
|
== Installazione |
|
|
|
|
|
[[binary_packages]] |
|
|
=== Pacchetti binari |
|
|
|
|
|
I pacchetti binari sono disponibili per molte distribuzioni, incluse: |
|
|
|
|
|
* Arch Linux: `pacman -S weechat` |
|
|
// TRANSLATION MISSING |
|
|
* Cygwin (Windows): select WeeChat packages in setup.exe |
|
|
// TRANSLATION MISSING |
|
|
* Debian/Ubuntu (o qualunque distribuzione compatibile): |
|
|
`apt-get install weechat-curses weechat-plugins` + |
|
|
For latest versions and nightly builds: https://weechat.org/download/debian |
|
|
* Fedora Core: `dnf install weechat` |
|
|
* Gentoo: `emerge weechat` |
|
|
* Mandriva/RedHat (o qualunque distribuzione compatibile con RPM): |
|
|
`rpm -i /path/per/weechat-x.y.z-1.i386.rpm` |
|
|
* openSUSE: `zypper in weechat` |
|
|
* Sourcemage: `cast weechat` |
|
|
|
|
|
Potrebbero risultare utili alcuni pacchetti addizionali, come |
|
|
weechat-plugins. |
|
|
|
|
|
Per altre distribuzioni, consultare il manuale per le istruzioni di |
|
|
installazione. |
|
|
|
|
|
[[source_package]] |
|
|
=== Sorgenti |
|
|
|
|
|
WeeChat può essere compilato con CMake oppure autotools |
|
|
(tuttavia si raccomanda CMake). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[NOTE] |
|
|
On macOS, you can use https://brew.sh/[Homebrew]: |
|
|
`brew install weechat` (for help: `brew info weechat`). |
|
|
|
|
|
[[dependencies]] |
|
|
==== Dipendenze |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
The following table shows the list of packages that are *required* to compile |
|
|
WeeChat: |
|
|
|
|
|
[width="100%",cols="5,^3,.^15",options="header"] |
|
|
|=== |
|
|
| Pacchetto ^(1)^ | Versione | Caratteristica |
|
|
// TRANSLATION MISSING |
|
|
| C compiler |
|
|
(gcc, clang, ...) | | Build. |
|
|
| cmake | ≥ 3.0 | Compilazione (ancora possibile con autotools, ma si raccomanda CMake). |
|
|
// TRANSLATION MISSING |
|
|
| pkg-config | | Detect installed libraries. |
|
|
| libncursesw5-dev ^(2)^ | | Interfaccia ncurses. |
|
|
| libcurl4-gnutls-dev | | Trasferimento URL. |
|
|
// TRANSLATION MISSING |
|
|
| zlib1g-dev | | Compression of packets in relay plugin (weechat protocol), script plugin. |
|
|
// TRANSLATION MISSING |
|
|
| libgcrypt20-dev | | Secured data, IRC SASL authentication. |
|
|
// TRANSLATION MISSING |
|
|
| libgnutls28-dev | ≥ 2.2.0 ^(3)^ | Connessione SSL al server IRC, support of SSL in relay plugin, IRC SASL authentication (ECDSA-NIST256P-CHALLENGE). |
|
|
|=== |
|
|
|
|
|
[NOTE] |
|
|
^(1)^ Il nome viene dalla distribuzione Debian GNU/Linux, nomi e versioni dei pacchetti |
|
|
potrebbero essere differenti in versioni e distribuzioni differenti. + |
|
|
// TRANSLATION MISSING |
|
|
^(2)^ It is recommended to compile with libncurses**w**5-dev (the *w* is |
|
|
important). WeeChat can compile with libncurses5-dev, but it is *NOT* recommended: |
|
|
you may experience display bugs with wide chars. + |
|
|
// TRANSLATION MISSING |
|
|
^(3)^ GnuTLS ≥ 3.0.21 is required for IRC SASL authentication with mechanism |
|
|
ECDSA-NIST256P-CHALLENGE. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
The following table shows the list of packages that are optional to compile |
|
|
WeeChat: |
|
|
|
|
|
[width="100%",cols="5,^3,.^15",options="header"] |
|
|
|=== |
|
|
| Pacchetto | Versione | Caratteristica |
|
|
// TRANSLATION MISSING |
|
|
| C++ compiler | | Build and run tests, plugin JavaScript. |
|
|
| gettext | | Internazionalizzazione (traduzione dei messaggi; la lingua base è l'inglese). |
|
|
| ca-certificates | | Certificati per le connessioni SSL. |
|
|
| libaspell-dev |
|
|
∥ libenchant-dev | | Plugin spell. |
|
|
| python3-dev ^(1)^ | | Plugin python. |
|
|
| libperl-dev | | Plugin perl. |
|
|
| ruby2.5, ruby2.5-dev | ≥ 1.9.1 | Plugin ruby. |
|
|
| liblua5.3-dev | | Plugin lua. |
|
|
| tcl-dev | ≥ 8.5 | Plugin tcl. |
|
|
| guile-2.0-dev | ≥ 2.0 | Plugin guile (scheme). |
|
|
| libv8-dev | ≤ 3.24.3 | Plugin javascript. |
|
|
| php-dev, libphp-embed | ≥ 7.0 | Plugin php. |
|
|
| libxml2-dev | | Plugin php. |
|
|
// TRANSLATION MISSING |
|
|
| libargon2-0-dev | | Plugin php (if PHP ≥ 7.2). |
|
|
// TRANSLATION MISSING |
|
|
| libsodium-dev | | Plugin php (if PHP ≥ 7.2). |
|
|
// TRANSLATION MISSING |
|
|
| asciidoctor | ≥ 1.5.4 | Build man page and documentation. |
|
|
// TRANSLATION MISSING |
|
|
| libcpputest-dev | ≥ 3.4 | Build and run tests. |
|
|
|=== |
|
|
|
|
|
[NOTE] |
|
|
// TRANSLATION MISSING |
|
|
^(1)^ By default Python 3.x is used. If you enable option `+ENABLE_PYTHON2+` (see |
|
|
below), only the version 2.7 of Python is recommended. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
If you are using a Debian/Ubuntu based distribution, and if you have some |
|
|
"deb-src" source entries in your file _/etc/apt/sources.list_, you can install |
|
|
all dependencies with the command: |
|
|
|
|
|
---- |
|
|
# apt-get build-dep weechat |
|
|
---- |
|
|
|
|
|
[[compile_with_cmake]] |
|
|
==== Compilazione con CMake |
|
|
|
|
|
* Installazione nelle directory di sistema (richiede privilegi di _root_): |
|
|
|
|
|
---- |
|
|
$ mkdir build |
|
|
$ cd build |
|
|
$ cmake .. |
|
|
$ make |
|
|
$ sudo make install |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
* Installazione in una directory personalizzata (for example your home): |
|
|
|
|
|
---- |
|
|
$ mkdir build |
|
|
$ cd build |
|
|
$ cmake .. -DCMAKE_INSTALL_PREFIX=/path/della/directory |
|
|
$ make |
|
|
$ make install |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Options can be used for CMake, with format: `-DOPTION=VALUE`. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
List of commonly used options: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="3m,3,3m,10",options="header"] |
|
|
|=== |
|
|
| Option | Values | Default value | Description |
|
|
|
|
|
| CMAKE_BUILD_TYPE | `Debug`, `Release`, `RelWithDebInfo`, `MinSizeRel` | | |
|
|
The type of build: `Debug` (or `RelWithDebInfo`) is recommended if you are |
|
|
running development version of WeeChat. |
|
|
|
|
|
| CMAKE_INSTALL_PREFIX | directory | /usr/local | |
|
|
The directory where WeeChat will be installed. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
| WEECHAT_HOME | directory | (empty string) | |
|
|
The default home directory when running WeeChat. + |
|
|
With an empty value (recommended), XDG directories are used by default. |
|
|
If non empty, a single directory for all files is used. |
|
|
The value can also be 4 directories separated by colons, in this order: |
|
|
config, data, cache, runtime. |
|
|
|
|
|
| ENABLE_ALIAS | `ON`, `OFF` | ON | |
|
|
Compile <<alias_plugin,Alias plugin>>. |
|
|
|
|
|
| ENABLE_BUFLIST | `ON`, `OFF` | ON | |
|
|
Compile <<buflist_plugin,Buflist plugin>>. |
|
|
|
|
|
| ENABLE_CHARSET | `ON`, `OFF` | ON | |
|
|
Compile <<charset_plugin,Charset plugin>>. |
|
|
|
|
|
| ENABLE_MAN | `ON`, `OFF` | OFF | |
|
|
Build man page. |
|
|
|
|
|
| ENABLE_DOC | `ON`, `OFF` | OFF | |
|
|
Build HTML documentation. |
|
|
|
|
|
| ENABLE_ENCHANT | `ON`, `OFF` | OFF | |
|
|
Compile <<spell_plugin,Spell plugin>> with Enchant. |
|
|
|
|
|
| ENABLE_EXEC | `ON`, `OFF` | ON | |
|
|
Compile <<exec_plugin,Exec plugin>>. |
|
|
|
|
|
| ENABLE_FIFO | `ON`, `OFF` | ON | |
|
|
Compile <<fifo_plugin,Fifo plugin>>. |
|
|
|
|
|
| ENABLE_FSET | `ON`, `OFF` | ON | |
|
|
Compile <<fset_plugin,Fset plugin>>. |
|
|
|
|
|
| ENABLE_GUILE | `ON`, `OFF` | ON | |
|
|
Compile <<scripts_plugins,Guile plugin>> (Scheme). |
|
|
|
|
|
| ENABLE_IRC | `ON`, `OFF` | ON | |
|
|
Compile <<irc_plugin,IRC plugin>>. |
|
|
|
|
|
| ENABLE_JAVASCRIPT | `ON`, `OFF` | OFF | |
|
|
Compile <<scripts_plugins,JavaScript plugin>>. |
|
|
|
|
|
| ENABLE_LARGEFILE | `ON`, `OFF` | ON | |
|
|
Support of large files. |
|
|
|
|
|
| ENABLE_LOGGER | `ON`, `OFF` | ON | |
|
|
Compile <<logger_plugin,Logger plugin>>. |
|
|
|
|
|
| ENABLE_LUA | `ON`, `OFF` | ON | |
|
|
Compile <<scripts_plugins,Lua plugin>>. |
|
|
|
|
|
| ENABLE_NCURSES | `ON`, `OFF` | ON | |
|
|
Compile Ncurses interface. |
|
|
|
|
|
| ENABLE_NLS | `ON`, `OFF` | ON | |
|
|
Enable NLS (translations). |
|
|
|
|
|
| ENABLE_PERL | `ON`, `OFF` | ON | |
|
|
Compile <<scripts_plugins,Perl plugin>>. |
|
|
|
|
|
| ENABLE_PHP | `ON`, `OFF` | ON | |
|
|
Compile <<scripts_plugins,PHP plugin>>. |
|
|
|
|
|
| ENABLE_PYTHON | `ON`, `OFF` | ON | |
|
|
Compile <<scripts_plugins,Python plugin>>. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
| ENABLE_PYTHON2 | `ON`, `OFF` | OFF | |
|
|
Compile <<scripts_plugins,Python plugin>> using Python 2 instead of Python 3. |
|
|
|
|
|
| ENABLE_RELAY | `ON`, `OFF` | ON | |
|
|
Compile <<relay_plugin,Relay plugin>>. |
|
|
|
|
|
| ENABLE_RUBY | `ON`, `OFF` | ON | |
|
|
Compile <<scripts_plugins,Ruby plugin>>. |
|
|
|
|
|
| ENABLE_SCRIPT | `ON`, `OFF` | ON | |
|
|
Compile <<scripts_plugins,Script plugin>>. |
|
|
|
|
|
| ENABLE_SCRIPTS | `ON`, `OFF` | ON | |
|
|
Compile <<scripts_plugins,script plugins>> (Python, Perl, Ruby, Lua, Tcl, |
|
|
Guile, JavaScript, PHP). |
|
|
|
|
|
| ENABLE_SPELL | `ON`, `OFF` | ON | |
|
|
Compile <<spell_plugin,Spell plugin>>. |
|
|
|
|
|
| ENABLE_TCL | `ON`, `OFF` | ON | |
|
|
Compile <<scripts_plugins,Tcl plugin>>. |
|
|
|
|
|
| ENABLE_TRIGGER | `ON`, `OFF` | ON | |
|
|
Compile <<trigger_plugin,Trigger plugin>>. |
|
|
|
|
|
| ENABLE_TYPING | `ON`, `OFF` | ON | |
|
|
Compile <<typing_plugin,Typing plugin>>. |
|
|
|
|
|
| ENABLE_XFER | `ON`, `OFF` | ON | |
|
|
Compile <<xfer_plugin,Xfer plugin>>. |
|
|
|
|
|
| ENABLE_TESTS | `ON`, `OFF` | OFF | |
|
|
Compile tests. |
|
|
|
|
|
| ENABLE_CODE_COVERAGE | `ON`, `OFF` | OFF | |
|
|
Compile with code coverage options. + |
|
|
This option should be used only for tests, to measure test coverage. |
|
|
|=== |
|
|
|
|
|
The other options can be displayed with this command: |
|
|
|
|
|
---- |
|
|
$ cmake -LA |
|
|
---- |
|
|
|
|
|
Or with Curses interface: |
|
|
|
|
|
---- |
|
|
$ ccmake .. |
|
|
---- |
|
|
|
|
|
[[compile_with_autotools]] |
|
|
==== Compilazione con autotools |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[WARNING] |
|
|
Only CMake is officially supported to build WeeChat. You should use autotools |
|
|
only if you are not able to use CMake. + |
|
|
Build with autotools requires more dependencies and is slower than with CMake. |
|
|
|
|
|
* Installazione nelle directory di sistema (richiede privilegi di _root_): |
|
|
|
|
|
---- |
|
|
$ ./autogen.sh |
|
|
$ mkdir build |
|
|
$ cd build |
|
|
$ ../configure |
|
|
$ make |
|
|
$ sudo make install |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
* Installazione in una directory personalizzata (for example your home): |
|
|
|
|
|
---- |
|
|
$ ./autogen.sh |
|
|
$ mkdir build |
|
|
$ cd build |
|
|
$ ../configure --prefix=/path/to/directory |
|
|
$ make |
|
|
$ make install |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Options can be used for _configure_ script, they can be displayed with this |
|
|
command: |
|
|
|
|
|
---- |
|
|
$ ./configure --help |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[run_tests]] |
|
|
==== Run tests |
|
|
|
|
|
Following packages are *required* to compile tests: |
|
|
|
|
|
* libcpputest-dev |
|
|
* C++ compiler |
|
|
|
|
|
Tests must be enabled when compiling WeeChat (with CMake): |
|
|
|
|
|
---- |
|
|
$ cmake .. -DENABLE_TESTS=ON |
|
|
---- |
|
|
|
|
|
They can be launched after compilation from the build directory (with CMake): |
|
|
|
|
|
---- |
|
|
$ ctest -V |
|
|
---- |
|
|
|
|
|
[[git_sources]] |
|
|
=== Sorgenti git |
|
|
|
|
|
Attenzione: i sorgenti git sono per gli utenti avanzati: potrebbero non |
|
|
compilare o essere instabili. Siete avvisati! |
|
|
|
|
|
Per ottenere i sorgenti git, dare il comando: |
|
|
|
|
|
---- |
|
|
$ git clone https://github.com/weechat/weechat.git |
|
|
---- |
|
|
|
|
|
Poi seguire le istruzioni per i sorgenti (consultare |
|
|
<<source_package,sorgenti>>). |
|
|
|
|
|
[[report_crashes]] |
|
|
=== Segnalare gli errori |
|
|
|
|
|
Nel caso in cui si verifichino errori, o si desideri segnalare qualsiasi errore |
|
|
futuro di WeeChat, è necessario: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
* compile with: |
|
|
** informazioni di debug (o installare il pacchetto binario con le informazioni di debug) |
|
|
// TRANSLATION MISSING |
|
|
** address sanitizer (optional) |
|
|
* abilitare i file _core_ sul proprio sistema |
|
|
* installare gdb |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[build_debug]] |
|
|
==== Build with debug options |
|
|
|
|
|
Se si compila con CMake: |
|
|
|
|
|
---- |
|
|
$ cmake .. -DCMAKE_BUILD_TYPE=Debug |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[build_debug_address_sanitizer]] |
|
|
==== Build with debug options and address sanitizer |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
You can additionally enable the address sanitizer, which causes WeeChat to |
|
|
crash immediately in case of problem: |
|
|
|
|
|
---- |
|
|
$ cmake .. -DCMAKE_BUILD_TYPE=Debug -DCMAKE_C_FLAGS=-fsanitize=address -DCMAKE_CXX_FLAGS=-fsanitize=address -DCMAKE_EXE_LINKER_FLAGS=-fsanitize=address |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[WARNING] |
|
|
You should enable address sanitizer only if you're trying to cause a crash, |
|
|
this is not recommended in production. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Then once compiled and installed, you must run WeeChat like this: |
|
|
|
|
|
---- |
|
|
$ ASAN_OPTIONS="detect_odr_violation=0 log_path=asan.log" weechat |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
In case of crash, the backtrace is in file `asan.log`. |
|
|
|
|
|
[[core_files]] |
|
|
==== File core |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
To enable _core_ files, you can use option |
|
|
<<option_weechat.startup.sys_rlimit,weechat.startup.sys_rlimit>>: |
|
|
|
|
|
---- |
|
|
/set weechat.startup.sys_rlimit "core:-1" |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
For WeeChat ≤ 0.3.8 or if you want to enable core files even before WeeChat |
|
|
starts, you can use `ulimit` command. |
|
|
|
|
|
Ad esempio su Linux con la shell _bash_, aggiungere questa riga al proprio |
|
|
`~/.bashrc`: |
|
|
|
|
|
---- |
|
|
ulimit -c unlimited |
|
|
---- |
|
|
|
|
|
Oppure impostare una dimensione massima: |
|
|
|
|
|
---- |
|
|
ulimit -c 200000 |
|
|
---- |
|
|
|
|
|
[[gdb_backtrace]] |
|
|
==== Ottenere un backtrace con gdb |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
When WeeChat crashes, your system will create a file _core_ or _core.12345_ |
|
|
(_12345_ is process id) if the <<core_files,option is enabled>>. |
|
|
Questo file viene creato nella directory in cui è in esecuzione WeeChat (e |
|
|
*non* la directory dove WeeChat è installato!). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[NOTE] |
|
|
On some systems like Archlinux, core dumps could be in another directory like |
|
|
_/var/lib/systemd/coredump_ and you must use the command `coredumpctl` to read it. + |
|
|
For more information, see this wiki page: https://wiki.archlinux.org/index.php/Core_dump |
|
|
|
|
|
Ad esempio, se _weechat_ è installato in _/usr/bin/_ ed il file _core_ |
|
|
si trova in _/home/user/_, allora eseguire gdb con questo comando: |
|
|
|
|
|
---- |
|
|
gdb /usr/bin/weechat /home/user/core |
|
|
---- |
|
|
|
|
|
All'interno di gdb, usare il comando `bt full` per visualizzare |
|
|
il backtrace. Verrà mostrato qualcosa di simile a questo: |
|
|
|
|
|
---- |
|
|
(gdb) set logging file /tmp/crash.txt |
|
|
(gdb) set logging on |
|
|
Copying output to /tmp/crash.txt. |
|
|
(gdb) bt full |
|
|
#0 0x00007f9dfb04a465 in raise () from /lib/libc.so.6 |
|
|
#1 0x00007f9dfb04b8e6 in abort () from /lib/libc.so.6 |
|
|
#2 0x0000000000437f66 in weechat_shutdown (return_code=1, crash=1) |
|
|
at /some_path/src/core/weechat.c:351 |
|
|
#3 <signal handler called> |
|
|
#4 0x000000000044cb24 in hook_process_timer_cb (arg_hook_process=0x254eb90, |
|
|
remaining_calls=<value optimized out>) at /some_path/src/core/wee-hook.c:1364 |
|
|
hook_process = 0x254eb90 |
|
|
status = <value optimized out> |
|
|
#5 0x000000000044cc7d in hook_timer_exec () |
|
|
at /some_path/src/core/wee-hook.c:1025 |
|
|
tv_time = {tv_sec = 1272693881, tv_usec = 212665} |
|
|
ptr_hook = 0x2811f40 |
|
|
next_hook = 0x0 |
|
|
#6 0x000000000041b5b0 in gui_main_loop () |
|
|
at /some_path/src/gui/curses/gui-curses-main.c:319 |
|
|
hook_fd_keyboard = 0x173b600 |
|
|
tv_timeout = {tv_sec = 0, tv_usec = 0} |
|
|
read_fds = {fds_bits = {0 <repeats 16 times>}} |
|
|
write_fds = {fds_bits = {0 <repeats 16 times>}} |
|
|
except_fds = {fds_bits = {0 <repeats 16 times>}} |
|
|
max_fd = <value optimized out> |
|
|
---- |
|
|
|
|
|
Bisogna riportare l'errore agli sviluppatori, e specificare quale azione ha causato |
|
|
l'errore. |
|
|
|
|
|
Grazie per il vostro aiuto! |
|
|
|
|
|
[[debug_running_weechat]] |
|
|
==== Debug di WeeChat durante l'esecuzione |
|
|
|
|
|
Per eseguire il debug di un'istanza di WeeChat in esecuzione (ad esempio se |
|
|
WeeChat sembra sia bloccato), è possibile usare gdb con l'id del processo |
|
|
(sostituire _12345_ con il PID del processo weechat): |
|
|
|
|
|
---- |
|
|
gdb /usr/bin/weechat 12345 |
|
|
---- |
|
|
|
|
|
Poi, come per un crash, usare il comando `bt full`: |
|
|
|
|
|
---- |
|
|
(gdb) bt full |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[upgrade]] |
|
|
=== Upgrade |
|
|
|
|
|
If a new stable version of WeeChat is released, this is time for you to |
|
|
switch to this version. |
|
|
|
|
|
First of all, you must install the new version of WeeChat, either with your |
|
|
package manager or by compiling yourself, so that the `weechat` binary and all |
|
|
required files are in the same paths. + |
|
|
This can be done while WeeChat is running. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[upgrade_command]] |
|
|
==== Upgrade command |
|
|
|
|
|
WeeChat can restart the new binary, in place, using the |
|
|
<<command_weechat_upgrade,/upgrade>> command: the buffer contents and non-SSL |
|
|
connections are preserved. + |
|
|
The SSL connections are lost during upgrade and you are automatically |
|
|
reconnected after the upgrade (reload of SSL sessions is currently not possible |
|
|
with GnuTLS). |
|
|
|
|
|
The command can also be used if you have to restart the machine, for example |
|
|
to upgrade the kernel or to move your WeeChat to another machine: |
|
|
|
|
|
---- |
|
|
/upgrade -quit |
|
|
---- |
|
|
|
|
|
This saves the current state in `*.upgrade` files. You can then either reboot |
|
|
or move the whole WeeChat directories (config, data, cache) to another machine, |
|
|
and restart WeeChat later with this command: |
|
|
|
|
|
---- |
|
|
$ weechat --upgrade |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[restart_after_upgrade]] |
|
|
==== Restart after upgrade |
|
|
|
|
|
[[restart_release_notes]] |
|
|
===== Release notes |
|
|
|
|
|
After an upgrade, it is *strongly recommended* to read the |
|
|
https://weechat.org/files/releasenotes/ReleaseNotes-devel.html[release notes] |
|
|
which contain important information about breaking changes and some |
|
|
manual actions that could be required. |
|
|
|
|
|
You must read the release notes of all versions between your old (excluded) and |
|
|
your new version (included). + |
|
|
For example if you switch from version 3.0 to 3.2, you must read release notes |
|
|
of versions 3.1 and 3.2. |
|
|
|
|
|
[[restart_configuration_upgrade]] |
|
|
===== Configuration upgrade |
|
|
|
|
|
WeeChat has an automatic upgrade of configuration files (`*.conf`): |
|
|
|
|
|
* new options are silently added with default value |
|
|
* obsolete options are automatically discarded and WeeChat displays a warning |
|
|
with the value read from file. |
|
|
|
|
|
Example of warning when an option has been removed: |
|
|
|
|
|
---- |
|
|
=!= Attenzione: /home/user/.config/weechat/sec.conf, riga 15: opzione sconosciuta per la sezione "crypt": passphrase_file = "" |
|
|
---- |
|
|
|
|
|
That means the option `sec.crypt.passphrase_file` has been removed, and you |
|
|
had value set to empty string, which was the default value in the previous version |
|
|
(in this case no manual action is required). |
|
|
|
|
|
[[usage]] |
|
|
== Utilizzo |
|
|
|
|
|
[[running_weechat]] |
|
|
=== Esecuzione di WeeChat |
|
|
|
|
|
Per avviare WeeChat, digitare questo comando: |
|
|
|
|
|
---- |
|
|
$ weechat |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
When you run WeeChat for the first time, the default configuration files are |
|
|
created in _~/.config/weechat_ with default options and values |
|
|
(see <<files_and_directories,Files and directories>>). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[command_line_options]] |
|
|
==== Command line options |
|
|
|
|
|
include::includes/cmdline_options.it.adoc[tag=standard] |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[extra_debug_options]] |
|
|
==== Extra debug options |
|
|
|
|
|
[WARNING] |
|
|
These options are for debug purposes only, *DO NOT USE IN PRODUCTION!* |
|
|
|
|
|
include::includes/cmdline_options.it.adoc[tag=debug] |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[environment_variables]] |
|
|
=== Environment variables |
|
|
|
|
|
Some environment variables are used by WeeChat if they are defined: |
|
|
|
|
|
[width="100%",cols="1m,6",options="header"] |
|
|
|=== |
|
|
| Name | Description |
|
|
| WEECHAT_HOME | The WeeChat home (with configuration files, logs, scripts, ...). Same behavior as <<compile_with_cmake,CMake option>> `WEECHAT_HOME`. |
|
|
| WEECHAT_PASSPHRASE | The passphrase used to decrypt secured data. |
|
|
| WEECHAT_EXTRA_LIBDIR | An extra directory to load plugins (from the "plugins" directory in this path). |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[files_and_directories]] |
|
|
=== Files and directories |
|
|
|
|
|
[[xdg_directories]] |
|
|
==== XDG directories |
|
|
|
|
|
WeeChat uses XDG directories by default |
|
|
(according to the https://specifications.freedesktop.org/basedir-spec/basedir-spec-latest.html[XDG Base Directory Specification]). + |
|
|
A single home directory for all files can be forced by CMake option `WEECHAT_HOME`, |
|
|
the environment variable `WEECHAT_HOME` or the command-line option `-d` / `--dir`. |
|
|
|
|
|
When a single WeeChat home directory is not forced, XDG directories are used |
|
|
and set like this: |
|
|
|
|
|
[width="100%",cols="1,2m,5",options="header"] |
|
|
|=== |
|
|
| Directory | Default value | Fallback value |
|
|
| config | $XDG_CONFIG_HOME/weechat | `$HOME/.config/weechat` if `$XDG_CONFIG_HOME` is not defined or empty. |
|
|
| data | $XDG_DATA_HOME/weechat | `$HOME/.local/share/weechat` if `$XDG_DATA_HOME` is not defined or empty. |
|
|
| cache | $XDG_CACHE_HOME/weechat | `$HOME/.cache/weechat` if `$XDG_CACHE_HOME` is not defined or empty. |
|
|
| runtime | $XDG_RUNTIME_DIR/weechat | Same as _cache_ directory if `$XDG_RUNTIME_DIR` is not defined or empty. |
|
|
|=== |
|
|
|
|
|
The configuration files are created with default values the first time you run WeeChat. |
|
|
|
|
|
[[weechat_directories]] |
|
|
==== WeeChat directories |
|
|
|
|
|
The WeeChat directories are: |
|
|
|
|
|
[width="100%",cols="1m,3",options="header"] |
|
|
|=== |
|
|
| Path ^(1)^ | Description |
|
|
| ~/.config/weechat/ | WeeChat configuration files: `*.conf`, certificates, etc. |
|
|
| ~/.local/share/weechat/ | WeeChat data files: logs, scripts, scripts data, xfer files, etc. |
|
|
| logs/ | Log files (one file per buffer). |
|
|
| python/ | Python scripts. |
|
|
| autoload/ | Python scripts auto-loaded on startup ^(2)^. |
|
|
| perl/ | Perl scripts. |
|
|
| autoload/ | Perl scripts auto-loaded on startup ^(2)^. |
|
|
| ruby/ | Ruby scripts. |
|
|
| autoload/ | Ruby scripts auto-loaded on startup ^(2)^. |
|
|
| lua/ | Lua scripts. |
|
|
| autoload/ | Lua scripts auto-loaded on startup ^(2)^. |
|
|
| tcl/ | Tcl scripts. |
|
|
| autoload/ | Tcl scripts auto-loaded on startup ^(2)^. |
|
|
| guile/ | Guile scripts. |
|
|
| autoload/ | Guile scripts auto-loaded on startup ^(2)^. |
|
|
| javascript/ | JavaScript scripts. |
|
|
| autoload/ | JavaScript scripts auto-loaded on startup ^(2)^. |
|
|
| php/ | PHP scripts. |
|
|
| autoload/ | PHP scripts auto-loaded on startup ^(2)^. |
|
|
| ~/.cache/weechat/ | WeeChat cache files: scripts cache. |
|
|
| /run/user/1000/weechat/ | WeeChat runtime files: FIFO pipe, Relay UNIX sockets. |
|
|
|=== |
|
|
|
|
|
[NOTE] |
|
|
^(1)^ XDG directories may be different according to your environment variables `XDG_*`. + |
|
|
^(2)^ This directory often contains only symbolic links to scripts in parent directory. |
|
|
|
|
|
[[weechat_files]] |
|
|
==== WeeChat files |
|
|
|
|
|
The files in the WeeChat home directory are: |
|
|
|
|
|
[width="100%",cols="1m,3,6",options="header"] |
|
|
|=== |
|
|
| File | Description | Sensitive data |
|
|
| weechat.conf | Main WeeChat configuration file | Possible (example: list of channels in a saved buffers layout). |
|
|
| sec.conf | Configuration file with secured data | *Yes, highly sensitive*: this file must never be shared with anyone. |
|
|
| plugins.conf | Plugins configuration file | Possible, depends on plugins/scripts. |
|
|
| alias.conf | Configuration file for _alias_ plugin | Possible, depends on aliases. |
|
|
| buflist.conf | Configuration file for _buflist_ plugin | No. |
|
|
| charset.conf | Configuration file for _charset_ plugin | No. |
|
|
| exec.conf | Configuration file for _exec_ plugin | No. |
|
|
| fifo.conf | Configuration file for _fifo_ plugin | No. |
|
|
| fset.conf | Configuration file for _fset_ plugin | No. |
|
|
| guile.conf | Configuration file for _guile_ plugin | No. |
|
|
| irc.conf | Configuration file for _irc_ plugin | *Yes*: it can contain passwords for servers, nickserv and channels (if not stored in `sec.conf`). |
|
|
| javascript.conf | Configuration file for _javascript_ plugin | No. |
|
|
| logger.conf | Configuration file for _logger_ plugin | No. |
|
|
| lua.conf | Configuration file for _lua_ plugin | No. |
|
|
| perl.conf | Configuration file for _perl_ plugin | No. |
|
|
| php.conf | Configuration file for _php_ plugin | No. |
|
|
| python.conf | Configuration file for _python_ plugin | No. |
|
|
// TRANSLATION MISSING |
|
|
| relay.conf | Configuration file for _relay_ plugin | *Yes*: it can contain relay password and TOTP secret (if not stored in `sec.conf`), allowed IP addresses/websocket origins and opened ports. |
|
|
| ruby.conf | Configuration file for _ruby_ plugin | No. |
|
|
| script.conf | Configuration file for _script_ plugin | No. |
|
|
| spell.conf | Configuration file for _spell_ plugin | No. |
|
|
| tcl.conf | Configuration file for _tcl_ plugin | No. |
|
|
| trigger.conf | Configuration file for _trigger_ plugin | Possible, depends on triggers. |
|
|
| typing.conf | Configuration file for _typing_ plugin | No. |
|
|
| xfer.conf | Configuration file for _xfer_ plugin | No. |
|
|
| weechat.log | WeeChat log file | No. |
|
|
|=== |
|
|
|
|
|
[IMPORTANT] |
|
|
It is *not recommended* to edit configuration files by hand because WeeChat |
|
|
may write them at any time (for example on <<command_weechat_quit,/quit>>) |
|
|
and after any change you must run the command <<command_weechat_reload,/reload>> |
|
|
(with the risk of losing other changes that were not yet saved with |
|
|
<<command_weechat_save,/save>>). + |
|
|
You can use the command <<command_weechat_set,/set>>, which checks the value |
|
|
and applies immediately the changes. |
|
|
|
|
|
[[screen_layout]] |
|
|
=== Layout dello schermo |
|
|
|
|
|
Esempio di terminale con WeeChat: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
.... |
|
|
▼ bar "buflist" ▼ bar "title" |
|
|
┌──────────────────────────────────────────────────────────────────────────────────────┐ |
|
|
│1.libera │Welcome to #test, this is a test channel │ |
|
|
│ weechat│12:52:27 --> | Flashy (flashcode@weechat.org) has joined #test │@Flashy│ |
|
|
│2. #test│12:52:27 -- | Nicks #test: [@Flashy @joe +weebot peter] │@joe │ |
|
|
│3. #abc │12:52:27 -- | Channel #test: 4 nicks (2 ops, 1 voice, 1 normal) │+weebot│ |
|
|
│4. #def │12:52:27 -- | Channel created on Tue Jan 27 06:30:17 2009 │peter │ |
|
|
│5. #ghi │12:54:15 peter | hey! │ │ |
|
|
│ │12:55:01 @joe | hello │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │[12:55] [5] [irc/libera] 2:#test(+n){4}* [H: 3:#abc(2,5), 5] │ |
|
|
│ │[@Flashy(i)] hi peter!█ │ |
|
|
└──────────────────────────────────────────────────────────────────────────────────────┘ |
|
|
▲ bars "status" and "input" bar "nicklist" ▲ |
|
|
.... |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
By default, the screen is divided up into the following areas: |
|
|
|
|
|
* area di chat (centro dello schermo) con le righe di chat, e per ogni riga: |
|
|
** ora |
|
|
** prefisso (prima di "|") |
|
|
** messaggio (dopo di "|") |
|
|
* barre che circondano l'area di chat, quelle predefinite sono: |
|
|
// TRANSLATION MISSING |
|
|
** barra _buflist_, on the left |
|
|
** barra _titolo_, in alto rispetto all'area di chat |
|
|
** barra _stato_, in basso rispetto all'area di chat |
|
|
** barra _input_, in basso rispetto alla barra di stato |
|
|
** barra _nicklist_, sulla destra |
|
|
|
|
|
La barra _buflist_ ha i seguenti elementi predefiniti: |
|
|
|
|
|
[width="100%",cols="^3,^3,9",options="header"] |
|
|
|=== |
|
|
| Elemento | Esempio | Descrizione |
|
|
// TRANSLATION MISSING |
|
|
| buflist | `1.weechat` | List of buffers. |
|
|
|=== |
|
|
|
|
|
La barra _title_ ha i seguenti elementi predefiniti: |
|
|
|
|
|
[width="100%",cols="^3,^3,9",options="header"] |
|
|
|=== |
|
|
| Elemento | Esempio | Descrizione |
|
|
// TRANSLATION MISSING |
|
|
| buffer_title | `Welcome to #test` | Buffer title. |
|
|
|=== |
|
|
|
|
|
La barra _status_ ha i seguenti elementi predefiniti: |
|
|
|
|
|
[width="100%",cols="^3,^3,9",options="header"] |
|
|
|=== |
|
|
| Elemento | Esempio | Descrizione |
|
|
| time | `[12:55]` | Ora. |
|
|
// TRANSLATION MISSING |
|
|
| buffer_last_number | `[5]` | Number of last buffer in list. |
|
|
| buffer_plugin | `[irc/libera]` | Plugin del buffer attivo (il plugin irc può aggiungere il nome del server irc usato dal buffer). |
|
|
| buffer_number | `2` | Numero del buffer corrente. |
|
|
| buffer_name | `#test` | Nome del buffer attivo. |
|
|
| buffer_modes | `+n` | Modalità canale IRC. |
|
|
// TRANSLATION MISSING |
|
|
| buffer_nicklist_count | `{4}` | Number of nicks displayed in nicklist. |
|
|
// TRANSLATION MISSING |
|
|
| buffer_zoom | ! | `!` means the merged buffer is zoomed (only this one is displayed), empty value means all merged buffers are displayed. |
|
|
| buffer_filter | `+*+` | Indicatore filtraggio: `+*+` significa che alcune righe sono filtrate (nascoste), valori vuoti indicano che tutte le righe sono visualizzate. |
|
|
| scroll | `-ANCORA(50)-` | Indicatore di scorrimento, con il numero di righe sotto l'ultima riga visualizzata. |
|
|
| lag | `[Ritardo: 2.5]` | Indicatore ritardo, in secondi (nascosto se il ritardo è basso). |
|
|
| hotlist | `[H: 3:#abc(2,5), 5]` | Elenco dei buffer con attività (messaggi non letti) (nell'esempio, 2 notifiche e 5 messaggi non letti su #abc, un messaggio non letto sul buffer #5). |
|
|
| completion | `abc(2) def(5)` | Elenco di parole per il completamento, con il numero di completamenti possibili per ogni parola. |
|
|
|=== |
|
|
|
|
|
La barra _input_ ha i seguenti elementi predefiniti: |
|
|
|
|
|
[width="100%",cols="^3,^3,9",options="header"] |
|
|
|=== |
|
|
| Elemento | Esempio | Descrizione |
|
|
// TRANSLATION MISSING |
|
|
| input_prompt | `[@Flashy(i)]` | Prompt per l'input, for irc: nick and modes (mode "+i" means invisible on libera). |
|
|
| away | `(assente)` | Indicatore di assenza. |
|
|
// TRANSLATION MISSING |
|
|
| input_search | `[Search (~ str,msg)]` | Search indicator ("`~`": case insensitive, "`==`": case sensitive, "`str`": search string, "`regex`": search regular expression, "`msg`": search in messages, "`pre`": search in prefixes, "`pre\|msg`": search in prefixes and messages). |
|
|
| input_paste | `[Incollare 7 righe ? [ctrl-Y] Sì [ctrl-N] No]` | Chiede all'utente se incollare le righe. |
|
|
| input_text | `ciao peter!` | Testo in input. |
|
|
|=== |
|
|
|
|
|
La barra _nicklist_ ha i seguenti elementi predefiniti: |
|
|
|
|
|
[width="100%",cols="^3,^3,9",options="header"] |
|
|
|=== |
|
|
| Elemento | Esempio | Descrizione |
|
|
// TRANSLATION MISSING |
|
|
| buffer_nicklist | `@Flashy` | List of nicks on current buffer. |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Other items available (not used in bars by default): |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="^3,^3,9",options="header"] |
|
|
|=== |
|
|
| Item | Example | Description |
|
|
| buffer_count | `10` | Total number of buffers opened. |
|
|
| buffer_last_number | `10` | Number of the latest buffer (can be different from `buffer_count` if option <<option_weechat.look.buffer_auto_renumber,weechat.look.buffer_auto_renumber>> is `off`). |
|
|
| buffer_nicklist_count_all | `4` | Number of visible groups and nicks in nicklist. |
|
|
| buffer_nicklist_count_groups | `0` | Number of visible groups in nicklist. |
|
|
| buffer_short_name | `#test` | Current buffer short name. |
|
|
| buflist2 | `1.weechat` | List of buffers, second bar item (see option <<option_buflist.look.use_items,buflist.look.use_items>>). |
|
|
| buflist3 | `1.weechat` | List of buffers, third bar item (see option <<option_buflist.look.use_items,buflist.look.use_items>>). |
|
|
| fset | `+buflist.look.sort: …+` | Help on currently selected option on fset buffer. |
|
|
| irc_channel | `#test` | Current IRC channel name. |
|
|
| irc_host | `+user@host.com+` | Current IRC host. |
|
|
| irc_nick | `+Flashy+` | Current IRC nick. |
|
|
| irc_nick_host | `+Flashy!user@host.com+` | Current IRC nick and host. |
|
|
| irc_nick_modes | `i` | IRC modes for self nick. |
|
|
| irc_nick_prefix | `@` | IRC nick prefix on channel. |
|
|
| mouse_status | `M` | Mouse status (empty if mouse is disabled). |
|
|
| spell_dict | `fr,en` | Spelling dictionaries used on current buffer. |
|
|
| spell_suggest | `print,prone,prune` | Spelling suggestions for word under cursor (if misspelled). |
|
|
| tls_version | `TLS1.3` | TLS version in use for current IRC server. |
|
|
| window_number | `2` | Current window number. |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Each aspect of the layout can be customized with the appropriate <<command_line,command>>: |
|
|
<<command_weechat_bar,`/bar`>> to customize the bars, |
|
|
<<command_weechat_buffer,/buffer>> and <<command_weechat_window,`/window`>> |
|
|
to customize <<buffers_and_windows,buffers and windows>>, |
|
|
and <<command_weechat_layot,/layout>> to name, save and restore the screen layout |
|
|
and the association between windows and buffers. |
|
|
|
|
|
[[command_line]] |
|
|
=== Riga di comando |
|
|
|
|
|
La riga di comando di WeeChat (nella parte inferiore della finestra) consente di |
|
|
inserire i comandi o di inviare del testo sul buffer. |
|
|
|
|
|
[[command_line_syntax]] |
|
|
==== Sintassi |
|
|
|
|
|
I comandi iniziano con il carattere "/", seguito dal nome del comando. Ad esempio, |
|
|
per consultare un elenco di opzioni: |
|
|
|
|
|
---- |
|
|
/set |
|
|
---- |
|
|
|
|
|
Il testo inviato ad un buffer è qualsiasi testo che non comincia con |
|
|
il carattere "/". Per esempio, per inviare il testo _ciao_ sul buffer |
|
|
attivo: |
|
|
|
|
|
---- |
|
|
ciao |
|
|
---- |
|
|
|
|
|
Ad ogni modo, è possibile iniziare con il carattere "/", aggiungendone |
|
|
poi un altro. Ad esempio, per inviare il testo `/set` sul buffer attivo: |
|
|
|
|
|
---- |
|
|
//set |
|
|
---- |
|
|
|
|
|
[[command_line_colors]] |
|
|
==== Codici colore |
|
|
|
|
|
Per alcuni plugin come IRC, è possibile usare codici colori ed attributi, |
|
|
come segue (digitare kbd:[Ctrl+c] poi la lettera che segue, con il valore |
|
|
opzionale): |
|
|
|
|
|
[width="100%",cols="1,2",options="header"] |
|
|
|=== |
|
|
// TRANSLATIION MISSING |
|
|
| Key | Description |
|
|
| kbd:[Ctrl+c], kbd:[b] | testo in grassetto. |
|
|
| kbd:[Ctrl+c], kbd:[c], |
|
|
kbd:[xx] | colore del testo `xx` (consultare la lista di colori che segue). |
|
|
| kbd:[Ctrl+c], kbd:[c], |
|
|
kbd:[xx], kbd:[,], |
|
|
kbd:[yy] | colore del testo `xx` e di sfondo `yy` (consultare la lista di colori che segue). |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Ctrl+c], kbd:[i] | italic text. |
|
|
| kbd:[Ctrl+c], kbd:[o] | disabilita colori ed attributi. |
|
|
| kbd:[Ctrl+c], kbd:[v] | video inverso (inverte il colore del testo con quello di sfondo). |
|
|
| kbd:[Ctrl+c], kbd:[_] | testo sottolineato. |
|
|
|=== |
|
|
|
|
|
[NOTE] |
|
|
Lo stesso codice (senza numero per kbd:[Ctrl+c], kbd:[c]) può essere usato per |
|
|
terminare l'attributo. |
|
|
|
|
|
I codici colore per kbd:[Ctrl+c], kbd:[c] sono: |
|
|
|
|
|
include::includes/autogen_user_irc_colors.it.adoc[tag=irc_colors] |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[NOTE] |
|
|
To show all available colors in your terminal, you can do `/color` then |
|
|
kbd:[Alt+c] in WeeChat or run this command in terminal: `weechat --colors`. |
|
|
|
|
|
Esempio: visualizza "ciao Alice!" con "ciao" scritto in blu chiaro grassetto |
|
|
e "Alice" in rosso chiaro sottolineato: |
|
|
|
|
|
---- |
|
|
^Cc12^Cbciao ^Cb^Cc04^C_Alice^C_^Cc ! |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Keys: |
|
|
|
|
|
kbd:[Ctrl+c] kbd:[c] kbd:[1] kbd:[2] kbd:[Ctrl+c] kbd:[b] + |
|
|
kbd:[c] kbd:[i] kbd:[a] kbd:[o] kbd:[Space] + |
|
|
kbd:[Ctrl+c] kbd:[b] kbd:[Ctrl+c] kbd:[c] kbd:[0] kbd:[4] kbd:[Ctrl+c] kbd:[pass:[_]] + |
|
|
kbd:[A] kbd:[l] kbd:[i] kbd:[c] kbd:[e] + |
|
|
kbd:[Ctrl+c] kbd:[pass:[_]] kbd:[Ctrl+c] kbd:[c] + |
|
|
kbd:[!] |
|
|
|
|
|
[NOTE] |
|
|
Nel plugin irc, si possono riorganizzare i colori usando l'opzione |
|
|
<<option_irc.color.mirc_remap,irc.color.mirc_remap>>. |
|
|
|
|
|
[[colors]] |
|
|
=== Colori |
|
|
|
|
|
WeeChat può usare fino a 32767 coppie di colore per visualizzare il testo nelle barre e |
|
|
nell'area di chat(il terminale deve supportare 256 colori per essere utilizzati in WeeChat). |
|
|
|
|
|
In base al valore della variabile di ambiente _TERM_, potrebbero verificarsi i |
|
|
seguenti limiti per i colori in WeeChat: |
|
|
|
|
|
[width="75%",cols="8,>3,>3",options="header"] |
|
|
|=== |
|
|
| $TERM | Colori | Coppie |
|
|
| "rxvt-unicode", "xterm", ... | 88 | 32767 |
|
|
| "rxvt-256color", "xterm-256color", ... | 256 | 32767 |
|
|
| "screen" | 8 | 64 |
|
|
| "screen-256color" | 256 | 32767 |
|
|
| "tmux" | 8 | 64 |
|
|
| "tmux-256color" | 256 | 32767 |
|
|
|=== |
|
|
|
|
|
È possibile eseguire `weechat --colors` o utilizzare il comando `/color` in |
|
|
WeeChat per visualizzare i limiti del proprio ambiente. |
|
|
|
|
|
Alcuni valori raccomandati per _TERM_ se si desiderano 256 colori: |
|
|
|
|
|
* con screen: _screen-256color_ |
|
|
// TRANSLATION MISSING |
|
|
* under tmux: _screen-256color_ or _tmux-256color_ |
|
|
// TRANSLATION MISSING |
|
|
* outside screen/tmux: _xterm-256color_, _rxvt-256color_, _putty-256color_, ... |
|
|
|
|
|
[NOTE] |
|
|
Potrebbe essere necessario installare il pacchetto "ncurses-term" per usare |
|
|
questi valori nella variabile _TERM_. |
|
|
|
|
|
Se si sta utilizzando screen, è possibile aggiungere questa riga al |
|
|
proprio _~/.screenrc_: |
|
|
|
|
|
---- |
|
|
term screen-256color |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
If your _TERM_ variable has wrong value and that WeeChat is already running, |
|
|
you can change it with these two commands: |
|
|
|
|
|
---- |
|
|
/set env TERM screen-256color |
|
|
/upgrade |
|
|
---- |
|
|
|
|
|
[[colors_basic]] |
|
|
==== Colori base |
|
|
|
|
|
I colori base in WeeChat sono: |
|
|
|
|
|
[width="75%",cols="1m,4",options="header"] |
|
|
|=== |
|
|
| Nome | Colore |
|
|
| default | Colore predefinito del terminale (trasparente per lo sfondo) |
|
|
| black | Nero |
|
|
| darkgray | Grigio scuro |
|
|
| red | Rosso scuro |
|
|
| lightred | Rosso chiaro |
|
|
| green | Verde scuro |
|
|
| lightgreen | Verde chiaro |
|
|
| brown | Marrone |
|
|
| yellow | Giallo |
|
|
| blue | Blu scuro |
|
|
| lightblue | Blu chiaro |
|
|
| magenta | Rosa scuro |
|
|
| lightmagenta | Rosa chiaro |
|
|
| cyan | Azzurro scuro |
|
|
| lightcyan | Azzurro chiaro |
|
|
| gray | Grigio |
|
|
| white | Bianco |
|
|
|=== |
|
|
|
|
|
[[colors_extended]] |
|
|
==== Colori estesi |
|
|
|
|
|
WeeChat alloca dinamicamente le coppie colore quando vengono usati i colori |
|
|
sullo schermo (per mostrare buffer e barre). |
|
|
|
|
|
In aggiunta ai colori di base, si può usare un numero per il colore compreso |
|
|
tra 1 e il limite del proprio terminale. |
|
|
|
|
|
Il comando `/color` mostra i colori attivi ed i limiti. Com kbd:[Alt+c] si può |
|
|
passare temporaneamente ai colori del terminale per sceglierne uno. |
|
|
|
|
|
Se ad esempio si desidera visualizzare l'ora in arancione nel buffer: |
|
|
|
|
|
---- |
|
|
/set weechat.color.chat_time 214 |
|
|
---- |
|
|
|
|
|
O se si desidera uno sfondo verde scuro per la barra di stato: |
|
|
|
|
|
---- |
|
|
/set weechat.bar.status.color_bg 22 |
|
|
---- |
|
|
|
|
|
[[colors_aliases]] |
|
|
==== Alias |
|
|
|
|
|
Si possono aggiungere degli alias ai colori con il comando `/color alias` e |
|
|
usarli in ogni opzione relativa al colore. |
|
|
|
|
|
Ad esempio: |
|
|
|
|
|
---- |
|
|
/color alias 214 orange |
|
|
/set weechat.color.chat_delimiters orange |
|
|
---- |
|
|
|
|
|
[[colors_attributes]] |
|
|
==== Attributi |
|
|
|
|
|
Esistono alcuni attributi per i colori. Uno o più attributi vanno aggiunti prima |
|
|
del nome o del numero del colore: |
|
|
|
|
|
* `+*+` : testo in grassetto |
|
|
* `+!+` : video inverso |
|
|
* `+/+` : testo in corsivo |
|
|
* `+_+` : testo sottolineato |
|
|
* `+|+` : mantiene attributi: non ripristina grassetto/inverso/sottolineato |
|
|
al cambio di colore |
|
|
|
|
|
Ad esempio se si vuole il proprio nick bianco e sottolineato: |
|
|
|
|
|
---- |
|
|
/set weechat.color.chat_nick_self _white |
|
|
---- |
|
|
|
|
|
O se si desidera l'ora nella barra di stato arancione sottolineata |
|
|
e in grassetto: |
|
|
|
|
|
---- |
|
|
/set weechat.color.status_time *_214 |
|
|
---- |
|
|
|
|
|
Per usare un attributo con il colore predefinito del terminale (-1), bisogna |
|
|
usare un numero maggiore dell'ultimo colore del terminale, ad esempio il |
|
|
numero massimo in WeeChat: 99999. |
|
|
|
|
|
Esempio di grassetto con il colore di primo piano del terminale: |
|
|
|
|
|
---- |
|
|
/set weechat.color.status_time *99999 |
|
|
---- |
|
|
|
|
|
[[buffers_and_windows]] |
|
|
=== Buffer e finestre |
|
|
|
|
|
Un _buffer_ è composto da un numero, un nome, delle righe visualizzate (e |
|
|
altri dati). |
|
|
|
|
|
Esempi di buffer: |
|
|
|
|
|
* buffer core (creato by WeeChat all'avvio, non può essere chiuso) |
|
|
* server irc (mostra i messaggi dal server) |
|
|
* canale irc |
|
|
* query irc |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Una _finestra_ (o window) è un'area dello schermo in cui viene visualizzato |
|
|
un buffer. È possibile dividere lo schermo in più finestre (examples |
|
|
<<window_split_examples,below>>, see the <<command_weechat_window,/window command>> |
|
|
for details). |
|
|
|
|
|
Ogni finestra visualizza un buffer. Un buffer può essere nascosto (non visualizzato |
|
|
da una finestra) o visualizzato da una o più finestre. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Screen layouts and the association between windows and buffers can be |
|
|
<<command_weechat_layout,saved and restored>>. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[window_split_examples]] |
|
|
==== Examples |
|
|
|
|
|
Esempio di split orizzontale (`/window splith`): |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
.... |
|
|
▼ window #2 (buffer #4) |
|
|
┌──────────────────────────────────────────────────────────────────────────────────────┐ |
|
|
│1.libera │Welcome to #def │ |
|
|
│ weechat│12:55:12 Max | hi │@Flashy│ |
|
|
│2. #test│12:55:20 @Flashy | hi Max! │Max │ |
|
|
│3. #abc │ │ │ |
|
|
│4. #def │ │ │ |
|
|
│5. #ghi │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │[12:55] [5] [irc/libera] 4:#def(+n){2} │ |
|
|
│ │[@Flashy] │ |
|
|
│ │────────────────────────────────────────────────────────────────────────────│ |
|
|
│ │Welcome to #abc │ |
|
|
│ │12:54:15 peter | hey! │@Flashy│ |
|
|
│ │12:55:01 @joe | hello │@joe │ |
|
|
│ │ │+weebot│ |
|
|
│ │ │peter │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │[12:55] [5] [irc/libera] 3:#abc(+n){4} │ |
|
|
│ │[@Flashy] hi peter!█ │ |
|
|
└──────────────────────────────────────────────────────────────────────────────────────┘ |
|
|
▲ window #1 (buffer #3) |
|
|
.... |
|
|
|
|
|
Esempio di split verticale (`/window splitv`): |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
.... |
|
|
┌──────────────────────────────────────────────────────────────────────────────────────┐ |
|
|
│1.libera │Welcome to #abc │Welcome to #def │ |
|
|
│ weechat│12:54:15 peter | hey! │@Flashy│12:55:12 Max | hi │@Flashy│ |
|
|
│2. #test│12:55:01 @joe | hello │@joe │12:55:20 @Flashy | hi Max! │Max │ |
|
|
│3. #abc │ │+weebot│ │ │ |
|
|
│4. #def │ │peter │ │ │ |
|
|
│5. #ghi │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │[12:55] [5] [irc/libera] 3:#abc(+n) │[12:55] [5] [irc/libera] 4:#def(+n) │ |
|
|
│ │[@Flashy] hi peter!█ │[@Flashy] │ |
|
|
└──────────────────────────────────────────────────────────────────────────────────────┘ |
|
|
▲ window #1 (buffer #3) ▲ window #2 (buffer #4) |
|
|
.... |
|
|
|
|
|
Esempio di split orizzontale + verticale: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
.... |
|
|
▼ window #3 (buffer #5) |
|
|
┌──────────────────────────────────────────────────────────────────────────────────────┐ |
|
|
│1.libera │Welcome to #abc │Welcome to #ghi │ |
|
|
│ weechat│12:54:15 peter | hey! │@Flashy│12:55:42 @Flashy | hi │@Flashy│ |
|
|
│2. #test│12:55:01 @joe | hello │@joe │12:55:56 alex | hi Flashy │alex │ |
|
|
│3. #abc │ │+weebot│ │ │ |
|
|
│4. #def │ │peter │ │ │ |
|
|
│5. #ghi │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │[12:55] [5] [irc/libera] 5:#ghi(+n) │ |
|
|
│ │ │ │[@Flashy] │ |
|
|
│ │ │ │──────────────────────────────────────│ |
|
|
│ │ │ │Welcome to #def │ |
|
|
│ │ │ │12:55:12 Max | hi │@Flashy│ |
|
|
│ │ │ │12:55:20 @Flashy | hi Max! │Max │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │ │ │ │ │ |
|
|
│ │[12:55] [5] [irc/libera] 3:#abc(+n) │[12:55] [5] [irc/libera] 4:#def(+n) │ |
|
|
│ │[@Flashy] hi peter!█ │[@Flashy] │ |
|
|
└──────────────────────────────────────────────────────────────────────────────────────┘ |
|
|
▲ window #1 (buffer #3) ▲ window #2 (buffer #4) |
|
|
.... |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[buffers]] |
|
|
=== Buffers |
|
|
|
|
|
[[lines_format]] |
|
|
==== Format of lines |
|
|
|
|
|
Lines displayed in formatted buffers have following fields: |
|
|
|
|
|
[width="100%",cols="2,2,10",options="header"] |
|
|
|=== |
|
|
| Field | Displayed | Description |
|
|
| date/time (message) | Yes | Date/time of message (may be past). |
|
|
| date/time (print) | No | Date/time when WeeChat prints the message. |
|
|
| prefix | Yes | Prefix of message, commonly a nick. |
|
|
| message | Yes | The message itself. |
|
|
| displayed | No | Boolean: true if line is displayed, false if line is filtered with command <<command_weechat_filter,/filter>>. |
|
|
| highlight | No | Boolean: true if line has a highlight, false otherwise. |
|
|
| tags | With `/debug tags` | Tags associated with the line (see <<lines_tags,lines tags>>). |
|
|
|=== |
|
|
|
|
|
The display of lines can be customized with many look options |
|
|
(_pass:[weechat.look.*]_) and color options (_pass:[weechat.color.chat_*]_). |
|
|
|
|
|
[[lines_tags]] |
|
|
==== Lines tags |
|
|
|
|
|
WeeChat uses tags in lines for different purposes: |
|
|
|
|
|
* highlight |
|
|
* notify level |
|
|
* logging |
|
|
* use of command <<command_weechat_filter,/filter>> |
|
|
|
|
|
Tags can be displayed with the command `/debug tags` (same command to hide them). |
|
|
|
|
|
Tag usati di frequente (elenco non esaustivo): |
|
|
|
|
|
[width="100%",cols="1m,4",options="header"] |
|
|
|=== |
|
|
| Tag | Descrizione |
|
|
| no_filter | La riga non può essere filtrata. |
|
|
| no_highlight | Evidenziazione non possibile sulla riga. |
|
|
| no_log | La riga non viene scritta nel file di log. |
|
|
| log0 … log9 | Livello di log per la riga (consultare `/help logger`). |
|
|
// TRANSLATION MISSING |
|
|
| notify_none | The line must not be added to hotlist. ^(1)^ |
|
|
// TRANSLATION MISSING |
|
|
| notify_message | The line is a user message. ^(1)^ |
|
|
// TRANSLATION MISSING |
|
|
| notify_private | The line is a private message. ^(1)^ |
|
|
// TRANSLATION MISSING |
|
|
| notify_highlight | The line is a message with highlight. ^(1)^ |
|
|
// TRANSLATION MISSING |
|
|
| self_msg | Self message. |
|
|
| nick_xxx | Il messaggio viene dal nick "xxx". |
|
|
| prefix_nick_ccc | Il prefisso è un nick con il colore "ccc". |
|
|
// TRANSLATION MISSING |
|
|
| host_xxx | Username and host in message. |
|
|
| irc_xxx | Messaggio IRC "xxx" (può essere un comando o un numero di 3 cifre). |
|
|
| irc_numeric | Messaggio IRC numerico. |
|
|
| irc_error | Errore dal server IRC. |
|
|
| irc_action | Azione da un nic (comando `/me`). |
|
|
| irc_ctcp | Messaggio CTCP. |
|
|
| irc_ctcp_reply | Risposta ad un messaggio CTCP. |
|
|
| irc_smart_filter | Messaggio IRC filtrabile tramite lo "smart filter" (filtro intelligente). |
|
|
| away_info | Messagio con informazioni sull'assenza. |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[NOTE] |
|
|
^(1)^ When no tag "notify_xxx" is present, the default level is "low". If a tag |
|
|
"notify_xxx" is present, the real notify level can be different, for example |
|
|
if a max hotlist level is used for a nick, the notify level can be lower than |
|
|
the value in the tag. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[local_variables]] |
|
|
==== Local variables |
|
|
|
|
|
Local variables can be defined in all buffers. |
|
|
|
|
|
A local variable has: |
|
|
|
|
|
* a name (string) |
|
|
* a value (string, can be empty). |
|
|
|
|
|
Local variables can be set by WeeChat, plugins, scripts, or manually on the |
|
|
command line in the buffer. |
|
|
|
|
|
For example to add the local variable "completion_default_template": |
|
|
|
|
|
---- |
|
|
/buffer setvar completion_default_template %(my_completion) |
|
|
---- |
|
|
|
|
|
To list local variables in the current buffer: |
|
|
|
|
|
---- |
|
|
/buffer listvar |
|
|
---- |
|
|
|
|
|
To remove the local variable "completion_default_template": |
|
|
|
|
|
---- |
|
|
/buffer delvar completion_default_template |
|
|
---- |
|
|
|
|
|
By default WeeChat and its default plugins interpret these variables: |
|
|
|
|
|
[width="100%",cols="^2m,2,5",options="header"] |
|
|
|=== |
|
|
| Name | Value | Description |
|
|
|
|
|
| away | |
|
|
any string | |
|
|
Away message on the server, set by irc plugin. |
|
|
|
|
|
| channel | |
|
|
any string | |
|
|
Channel name, set by irc/xfer plugins and debug buffer of relay/trigger plugins. |
|
|
|
|
|
| charset_modifier | |
|
|
any string | |
|
|
Charset modifier for the server buffer, set by irc plugin. |
|
|
|
|
|
| completion_default_template | |
|
|
any string | |
|
|
Default completion template for the buffer, overriding the option |
|
|
`weechat.completion.default_template`. |
|
|
|
|
|
| filter | |
|
|
any string | |
|
|
Filter defined on some buffers like `/fset`, `/server raw` (irc) and `/script`. |
|
|
|
|
|
| host | |
|
|
any string | |
|
|
Self host (if known), set by irc plugin. |
|
|
|
|
|
| lag | |
|
|
any string | |
|
|
Lag on the server, set by irc plugin. |
|
|
|
|
|
| name | |
|
|
any string | |
|
|
Buffer name (be careful, this is not the full name and this name is not |
|
|
enough to identify or search a buffer). |
|
|
|
|
|
| nick | |
|
|
any string | |
|
|
Self nick, set by irc and xfer plugins. |
|
|
|
|
|
| no_log | |
|
|
`1` (or any non-empty string) | |
|
|
If set, the logger plugin does not log anything for the buffer. |
|
|
|
|
|
| plugin | |
|
|
any string | |
|
|
Name of plugin which created the buffer (`core` for WeeChat buffers). |
|
|
|
|
|
| script_close_cb | |
|
|
any string | |
|
|
Close callback defined by a script for a buffer. |
|
|
|
|
|
| script_close_cb_data | |
|
|
any string | |
|
|
Data for close callback defined by a script for a buffer. |
|
|
|
|
|
| script_input_cb | |
|
|
any string | |
|
|
Input callback defined by a script for a buffer. |
|
|
|
|
|
| script_input_cb_data | |
|
|
any string | |
|
|
Data for input callback defined by a script for a buffer. |
|
|
|
|
|
| script_name | |
|
|
any string | |
|
|
Name of the script which created the buffer. |
|
|
|
|
|
| server | |
|
|
any string | |
|
|
Server name, set by irc plugin and debug buffer of relay/trigger plugins. |
|
|
|
|
|
| spell_suggest | |
|
|
any string | |
|
|
Misspelled word and suggestions (format: "misspelled:suggestions"), set by |
|
|
spell plugin. |
|
|
|
|
|
| trigger_filter | |
|
|
any string | |
|
|
Trigger filter, set by trigger plugin. |
|
|
|
|
|
| type | |
|
|
any string, for example: |
|
|
`channel`, |
|
|
`debug`, |
|
|
`exec`, |
|
|
`option`, |
|
|
`private`, |
|
|
`relay`, |
|
|
`script`, |
|
|
`server`, |
|
|
`user`, |
|
|
`xfer` | |
|
|
Type of buffer, set by WeeChat and many plugins. |
|
|
|
|
|
|=== |
|
|
|
|
|
[NOTE] |
|
|
External plugins and scripts can define and use other local variables. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[bars]] |
|
|
=== Bars |
|
|
|
|
|
A _bar_ is an area beside the chat that can contain any type of text. |
|
|
|
|
|
The bar options can be set with options `weechat.bar.name.option` where `name` |
|
|
is the name of the bar and `option` the option for this bar. |
|
|
|
|
|
List of bar options: |
|
|
|
|
|
[width="100%",cols="2m,2,10",options="header"] |
|
|
|=== |
|
|
| Option | Values | Description |
|
|
|
|
|
| type | `root`, `window` | |
|
|
// TRANSLATION MISSING |
|
|
A bar with type `root` is displayed exactly one time on screen, outside all |
|
|
windows. The default bar _buflist_ has type `root`. + |
|
|
A bar with type `window` is displayed in each window, for example if you |
|
|
split one time the screen (with `/window splith` or `/window splitv`), you |
|
|
will have one bar in each window. The default bars _title_, _status_, |
|
|
_input_ and _nicklist_ have type `window`. |
|
|
|
|
|
| position | `top`, `bottom`, `left`, `right` | |
|
|
Position of the bar: above/below chat, on the left/right. |
|
|
|
|
|
| priority | integer ≥ 0 | |
|
|
Priority for display of bar: this is used for ordering the bars on screen when |
|
|
many bars have same type and position. + |
|
|
The bars are displayed from the edge of the screen to the center. A higher |
|
|
priority will display bar at the beginning, so closer to the edge. + |
|
|
Example: _input_ bar has priority 1000, so it is displayed before the _status_ |
|
|
bar, which has priority 500. |
|
|
|
|
|
| size | integer ≥ 0 | |
|
|
The size of the bar: number of columns for position left/right, number |
|
|
of lines for position top/bottom. A size of `0` means automatic, so the size |
|
|
will be computed according to content displayed in bar. |
|
|
|
|
|
| size_max | integer ≥ 0 | |
|
|
The maximum size for a bar, `0` = no limit (this option is used only if |
|
|
`size` = `0`). |
|
|
|
|
|
| color_bg | color | |
|
|
The default background color for the bar. |
|
|
|
|
|
| color_fg | color | |
|
|
The default text color for the bar. |
|
|
|
|
|
| color_delim | color | |
|
|
The color for delimiters in bar. |
|
|
|
|
|
| hidden | `on`, `off` | |
|
|
When option is `on`, the bar is hidden. + |
|
|
Note: instead of changing this option, the command `/bar` is preferred, for |
|
|
example: `/bar toggle nicklist` (see command <<command_weechat_bar,/bar>>). |
|
|
|
|
|
| separator | `on`, `off` | |
|
|
When option is `on`, a separator (line) is displayed between this bar and |
|
|
other bars (or chat). |
|
|
|
|
|
| items | string | |
|
|
A list of _items_ (see <<bar_items,items>> for more info). |
|
|
|
|
|
| filling_left_right | `+horizontal+`, `+vertical+`, `+columns_horizontal+`, `+columns_vertical+` | |
|
|
Type of filling for a bar which has position `left` or `right` (see |
|
|
<<bar_filling,filling>> for more info). |
|
|
|
|
|
| filling_top_bottom | `+horizontal+`, `+vertical+`, `+columns_horizontal+`, `+columns_vertical+` | |
|
|
Type of filling for a bar which has position `top` or `bottom` (see |
|
|
<<bar_filling,filling>> for more info). |
|
|
|
|
|
| conditions | string | |
|
|
The conditions to display the bar (see <<bar_conditions,conditions>> for more |
|
|
info). |
|
|
|=== |
|
|
|
|
|
[[bar_items]] |
|
|
==== Items |
|
|
|
|
|
The option _items_ is a string with a list of bar items, separated by a comma |
|
|
(space between items on screen) or `+++` (glued items). |
|
|
|
|
|
The list of bar items is displayed with command `/bar listitems`. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Before or after item name, you can use chars (that are not alphanumeric, `+-+` |
|
|
or `+_+`). They will be displayed before/after item with the delimiters color |
|
|
defined in bar (option _color_delim_). |
|
|
|
|
|
Example of bar with items "[time],buffer_number+:+buffer_plugin+.+buffer_name": |
|
|
|
|
|
.... |
|
|
┌───────────────────────────────────────────────────────────────────────────┐ |
|
|
│[12:55] 3:irc/libera.#weechat │ |
|
|
└───────────────────────────────────────────────────────────────────────────┘ |
|
|
.... |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
A special syntax can be used to force the buffer used when displaying the bar |
|
|
item: "@buffer:item" (where "buffer" is the full name of buffer and "item" is |
|
|
the name of a bar item). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
This is useful in root bars, to display item for a specific buffer which is |
|
|
not displayed in the current window (or even not displayed at all). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Example: nicklist of bitlbee in a root bar (if the bar is called |
|
|
_bitlist_ and if bitlbee server is called _bitlbee_): |
|
|
|
|
|
---- |
|
|
/set weechat.bar.bitlist.items "@irc.bitlbee.&bitlbee:buffer_nicklist" |
|
|
---- |
|
|
|
|
|
[[bar_filling]] |
|
|
==== Filling |
|
|
|
|
|
There are four types of filling: |
|
|
|
|
|
* `+horizontal+`: the items are displayed horizontally, from left to right. If |
|
|
there are new lines in items, a space is used to separate lines. |
|
|
* `+vertical+`: the items are displayed from top to bottom. If there are new |
|
|
lines in items, a new line is used to separate lines. |
|
|
* `+columns_horizontal+`: items are displayed using columns, where text is |
|
|
aligned on the left. The first item is on top left, the second is on same |
|
|
line, on the right. |
|
|
* `+columns_vertical+`: items are displayed using columns, where text is aligned |
|
|
on the left. The first item is on top left, the second is one line below. |
|
|
|
|
|
Default bars _title_, _status_ and _input_ have _horizontal_ filling, and |
|
|
default bar _nicklist_ has _vertical_ filling. |
|
|
|
|
|
Some examples of filling for bar _nicklist_: |
|
|
|
|
|
.... |
|
|
┌───────────────────────────────────────────────────────────────────────┐ |
|
|
│Welcome to #test, this is a test channel │ |
|
|
│12:54:15 peter | hey! │@carl │ |
|
|
│12:55:01 +Max | hello │@jessika│ |
|
|
│ │@maddy │ |
|
|
│ │%Diego │ |
|
|
│ │%Melody │ |
|
|
│ │+Max │ |
|
|
│ │ celia │ |
|
|
│ │ Eva │ |
|
|
│ │ freddy │ |
|
|
│ │ Harold^│ |
|
|
│ │ henry4 │ |
|
|
│ │ jimmy17│ |
|
|
│ │ jodie ▼│ |
|
|
│[12:55] [6] [irc/libera] 3:#test(+n){24} │ |
|
|
│[@carl] █ │ |
|
|
└───────────────────────────────────────────────────────────────────────┘ |
|
|
filling_left_right = vertical ▲ |
|
|
|
|
|
┌───────────────────────────────────────────────────────────────────────┐ |
|
|
│Welcome to #test, this is a test channel │ |
|
|
│12:54:15 peter | hey! │@carl lee │ |
|
|
│12:55:01 +Max | hello │@jessika louise │ |
|
|
│ │@maddy mario │ |
|
|
│ │%Diego mark │ |
|
|
│ │%Melody peter │ |
|
|
│ │+Max Rachel │ |
|
|
│ │ celia richard│ |
|
|
│ │ Eva sheryl │ |
|
|
│ │ freddy Vince │ |
|
|
│ │ Harold^ warren │ |
|
|
│ │ henry4 zack │ |
|
|
│ │ jimmy17 │ |
|
|
│ │ jodie │ |
|
|
│[12:55] [6] [irc/libera] 3:#test(+n){24} │ |
|
|
│[@carl] █ │ |
|
|
└───────────────────────────────────────────────────────────────────────┘ |
|
|
filling_left_right = columns_vertical ▲ |
|
|
|
|
|
┌───────────────────────────────────────────────────────────────────────┐ |
|
|
│@carl %Diego celia Harold^ jodie mario Rachel Vince │ |
|
|
│@jessika %Melody Eva henry4 lee mark richard warren │ |
|
|
│@maddy +Max freddy jimmy17 louise peter sheryl zack │ |
|
|
│───────────────────────────────────────────────────────────────────────│ |
|
|
│ │ |
|
|
filling_top_bottom = columns_vertical ▲ |
|
|
|
|
|
┌───────────────────────────────────────────────────────────────────────┐ |
|
|
│@carl @jessika @maddy %Diego %Melody +Max celia Eva │ |
|
|
│ freddy Harold^ henry4 jimmy17 jodie lee louise mario │ |
|
|
│ mark peter Rachel richard sheryl Vince warren zack │ |
|
|
│───────────────────────────────────────────────────────────────────────│ |
|
|
│ │ |
|
|
filling_top_bottom = columns_horizontal ▲ |
|
|
.... |
|
|
|
|
|
[[bar_conditions]] |
|
|
==== Conditions |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
The option _conditions_ is a string which is evaluated to know if the bar |
|
|
must be displayed or not. |
|
|
|
|
|
The string can be: |
|
|
|
|
|
* _active_: the window must be active |
|
|
* _inactive_: the window must be inactive |
|
|
* _nicklist_: the buffer displayed in window must have a nicklist |
|
|
* an expression: it is evaluated as boolean (see command |
|
|
<<command_weechat_eval,/eval>>) |
|
|
|
|
|
For the expression, following variables are available: |
|
|
|
|
|
* `+${active}+`: true if window is active |
|
|
* `+${inactive}+`: true if window is inactive |
|
|
* `+${nicklist}+`: true if buffer displayed in window has a nicklist |
|
|
|
|
|
Following pointers are available: |
|
|
|
|
|
* `+${window}+`: the window where condition is evaluated |
|
|
* `+${buffer}+`: the buffer of window where condition is evaluated |
|
|
|
|
|
Example to display nicklist bar in all buffers with a nicklist, and only if |
|
|
width of terminal is > 100: |
|
|
|
|
|
---- |
|
|
/set weechat.bar.nicklist.conditions "${nicklist} && ${info:term_width} > 100" |
|
|
---- |
|
|
|
|
|
Same condition, but always display nicklist on buffer _&bitlbee_ |
|
|
(even if terminal is small): |
|
|
|
|
|
---- |
|
|
/set weechat.bar.nicklist.conditions "${nicklist} && (${info:term_width} > 100 || ${buffer.full_name} == irc.bitlbee.&bitlbee)" |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[bare_display]] |
|
|
=== Bare display |
|
|
|
|
|
A special display, called "bare display" can be used for easy click on long URLs |
|
|
and selection of text (using the mouse). |
|
|
|
|
|
The bare display has following features: |
|
|
|
|
|
* it displays only the content of current buffer: no window split neither bars |
|
|
(no title, nicklist, status, input, ...) |
|
|
* the WeeChat mouse support is disabled (if it was enabled): you can use your |
|
|
mouse like you do in the terminal to click on URLs and select text |
|
|
* ncurses is not used, therefore URLs are not cut at the end of lines. |
|
|
|
|
|
The default key to enable bare display is kbd:[Alt+l] (`L`), and same key to exit |
|
|
(or by default anything changing the input will exit the bare display, see option |
|
|
<<option_weechat.look.bare_display_exit_on_input,weechat.look.bare_display_exit_on_input>>). |
|
|
|
|
|
The time format can be customized with the option |
|
|
<<option_weechat.look.bare_display_time_format,weechat.look.bare_display_time_format>>. |
|
|
|
|
|
The bare display can be enabled for a specific delay using the command |
|
|
<<command_weechat_window,/window>>. |
|
|
|
|
|
If WeeChat looks like that: |
|
|
|
|
|
.... |
|
|
┌──────────────────────────────────────────────────────────────────────────────────────┐ |
|
|
│1.libera │Welcome to #abc │ |
|
|
│ weechat│12:52:27 --> | Flashy (flashcode@weechat.org) has joined #abc │@Flashy│ |
|
|
│2. #test│12:52:27 -- | Nicks #abc: [@Flashy @joe +weebot peter] │@joe │ |
|
|
│3. #abc │12:52:27 -- | Channel #abc: 4 nicks (2 ops, 1 voice, 1 normal) │+weebot│ |
|
|
│4. #def │12:52:27 -- | Channel created on Tue Jan 27 06:30:17 2009 │peter │ |
|
|
│5. #ghi │12:54:15 peter | hey! │ │ |
|
|
│ │12:55:01 @joe | peter: hook_process: https://weechat.org/files/doc │ │ |
|
|
│ │ | /devel/weechat_plugin_api.en.html#_weechat_hook_pr │ │ |
|
|
│ │ | ocess │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │ │ │ |
|
|
│ │[12:55] [5] [irc/libera] 3:#abc(+n){4} │ |
|
|
│ │[@Flashy(i)] hi peter!█ │ |
|
|
└──────────────────────────────────────────────────────────────────────────────────────┘ |
|
|
.... |
|
|
|
|
|
The screen will look like that in bare display: |
|
|
|
|
|
.... |
|
|
┌──────────────────────────────────────────────────────────────────────────────────────┐ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│ │ |
|
|
│12:52 --> Flashy (flashcode@weechat.org) has joined #abc │ |
|
|
│12:52 -- Nicks #abc: [@Flashy @joe +weebot peter] │ |
|
|
│12:52 -- Channel #abc: 4 nicks (2 ops, 1 voice, 1 normal) │ |
|
|
│12:52 -- Channel created on Tue Jan 27 06:30:17 2009 │ |
|
|
│12:54 <peter> hey! │ |
|
|
│12:55 <@joe> peter: hook_process: https://weechat.org/files/doc/devel/weechat_plugin_a│ |
|
|
│pi.en.html#_weechat_hook_process │ |
|
|
└──────────────────────────────────────────────────────────────────────────────────────┘ |
|
|
.... |
|
|
|
|
|
So you can click the URL from _joe_ without any problem in your terminal (of |
|
|
course this supposes that your terminal supports click on URLs). |
|
|
|
|
|
[[notify_levels]] |
|
|
=== Livelli di notifica |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[setup_notify_levels]] |
|
|
==== Setup notify levels |
|
|
|
|
|
Sono possibili quattro livelli per i messaggi mostrati nei buffer, dal più basso |
|
|
al più alto: |
|
|
|
|
|
* _low_: messaggio di bassa importanza (ad esempio entrata/uscita/disconnessione |
|
|
di irc) |
|
|
* _message_: messaggio da un utente |
|
|
* _private_: messaggio in un buffer privato |
|
|
* _highlight_: messaggio con notifica |
|
|
|
|
|
Ogni buffer ha un livello di notifica, che viene usato per decidere quale |
|
|
messaggio il buffer andrà ad aggiungere nella hotlist. |
|
|
|
|
|
Il livello predefinito di notifica può essere impostato usando l'opzione |
|
|
<<option_weechat.look.buffer_notify_default,weechat.look.buffer_notify_default>>, |
|
|
il valore predefinito è _all_. |
|
|
|
|
|
[width="75%",cols="2m,7",options="header"] |
|
|
|=== |
|
|
| Livello di notifica | Livello del messaggio aggiunto alla hotlist |
|
|
| none | (nessuno) |
|
|
| highlight | _highlight_ + _private_ |
|
|
| message | _highlight_ + _private_ + _message_ |
|
|
| all | _highlight_ + _private_ + _message_ + _low_ |
|
|
|=== |
|
|
|
|
|
Il livello di notifica può essere definito per un set di buffer, ad esempio |
|
|
tutti i buffer per il server irc "libera": |
|
|
|
|
|
---- |
|
|
/set weechat.notify.irc.libera message |
|
|
---- |
|
|
|
|
|
Imposta il livello di notifica _highlight_ solo sul canale _#weechat_: |
|
|
|
|
|
---- |
|
|
/set weechat.notify.irc.libera.#weechat highlight |
|
|
---- |
|
|
|
|
|
Il livello di notifica per un buffer può essere impostato con il comando `/buffer`: |
|
|
|
|
|
---- |
|
|
/buffer notify highlight |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[max_hotlist_level_nicks]] |
|
|
==== Max hotlist level for nicks |
|
|
|
|
|
It is possible to set max hotlist level for some nicks, per buffer, or per group |
|
|
of buffers (like IRC servers). |
|
|
|
|
|
The buffer property "hotlist_max_level_nicks" can be set with a list of nicks |
|
|
and for each nick the max hotlist level to trigger, possible levels are: |
|
|
|
|
|
* -1: no hotlist changes for nick |
|
|
* 0: low priority (like join/part messages) |
|
|
* 1: message |
|
|
* 2: private message |
|
|
* 3: highlight (in fact useless, since it's already the default max for all messages) |
|
|
|
|
|
For example to disable highlights from "joe" and "mike" on current buffer: |
|
|
|
|
|
---- |
|
|
/buffer set hotlist_max_level_nicks_add joe:2,mike:2 |
|
|
---- |
|
|
|
|
|
[NOTE] |
|
|
The buffer property "hotlist_max_level_nicks" is not saved in configuration. + |
|
|
You can easily save it with the script _buffer_autoset.py_: you can install it |
|
|
with `+/script install buffer_autoset.py+` and get help with `+/help buffer_autoset+`. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[highlights]] |
|
|
=== Highlights |
|
|
|
|
|
[[highlights_words]] |
|
|
==== Add words to highlight |
|
|
|
|
|
By default, WeeChat highlights messages from other users containing your nick, |
|
|
therefore the highlight depends on the buffer (the nick can be different from |
|
|
one buffer to another). |
|
|
|
|
|
You can add other words to highlight with the option |
|
|
<<option_weechat.look.highlight,weechat.look.highlight>>, for example to |
|
|
highlight your nick and "word1", "word2" and all words beginning with "test": |
|
|
|
|
|
---- |
|
|
/set weechat.look.highlight word1,word2,test* |
|
|
---- |
|
|
|
|
|
If you need a more specific rule for the word, you can use regular expressions |
|
|
with the option <<option_weechat.look.highlight_regex,weechat.look.highlight_regex>>, |
|
|
for example to highlight words "flashcode", "flashcöde" and "flashy": |
|
|
|
|
|
---- |
|
|
/set weechat.look.highlight_regex flashc[oö]de|flashy |
|
|
---- |
|
|
|
|
|
The delimiters around words to highlight can be customized with the option |
|
|
<<option_weechat.look.word_chars_highlight,weechat.look.word_chars_highlight>>. |
|
|
|
|
|
[[highlights_tags]] |
|
|
==== Add tags to highlight |
|
|
|
|
|
Lines displayed can contain "tags", which give some info about the origin of |
|
|
message or the message itself. + |
|
|
You can display tags with the command `/debug tags` (same command to hide them). |
|
|
|
|
|
You can add specific tags to highlight with the option |
|
|
<<option_weechat.look.highlight_tags,weechat.look.highlight_tags>>. |
|
|
Tags are separated by commas, and multiple tags can be separated by `+++` to do |
|
|
a logical "and" between them. |
|
|
|
|
|
For example to highlight all messages from nick "FlashCode" and all notices |
|
|
from nicks beginning with "toto": |
|
|
|
|
|
---- |
|
|
/set weechat.look.highlight_tags "nick_flashcode,irc_notice+nick_toto*" |
|
|
---- |
|
|
|
|
|
[[highlights_regex_buffer]] |
|
|
==== Set extra highlights on buffer |
|
|
|
|
|
You can force highlight using a regular expression with the buffer property |
|
|
"highlight_regex". |
|
|
|
|
|
For example to force the highlight on all messages in the current buffer: |
|
|
|
|
|
---- |
|
|
/buffer set highlight_regex .* |
|
|
---- |
|
|
|
|
|
[NOTE] |
|
|
The buffer property "highlight_regex" is not saved in configuration. + |
|
|
You can easily save it with the script _buffer_autoset.py_: you can install it |
|
|
with `+/script install buffer_autoset.py+` and get help with `+/help buffer_autoset+`. |
|
|
|
|
|
[[key_bindings]] |
|
|
=== Associazione tasti predefinita |
|
|
|
|
|
[[key_bindings_command_line]] |
|
|
==== Tasti per la riga di comando |
|
|
|
|
|
[width="100%",cols="^.^3,.^8,.^5",options="header"] |
|
|
|=== |
|
|
| Tasti | Descrizione | Comando |
|
|
| kbd:[←] + |
|
|
kbd:[Ctrl+b] | Passa al carattere precedente nella riga di comando. | `+/input move_previous_char+` |
|
|
| kbd:[→] + |
|
|
kbd:[Ctrl+f] | Passa al carattere successivo nella riga di comando. | `+/input move_next_char+` |
|
|
| kbd:[Ctrl+←] + |
|
|
kbd:[Alt+b] | Passa alla parola precedente nella riga di comando. | `+/input move_previous_word+` |
|
|
| kbd:[Ctrl+→] + |
|
|
kbd:[Alt+f] | Passa alla parola successiva nella riga di comando. | `+/input move_next_word+` |
|
|
| kbd:[Home] + |
|
|
kbd:[Ctrl+a] | Si sposta all'inizio della riga di comando. | `+/input move_beginning_of_line+` |
|
|
| kbd:[End] + |
|
|
kbd:[Ctrl+e] | Si sposta alla fine della riga di comando. | `+/input move_end_of_line+` |
|
|
| kbd:[Ctrl+c], |
|
|
kbd:[b] | Inserisce il codice per il testo in grassetto. | `+/input insert \x02+` |
|
|
| kbd:[Ctrl+c], |
|
|
kbd:[c] | Inserisce il codice per il testo colorato. | `+/input insert \x03+` |
|
|
| kbd:[Ctrl+c], |
|
|
kbd:[i] | Inserisce il codice per il testo in corsivo. | `+/input insert \x1D+` |
|
|
| kbd:[Ctrl+c], |
|
|
kbd:[o] | Inserisce il codice per il reset dei colori. | `+/input insert \x0F+` |
|
|
| kbd:[Ctrl+c], |
|
|
kbd:[v] | Inserisce il codice per l'inversione dei colori. | `+/input insert \x16+` |
|
|
| kbd:[Ctrl+c], |
|
|
kbd:[_] | Inserisce il codice per il testo sottolineato. | `+/input insert \x1F+` |
|
|
| kbd:[Del] + |
|
|
kbd:[Ctrl+d] | Elimina il carattere successivo nella riga di comando. | `+/input delete_next_char+` |
|
|
| kbd:[Backsp.] + |
|
|
kbd:[Ctrl+h] | Elimina il carattere precedente nella riga di comando. | `+/input delete_previous_char+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Ctrl+k] | Elimina dal cursore fino alla fine della riga di comando (deleted string is copied to the internal clipboard). | `+/input delete_end_of_line+` |
|
|
| kbd:[Ctrl+r] | Cerca del testo nella cronologia del buffer (consultare <<key_bindings_search_context,tasti per il contesto search>>). | `+/input search_text_here+` |
|
|
| kbd:[Ctrl+t] | Inverti caratteri. | `+/input transpose_chars+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Ctrl+u] | Elimina dal cursore fino all'inizio della riga di comando (deleted string is copied to the internal clipboard). | `+/input delete_beginning_of_line+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Ctrl+w] | Elimina la parola precedente nella riga di comando (deleted string is copied to the internal clipboard). | `+/input delete_previous_word+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Ctrl+y] | Paste the internal clipboard content. | `+/input clipboard_paste+` |
|
|
| kbd:[Ctrl+_] | Annulla l'ultima azione sulla riga di comando. | `+/input undo+` |
|
|
| kbd:[Alt+_] | Ripete l'ultima azione sulla riga di comando. | `+/input redo+` |
|
|
| kbd:[Tab] | Completa comando o nick (kbd:[Tab] di nuovo: trova prossimo completamento). | `+/input complete_next+` |
|
|
| kbd:[Shift+Tab] | Senza completamento: effettua un completamento parziale, con completamento in sospeso: completa con il completamento precedente. | `+/input complete_previous+` |
|
|
| kbd:[Invio] + |
|
|
kbd:[Ctrl+j] + |
|
|
kbd:[Ctrl+m] | Esegue comando o invia messaggio (in modalità ricerca: ferma ricerca). | `+/input return+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+Enter] | Insert a newline. | `+/input insert \n+` |
|
|
| kbd:[↑] | Chiama comando/messaggio precedente (in modalità ricerca: cerca in alto). | `+/input history_previous+` |
|
|
| kbd:[↓] | Chiama comando/messaggio precedente (in modalità ricerca: cerca in basso). | `+/input history_next+` |
|
|
| kbd:[Ctrl+↑] | Chiama il comando/messaggio precedente nella cronologia globale (identico per tutti i buffer). | `+/input history_global_previous+` |
|
|
| kbd:[Ctrl+↓] | Chiama il comando/messaggio successivo nella cronologia globale (identico per tutti i buffer). | `+/input history_global_next+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+d] | Elimina la parola successiva nella riga di comando (deleted string is copied to the internal clipboard). | `+/input delete_next_word+` |
|
|
| kbd:[Alt+k] | Cattura un tasto ed inserisce il suo codice (e il comando associato se il tasto esiste) nella riga di comando. | `+/input grab_key_command+` |
|
|
| kbd:[Alt+r] | Elimina l'intera riga di comando. | `+/input delete_line+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+s] | Toggle spell checker. | `+/mute spell toggle+` |
|
|
|=== |
|
|
|
|
|
[[key_bindings_buffers_windows]] |
|
|
==== Tasti per buffer / finestre |
|
|
|
|
|
[width="100%",cols="^.^3,.^8,.^5",options="header"] |
|
|
|=== |
|
|
| Tasti | Descrizione | Comando |
|
|
| kbd:[Ctrl+l] (`L`) | Ridisegna l'intera finestra. | `+/window refresh+` |
|
|
| kbd:[Ctrl+s], |
|
|
kbd:[Ctrl+u] | Imposta l'evidenziatore dei messaggi non letti su tutti i buffer. | `+/input set_unread+` |
|
|
| kbd:[Ctrl+x] | Passa al buffer attivo se i buffer sono collegati con lo stesso numero. | `+/input switch_active_buffer+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+x] | Zoom on merged buffer (kbd:[Alt+x] again: display all merged buffers). | `+/input zoom_merged_buffer+` |
|
|
| kbd:[PgUp] | Scorre in alto di una pagina nella cronologia del buffer. | `+/window page_up+` |
|
|
| kbd:[PgDn] | Scorre di una pagina in basso nella cronologia del buffer. | `+/window page_down+` |
|
|
| kbd:[Alt+PgUp] | Scorre di qualche riga in alto nella cronologia del buffer. | `+/window scroll_up+` |
|
|
| kbd:[Alt+PgDn] | Scorre di qualche riga in basso nella cronologia del buffer. | `+/window scroll_down+` |
|
|
| kbd:[Alt+Home] | Scorre in cima al buffer. | `+/window scroll_top+` |
|
|
| kbd:[Alt+End] | Scorre alla fine del del buffer. | `+/window scroll_bottom+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[F1] + |
|
|
kbd:[Ctrl+F1] | Scroll up one page in buflist. | `+/bar scroll buflist * -100%+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[F2] + |
|
|
kbd:[Ctrl+F2] | Scroll down one page in buflist. | `+/bar scroll buflist * +100%+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+F1] | Go to the beginning of buflist. | `+/bar scroll buflist * b+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+F2] | Go to the end of buflist. | `+/bar scroll buflist * e+` |
|
|
| kbd:[Alt+←] + |
|
|
kbd:[Alt+↑] + |
|
|
kbd:[Ctrl+p] + |
|
|
kbd:[F5] | Passa al buffer precedente. | `+/buffer -1+` |
|
|
| kbd:[Alt+→] + |
|
|
kbd:[Alt+↓] + |
|
|
kbd:[Ctrl+n] + |
|
|
kbd:[F6] | Passa al buffer successivo. | `+/buffer +1+` |
|
|
| kbd:[F7] | Passa alla finestra precedente. | `+/window -1+` |
|
|
| kbd:[F8] | Passa alla finestra successiva. | `+/window +1+` |
|
|
| kbd:[F9] | Scorre il titolo del buffer sulla sinistra. | `+/bar scroll title * -30%+` |
|
|
| kbd:[F10] | Scorre il titolo del buffer sulla destra. | `+/bar scroll title * +30%+` |
|
|
| kbd:[F11] + |
|
|
kbd:[Ctrl+F11] | Scorre di una pagina in alto nella lista nick. | `+/bar scroll nicklist * -100%+` |
|
|
| kbd:[F12] + |
|
|
kbd:[Ctrl+F12] | Scorre di una pagina in basso nella lista nick. | `+/bar scroll nicklist * +100%+` |
|
|
| kbd:[Alt+F11] | Sposta all'inizio della lista nick. | `+/bar scroll nicklist * b+` |
|
|
| kbd:[Alt+F12] | Sposta alla fine della lista nick. | `+/bar scroll nicklist * e+` |
|
|
| kbd:[Alt+a] | Passa al buffer successivo con attività (con priorità: highligh, messagge, altro). | `+/input jump_smart+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+Shift+B] | Toggle buflist. | `+/buflist toggle+` |
|
|
| kbd:[Alt+h] | Pulisce hotlist (notifica di attività su altri buffer). | `+/input hotlist_clear+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+j], |
|
|
kbd:[Alt+f] | Switch to first buffer. | `+/buffer -+` |
|
|
| kbd:[Alt+j], |
|
|
kbd:[Alt+l] (`L`) | Passa all'ultimo buffer. | `+/buffer ++` |
|
|
| kbd:[Alt+j], |
|
|
kbd:[Alt+r] | Passa al buffer raw IRC. | `+/server raw+` |
|
|
| kbd:[Alt+j], |
|
|
kbd:[Alt+s] | Passa al buffer server IRC. | `+/server jump+` |
|
|
| kbd:[Alt+0...9] | Passa al buffer numero (0 = 10). | `+/buffer *N+` |
|
|
| kbd:[Alt+j], |
|
|
kbd:[01...99] | Passa al buffer numero. | `+/buffer *NN+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+l] (`L`) | Toggle bare display. | `+/window bare+` |
|
|
| kbd:[Alt+m] | Abilita/disabilita. | `+/mouse toggle+` |
|
|
| kbd:[Alt+n] | Scorre fino alla notifica successiva. | `+/window scroll_next_highlight+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+Shift+N] | Toggle nicklist bar. | `+/bar toggle nicklist+` |
|
|
| kbd:[Alt+p] | Scorre fino alla notifica precedente. | `+/window scroll_previous_highlight+` |
|
|
| kbd:[Alt+u] | Scorre fino alla prima riga non letta nel buffer. | `+/window scroll_unread+` |
|
|
| kbd:[Alt+w], |
|
|
kbd:[Alt+↑] | Passa alla finestra in alto. | `+/window up+` |
|
|
| kbd:[Alt+w], |
|
|
kbd:[Alt+↓] | Passa alla finestra in basso. | `+/window down+` |
|
|
| kbd:[Alt+w], |
|
|
kbd:[Alt+←] | Passa alla finestra sulla sinistra. | `+/window left+` |
|
|
| kbd:[Alt+w], |
|
|
kbd:[Alt+→] | Passa alla finestrs sulla destra. | `+/window right+` |
|
|
| kbd:[Alt+w], |
|
|
kbd:[Alt+b] | Bilancia le dimensioni di tutte le finestre. | `+/window balance+` |
|
|
| kbd:[Alt+w], |
|
|
kbd:[Alt+s] | Scambia i buffer di due finestra. | `+/window swap+` |
|
|
| kbd:[Alt+z] | Ingrandimento sulla finestra attiva (kbd:[Alt+z] di nuovo: ripristina lo stato iniziale della finestra, prima dell'ingrandimento). | `+/window zoom+` |
|
|
| kbd:[Alt+<] | Passa al buffer precedente nella lista dei buffer visitati. | `+/input jump_previously_visited_buffer+` |
|
|
| kbd:[Alt+>] | Passa al buffer successivo nella lista dei buffer visitati. | `+/input jump_next_visited_buffer+` |
|
|
| kbd:[Alt+/] | Passa all'ultimo buffer mostrato (prima dell'ultimo passaggio ad un buffer). | `+/input jump_last_buffer_displayed+` |
|
|
| kbd:[Alt+=] | Attiva/disattiva filtri. | `+/filter toggle+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Alt+-] | Toggle filters in current buffer. | `+/filter toggle @+` |
|
|
|=== |
|
|
|
|
|
[[key_bindings_search_context]] |
|
|
==== Tasti per il contesto "search" |
|
|
|
|
|
Questi tasti sono usati nel contesto "search" (quando viene digitato |
|
|
kbd:[Ctrl+r] per cercare del testo nel buffer). |
|
|
|
|
|
[width="100%",cols="^.^3,.^8,.^5",options="header"] |
|
|
|=== |
|
|
| Key | Descrizione | Comando |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Ctrl+r] | Switch search type: string (default), regular expression. | `+/input search_switch_regex+` |
|
|
| kbd:[Alt+c] | Passa alla ricerca esatta. | `+/input search_switch_case+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Tab] | Switch search in: messages (default), prefixes, prefixes + messages. | `+/input search_switch_where+` |
|
|
| kbd:[↑] | Cerca riga precedente. | `+/input search_previous+` |
|
|
| kbd:[↓] | Cerca riga successiva. | `+/input search_next+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Enter] + |
|
|
kbd:[Ctrl+j] + |
|
|
kbd:[Ctrl+m] | Stop search at current position. | `+/input search_stop_here+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Ctrl+q] | Stop search and scroll to bottom of buffer. | `+/input search_stop+` |
|
|
|=== |
|
|
|
|
|
[[key_bindings_cursor_context]] |
|
|
==== Tasti per il contesto "cursor" |
|
|
|
|
|
Questi tasti sono usati nel contesto "cursor" (movimento libero del cursore |
|
|
sullo schermo. |
|
|
|
|
|
[width="100%",cols="^.^3,^.^2,.^7,.^7",options="header"] |
|
|
|=== |
|
|
| Tasto | Zona | Descrizione | Comando |
|
|
| kbd:[↑] | - | Sposta il cursore di una riga in alto. | `+/cursor move up+` |
|
|
| kbd:[↓] | - | Sposta il cursore di una riga in basso. | `+/cursor move down+` |
|
|
| kbd:[←] | - | Sposta il cursore di una colonna a sinistra. | `+/cursor move left+` |
|
|
| kbd:[→] | - | Sposta il cursore di una colonna a destra. | `+/cursor move right+` |
|
|
| kbd:[Alt+↑] | - | Sposta il cursore nell'area in alto. | `+/cursor move area_up+` |
|
|
| kbd:[Alt+↓] | - | Sposta il cursore nell'area in basso. | `+/cursor move area_down+` |
|
|
| kbd:[Alt+←] | - | Sposta il cursore nell'area a sinistra. | `+/cursor move area_left+` |
|
|
| kbd:[Alt+→] | - | Sposta il cursore nell'area a destra. | `+/cursor move area_right+` |
|
|
| kbd:[m] | chat | Cita messaggio. | `+hsignal:chat_quote_message;/cursor stop+` |
|
|
| kbd:[q] | chat | Cita prefisso + messaggio. | `+hsignal:chat_quote_prefix_message;/cursor stop+` |
|
|
| kbd:[Q] | chat | Cita ora + prefisso + messaggio. | `+hsignal:chat_quote_time_prefix_message;/cursor stop+` |
|
|
| kbd:[b] | lista nick | Ban di un nick. | `+/window ${_window_number};/ban ${nick}+` |
|
|
| kbd:[k] | lista nick | Kick di un nick. | `+/window ${_window_number};/kick ${nick}+` |
|
|
| kbd:[K] | lista nick | Kick e ban di un nick. | `+/window ${_window_number};/kickban ${nick}+` |
|
|
| kbd:[q] | lista nick | Apri query con il nick. | `+/window ${_window_number};/query ${nick};/cursor stop+` |
|
|
| kbd:[w] | lista nick | Effettua un whois sul nick. | `+/window ${_window_number};/whois ${nick}+` |
|
|
| kbd:[Enter] + |
|
|
kbd:[Ctrl+j] + |
|
|
kbd:[Ctrl+m] | - | Ferma la modalità cursore. | `+/cursor stop+` |
|
|
|=== |
|
|
|
|
|
[[key_bindings_mouse_context]] |
|
|
==== Tasti per il contesto "mouse" |
|
|
|
|
|
Questi tasti sono usati nel contesto "mouse", ovvero quando si verifica un |
|
|
evento del mouse. |
|
|
|
|
|
// TRANSLATION MISSING (6) |
|
|
[width="100%",cols="^.^3,^.^3,^.^3,.^8,.^8",options="header"] |
|
|
|=== |
|
|
// TRANSLATION MISSING |
|
|
| Tasto/Wheel ^(1)^ | Azione | Zona | Descrizione | Comando |
|
|
| ◾◽◽ | - | chat | Passa alla finestra. | `+/window ${_window_number}+` |
|
|
| ◾◽◽ | sinistra | chat | Passa al buffer precedente. | `+/window ${_window_number};/buffer +1+` |
|
|
| ◾◽◽ | destra | chat | Passa al buffer successivo. | `+/window ${_window_number};/buffer +1+` |
|
|
| ◾◽◽ | sinistra (lungo) | chat | Switch to first buffer. | `+/window ${_window_number};/buffer 1+` |
|
|
| ◾◽◽ | destra (lungo) | chat | Passa all'ultimo buffer. | `+/window ${_window_number};/input jump_last_buffer+` |
|
|
| kbd:[▲] | - | chat | Scorre di qualche riga in alto nella cronologia del buffer. | `+/window scroll_up -window ${_window_number}+` |
|
|
| kbd:[▼] | - | chat | Scorre di qualche riga in basso nella cronologia del buffer. | `+/window scroll_down -window ${_window_number}+` |
|
|
| kbd:[Ctrl+▲] | - | chat | Scroll horizontally to the left. | `+/window scroll_horiz -window ${_window_number} -10%+` |
|
|
| kbd:[Ctrl+▼] | - | chat | Scroll horizontally to the right. | `+/window scroll_horiz -window ${_window_number} +10%+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[▲] | - | chat: fset buffer | Move five lines up in fset buffer. | `+/fset -up 5+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[▼] | - | chat: fset buffer | Move five lines down in fset buffer. | `+/fset -down 5+` |
|
|
// TRANSLATION MISSING |
|
|
| ◾◽◽ | - | chat: fset buffer | Select line in fset buffer. | `+/window ${_window_number};/fset -go ${_chat_line_y}+` |
|
|
// TRANSLATION MISSING |
|
|
| ◽◽◾ | - | chat: fset buffer | Toggle boolean (on/off) or edit the option value. | `+hsignal:fset_mouse+` |
|
|
// TRANSLATION MISSING |
|
|
| ◽◽◾ | left | chat: fset buffer | Decrease value for integer/color, set/append to value for other types. | `+hsignal:fset_mouse+` |
|
|
// TRANSLATION MISSING |
|
|
| ◽◽◾ | right | chat: fset buffer | Increase value for integer/color, set/append to value for other types. | `+hsignal:fset_mouse+` |
|
|
// TRANSLATION MISSING |
|
|
| ◽◽◾ | up / down | chat: fset buffer | Mark/unmark multiple options. | `+hsignal:fset_mouse+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[▲] | - | chat: script buffer | Move 5 lines up in script buffer. | `+/script up 5+` |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[▼] | - | chat: script buffer | Move 5 lines down in script buffer. | `+/script down 5+` |
|
|
// TRANSLATION MISSING |
|
|
| ◾◽◽ | - | chat: script buffer | Select line in script buffer. | `+/script go ${_chat_line_y}+` |
|
|
// TRANSLATION MISSING |
|
|
| ◽◽◾ | - | chat: script buffer | Install/remove script. | `+/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}+` |
|
|
// TRANSLATION MISSING |
|
|
| ◾◽◽ | up / left | buflist | Move buffer to a lower number. | Signal `+buflist_mouse+`. |
|
|
// TRANSLATION MISSING |
|
|
| ◾◽◽ | down / right | buflist | Move buffer to a higher number. | Signal `+buflist_mouse+`. |
|
|
// TRANSLATION MISSING |
|
|
| ◾◽◽ | - | buflist | Switch to buffer (previously visited buffer if the buffer is the current one). | Signal `+buflist_mouse+`. |
|
|
// TRANSLATION MISSING |
|
|
| ◽◽◾ | - | buflist | Switch to next visited buffer if the buffer is the current one. | Signal `+buflist_mouse+`. |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Ctrl+▲] | - | buflist | Switch to previous buffer. | Signal `+buflist_mouse+`. |
|
|
// TRANSLATION MISSING |
|
|
| kbd:[Ctrl+▼] | - | buflist | Switch to next buffer. | Signal `+buflist_mouse+`. |
|
|
| ◾◽◽ | su | lista nick | Scorre di una pagina in alto nella lista nick. | `+/bar scroll nicklist ${_window_number} -100%+` |
|
|
| ◾◽◽ | giù | lista nick | Scorre di una pagina in basso nella lista nick. | `+/bar scroll nicklist ${_window_number} +100%+` |
|
|
| ◾◽◽ | up (lungo) | lista nick | Sposta all'inizio della lista nick. | `+/bar scroll nicklist ${_window_number} b+` |
|
|
| ◾◽◽ | giù (lungo) | lista nick | Sposta alla fine della lista nick. | `+/bar scroll nicklist ${_window_number} e+` |
|
|
| ◾◽◽ | - | lista nick | Apre una query con un nick. | `+/window ${_window_number};/query ${nick}+` |
|
|
| ◽◽◾ | - | lista nick | Effettua un whois su un nick. | `+/window ${_window_number};/whois ${nick}+` |
|
|
| ◾◽◽ | sinistra | lista nick | Kick di un nick. | `+/window ${_window_number};/kick ${nick}+` |
|
|
| ◾◽◽ | sinistra (lungo) | lista nick | Kick e ban di un nick. | `+/window ${_window_number};/kickban ${nick}+` |
|
|
| ◽◽◾ | sinistra | lista nick | Ban di un nick. | `+/window ${_window_number};/ban ${nick}+` |
|
|
| ◽◽◾ | - | input | Cattura un evento del mouse e inserisce il codice nella riga di comando. | `+/input grab_mouse_area+` |
|
|
| kbd:[▲] | - | ogni barra | Scorre la barra del -20%. | `+/bar scroll ${_bar_name} ${_window_number} -20%+` |
|
|
| kbd:[▼] | - | ogni barra | Scorre la barra del +20%. | `+/bar scroll ${_bar_name} ${_window_number} +20%+` |
|
|
| ◽◾◽ | - | ovunque | Avvia la modalità cursore in questo punto. | `+/cursor go ${_x},${_y}+` |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[NOTE] |
|
|
^(1)^ kbd:[▲] and kbd:[▼] are wheel up and down. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[key_bindings_fset_buffer]] |
|
|
==== Keys for fset buffer |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
These keys and actions are used on the fset buffer (see <<fset_plugin,Fset plugin>>). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"] |
|
|
|=== |
|
|
| Key | Action ^(1)^ | Description | Command |
|
|
| kbd:[↑] | | Move one line up. | `+/fset -up+` |
|
|
| kbd:[↓] | | Move one line down. | `+/fset -down+` |
|
|
| kbd:[PgUp] | | Move one page up. | `+/window page_up+` |
|
|
| kbd:[PgDn] | | Move one page down. | `+/window page_down+` |
|
|
| kbd:[Alt+Home] | `pass:[<<]` | Move to first line. | `+/fset -go 0+` |
|
|
| kbd:[Alt+End] | `pass:[>>]` | Move to last line. | `+/fset -go end+` |
|
|
| kbd:[F11] | `pass:[<]` | Scroll horizontally on the left. | `+/fset -left+` |
|
|
| kbd:[F12] | `pass:[>]` | Scroll horizontally on the right. | `+/fset -right+` |
|
|
| kbd:[Alt+Space] | `t` | Toggle boolean value. | `+/fset -toggle+` |
|
|
| kbd:[Alt+-] | `-` | Subtract 1 from value for integer/color, set value for other types. | `+/fset -add -1+` |
|
|
| kbd:[Alt++] | `+` | Add 1 to value for integer/color, append to value for other types. | `+/fset -add 1+` |
|
|
| kbd:[Alt+f], |
|
|
kbd:[Alt+r] | `r` | Reset value. | `+/fset -reset+` |
|
|
| kbd:[Alt+f], |
|
|
kbd:[Alt+u] | `u` | Unset value. | `+/fset -unset+` |
|
|
| kbd:[Alt+Enter] | `s` | Set value. | `+/fset -set+` |
|
|
| kbd:[Alt+f], |
|
|
kbd:[Alt+n] | `n` | Set new value. | `+/fset -setnew+` |
|
|
| kbd:[Alt+f], |
|
|
kbd:[Alt+a] | `a` | Append to value. | `+/fset -append+` |
|
|
| kbd:[Alt+,] | `,` | Mark/unmark option. | `+/fset -mark 1+` |
|
|
| kbd:[Shift+↑] | | Move one line up and mark/unmark option. | `+/fset -up; /fset -mark+` |
|
|
| kbd:[Shift+↓] | | Mark/unmark option and move one line down. | `+/fset -mark; /fset -down+` |
|
|
| | `m:xxx` | Mark options displayed that are matching filter "xxx" (any filter on option or value is allowed, see <<command_fset_fset,fset command>>). | |
|
|
| | `u:xxx` | Unmark options displayed that are matching filter "xxx" (any filter on option or value is allowed, see <<command_fset_fset,fset command>>). | |
|
|
| kbd:[Ctrl+l] (`L`) | | Refresh options and whole screen. | `+/fset -refresh+` |
|
|
| | `$` | Refresh options (keep marked options). | |
|
|
| | `$$` | Refresh options (unmark all options). | |
|
|
| kbd:[Alt+p] | | Toggle plugin description options (`pass:[plugins.desc.*]`). | `+/mute /set fset.look.show_plugins_desc toggle+` |
|
|
| kbd:[Alt+v] | | Toggle help bar. | `+/bar toggle fset+` |
|
|
| | `s:x,y` | Sort options by fields x,y (see option <<option_fset.look.sort,fset.look.sort>>). | `+/mute /set fset.look.sort x,y+` |
|
|
| | `s:` | Reset sort to its default value (see option <<option_fset.look.sort,fset.look.sort>>). | `+/mute /unset fset.look.sort+` |
|
|
| | `w:xxx` | Export options in file "xxx". | `+/fset -export xxx+` |
|
|
| | `w-:xxx` | Export options in file "xxx" without help. | `+/fset -export -nohelp xxx+` |
|
|
| | `w+:xxx` | Export options in file "xxx" with help. | `+/fset -export -help xxx+` |
|
|
| kbd:[Ctrl+x] | `x` | Switch the format used to display options. | `+/fset -format+` |
|
|
| | `q` | Close fset buffer. | `+/buffer close+` |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[NOTE] |
|
|
^(1)^ The action must be entered as input on the command line, followed by kbd:[Enter]. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[key_bindings_script_buffer]] |
|
|
==== Keys for script buffer |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
These keys and actions are used on the script buffer (see <<scripts_plugins,Script plugin>>). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="^.^3,^.^2,.^8,.^5",options="header"] |
|
|
|=== |
|
|
| Key | Action ^(1)^ | Description | Command |
|
|
| kbd:[↑] | | Move one line up. | `+/script up+` |
|
|
| kbd:[↓] | | Move one line down. | `+/script down+` |
|
|
| kbd:[PgUp] | | Move one page up. | `+/window page_up+` |
|
|
| kbd:[PgDn] | | Move one page down. | `+/window page_down+` |
|
|
| kbd:[Alt+i] | `i` | Install script. | `+/script install+` |
|
|
| kbd:[Alt+r] | `r` | Remove script. | `+/script remove+` |
|
|
| kbd:[Alt+l] (`L`) | `l` | Load script. | `+/script load+` |
|
|
| kbd:[Alt+u] | `u` | Unload script. | `+/script unload+` |
|
|
| kbd:[Alt+Shift+A] | `A` | Autoload script. | `+/script toggleautoload+` |
|
|
| kbd:[Alt+h] | `h` | Hold/unhold script. | `+/script hold+` |
|
|
| kbd:[Alt+v] | `v` | View script. | `+/script show+` |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[NOTE] |
|
|
^(1)^ The action must be entered as input on the command line, followed by kbd:[Enter]. |
|
|
|
|
|
[[mouse]] |
|
|
=== Supporto del mouse |
|
|
|
|
|
WeeChat supporta i click e le azioni del mouse. Funziona con il terminale |
|
|
locale, e da remoto via connessione ssh con o senza screen/tmux. |
|
|
|
|
|
[[mouse_enable]] |
|
|
==== Abilitare il mouse |
|
|
|
|
|
Per abilitare il mouse all'avvio: |
|
|
|
|
|
---- |
|
|
/set weechat.look.mouse on |
|
|
---- |
|
|
|
|
|
Per abilitarlo subito, digitare kbd:[Alt+m] oppure eseguire il seguente comando: |
|
|
|
|
|
---- |
|
|
/mouse enable |
|
|
---- |
|
|
|
|
|
È possibile disabilitarlo temporaneamente, e associare il comando ad un |
|
|
tasto. Ad esempio il tasto kbd:[Alt+%] per disabilitare il mouse per 10 secondi: |
|
|
|
|
|
---- |
|
|
/key bind meta-% /mouse toggle 10 |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[IMPORTANT] |
|
|
When mouse is enabled in WeeChat, all mouse events are caught by WeeChat, so |
|
|
actions such as copy/paste or clicks on URLs are not sent to the terminal. + |
|
|
Using kbd:[Shift] key causes the events to be sent directly to the terminal, |
|
|
as if the mouse was disabled (on some terminals like iTerm, you have to use |
|
|
kbd:[Alt] instead of kbd:[Shift]). |
|
|
|
|
|
[NOTE] |
|
|
Per qualunque problema con il mouse, consultare |
|
|
link:weechat_faq.it.html#mouse[FAQ di WeeChat / Mouse]. |
|
|
|
|
|
[[mouse_bind_events]] |
|
|
==== Associare gli eventi del mouse a comandi |
|
|
|
|
|
Molti eventi del mouse predefiniti sono già definiti da WeeChat (consultare |
|
|
<<key_bindings_mouse_context,tasti per il contesto "mouse">>). |
|
|
|
|
|
È possibile cambiare o aggiungere combinazioni con il comando `/key` usando il |
|
|
contesto "mouse" (per la sintassi, consultare comando |
|
|
<<command_weechat_key,/key>>). |
|
|
|
|
|
Il nome dell'evento consiste di un modificatore (opzionale), il nome di un |
|
|
pulsante/rotellina e un'azione (opzionale). Elementi diversi sono separati da `+-+`. |
|
|
|
|
|
Elenco di modificatori |
|
|
|
|
|
[width="100%",cols="1m,4",options="header"] |
|
|
|=== |
|
|
| Modificatore | Descrizione |
|
|
| ctrl | Tasto kbd:[Ctrl] |
|
|
| alt | Tasto kbd:[Alt] |
|
|
| ctrl-alt | Tasto kbd:[Ctrl] + kbd:[Alt] |
|
|
|=== |
|
|
|
|
|
Elenco di pulsanti/rotellina: |
|
|
|
|
|
[width="100%",cols="1m,4",options="header"] |
|
|
|=== |
|
|
| Pulsante/rotellina | Descrizione |
|
|
| button1 | Click sul tasto sinistro |
|
|
| button2 | Click sul tasto destro |
|
|
| button3 | Click sul tasto centrale (spesso click sulla rotellina) |
|
|
| button4 ... button9 | Click sui pulsanti extra |
|
|
| wheelup | Rotellina (su) |
|
|
| wheeldown | Rotellina (giù) |
|
|
|=== |
|
|
|
|
|
Elenco di azioni (solo per i pulsanti, non la rotellina): |
|
|
|
|
|
[width="100%",cols="1m,4",options="header"] |
|
|
|=== |
|
|
| Azione | Distanza |
|
|
| gesture-up | 3 ... 19 |
|
|
| gesture-up-long | ≥ 20 |
|
|
| gesture-down | 3 ... 19 |
|
|
| gesture-down-long | ≥ 20 |
|
|
| gesture-left | 3 ... 39 |
|
|
| gesture-left-long | ≥ 40 |
|
|
| gesture-right | 3 ... 39 |
|
|
| gesture-right-long | ≥ 40 |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
List of incomplete events (only for buttons, useful for plugins/scripts): |
|
|
|
|
|
[width="100%",cols="1m,4",options="header"] |
|
|
|=== |
|
|
| Event | Description |
|
|
| event-down | Button was pressed but not released yet |
|
|
| event-drag | Mouse was moved with button pressed down |
|
|
|=== |
|
|
|
|
|
Esempio di eventi: |
|
|
|
|
|
* `button1` |
|
|
* `ctrl-button1` |
|
|
* `button1-gesture-right` |
|
|
* `button1-event-down` |
|
|
* `button1-event-drag` |
|
|
* `alt-button2-gesture-down-long` |
|
|
* `wheelup` |
|
|
* `ctrl-alt-wheeldown` |
|
|
* ... |
|
|
|
|
|
[TIP] |
|
|
Quando si associa un tasto nel contesto "mouse", è possibile far corrispondere |
|
|
più eventi usando `+*+` all'inizio o alla fine del nome, ad esempio |
|
|
`+button1-gesture-*+` corrisponderà ad ogni azione compiuta col tasto sinistro. |
|
|
|
|
|
[TIP] |
|
|
È possibile trovare il nome di un evento con il comando `+/input grab_mouse+` |
|
|
poi eseguire l'evento col mouse. Il comando inserisce il nome dell'evento |
|
|
nella riga di comando. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[secured_data]] |
|
|
=== Secured data |
|
|
|
|
|
[[secured_data_storage]] |
|
|
==== Storage |
|
|
|
|
|
WeeChat can encrypt passwords or private data using secured data, stored in file |
|
|
_sec.conf_. |
|
|
|
|
|
This configuration file is read before any other file, and the values stored |
|
|
inside can be used in various WeeChat or plugins/scripts options. |
|
|
|
|
|
You can set a passphrase to encrypt data in _sec.conf_. This is not mandatory |
|
|
but highly recommended, otherwise data is stored as plain text in file. |
|
|
|
|
|
---- |
|
|
/secure passphrase this is my passphrase |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[secured_data_passphrase_on_startup]] |
|
|
===== Passphrase on startup |
|
|
|
|
|
When a passphrase is set, WeeChat will ask you to enter it on startup |
|
|
(but not on `/upgrade`). |
|
|
|
|
|
If you are using a password manager, you can run an external program to read |
|
|
the passphrase instead of having to type it manually on WeeChat startup. + |
|
|
For example with password-store (command `pass`): |
|
|
|
|
|
---- |
|
|
/set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase" |
|
|
---- |
|
|
|
|
|
The program may ask you unlock your GPG key or enter another passphrase to |
|
|
read the secret. WeeChat will wait for the end of the command to read the |
|
|
passphrase on the standard output (it must be on the first line without any |
|
|
extra character). + |
|
|
If the output contains no passphrase or if it is wrong, WeeChat will then ask |
|
|
you to enter it. |
|
|
|
|
|
[[secured_data_encryption]] |
|
|
===== Encryption |
|
|
|
|
|
The encryption of data is made in 3 steps: |
|
|
|
|
|
. Derive a key from the passphrase (with optional salt). |
|
|
. Compute hash of data to encrypt. |
|
|
. Encrypt the hash + data (output is: salt + encrypted hash/data). |
|
|
|
|
|
[NOTE] |
|
|
The cipher block mode is _CFB_. |
|
|
|
|
|
The result is put as hexadecimal string in file _sec.conf_, for example: |
|
|
|
|
|
---- |
|
|
[data] |
|
|
__passphrase__ = on |
|
|
libera = "53B1C86FCDA28FC122A95B0456ABD79B5AB74654F21C3D099A6CCA8173239EEA59533A1D83011251F96778AC3F5166A394" |
|
|
---- |
|
|
|
|
|
[[secured_data_decryption]] |
|
|
===== Decryption |
|
|
|
|
|
The decryption of data is made in 3 steps: |
|
|
|
|
|
. Derive a key using salt and passphrase. |
|
|
. Decrypt hash + data. |
|
|
. Check that decrypted hash == hash of data. |
|
|
|
|
|
[[secured_data_manage]] |
|
|
==== Manage secured data |
|
|
|
|
|
To add secured data, use `/secure set`, for example a password for _libera_ |
|
|
IRC server: |
|
|
|
|
|
---- |
|
|
/secure set libera mypassword |
|
|
---- |
|
|
|
|
|
For comfort, secured data can be displayed in a dedicated buffer (kbd:[Alt+v] on |
|
|
buffer to see values), just do: |
|
|
|
|
|
---- |
|
|
/secure |
|
|
---- |
|
|
|
|
|
Secured data can be used in some options that can contain private data like |
|
|
password, using this format: "${sec.data.xxx}" where "xxx" is the name of |
|
|
secured data (used with `/secure set xxx ...`). + |
|
|
For a complete list of supported options, see `/help secure`. |
|
|
|
|
|
To use the _libera_ password, for example with |
|
|
<<irc_sasl_authentication,SASL authentication>>: |
|
|
|
|
|
---- |
|
|
/set irc.server.libera.sasl_password "${sec.data.libera}" |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[commands_and_options]] |
|
|
=== Commands and options |
|
|
|
|
|
[[weechat_commands]] |
|
|
==== Comandi di WeeChat |
|
|
|
|
|
include::includes/autogen_user_commands.it.adoc[tag=weechat_commands] |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[sec_options]] |
|
|
==== Secured data options |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Sections in file _sec.conf_: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="3m,6m,16",options="header"] |
|
|
|=== |
|
|
| Section | Control command | Description |
|
|
| crypt | /set sec.crypt.* | Options for encryption. |
|
|
| data | <<command_weechat_secure,/secure>> | Secured data. |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Options: |
|
|
|
|
|
include::includes/autogen_user_options.it.adoc[tag=sec_options] |
|
|
|
|
|
[[weechat_options]] |
|
|
==== Opzioni di WeeChat |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Sections in file _weechat.conf_: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="3m,6m,16",options="header"] |
|
|
|=== |
|
|
| Section | Control command | Description |
|
|
| debug | <<command_weechat_debug,/debug set>> + |
|
|
/set weechat.debug.* | Debug level, for core and plugins (options can be added/removed in section). |
|
|
| startup | /set weechat.startup.* | Startup options. |
|
|
| look | /set weechat.look.* | Look and feel. |
|
|
| palette | <<command_weechat_color,/color alias>> + |
|
|
/set weechat.palette.* | Color aliases (options can be added/removed in section). |
|
|
| color | /set weechat.color.* | Colors. |
|
|
| completion | /set weechat.completion.* | Completion options. |
|
|
| history | /set weechat.history.* | History options (commands and buffers). |
|
|
| proxy | <<command_weechat_proxy,/proxy>> + |
|
|
/set weechat.proxy.* | Proxy options. |
|
|
| network | /set weechat.network.* | Network/SSL options. |
|
|
// TRANSLATION MISSING |
|
|
| plugin | /set weechat.plugin.* | Options on plugins. |
|
|
// TRANSLATION MISSING |
|
|
| signal | /set weechat.signal.* | Options on signals. |
|
|
| bar | <<command_weechat_bar,/bar>> + |
|
|
/set weechat.bar.* | Bar options. |
|
|
| layout | <<command_weechat_layout,/layout>> | Layouts. |
|
|
| notify | <<command_weechat_buffer,/buffer notify>> | Notify levels for buffers (options can be added/removed in section). |
|
|
| filter | <<command_weechat_filter,/filter>> | Filters. |
|
|
| key | <<command_weechat_key,/key>> | Keys in default context. |
|
|
| key_search | <<command_weechat_key,/key>> | Keys in search context. |
|
|
| key_cursor | <<command_weechat_key,/key>> | Keys in cursor context. |
|
|
| key_mouse | <<command_weechat_key,/key>> | Keys in mouse context. |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Options: |
|
|
|
|
|
include::includes/autogen_user_options.it.adoc[tag=weechat_options] |
|
|
|
|
|
[[plugins]] |
|
|
== Plugin |
|
|
|
|
|
Un plugin è una libreria dinamica, scritta in C e compilata, che viene caricata |
|
|
da WeeChat. |
|
|
In GNU/Linux, il file ha estensione ".so", ".dll" in Windows. |
|
|
|
|
|
I plugin trovati vengono caricati automaticamente all'avvio di WeeChat, ed |
|
|
è possibile caricare o scaricare i plugin durante l'esecuzione del programma. |
|
|
|
|
|
È importante evidenziare la differenza tra un _plugin_ ed uno _script_: un |
|
|
_plugin_ è un file binario compilato e caricato con il comando `/plugin`, |
|
|
mentre uno _script_ è un file di testo caricato con un plugin come _python_ |
|
|
con il comando `/python`. |
|
|
|
|
|
È possibile utilizzare il comando `/plugin` per caricare/scaricare un plugin, |
|
|
oppure elencare tutti i plugin caricati. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
When a plugin is unloaded, WeeChat removes: |
|
|
|
|
|
* buffers |
|
|
* configuration options (options are written in files) |
|
|
* all hooks: commands, modifiers, process, etc. |
|
|
* infos and infolists |
|
|
* hdata |
|
|
* bar items. |
|
|
|
|
|
Esempi per caricare, scaricare oppure elencare i plugin: |
|
|
|
|
|
---- |
|
|
/plugin load irc |
|
|
/plugin unload irc |
|
|
/plugin list |
|
|
---- |
|
|
|
|
|
I plugin predefiniti sono: |
|
|
|
|
|
[width="100%",cols="1,5",options="header"] |
|
|
|=== |
|
|
| Plugin | Descrizione |
|
|
| alias | Definisce gli alias per i comandi. |
|
|
// TRANSLATION MISSING |
|
|
| buflist | Bar item with list of buffers. |
|
|
| charset | Set di caratteri per la codifica/decodifica nei buffer. |
|
|
// TRANSLATION MISSING |
|
|
| exec | Execution of external commands in WeeChat. |
|
|
| fifo | pipe FIFO utilizzata per inviare comandi da remoto su WeeChat. |
|
|
// TRANSLATION MISSING |
|
|
| fset | Fast set of WeeChat and plugins options. |
|
|
| irc | protocollo chat per IRC. |
|
|
| logger | Registra i buffer su file. |
|
|
| relay | Relay dei dati via rete. |
|
|
| script | Gestore script. |
|
|
| python | API per lo scripting in Python. |
|
|
| perl | API per lo scripting in Perl. |
|
|
| ruby | API per lo scripting in Ruby. |
|
|
| lua | API per lo scripting in Lua. |
|
|
| tcl | API per lo scripting in TCL. |
|
|
| guile | API per lo scripting in Guile (scheme). |
|
|
| javascript | API per lo scripting in JavaScript. |
|
|
| php | API per lo scripting in PHP. |
|
|
| spell | Controllo ortografico per la riga di comando. |
|
|
// TRANSLATION MISSING |
|
|
| trigger | Text replacement and command execution on events triggered by WeeChat/plugins. |
|
|
// TRANSLATION MISSING |
|
|
| typing | Display users currently writing messages. |
|
|
| xfer | Trasferimento file e chat diretta. |
|
|
|=== |
|
|
|
|
|
Per saperne di più riguardo lo sviluppo di plugin o script (tramite le API), per |
|
|
favore consultare link:weechat_plugin_api.it.html[Riferimento API dei Plugin per WeeChat] |
|
|
oppure link:weechat_scripting.it.html[Guida allo Scripting di WeeChat]. |
|
|
|
|
|
[[alias_plugin]] |
|
|
=== Alias |
|
|
|
|
|
Il plugin Alias consente di creare alias per i comandi (da WeeChat o altri |
|
|
plugin). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Some aliases are created by default, with name in upper case (to make them |
|
|
different from standard commands); commands are not case sensitive in WeeChat, |
|
|
so for example `/close` runs the alias `/CLOSE`. |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
List of default aliases: |
|
|
|
|
|
include::includes/autogen_user_default_aliases.it.adoc[tag=default_aliases] |
|
|
|
|
|
[[alias_commands]] |
|
|
==== Comandi |
|
|
|
|
|
include::includes/autogen_user_commands.it.adoc[tag=alias_commands] |
|
|
|
|
|
[[alias_options]] |
|
|
==== Options |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Sections in file _alias.conf_: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="3m,6m,16",options="header"] |
|
|
|=== |
|
|
| Section | Control command | Description |
|
|
| cmd | <<command_alias_alias,/alias>> + |
|
|
/set alias.cmd.* | Commands for aliases. |
|
|
| completion | <<command_alias_alias,/alias>> + |
|
|
/set alias.completion.* | Completions for aliases. |
|
|
|=== |
|
|
|
|
|
[[buflist_plugin]] |
|
|
=== Buflist |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Buflist plugin displays a list of buffers in a bar item called "buflist" |
|
|
(two other bar items "buflist2" and "buflist3" are available as well). + |
|
|
A default bar "buflist" is created on startup with this item. |
|
|
|
|
|
[[buflist_commands]] |
|
|
==== Comandi |
|
|
|
|
|
include::includes/autogen_user_commands.it.adoc[tag=buflist_commands] |
|
|
|
|
|
[[buflist_options]] |
|
|
==== Opzioni |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Sections in file _buflist.conf_: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="3m,6m,16",options="header"] |
|
|
|=== |
|
|
| Section | Control command | Description |
|
|
| format | /set buflist.format.* | Formats used to display list of buffers. |
|
|
| look | /set buflist.look.* | Look and feel. |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Options: |
|
|
|
|
|
include::includes/autogen_user_options.it.adoc[tag=buflist_options] |
|
|
|
|
|
[[charset_plugin]] |
|
|
=== Charset |
|
|
|
|
|
Il plugin Charset consente di decodificare o codificare dati utilizzando |
|
|
i set caratteri. |
|
|
|
|
|
Esiste un set caratteri predefinito per la codifica/decodifica, e set caratteri |
|
|
specifici per i buffer (o gruppi di buffer). |
|
|
|
|
|
Questo plugin è opzionale, ma raccomandato: se non caricato, WeeChat |
|
|
può leggere/scrivere soltanto dati UTF-8. |
|
|
|
|
|
Il plugin Charset dovrebbe essere caricato automaticamente da WeeChat. |
|
|
Per essere sicuri che sia caricato, provare con: |
|
|
|
|
|
---- |
|
|
/charset |
|
|
---- |
|
|
|
|
|
Se non trovato, allora si deve caricare il plugin con il comando: |
|
|
|
|
|
---- |
|
|
/plugin load charset |
|
|
---- |
|
|
|
|
|
Se il plugin non viene trovato, allora è necessario ricompilare WeeChat |
|
|
con il supporto ai plugin e a Charset. |
|
|
|
|
|
Quando viene avviato il plugin Charset, mostra i set caratteri del |
|
|
terminale e quello interno. Il set caratteri dipende dal proprio |
|
|
locale, mentre quello interno è UTF-8. |
|
|
|
|
|
Per esempio: |
|
|
|
|
|
.... |
|
|
set caratteri: terminale: ISO-8859-15, interno: UTF-8 |
|
|
.... |
|
|
|
|
|
[[charset_set]] |
|
|
==== Impostare il set caratteri |
|
|
|
|
|
Per impostare il set caratteri globale per la codifica e la decodifica, |
|
|
utilizzare il comando `/set`. |
|
|
|
|
|
Per esempio: |
|
|
|
|
|
---- |
|
|
/set charset.default.decode ISO-8859-15 |
|
|
/set charset.default.encode ISO-8859-15 |
|
|
---- |
|
|
|
|
|
Se il set caratteri globale per la decodifica non è impostato (ad |
|
|
esempio durante il primo caricamento del plugin Charset), verrà |
|
|
impostato automaticamente sul set caratteri del terminale (se |
|
|
diverso da UTF-8), oppure su _ISO-8859-1_. |
|
|
|
|
|
Il valore di codifica predefinito è vuoto, perciò il testo viene |
|
|
inviato per default con il set caratteri interno (UTF-8). |
|
|
|
|
|
Per impostare il set caratteri del server IRC, utilizzare il comando `charset` |
|
|
sul buffer del server. Se viene immesso solo il set caratteri, allora i valori |
|
|
di codifica e decodifica saranno gli stessi. |
|
|
|
|
|
Ad esempio: |
|
|
|
|
|
---- |
|
|
/charset ISO-8859-15 |
|
|
---- |
|
|
|
|
|
È l'equivalente di: |
|
|
|
|
|
---- |
|
|
/charset decode ISO-8859-15 |
|
|
/charset encode ISO-8859-15 |
|
|
---- |
|
|
|
|
|
Per impostare il set caratteri per il canale IRC (o il privato), utilizzare gli |
|
|
stessi comandi per il server, ma sul buffer del canale (o quello privato). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
To set charset for all channels/privates of an IRC server: |
|
|
|
|
|
---- |
|
|
/set charset.encode.irc.libera ISO-8859-15 |
|
|
---- |
|
|
|
|
|
Per visualizzare tutti i set caratteri utilizzati, utilizzare il comando seguente: |
|
|
|
|
|
---- |
|
|
/set charset.* |
|
|
---- |
|
|
|
|
|
[[charset_troubleshooting]] |
|
|
==== Risoluzione problemi |
|
|
|
|
|
Per qualunque problema con i set caratteri, per favore consultare |
|
|
le link:weechat_faq.it.html#charset[Domande Frequenti di WeeChat / Charset]. |
|
|
|
|
|
[[charset_commands]] |
|
|
==== Comandi |
|
|
|
|
|
include::includes/autogen_user_commands.it.adoc[tag=charset_commands] |
|
|
|
|
|
[[charset_options]] |
|
|
==== Opzioni |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Sections in file _charset.conf_: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="3m,6m,16",options="header"] |
|
|
|=== |
|
|
| Section | Control command | Description |
|
|
| default | /set charset.default.* | Default decoding/encoding charset. |
|
|
| decode | <<command_charset_charset,/charset decode>> + |
|
|
/set charset.decode.* | Decoding charset by buffer (options can be added/removed in section). |
|
|
| encode | <<command_charset_charset,/charset encode>> + |
|
|
/set charset.encode.* | Encoding charset by buffer (options can be added/removed in section). |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Options: |
|
|
|
|
|
include::includes/autogen_user_options.it.adoc[tag=charset_options] |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[exec_plugin]] |
|
|
=== Exec |
|
|
|
|
|
The `/exec` command lets you execute external commands inside WeeChat and |
|
|
display the output locally, or send it to a buffer. |
|
|
|
|
|
[[exec_commands]] |
|
|
==== Comandi |
|
|
|
|
|
include::includes/autogen_user_commands.it.adoc[tag=exec_commands] |
|
|
|
|
|
[[exec_options]] |
|
|
==== Opzioni |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Sections in file _exec.conf_: |
|
|
|
|
|
[width="100%",cols="3m,6m,16",options="header"] |
|
|
|=== |
|
|
| Section | Control command | Description |
|
|
| command | /set exec.command.* | Options for commands. |
|
|
| color | /set exec.color.* | Colors. |
|
|
|=== |
|
|
|
|
|
Options: |
|
|
|
|
|
include::includes/autogen_user_options.it.adoc[tag=exec_options] |
|
|
|
|
|
[[fifo_plugin]] |
|
|
=== Fifo |
|
|
|
|
|
È possibile controllare da remoto WeeChat, inviando comandi o del testo ad una |
|
|
pipe FIFO (se l'opzione "fifo.file.enabled" è abilitata, e lo è per default). |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
The FIFO pipe is located in WeeChat runtime directory and is called |
|
|
_weechat_fifo_12345_ by default (where _12345_ is the WeeChat process id). |
|
|
|
|
|
La sintassi per i comandi/testo della pipe FIFO è una delle seguenti: |
|
|
|
|
|
.... |
|
|
plugin.buffer *testo o comando qui |
|
|
*testo o comando qui |
|
|
.... |
|
|
|
|
|
Alcuni esempi: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
* Change nick on IRC server libera to "newnick": |
|
|
|
|
|
---- |
|
|
$ echo 'irc.server.libera */nick newnick' >/run/user/1000/weechat/weechat_fifo_12345 |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
* Send a message on IRC #weechat channel: |
|
|
|
|
|
---- |
|
|
$ echo 'irc.libera.#weechat *hello!' >/run/user/1000/weechat/weechat_fifo_12345 |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
* Send a message on current buffer: |
|
|
|
|
|
---- |
|
|
$ echo '*hello!' >/run/user/1000/weechat/weechat_fifo_12345 |
|
|
---- |
|
|
|
|
|
* Inviare due comandi per scaricare/caricare gli script Python (è necessario |
|
|
separarli con "\n"): |
|
|
|
|
|
---- |
|
|
$ printf '%b' '*/python unload\n*/python autoload\n' >/run/user/1000/weechat/weechat_fifo_12345 |
|
|
---- |
|
|
|
|
|
[[fifo_commands]] |
|
|
==== Comandi |
|
|
|
|
|
include::includes/autogen_user_commands.it.adoc[tag=fifo_commands] |
|
|
|
|
|
[[fifo_options]] |
|
|
==== Opzioni |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Sections in file _fifo.conf_: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="3m,6m,16",options="header"] |
|
|
|=== |
|
|
| Section | Control command | Description |
|
|
| file | /set fifo.file.* | FIFO pipe control. |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Options: |
|
|
|
|
|
include::includes/autogen_user_options.it.adoc[tag=fifo_options] |
|
|
|
|
|
[[fset_plugin]] |
|
|
=== Fset |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Fast Set plugin displays a list of options in a buffer, and helps to set WeeChat |
|
|
and plugin options. |
|
|
|
|
|
[[fset_commands]] |
|
|
==== Comandi |
|
|
|
|
|
include::includes/autogen_user_commands.it.adoc[tag=fset_commands] |
|
|
|
|
|
[[fset_options]] |
|
|
==== Opzioni |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Sections in file _fset.conf_: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[width="100%",cols="3m,6m,16",options="header"] |
|
|
|=== |
|
|
| Section | Control command | Description |
|
|
| color | /set fset.color.* | Colors. |
|
|
| format | /set fset.format.* | Formats used to display list of options. |
|
|
| look | /set fset.look.* | Look and feel. |
|
|
|=== |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
Options: |
|
|
|
|
|
include::includes/autogen_user_options.it.adoc[tag=fset_options] |
|
|
|
|
|
[[irc_plugin]] |
|
|
=== IRC |
|
|
|
|
|
Il plugin IRC è realizzato per chattare tramite protocollo IRC con altre persone. |
|
|
|
|
|
È multi-server, ed offre tutti i comandi IRC supportati inclusi la chat DCC ed il |
|
|
trasferimento file (tramite plugin xfer, consultare <<xfer_plugin,plugin Xfer>>). |
|
|
|
|
|
[[irc_command_line_options]] |
|
|
==== Opzioni a riga di comando |
|
|
|
|
|
È possibile fornire un URL per uno o più server IRC, come segue: |
|
|
|
|
|
---- |
|
|
irc[6][s]://[nick[:password]@]irc.esempio.org[:porta][/#canale][,#canale[...]] |
|
|
---- |
|
|
|
|
|
Esempio per entrare in _#weechat_ e _#weechat-fr_ sul server _irc.libera.chat_, |
|
|
porta predefinita (6667), con il nick _alice_: |
|
|
|
|
|
---- |
|
|
$ weechat irc://alice@irc.libera.chat/#weechat,#weechat-fr |
|
|
---- |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
[[irc_servers]] |
|
|
==== Servers |
|
|
|
|
|
[[irc_servers_add]] |
|
|
===== Add a server |
|
|
|
|
|
By default no servers are defined. You can add as many servers as you want with |
|
|
the <<command_irc_server,/server>> command. |
|
|
|
|
|
For example to connect to https://libera.chat/[libera.chat] with SSL (encrypted trafic): |
|
|
|
|
|
---- |
|
|
/server add libera irc.libera.chat/6697 -ssl |
|
|
---- |
|
|
|
|
|
You can tell WeeChat to auto-connect to this server on startup: |
|
|
|
|
|
---- |
|
|
/set irc.server.libera.autoconnect on |
|
|
---- |
|
|
|
|
|
To authenticate, it is recommended to use SASL (if supported on the server), |
|
|
with the password stored as secured data (see also chapter on |
|
|
<<irc_sasl_authentication,SASL authentication>>): |
|
|
|
|
|
---- |
|
|
/set irc.server.libera.sasl_username "alice" |
|
|
/secure set libera_password xxxxxxx |
|
|
/set irc.server.libera.sasl_password "${sec.data.libera_password}" |
|
|
---- |
|
|
|
|
|
If SASL is not supported, you can use a command to send a message to nickserv: |
|
|
|
|
|
---- |
|
|
/set irc.server.libera.command "/msg nickserv identify ${sec.data.libera_password}" |
|
|
---- |
|
|
|
|
|
[NOTE] |
|
|
By sending a message to nickserv, you may authenticate after joining channels |
|
|
which could be a problem on some channels requiring you to be authenticated |
|
|
to join. In this case, you can set a command delay: |
|
|
`/set irc.server.libera.command_delay 5`. |
|
|
|
|
|
[[irc_servers_options]] |
|
|
===== Server options |
|
|
|
|
|
Server options are named `irc.server.<server>.<option>` where `<server>` is the |
|
|
internal name of the server and `<option>` the name of an option. + |
|
|
The value of a server option is inherited from `irc.server_default.xxx` |
|
|
if the server option has the special value `null`. |
|
|
|
|
|
For example if you created the _libera_ server with the commands above, you'll |
|
|
see this with the command `/fset libera`: |
|
|
|
|
|
.... |
|
|
irc.server.libera.addresses string "irc.libera.chat/6697" |
|
|
irc.server.libera.anti_flood_prio_high integer null -> 2 |
|
|
irc.server.libera.anti_flood_prio_low integer null -> 2 |
|
|
irc.server.libera.autoconnect boolean on |
|
|
irc.server.libera.autojoin string null -> "" |
|
|
irc.server.libera.autoreconnect boolean null -> on |
|
|
irc.server.libera.autoreconnect_delay integer null -> 10 |
|
|
irc.server.libera.autorejoin boolean null -> off |
|
|
irc.server.libera.autorejoin_delay integer null -> 30 |
|
|
irc.server.libera.away_check integer null -> 0 |
|
|
irc.server.libera.away_check_max_nicks integer null -> 25 |
|
|
irc.server.libera.capabilities string null -> "*" |
|
|
irc.server.libera.charset_message integer null -> message |
|
|
irc.server.libera.command string null -> "" |
|
|
irc.server.libera.command_delay integer null -> 0 |
|
|
irc.server.libera.connection_timeout integer null -> 60 |
|
|
irc.server.libera.default_chantypes string null -> "#&" |
|
|
irc.server.libera.ipv6 boolean null -> on |
|
|
irc.server.libera.local_hostname string null -> "" |
|
|
irc.server.libera.msg_kick string null -> "" |
|
|
irc.server.libera.msg_part string null -> "WeeChat ${info:version}" |
|
|
irc.server.libera.msg_quit string null -> "WeeChat ${info:version}" |
|
|
irc.server.libera.nicks string null -> "alice,alice1,alice2,alice3,alice4" |
|
|
irc.server.libera.nicks_alternate boolean null -> on |
|
|
irc.server.libera.notify string null -> "" |
|
|
irc.server.libera.password string null -> "" |
|
|
irc.server.libera.proxy string null -> "" |
|
|
irc.server.libera.realname string null -> "" |
|
|
irc.server.libera.sasl_fail integer null -> reconnect |
|
|
irc.server.libera.sasl_key string null -> "" |
|
|
irc.server.libera.sasl_mechanism integer null -> plain |
|
|
irc.server.libera.sasl_password string "${sec.data.libera_password}" |
|
|
irc.server.libera.sasl_timeout integer null -> 15 |
|
|
irc.server.libera.sasl_username string "alice" |
|
|
irc.server.libera.split_msg_max_length integer null -> 512 |
|
|
irc.server.libera.ssl boolean on |
|
|
irc.server.libera.ssl_cert string null -> "" |
|
|
irc.server.libera.ssl_dhkey_size integer null -> 2048 |
|
|
irc.server.libera.ssl_fingerprint string null -> "" |
|
|
irc.server.libera.ssl_password string null -> "" |
|
|
irc.server.libera.ssl_priorities string null -> "NORMAL:-VERS-SSL3.0" |
|
|
irc.server.libera.ssl_verify boolean null -> on |
|
|
irc.server.libera.usermode string null -> "" |
|
|
irc.server.libera.username string null -> "alice" |
|
|
.... |
|
|
|
|
|
For example if you want to automatically connect to all servers you define |
|
|
without having to do it on each server, you can do: |
|
|
|
|
|
---- |
|
|
/set irc.server_default.autoconnect on |
|
|
---- |
|
|
|
|
|
And then you can reset the server option so that it uses the default inherited |
|
|
value, which is now `on` instead of the default value `off`: |
|
|
|
|
|
---- |
|
|
/unset irc.server.libera.autoconnect |
|
|
---- |
|
|
|
|
|
[[irc_ssl_certificates]] |
|
|
===== Certificati SSL |
|
|
|
|
|
Al momento della connessione al server IRC con SSL, WeeChat verifica in |
|
|
maniera predefinita che la connessione sia completamente fidata. |
|
|
|
|
|
Esistono alcune opzioni per controllare la connessione SSL: |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
weechat.network.gnutls_ca_system:: |
|
|
load system's default trusted certificate authorities on startup |
|
|
|
|
|
// TRANSLATION MISSING |
|
|
weechat.network.gnutls_ca_user:: |
|
|
extra file(s) with certificate authorities |
|
|
|
|
|
irc.server.xxx.ssl_cert:: |
|
|
file del certificato SSL usato per identificare automaticamente il proprio |
|
|
nick ad esempio CertFP su oftc (a seguire) |
|
|
|
|
|
irc.server.xxx.ssl_dhkey_size:: |
|
|
dimensione della chiave usata durante lo Scambio Chiavi Diffie-Hellman |
|
|
(predefinita; 2048) |
|
|
|
|
|
irc.server.xxx.ssl_verify:: |
|