Author: Sébastien Helleu

# WeeChat ユーザーズガイド

Sébastien Helleu
flashcode@flashtux.org
version 4.0.0

翻訳者:

- Ryuunosuke Ayanokouzi <i38w7i3@yahoo.co.jp>, 2012-2019

このマニュアルは WeeChat チャットクライアントについての文書で、これは WeeChat の一部です。

Latest version of this document can be found on this page ↗.

## 1. イントロダクション

WeeChat (Wee Enhanced Environment for Chat) はフリーのチャットクライアントです。高速で軽量、多くのオペレーティングシステムで動くように設計されています。

### 1.1. 特徴

主な特徴:

- マルチプロトコル (主に IRC)

- 複数のサーバへの接続 (TLS、IPv6、プロキシをサポート)

- コンパクト、高速、軽量

- プラグインとスクリプトでカスタマイズや拡張が可能

- IRC の RFC に準拠 1459 ↗、 2810 ↗、 2811 ↗、 2812 ↗、 2813 ↗、 7194 ↗。

- リモートインターフェース用の IRC プロキシとリレー

- マルチプラットフォーム (GNU/Linux、*BSD、macOS、Windows 等)

- 完全な GPL、フリーソフトウェア

The list of all features can be found on this page ↗.

### 1.2. 事前に必要なもの

WeeChat をインストールするには、以下のものが必要です:

- GNU/Linux が稼動しているシステム (ソースパッケージを使う場合は、コンパイラツールも必要)、または互換 OS

- root 特権 (WeeChat をシステムディレクトリにインストールする場合)

- 一部のライブラリ (依存関係を参照)。

## 2. インストール方法

### 2.1. バイナリパッケージ

多くのディストリビューションではバイナリパッケージが利用できます。例えば:

- Arch Linux: `pacman -S weechat`

- Cygwin (Windows): setup.exe で WeeChat パッケージを選択してください

- Debian/Ubuntu (または Debian 互換ディストリビューション): `apt-get install weechat-curses weechat-plugins`
  For latest versions and nightly builds: Debian repositories ↗

- Fedora Core: `dnf install weechat`

- FreeBSD: `pkg install weechat`

- Gentoo: `emerge weechat`

- Mandriva/RedHat (または RPM 互換ディストリビューション): `rpm -i /path/to/weechat-x.y.z-1.i386.rpm`

- openSUSE: `zypper in weechat`

- Sourcemage: `cast weechat`

- macOS (with Homebrew ↗): `brew install weechat` (for help: `brew info weechat`)

例えば weechat-plugins 等の追加パッケージを使うとさらに便利になるかもしれません。

その他のディストリビューションでは、インストール説明マニュアルを参照してください。

### 2.2. Containers

Containers with WeeChat can be built or installed directly from the Docker Hub ↗.
For more information, see the README in the weechat-container ↗ repository.

### 2.3. ソースパッケージ

WeeChat must be built with CMake.

| macOS では Homebrew ↗ を使ってください: `brew install --build-from-source weechat`。

#### 依存関係

The following table shows the list of packages that are required to build WeeChat:

パッケージ (1) | バージョン | Features
--- | --- | ---
C コンパイラ (gcc / clang) |  | Compile C sources.
cmake | ≥ 3.0 | ビルド
pkg-config |  | インストール済みライブラリを検出
libncursesw5-dev (2) |  | ncurses インターフェース
libcurl4-gnutls-dev |  | URL 転送
libgcrypt20-dev |  | 保護データ、IRC SASL 認証
libgnutls28-dev | ≥ 2.2.0 (3) | IRC plugin: support of TLS connections, IRC SASL authentication (ECDSA-NIST256P-CHALLENGE). Relay plugin: support of TLS connections.
zlib1g-dev |  | Logger plugin: compression of rotated log files (gzip). Relay plugin: compression of messages (WeeChat → client) with zlib ↗ (weechat protocol). Script plugin: read of repository index file (gzip).
libzstd-dev | ≥ 0.8.1 | Logger plugin: compression of rotated log files. Relay plugin: compression of messages (WeeChat → client) with Zstandard ↗ (weechat protocol).

| (1) Name comes from the Debian GNU/Linux Bookworm distribution, version and name can be different in other distributions. (2) WeeChat は libncursesw5-dev でコンパイルすることを推奨します (w が重要です)。libncurses5-dev でもコンパイル可能ですが、これは推奨 されません (ワイドキャラクタの表示にバグを生じるでしょう)。 (3) IRC SASL 認証で ECDSA-NIST256P-CHALLENGE を使うには、GnuTLS バージョン 3.0.21 以上が必要です。

The following table shows the list of packages that are optional to compile WeeChat:

パッケージ (1) | バージョン | Features
--- | --- | ---
C++ コンパイラ (g++ / clang++) |  | ビルドとテストの実行、JavaScript プラグイン
gettext |  | 国際化 (メッセージの翻訳; ベース言語は英語です)
ca-certificates |  | TLS 接続に必要な証明書、relay プラグインで TLS サポート
libaspell-dev / libenchant-dev |  | spell プラグイン
python3-dev | 3.0 以上 | python プラグイン
libperl-dev |  | perl プラグイン
ruby3.1, ruby3.1-dev | 1.9.1 以上 | ruby プラグイン
liblua5.4-dev |  | lua プラグイン
tcl-dev | 8.5 以上 | tcl プラグイン
guile-3.0-dev | 2.0 以上 | guile (scheme) プラグイン
libv8-dev | 3.24.3 以下 | javascript プラグイン
php-dev | 7.0 以上 | PHP プラグイン
libphp-embed | 7.0 以上 | PHP プラグイン
libxml2-dev |  | PHP プラグイン
libargon2-dev |  | PHP プラグイン (PHP 7.2 以上の場合)
libsodium-dev |  | PHP プラグイン (PHP 7.2 以上の場合)
asciidoctor | 1.5.4 以上 | man ページと文書のビルド
ruby-pygments.rb |  | Build documentation.
libcpputest-dev | 3.4 以上 | ビルドとテストの実行

| (1) Name comes from the Debian GNU/Linux Bookworm distribution, version and name can be different in other distributions.

Debian および Ubuntu ベースのディストリビューションを使っており、/etc/apt/sources.list ファイルで "deb-src" ソースエントリを指定しているならば、すべての依存関係にあるパッケージを以下のコマンドでインストール可能です:

    # apt-get build-dep weechat

#### Build

- システムディレクトリにインストールする場合 (root 特権が必要です):

    $ mkdir build
    $ cd build
    $ cmake ..
    $ make
    $ sudo make install

- 任意のディレクトリ (例えば自分のホームディレクトリ) にインストールする場合:

    $ mkdir build
    $ cd build
    $ cmake .. -DCMAKE_INSTALL_PREFIX=/path/to/directory
    $ make
    $ make install

CMake に対するオプションを指定するには、以下の書式を使ってください: `-DOPTION=VALUE`。

よく利用されるオプションのリスト:

オプション | 値 | デフォルト値 | 説明
--- | --- | --- | ---
`CMAKE_BUILD_TYPE` | `Debug`, `Release`, `RelWithDebInfo`, `MinSizeRel` |  | ビルド形式: WeeChat の開発版を使っている場合は `Debug` (または `RelWithDebInfo`) を推奨します。
`CMAKE_INSTALL_PREFIX` | directory | `/usr/local` | WeeChat をインストールするディレクトリ。
`WEECHAT_HOME` | directory | `(empty string)` | 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` | Alias プラグインのコンパイル。
`ENABLE_BUFLIST` | `ON`, `OFF` | `ON` | Buflist プラグインのコンパイル。
`ENABLE_CHARSET` | `ON`, `OFF` | `ON` | Charset プラグインのコンパイル。
`ENABLE_MAN` | `ON`, `OFF` | `OFF` | man ページのコンパイル。
`ENABLE_DOC` | `ON`, `OFF` | `OFF` | HTML 文書のコンパイル。
`ENABLE_DOC_INCOMPLETE` | `ON`, `OFF` | `OFF` | Force build of documentation even if some plugins are not compiled (not recommended: docs will be incomplete).
`ENABLE_ENCHANT` | `ON`, `OFF` | `OFF` | Enchant と含めた Spell プラグインのコンパイル。
`ENABLE_EXEC` | `ON`, `OFF` | `ON` | Exec プラグインのコンパイル。
`ENABLE_FIFO` | `ON`, `OFF` | `ON` | Fifo プラグインのコンパイル。
`ENABLE_FSET` | `ON`, `OFF` | `ON` | Fset プラグインのコンパイル。
`ENABLE_GUILE` | `ON`, `OFF` | `ON` | Guile プラグイン (Scheme) のコンパイル。
`ENABLE_IRC` | `ON`, `OFF` | `ON` | IRC プラグインのコンパイル
`ENABLE_JAVASCRIPT` | `ON`, `OFF` | `OFF` | JavaScript プラグインのコンパイル。
`ENABLE_LARGEFILE` | `ON`, `OFF` | `ON` | 巨大ファイルのサポート。
`ENABLE_LOGGER` | `ON`, `OFF` | `ON` | Logger プラグインのコンパイル。
`ENABLE_LUA` | `ON`, `OFF` | `ON` | Lua プラグインのコンパイル。
`ENABLE_NCURSES` | `ON`, `OFF` | `ON` | Ncurses インターフェースのコンパイル。
`ENABLE_NLS` | `ON`, `OFF` | `ON` | NLS の有効化 (多言語サポート)。
`ENABLE_PERL` | `ON`, `OFF` | `ON` | Perl プラグインのコンパイル。
`ENABLE_PHP` | `ON`, `OFF` | `ON` | PHP プラグインのコンパイル。
`ENABLE_PYTHON` | `ON`, `OFF` | `ON` | Python プラグインのコンパイル。
`ENABLE_RELAY` | `ON`, `OFF` | `ON` | リレープラグインのコンパイル。
`ENABLE_RUBY` | `ON`, `OFF` | `ON` | Ruby プラグインのコンパイル。
`ENABLE_SCRIPT` | `ON`, `OFF` | `ON` | スクリプトプラグインのコンパイル。
`ENABLE_SCRIPTS` | `ON`, `OFF` | `ON` | すべてのスクリプトプラグイン (Python、Perl、Ruby、Lua、Tcl、Guile、PHP) のコンパイル。
`ENABLE_SPELL` | `ON`, `OFF` | `ON` | Spell プラグインのコンパイル。
`ENABLE_TCL` | `ON`, `OFF` | `ON` | Tcl プラグインのコンパイル。
`ENABLE_TRIGGER` | `ON`, `OFF` | `ON` | Trigger プラグインのコンパイル。
`ENABLE_TYPING` | `ON`, `OFF` | `ON` | Typing プラグインのコンパイル。
`ENABLE_XFER` | `ON`, `OFF` | `ON` | Xfer プラグインのコンパイル。
`ENABLE_TESTS` | `ON`, `OFF` | `OFF` | コンパイルテスト。
`ENABLE_CODE_COVERAGE` | `ON`, `OFF` | `OFF` | コードカバレッジオプションを有効化してコンパイル。 このオプションはテスト網羅率を測定するために用意されています。

その他のオプションは以下のコマンドで確認してください:

    $ cmake -LA

Curses インターフェースを使う場合は以下のコマンドを使ってください:

    $ ccmake ..

#### Tests

テストをコンパイルするには以下のパッケージが 必須 です:

- libcpputest-dev

- C++ compiler

テストは WeeChat のコンパイル時に有効化しなければいけません:

    $ cmake .. -DENABLE_TESTS=ON

コンパイル終了後、build ディレクトリでテストを起動してください:

    $ ctest -V

### 2.4. Git ソース

警告: Git ソースを用いる方法は上級者向けです。コンパイルに失敗したり、 不安定な可能性があります。警告しましたよ!

Git ソースを入手するには、以下のコマンドを使ってください:

    $ git clone https://github.com/weechat/weechat.git

その後は、ソースパッケージの説明に従ってください (ソースパッケージを参照)。

### 2.5. クラッシュレポート

WeeChat がクラッシュした場合、または WeeChat をクラッシュさせる操作を報告する場合、以下の手順に従ってください:

- Compile with:

  - debug info (or install binary package with debug info),

  - address sanitizer (optional).

- システムの core ファイルを有効化

- gdb のインストール

#### Debug build

CMake でコンパイルする場合:

    $ cmake .. -DCMAKE_BUILD_TYPE=Debug

#### Address sanitizer

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

| You should enable address sanitizer only if you’re trying to cause a crash, this is not recommended in production.

Then once compiled and installed, you must run WeeChat like this:

    $ ASAN_OPTIONS="detect_odr_violation=0 log_path=asan.log" weechat

In case of crash, the backtrace is in file `asan.log`.

#### Core ファイル

core ファイルを有効化するには、weechat.startup.sys_rlimit オプションを使ってください:

    /set weechat.startup.sys_rlimit "core:-1"

WeeChat バージョン 0.3.8 以下または WeeChat の実行前に core ファイルを有効化したい場合には、`ulimit` コマンドを使ってください。

Linux で bash シェルを使っている場合、以下の内容を `~/.bashrc` に追加してください:

    ulimit -c unlimited

サイズを指定する場合は:

    ulimit -c 200000

#### gdb でバックトレースを得る

オプションが有効の場合、WeeChat がクラッシュするとシステムは core または core.12345 ファイルを作ります (12345 はプロセス番号です)。このファイルは WeeChat を起動したディレクトリに作られます (これは WeeChat がインストールされているディレクトリでは ありません!)。

| 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 ↗.

例えば、weechat が /usr/bin/ にインストールされ、core ファイルが /home/user/ にある場合、以下のコマンドで gdb を起動してください:

    gdb /usr/bin/weechat /home/user/core

gdb の中で `bt full` コマンドを実行するとバックトレースが表示されます。以下のような出力が得られるはずです:

    (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>

このバックトレースを開発者に報告し、クラッシュを引き起こした動作を伝えてください。

ご協力ありがとうございます!

#### 起動中の WeeChat のデバッグ

起動している WeeChat をデバッグするには (例えば WeeChat がフリーズしているような場合)、gdb の引数にプロセス番号を与えて起動します (12345 は weechat プロセスの PID に変更してください):

    gdb /usr/bin/weechat 12345

クラッシュが起きた場合と同様に、`bt full` コマンドを使ってください:

    (gdb) bt full

## 3. WeeChat の起動

WeeChat を起動させるには、以下コマンドを実行:

    $ weechat

WeeChat の初回起動時にデフォルトのオプション設定を含む設定ファイルが ~/.config/weechat ディレクトリの中に作成されます (ファイルとディレクトリを参照してください)。

### 3.1. コマンドラインオプション

-a, --no-connect

  WeeChat の起動時にサーバへの自動接続を行わない

-c, --colors

  端末にデフォルト色を表示

--daemon

  WeeChat をデーモン化してバックグラウンド実行 (weechat-headless コマンドで起動した場合のみ有効)

--stdout

  Display log messages on standard output instead of writing them in log file (works only with the command weechat-headless, not compatible with option "--daemon").

-d, --dir <path>

  Force a single directory for all WeeChat files (directory is created if not found). Four directories can be given, separated by colons (in this order: config, data, cache, runtime). このオプションを指定しなかった場合、環境変数 WEECHAT_HOME を使います (空でない限り)。

-t, --temp-dir

  一時的に WeeChat のホームディレクトリを作成し、終了時にこれを削除します ("-d" オプションと同時使用不可)。
  このとき WeeChat が作るディレクトリの名前は "weechat_temp_XXXXXX" ("XXXXXX" はランダム文字列) です。このディレクトリはリスト (環境変数 "TMPDIR"、"/tmp" (オペレーティングシステムの種類によって異なります)、環境変数 "HOME"、カレントディレクトリ) で最初の利用可能なディレクトリの中に作られます。
  一時的なホームディレクトリは 0700 のパーミッションを設定されます (読み書き実行権限が所有者のみに与えられます)。

-h, --help

  ヘルプを表示

-l, --license

  WeeChat ライセンスを表示

-p, --no-plugin

  プラグインの自動ロードを止める

-P, --plugins <plugins>

  起動時にロードするプラグインを指定 (/help weechat.plugin.autoload を参照してください)。 このオプションを使う場合、weechat.plugin.autoload オプションは無視されます。

-r, --run-command <command>

  起動後にコマンドを実行; 複数のコマンドを実行するには各コマンドをセミコロンで区切って下さい。 このオプションは複数回使用できます。

-s, --no-script

  スクリプトの自動ロードを止める

--upgrade

  `/upgrade -quit` コマンドで生成されるセッションファイルを使って WeeChat をアップグレード

-v, --version

  WeeChat のバージョンを表示

plugin:option

  プラグインに渡すオプション

Some extra options are available for debug purposes only:

| Do NOT use any of these options in production!

--no-dlclose

  Do not call the function dlclose after plugins are unloaded. This is useful with tools like Valgrind to display stack for unloaded plugins. プラグインがアンロードされた後に関数 dlclose を呼び出さない。これは Valgrind などのツールを使ってアンロードされたプラグインのスタックを表示する際に有用です。

--no-gnutls

  GnuTLS ライブラリの init および deinit 関数を呼び出さない。これは Valgrind および electric-fence などのツールを使って GnuTLS メモリエラーを避ける際に有用です。

--no-gcrypt

  Gcrypt ライブラリの init および deinit 関数を呼び出さない。これは Valgrind などのツールを使って Gcrypt メモリエラーを避ける際に有効です。

### 3.2. 環境変数

以下の環境変数が定義されていた場合、WeeChat はそれを利用します:

変数名 | 説明
--- | ---
`WEECHAT_HOME` | WeeChat ホームディレクトリ (ここには設定ファイル、ログ、スクリプトなどがあります) Same behavior as CMake option `WEECHAT_HOME`.
`WEECHAT_PASSPHRASE` | 暗号化データを復号化するためのパスフレーズ
`WEECHAT_EXTRA_LIBDIR` | プラグインをロードするための追加ディレクトリパス (設定したパス内の "plugins" ディレクトリからロードします)

### 3.3. Colors support

WeeChat ではバーやチャットエリアにおけるテキスト表示に 32767 個の色ペアを利用できます (この機能を利用するには WeeChat が実行されている端末が 256 色表示に対応している必要があります)。

TERM 環境変数の値によって、WeeChat で利用できる色と色ペアに以下の制限があります:

$TERM | 色 | ペア
--- | --- | ---
"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

`weechat --colors` を実行するか、`/color` コマンドを WeeChat の中で実行することで、色表示の制限を確認できます。

256 色を利用したい場合に推奨される TERM 環境変数の値は:

- screen 内の場合: screen-256color

- tmux 内の場合: screen-256color、tmux-256color

- screen および tmux の外の場合: xterm-256color、rxvt-256color、putty-256color、…​

| TERM 環境変数の値に上の値を設定するには、"ncurses-term" パッケージをインストールする必要があるかもしれません。

screen を使っている場合、~/.screenrc に以下の内容を追加してください:

    term screen-256color

TERM 変数が間違った値に設定された状態で WeeChat が起動完了している場合は、以下の 2 つのコマンドを使って変数の値を変更してください:

    /set env TERM screen-256color
    /upgrade

### 3.4. ファイルとディレクトリ

#### XDG directories

WeeChat uses XDG directories by default (according to the 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:

Directory | Default value | Fallback value if $XDG_XXX is not defined
--- | --- | ---
config | `$XDG_CONFIG_HOME/weechat` | `$HOME/.config/weechat`
data | `$XDG_DATA_HOME/weechat` | `$HOME/.local/share/weechat`
cache | `$XDG_CACHE_HOME/weechat` | `$HOME/.cache/weechat`
runtime | `$XDG_RUNTIME_DIR/weechat` | Same as cache directory

The configuration files are created with default values the first time you run WeeChat.

#### WeeChat directories

The WeeChat directories are:

Path (1) | 説明
--- | ---
`~/.config/weechat/` | WeeChat configuration files: `*.conf`, certificates, etc.
`~/.local/share/weechat/` | WeeChat data files: logs, scripts, scripts data, xfer files, etc.
`logs/` | ログファイル (バッファごとに 1 つのファイル)
`python/` | Python スクリプト
`autoload/` | 起動時に自動ロードされる Python スクリプト (2)
`perl/` | Perl スクリプト
`autoload/` | 起動時に自動ロードされる Perl スクリプト (2)
`ruby/` | Ruby スクリプト
`autoload/` | 起動時に自動ロードされる Ruby スクリプト (2)
`lua/` | Lua スクリプト
`autoload/` | 起動時に自動ロードされる Lua スクリプト (2)
`tcl/` | Tcl スクリプト
`autoload/` | 起動時に自動ロードされる Tcl スクリプト (2)
`guile/` | Guile スクリプト
`autoload/` | 起動時に自動ロードされる Guile スクリプト (2)
`javascript/` | JavaScript スクリプト
`autoload/` | 起動時に自動ロードされる JavaScript スクリプト (2)
`php/` | PHP スクリプト
`autoload/` | 起動時に自動ロードされる PHP スクリプト (2)
`~/.cache/weechat/` | WeeChat cache files: scripts cache.
`/run/user/1000/weechat/` | WeeChat runtime files: FIFO pipe, Relay UNIX sockets.

| (1) XDG directories may be different according to your environment variables `XDG_*`. (2) このディレクトリには親ディレクトリ内にあるスクリプトへのシンボリックリンクのみが含まれることが多いです。

#### WeeChat files

WeeChat ホームディレクトリには以下のファイルが含まれます:

ファイル | 説明 | データ保護
--- | --- | ---
`weechat.conf` | WeeChat の主要設定ファイル | 保護される場合もあります (例: 保存されたバッファレイアウトに含まれるチャンネルのリスト)
`sec.conf` | 機密データを含む設定ファイル | 保護されます、機密性の高いデータ: このファイルを誰かと共有してはいけません
`plugins.conf` | プラグイン設定ファイル | 保護される場合もあります、プラグインおよびスクリプトに依存します
`alias.conf` | alias プラグイン用の設定ファイル | 保護される場合もあります、エイリアスに依存します
`buflist.conf` | buflist プラグイン用の設定ファイル | 保護されません
`charset.conf` | charset プラグイン用の設定ファイル | 保護されません
`exec.conf` | exec プラグイン用の設定ファイル | 保護されません
`fifo.conf` | fifo プラグイン用の設定ファイル | 保護されません
`fset.conf` | fset プラグイン用の設定ファイル | 保護されません
`guile.conf` | guile プラグイン用の設定ファイル | 保護されません
`irc.conf` | irc プラグイン用の設定ファイル | 保護されます: サーバ、nickserv、チャンネルのパスワードを保存することが可能です (これらのデータが `sec.conf` に保存されない場合)
`javascript.conf` | javascript プラグイン用の設定ファイル | 保護されません
`logger.conf` | logger プラグイン用の設定ファイル | 保護されません
`lua.conf` | lua プラグイン用の設定ファイル | 保護されません
`perl.conf` | perl プラグイン用の設定ファイル | 保護されません
`php.conf` | php プラグイン用の設定ファイル | 保護されません
`python.conf` | python プラグイン用の設定ファイル | 保護されません
`relay.conf` | relay プラグイン用の設定ファイル | 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` | ruby プラグイン用の設定ファイル | 保護されません
`script.conf` | script プラグイン用の設定ファイル | 保護されません
`spell.conf` | spell プラグイン用の設定ファイル | 保護されません
`tcl.conf` | tcl プラグイン用の設定ファイル | 保護されません
`trigger.conf` | trigger プラグイン用の設定ファイル | 保護される場合もあります、トリガに依存します
`typing.conf` | typing プラグイン用の設定ファイル | 保護されません
`xfer.conf` | xfer プラグイン用の設定ファイル | 保護されません
`weechat.log` | WeeChat ログファイル | 保護されません

| 手作業で設定ファイルを編集することは 推奨されません。なぜなら WeeChat は常時 (例えば /quit コマンドの実行時など) 設定ファイルに書き込む可能性がありますし、手作業で修正を加えた後には必ず /reload コマンドを実行しなければいけない (これには /save を使って保存されていない変更を失うリスクがある) からです。 設定を編集するには /set コマンドを使ってください。これは値を検査し、設定の変更をすぐに適用します。

## 4. 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.

### 4.1. Upgrade command

WeeChat can restart the new binary, in place, using the /upgrade command: the buffer contents and non-TLS connections are preserved.
The TLS connections are lost during upgrade and are restored automatically after the upgrade (reload of TLS 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

### 4.2. Restart after upgrade

#### Release notes

After an upgrade, it is strongly recommended to read the 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.

#### 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:

    =!= 警告: /home/user/.config/weechat/sec.conf, 行 15: セクション "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).

## 5. Interface

### 5.1. 画面レイアウト

WeeChat を起動した端末の例:

     ▼ "buflist" バー   ▼ "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!█                                                     │
    └──────────────────────────────────────────────────────────────────────────────────────┘
                ▲ "status" と "input" バー                               "nicklist" バー ▲

By default, the screen is divided up into the following areas:

- チャットログが表示されるチャットエリア (画面の真ん中)、それぞれの行は:

  - 時刻

  - プレフィックス ("|" の前)

  - メッセージ ("|" の後)

- チャットエリアの周りにあるバー、デフォルトバーは:

  - バッファリスト (buflist) バー、左端

  - タイトル (title) バー、チャットエリアの上

  - 状態 (status) バー、チャットエリアの下

  - 入力 (input) バー、状態バーの下

  - ニックネームリスト (nicklist) バー、右端

バッファリスト (buflist) バーは以下の初期要素を持っています:

要素 | 例 | 説明
--- | --- | ---
buflist | `1.weechat` | バッファ一覧

状態 (title) バーは以下の初期要素を持っています:

要素 | 例 | 説明
--- | --- | ---
buffer_title | `Welcome to #test` | バッファタイトル

状態 (status) バーは以下の初期要素を持っています:

要素 | 例 | 説明
--- | --- | ---
time | `[12:55]` | 時刻
buffer_last_number | `[5]` | リスト中の最後のバッファ番号
buffer_plugin | `[irc/libera]` | 現在のバッファのプラグイン (irc プラグインではバッファで利用されている IRC サーバ名を追加できます)
buffer_number | `2` | 現在のバッファの番号
buffer_name | `#test` | 現在のバッファの名前
buffer_modes | `+n` | IRC チャンネルモード
buffer_nicklist_count | `{4}` | Number of nicks displayed in nicklist.
buffer_zoom | ! | `!` はマージされたバッファがズームされている状態 (ズームされたものだけを表示する状態) を示します、空の場合はすべてのマージされたバッファが表示されていることを示します
buffer_filter | `*` | フィルタ表示: `*` の場合いくつかの行がフィルタされ (隠され) ます、空の場合すべての行が表示されます。
scroll | `-MORE(50)-` | スクロール表示、最後の行が表示されてから追加された行数を含む。
lag | `[Lag: 2.5]` | 遅延秒表示 (遅延が短い場合は非表示)
hotlist | `[H: 3:#abc(2,5), 5]` | 変化のあったバッファのリスト (未読メッセージ) (例では、#abc に 2 個のハイライトと 5 個の未読メッセージ、5 番目のバッファに 1 個の未読メッセージがあることを意味します。)
completion | `abc(2) def(5)` | 補完候補の単語リスト、各単語に対して適応される補完候補の数を含む。

入力 (input) バーは以下の初期要素を持っています:

要素 | 例 | 説明
--- | --- | ---
input_prompt | `[@Flashy]` | 入力プロンプト、irc の場合: ニックネームとモード (libera では "+i" モードは不可視状態を意味します)
away | `(away)` | 離席状態表示
input_search | `[Search (~ str,msg)]` | 検索インジケータ (“~”: 大文字小文字を区別しない、“==”: 大文字小文字を区別する、“str”: 検索文字列、“regex”: 検索正規表現、“msg”: メッセージ部分から検索、“pre”: プレフィックス部分から検索、“pre|msg”: プレフィックス部分とメッセージ部分から検索)
input_paste | `[Paste 7 lines ? [ctrl-y] Yes [ctrl-n] No]` | 行をペーストする場合にユーザへ行われる質問
input_text | `hi peter!` | 入力テキスト

ニックネームリスト (nicklist) バーは以下の初期要素を持っています:

要素 | 例 | 説明
--- | --- | ---
buffer_nicklist | `@Flashy` | 現在のバッファのニックネーム一覧

その他の利用可能な要素 (初期状態のバーはこれらの要素を持ちません):

要素 | 例 | 説明
--- | --- | ---
buffer_count | `10` | 開いているバッファの総数
buffer_last_number | `10` | Number of the latest buffer (can be different from `buffer_count` if option 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` | 現在のバッファの短い名前
buflist2 | `1.weechat` | List of buffers, second bar item (see option buflist.look.use_items).
buflist3 | `1.weechat` | List of buffers, third bar item (see option buflist.look.use_items).
fset | `buflist.look.sort: …` | Help on currently selected option on fset buffer.
irc_channel | `#test` | 現在の IRC チャンネル名
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 モード
irc_nick_prefix | `@` | IRC nick prefix on channel.
mouse_status | `M` | マウスの状態 (マウスが無効化されている場合は空文字列)
spell_dict | `fr,en` | 現在のバッファにおけるスペリング辞書
spell_suggest | `print,prone,prune` | カーソル下の単語に対するスペリング候補 (スペルが間違っている場合)
tls_version | `TLS1.3` | TLS version in use for current IRC server.
window_number | `2` | 現在のウィンドウ番号

Each aspect of the layout can be customized with the appropriate command: `/bar` to customize the bars, /buffer and `/window` to customize buffers and windows, and /layout to name, save and restore the screen layout and the association between windows and buffers.

### 5.2. コマンドライン

WeeChat コマンドライン (ウィンドウの一番下にあります) はコマンドの実行やバッファにテキストを送信するために利用します。

#### 文法

コマンドは "/" 文字で始まり、コマンドの名前を続けます。例えば、すべてのオプションを表示するには:

    /set

"/" が最初に無い場合、そのテキストはバッファに送信されます。例えば、hello というテキストをバッファに送信するには:

    hello

"/" 文字から始まるテキストを送信したい場合、2 重に "/" をつけます。例えば、`/set` というテキストを現在のバッファに送信するには:

    //set

#### 色コード

IRC 等のプラグインでは、以下の色コードと属性を利用できます (`Ctrl`+`c` の後に、オプションとともに以下のキーを押してください):

キー | 説明
--- | ---
`Ctrl`+`c`, `b` | テキストを太字に
`Ctrl`+`c`, `c`, `xx` | テキスト表示色を `xx` に (以下の色リストを参照)
`Ctrl`+`c`, `c`, `xx`, `,`, `yy` | テキスト表示色を `xx` に、背景色を `yy` に (以下の色リストを参照)
`Ctrl`+`c`, `i` | テキストをイタリック体に
`Ctrl`+`c`, `o` | テキスト表示色と属性をリセット
`Ctrl`+`c`, `v` | テキストを反転 (テキスト表示色と背景色の入れ替え)
`Ctrl`+`c`, `_` | テキストに下線を引く

| 同じコードで (色コードを入力せずに `Ctrl`+`c`, `c` を使うことで) 属性をキャンセルすることができます。

`Ctrl`+`c`, `c` 用の色コード:

Couleur IRC | Couleur WeeChat
--- | ---
`00` | white
`01` | black
`02` | blue
`03` | green
`04` | lightred
`05` | red
`06` | magenta
`07` | brown
`08` | yellow
`09` | lightgreen
`10` | cyan
`11` | lightcyan
`12` | lightblue
`13` | lightmagenta
`14` | darkgray
`15` | gray
`16` | 52
`17` | 94
`18` | 100
`19` | 58
`20` | 22
`21` | 29
`22` | 23
`23` | 24
`24` | 17
`25` | 54
`26` | 53
`27` | 89
`28` | 88
`29` | 130
`30` | 142
`31` | 64
`32` | 28
`33` | 35
`34` | 30
`35` | 25
`36` | 18
`37` | 91
`38` | 90
`39` | 125
`40` | 124
`41` | 166
`42` | 184
`43` | 106
`44` | 34
`45` | 49
`46` | 37
`47` | 33
`48` | 19
`49` | 129
`50` | 127
`51` | 161
`52` | 196
`53` | 208
`54` | 226
`55` | 154
`56` | 46
`57` | 86
`58` | 51
`59` | 75
`60` | 21
`61` | 171
`62` | 201
`63` | 198
`64` | 203
`65` | 215
`66` | 227
`67` | 191
`68` | 83
`69` | 122
`70` | 87
`71` | 111
`72` | 63
`73` | 177
`74` | 207
`75` | 205
`76` | 217
`77` | 223
`78` | 229
`79` | 193
`80` | 157
`81` | 158
`82` | 159
`83` | 153
`84` | 147
`85` | 183
`86` | 219
`87` | 212
`88` | 16
`89` | 233
`90` | 235
`91` | 237
`92` | 239
`93` | 241
`94` | 244
`95` | 247
`96` | 250
`97` | 254
`98` | 231
`99` | default

| 端末で利用可能なすべての色を表示するには、WeeChat で `/color` を実行した後 `Alt`+`c` を入力するか、端末で以下のコマンドを実行してください: `weechat --colors`。

Example: display of "hello Alice!" with "hello" in light blue bold and "Alice" in light red underlined:

    ^Cc12^Cbhello ^Cb^Cc04^C_Alice^C_^Cc!

Keys:

`Ctrl`+`c` `c` `1` `2` `Ctrl`+`c` `b`
`h` `e` `l` `l` `o` `Space`
`Ctrl`+`c` `b` `Ctrl`+`c` `c` `0` `4` `Ctrl`+`c` `_`
`A` `l` `i` `c` `e`
`Ctrl`+`c` `_` `Ctrl`+`c` `c`
`!`

| irc プラグインでは、irc.color.mirc_remap を使ってこれらの色を別の色に対応付けることができます。

### 5.3. バッファとウィンドウ

バッファ は番号、名前、表示された行 (とその他の情報) で構成されています。

バッファの例:

- コアバッファ (起動時に WeeChat が作成、閉じることはできません)

- irc サーバ (サーバからのメッセージを表示)

- irc チャンネル

- irc プライベートメッセージ

window はバッファを表示する画面エリアのことです。画面を複数のウィンドウに分割することができます (examples below, see the /window command for details).

それぞれのウィンドウは 1 つのバッファを表示します。バッファは隠したり (ウィンドウに表示しない)、複数のウィンドウに表示することできます。

Screen layouts and the association between windows and buffers can be saved and restored.

#### Examples

水平方向分割の例 (`/window splith`):

                                   ▼ ウィンドウ #2 (バッファ #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!█                                                        │
    └──────────────────────────────────────────────────────────────────────────────────────┘
                                   ▲ ウィンドウ #1 (バッファ #3)

垂直方向分割の例 (`/window splitv`):

    ┌──────────────────────────────────────────────────────────────────────────────────────┐
    │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]                             │
    └──────────────────────────────────────────────────────────────────────────────────────┘
                     ▲ ウィンドウ #1 (バッファ #3)         ▲ ウィンドウ #2 (バッファ #4)

垂直方向 + 水平方向分割の例:

                                                           ▼ ウィンドウ #3 (バッファ #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]                             │
    └──────────────────────────────────────────────────────────────────────────────────────┘
                     ▲ ウィンドウ #1 (バッファ #3)         ▲ ウィンドウ #2 (バッファ #4)

#### 最小限表示

「最小限表示」と呼ばれる特殊な表示状態を使うことで、(マウスを使って) 長い URL を簡単にクリックしたり、テキストを簡単に選択できるようになっています。

最小限表示は以下の機能を持っています:

- 現在のバッファの内容だけを表示: 分割ウィンドウやバー等 (タイトル、ニックネームリスト、状態、入力、…​) も表示しない

- WeeChat マウスサポートを無効化 (有効化されていた場合): 端末でやるのと同じように URL をクリックしたりテキストを選択できます

- ncurses を使わない、このため URL を行の最後で分断されることがなくなります。

最小限表示を有効化するデフォルトキーは `Alt`+`l` (`L`) で、終了するには同じキーを押してください (また、デフォルトでは入力が変更された場合に最小限表示を終了します、weechat.look.bare_display_exit_on_input オプションを参照)。

weechat.look.bare_display_time_format オプションを使えば、時間書式を変更することも可能です。

/window コマンドを使えば、指定秒後に最小限表示を有効化することができます。

WeeChat が以下のような表示状態の場合:

    ┌──────────────────────────────────────────────────────────────────────────────────────┐
    │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 │       │
    │         │               | /weechat/devel/weechat_plugin_api.en.html#_weechat │       │
    │         │               | _hook_process                                      │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │                                                                    │       │
    │         │[12:55] [5] [irc/libera] 3:#abc(+n){4}                                      │
    │         │[@Flashy(i)] hi peter!█                                                     │
    └──────────────────────────────────────────────────────────────────────────────────────┘

最小限表示では以下の様に表示されます:

    ┌──────────────────────────────────────────────────────────────────────────────────────┐
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │                                                                                      │
    │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/weechat/devel/weechat_│
    │plugin_api.en.html#_weechat_hook_process                                              │
    └──────────────────────────────────────────────────────────────────────────────────────┘

このため、端末で問題なく joe さんからの URL をクリックできます (もちろん、使用中の端末で URL をクリックできるように設定されていなければいけませんが)。

### 5.4. Buffers

#### 行の書式

書式付きバッファに表示される各行は以下のフィールドから構成されます:

フィールド | 表示状態 | 説明
--- | --- | ---
日付/時間 (メッセージ) | 表示 | メッセージの日付および時間 (おそらく過去)。
日付/時間 (表示) | 非表示 | WeeChat がメッセージを表示した時間。
プレフィックス | 表示 | メッセージのプレフィックス、通常ニックネーム。
メッセージ | 表示 | メッセージ自体。
表示状態 | 非表示 | ブール値: 行が表示された場合には真、行が /filter コマンドでフィルタされた場合には偽。
ハイライト | 非表示 | ブール値: 行がハイライトされている場合には真、それ以外の場合には偽。
タグ | `/debug tags` の実行で表示状態を切り替え | 行に関連付けられたタグ (行のタグ参照)。

外観オプション(weechat.look.*) と色オプション (weechat.color.chat_*) を使えば、行の表示をカスタマイズすることが可能です。

#### 行のタグ

WeeChat は様々な目的で各行にタグを付けます:

- ハイライト

- 通知レベル

- ログ記録

- /filter コマンドの使用

`/debug tags` コマンドでタグを表示することが可能です (タグを非表示にする場合も同じコマンドを使います)。

通常使用するタグ (一部抜粋したリスト):

タグ | 説明
--- | ---
`no_filter` | フィルタできない行
`no_highlight` | ハイライトできない行
`no_log` | ログファイルに書き込まれない行
`log0 … log9` | 行に対するログレベル (`/help logger` を参照)
`notify_none` | The line must not be added to hotlist. (1)
`notify_message` | The line is a user message. (1)
`notify_private` | The line is a private message. (1)
`notify_highlight` | The line is a message with highlight. (1)
`self_msg` | 自分のメッセージ
`nick_xxx` | ニックネーム "xxx" からのメッセージ
`prefix_nick_ccc` | プレフィックスを色 "ccc" のニックネームにします
`host_xxx` | メッセージ中のユーザ名とホスト
`irc_xxx` | IRC メッセージ "xxx" (コマンドまたは 3 桁の番号)
`irc_numeric` | IRC 番号メッセージ
`irc_error` | IRC からのエラー
`irc_action` | あるニックネームからのアクション (`/me` コマンド)
`irc_ctcp` | CTCP メッセージ
`irc_ctcp_reply` | CTCP メッセージに対する返信
`irc_smart_filter` | "smart filter" でフィルタリング可能な IRC メッセージ
`away_info` | 離席状態のメッセージ

| (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.

#### 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:

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.

| External plugins and scripts can define and use other local variables.

### 5.5. List of buffers

Buflist プラグインを使うことで、"buflist" と呼ばれるバー要素の中にバッファリストを表示させることが可能になります (それ以外に "buflist2" と "buflist3" と呼ばれるバー要素も利用可能です)。
プラグインは開始時にバー要素 "buflist" を持つデフォルトバー "buflist" を作成します。

#### コマンド

- `buflist`: objet de barre avec la liste des tampons

    /buflist  enable|disable|toggle
              bar
              refresh

     enable : activer buflist
    disable : désactiver buflist
     toggle : activer/désactiver buflist
        bar : ajouter la barre "buflist"
    refresh : forcer le rafraichissement des objets de barre (buflist, buflist2 et buflist3)

    Les lignes avec les tampons sont affichées en utilisant l'évaluation de chaînes (voir /help eval pour le format), avec ces options :
      - buflist.look.display_conditions : conditions pour afficher un tampon dans la liste
      - buflist.format.buffer : format pour un tampon qui n'est pas le tampon courant
      - buflist.format.buffer_current: format pour le tampon courant

    Les variables suivantes peuvent être utilisées dans ces options :
      - données de l'objet de barre (voir le hdata "bar_item" dans la doc API pour une liste complète), par exemple :
        - ${bar_item.name}
      - données de la fenêtre ("window"), où l'objet de barre est affiché (il n'y a pas de fenêtre pour les barres de type "root", voir le hdata "window" dans la doc API pour une liste complète), par exemple :
        - ${window.number}
        - ${window.buffer.full_name}
      - données du tampon (voir le hdata "buffer" dans la doc API pour une liste complète), par exemple :
        - ${buffer.number}
        - ${buffer.name}
        - ${buffer.full_name}
        - ${buffer.short_name}
        - ${buffer.nicklist_nicks_count}
      - irc_server: données du serveur IRC, défini seulement sur un tampon IRC (voir le hdata "irc_server" dans la doc API)
      - irc_channel: données du canal IRC, défini seulement sur un tampon de canal IRC (voir le hdata "irc_channel" dans la doc API)
      - variables additionnelles ajoutées par buflist pour des raisons pratiques :
        - ${format_buffer} : la valeur évaluée de l'option buflist.format.buffer ; peut être utilisée dans l'option buflist.format.buffer_current pour juste changer la couleur de fond par exemple
        - ${current_buffer} : un booléen ("0" ou "1"), "1" s'il s'agit du tampon courant ; cela peut être utilisé dans une condition : ${if:${current_buffer}?...:...}
        - ${merged} : un booléen ("0" ou "1"), "1" si le tampon est mélangé avec au moins un autre tampon ; cela peut être utilisé dans une condition : ${if:${merged}?...:...}
        - ${format_number} : numéro indenté avec un séparateur (évaluation de l'option buflist.format.number)
        - ${number} : numéro indenté, par exemple " 1" s'il y a entre 10 et 99 tampons ; pour les tampons mélangés, cette variable est définie avec le numéro pour le premier tampon et des espaces pour les tampons suivants avec le même numéro
        - ${number2} : numéro indenté, par exemple " 1" s'il y a entre 10 et 99 tampons
        - ${number_displayed} : "1" si le numéro est affiché, sinon "0"
        - ${indent} : indentation pour le nom (les tampons de canaux ou privés sont indentés) (évaluation de l'option buflist.format.indent)
        - ${format_nick_prefix} : le préfixe du pseudo en couleur pour un canal (évaluation de l'option buflist.format.nick_prefix)
        - ${color_nick_prefix} : la couleur du préfixe du pseudo pour un canal (défini seulement si l'option buflist.look.nick_prefix est activée)
        - ${nick_prefix} : le préfixe du pseudo pour un canal (défini seulement si l'option buflist.look.nick_prefix est activée)
        - ${format_name} : le nom formaté (évaluation de l'option buflist.format.name)
        - ${name} : le nom court (si défini), sinon le nom
        - ${color_hotlist} : la couleur qui dépend du niveau de hotlist le plus élevé pour le tampon (évaluation de l'option buflist.format.hotlist_xxx où xxx est le niveau)
        - ${format_hotlist} : la hotlist formatée (évaluation de l'option buflist.format.hotlist)
        - ${hotlist} : la hotlist brute
        - ${hotlist_priority} : "none", "low", "message", "private" ou "highlight"
        - ${hotlist_priority_number} : -1 = none, 0 = low, 1 = message, 2 = private, 3 = highlight
        - ${format_lag} : le lag pour un tampon de serveur IRC, vide s'il n'y a pas de lag (évaluation de l'option buflist.format.lag)
        - ${format_tls_version}: indicateur de la version de TLS pour le serveur courant, vide pour les canaux (évaluation de l'option buflist.format.tls_version)

#### オプション

buflist.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`format` | `/set buflist.format.*` | バッファリストの表示書式
`look` | `/set buflist.look.*` | 外観

オプション:

- buflist.format.buffer

  - description: format pour chaque ligne avec un tampon (note : le contenu est évalué, voir /help buflist) ; exemple : format standard pour l'objet de barre "buflist" et seulement le numéro du tampon entre crochets pour les autres objets de barre ("buflist2" et "buflist3") : "${if:${bar_item.name}==buflist?${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}:[${number}]}"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${format_number}${indent}${format_nick_prefix}${color_hotlist}${format_name}"`

- buflist.format.buffer_current

  - description: format pour la ligne avec le tampon courant (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${color:,17}${format_buffer}"`

- buflist.format.hotlist

  - description: format pour la hotlist (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `" ${color:green}(${hotlist}${color:green})"`

- buflist.format.hotlist_highlight

  - description: format pour un tampon avec la hotlist de niveau "highlight" (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${color:magenta}"`

- buflist.format.hotlist_low

  - description: format pour un tampon avec la hotlist de niveau "low" (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${color:white}"`

- buflist.format.hotlist_message

  - description: format pour un tampon avec la hotlist de niveau "message" (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${color:brown}"`

- buflist.format.hotlist_none

  - description: format pour un tampon qui n'est pas dans la hotlist (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${color:default}"`

- buflist.format.hotlist_private

  - description: format pour un tampon avec la hotlist de niveau "private" (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${color:green}"`

- buflist.format.hotlist_separator

  - description: séparateur pour les compteurs dans la hotlist (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${color:default},"`

- buflist.format.indent

  - description: chaîne affichée pour indenter un tampon de canal ou privé (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `" "`

- buflist.format.lag

  - description: format pour le lag sur un tampon de serveur IRC (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `" ${color:green}[${color:brown}${lag}${color:green}]"`

- buflist.format.name

  - description: format pour le nom du tampon (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${name}"`

- buflist.format.nick_prefix

  - description: format pour un préfixe de pseudo sur un canal (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${color_nick_prefix}${nick_prefix}"`

- buflist.format.number

  - description: format pour un numéro de tampon, ${number} est le numéro indenté (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${color:green}${number}${if:${number_displayed}?.: }"`

- buflist.format.tls_version

  - description: format pour la version de TLS sur un serveur IRC (note : le contenu est évalué, voir /help buflist)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `" ${color:default}(${if:${tls_version}==TLS1.3?${color:green}:${if:${tls_version}==TLS1.2?${color:yellow}:${color:red}}}${translate:${tls_version}}${color:default})"`

- buflist.look.add_newline

  - description: ajouter une nouvelle ligne entre les tampons affichés, de sorte que chaque tampon est affiché sur une ligne séparée (recommandé) ; si désactivé, les nouvelles lignes doivent être ajoutées dans les formats avec "${\n}", et les actions de souris ne sont plus possibles

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- buflist.look.auto_scroll

  - description: faire défiler automatiquement la barre buflist pour toujours voir le tampon courant (cela fonctionne seulement avec une barre en position gauche/droite avec un remplissage "vertical") ; cette valeur est un pourcentage de lignes affichées avant le tampon courant lors du défilement (-1 = désactiver le défilement) ; par exemple 50 signifie qu'après un défilement, le tampon courant est au milieu de la barre, 0 signifie en haut de la barre et 100 signifie en bas de la barre

  - type: entier

  - valeurs: -1 .. 100

  - valeur par défaut: `50`

- buflist.look.display_conditions

  - description: conditions pour afficher un tampon (note : le contenu est évalué, voir /help buflist) ; par exemple pour cacher les tampons de serveurs s'ils sont fusionnés avec le tampon "core" : "${buffer.hidden}==0 && ((${type}!=server && ${buffer.full_name}!=core.weechat) || ${buffer.active}==1)"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${buffer.hidden}==0"`

- buflist.look.enabled

  - description: activer buflist ; il est recommandé d'utiliser cette option plutôt que de juste cacher la barre car cela supprime également des hooks internes qui ne sont plus nécessaires lorsque la barre est cachée ; vous pouvez aussi utiliser la commande "/buflist toggle" ou la touche par défaut key alt+shift+b

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- buflist.look.mouse_jump_visited_buffer

  - description: si activé, les clics avec les boutons gauche/droit sur la ligne avec le tampon courant sautent au tampon visité avant/après

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- buflist.look.mouse_move_buffer

  - description: si activé, les gestes de souris (glisser/déposer) déplacent les tampons dans la liste

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- buflist.look.mouse_wheel

  - description: si activé, les actions de roulette de souris haut/bas sautent au tampon précédent/suivant dans la liste

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- buflist.look.nick_prefix

  - description: obtenir le préfixe du pseudo et sa couleur depuis la liste de pseudos de telle sorte que ${nick_prefix} puisse être utilisé dans le format ; cela peut être lent sur les tampons avec beaucoup de pseudos dans la liste, donc cette option est désactivée par défaut

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- buflist.look.nick_prefix_empty

  - description: lorsque le préfixe de pseudo est activé, afficher un espace à la place s'il n'y a pas de préfixe de pseudo sur le tampon

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- buflist.look.signals_refresh

  - description: liste de signaux séparés par des virgules qui sont accrochés et déclenchent l'affichage de la liste des tampons ; cela peut être utile si certaines variables personnalisées sont utilisées dans les formats et nécessitent un rafraîchissement particulier

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- buflist.look.sort

  - description: liste de champs séparés par des virgules pour trier les tampons ; chaque champ est une variable hdata du tampon ("var"), une variable hdata du serveur IRC ("irc_server.var") ou une variable hdata du canal IRC ("irc_channel.var") ; le caractère "-" peut être utilisé pour inverser l'ordre, le caractère "~" peut être utilisé pour effectuer une comparaison insensible à la casse ; exemples : "-~short_name" pour un tri inverse insensible à la casse sur le nom court du tampon, "-hotlist.priority,hotlist.creation_time.tv_sec,number,-active" pour un tri comme la hotlist puis par numéro de tampon pour les tampons sans activité (note : le contenu est évalué, avant d'être découpé en champs, mais à cet instant "bar_item" est la seule variable qui peut être utilisée, pour distinguer les différents objets de barre buflist, par exemple "${bar_item.name}")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"number,-active"`

- buflist.look.use_items

  - description: nombre d'objets de barre buflist qui peuvent être utilisés ; les objets de barre sont : "buflist", "buflist2", "buflist3" ; attention, utiliser plus d'un objet de barre ralentit l'affichage de la liste des tampons

  - type: entier

  - valeurs: 1 .. 3

  - valeur par défaut: `1`

## 6. Key bindings

WeeChat provides a lot of default key bindings, listed in the following chapters.
They can be changed and new ones can be added with the /key command.

### 6.1. コマンドライン用のキー

#### Cursor movement

キー | 説明 | コマンド
--- | --- | ---
`←` `Shift`+`←` `Ctrl`+`b` | コマンドラインで前の文字に移動 | `/input move_previous_char`
`→` `Shift`+`→` `Ctrl`+`f` | コマンドラインで次の文字に移動 | `/input move_next_char`
`Shift`+`↑` | Go to previous line. | `/input move_previous_line`
`Shift`+`↓` | Go to next line. | `/input move_next_line`
`Ctrl`+`←` `Alt`+`b` | コマンドラインで前の単語に移動 | `/input move_previous_word`
`Ctrl`+`→` `Alt`+`f` | コマンドラインで次の単語に移動 | `/input move_next_word`
`Home` `Ctrl`+`a` | Go to the beginning of current line. | `/input move_beginning_of_line`
`Shift`+`Home` | Go to the beginning of command line. | `/input move_beginning_of_input`
`End` `Ctrl`+`e` | Go to the end of current line. | `/input move_end_of_line`
`Shift`+`End` | Go to the end of command line. | `/input move_end_of_input`

#### Editing

キー | 説明 | コマンド
--- | --- | ---
`Del` `Ctrl`+`d` | コマンドラインで次の文字を削除 | `/input delete_next_char`
`Backspace` `Ctrl`+`h` | コマンドラインで前の文字を削除 | `/input delete_previous_char`
`Ctrl`+`k` | Delete from cursor until end of current line (deleted string is copied to the internal clipboard). | `/input delete_end_of_line`
`Alt`+`Ctrl`+`k` | Delete from cursor until end of command line (deleted string is copied to the internal clipboard). | `/input delete_end_of_input`
`Ctrl`+`t` | 文字の入れ替え | `/input transpose_chars`
`Ctrl`+`u` | Delete from cursor until beginning of current line (deleted string is copied to the internal clipboard). | `/input delete_beginning_of_line`
`Alt`+`Ctrl`+`u` | Delete from cursor until beginning of command line (deleted string is copied to the internal clipboard). | `/input delete_beginning_of_input`
`Alt`+`Backspace` | コマンドラインで前の単語を削除 (削除された文字列は WeeChat 専用の内部クリップボードに保存) | `/input delete_previous_word`
`Ctrl`+`w` | Delete previous word of command line until whitespace (deleted string is copied to the internal clipboard). | `/input delete_previous_word_whitespace`
`Ctrl`+`y` | WeeChat 専用の内部クリップボードの内容をペースト | `/input clipboard_paste`
`Ctrl`+`_` | コマンドラインの最後の動作をやり直す | `/input undo`
`Alt`+`_` | コマンドラインの最後の動作を取り消す | `/input redo`
`Tab` | コマンドやニックネームを補完 (再度 `Tab` することで次の補完候補を表示) | `/input complete_next`
`Shift`+`Tab` | 補完候補が無い場合: 部分補完を行う、補完候補が有る場合: 前の補完候補を表示 | `/input complete_previous`
`Enter` `Ctrl`+`j` `Ctrl`+`m` | コマンドを実行するか、メッセージを送信する (検索モードの場合: 検索の終了) | `/input return`
`Alt`+`Enter` | Insert a newline. | `/input insert \n`
`Alt`+`d` | コマンドラインで次の単語を削除 (削除された文字列は WeeChat 専用の内部クリップボードに保存) | `/input delete_next_word`
`Alt`+`k` | キー入力を奪って、コマンドラインにコード (キーが割り当てられていればコマンド) を入力 | `/input grab_key_command`
`Alt`+`r` | Delete current line. | `/input delete_line`
`Alt`+`R` | Delete entire command line. | `/input delete_input`

#### Color codes

キー | 説明 | コマンド
--- | --- | ---
`Ctrl`+`c`, `b` | テキストを太字化するコードの挿入 | `/input insert \x02`
`Ctrl`+`c`, `c` | テキストに色をつけるコードの挿入 | `/input insert \x03`
`Ctrl`+`c`, `i` | テキストをイタリック体にするコードの挿入 | `/input insert \x1D`
`Ctrl`+`c`, `o` | テキスト色のリセットを行うコードの挿入 | `/input insert \x0F`
`Ctrl`+`c`, `v` | テキスト色の反転を行うコードの挿入 | `/input insert \x16`
`Ctrl`+`c`, `_` | テキストに下線を引くコードの挿入 | `/input insert \x1F`

#### Command history

キー | 説明 | コマンド
--- | --- | ---
`↑` | 前のコマンド/メッセージを呼び出す (検索モードの場合: 上方向に検索) | `/input history_previous`
`↓` | 次のコマンド/メッセージを呼び出す (検索モードの場合: 下方向に検索) | `/input history_next`
`Ctrl`+`↑` | グローバル履歴から前のコマンド/メッセージを呼び出す (すべてのバッファに対して共通の履歴) | `/input history_global_previous`
`Ctrl`+`↓` | グローバル履歴から次のコマンド/メッセージを呼び出す (すべてのバッファに対して共通の履歴) | `/input history_global_next`

### 6.2. Buffers

キー | 説明 | コマンド
--- | --- | ---
`Ctrl`+`r` | バッファ中の履歴からテキスト検索 (検索モード用のキーを参照) | `/input search_text_here`
`Ctrl`+`s`, `Ctrl`+`u` | すべてのバッファに未読マークをセット | `/allbuf /buffer set unread`
`Ctrl`+`x` | Switch current buffer if buffers are merged with same number, for example switch to another IRC server buffer. | `/buffer switch`
`Alt`+`x` | マージされたバッファに再ズーム (`Alt`+`x`: 全てのマージされたバッファを表示) | `/buffer zoom`
`PgUp` | バッファ履歴を 1 ページ分上方向にスクロール | `/window page_up`
`PgDn` | バッファ履歴を 1 ページ分下方向にスクロール | `/window page_down`
`Alt`+`PgUp` | バッファ履歴を数行分上方向にスクロール | `/window scroll_up`
`Alt`+`PgDn` | バッファ履歴を数行分下方向にスクロール | `/window scroll_down`
`Alt`+`Home` | バッファ履歴を最初までスクロール | `/window scroll_top`
`Alt`+`End` | バッファ履歴を最後までスクロール | `/window scroll_bottom`
`Alt`+`←` `Alt`+`↑` `Ctrl`+`p` `F5` | 前のバッファに移動 | `/buffer -1`
`Alt`+`→` `Alt`+`↓` `Ctrl`+`n` `F6` | 後のバッファに移動 | `/buffer +1`
`Alt`+`j`, `Alt`+`f` | 最初のバッファに移動 | `/buffer -`
`Alt`+`j`, `Alt`+`l` (`L`) | 最後のバッファに移動 | `/buffer +`
`Alt`+`j`, `Alt`+`r` | IRC 生バッファに移動 | `/server raw`
`Alt`+`j`, `Alt`+`s` | IRC サーババッファに移動 | `/server jump`
`Alt`+`0…​9` | 番号のバッファに移動 (0 = 10) | `/buffer *N`
`Alt`+`j`, `01…​99` | 番号のバッファに移動 | `/buffer *NN`
`Alt`+`n` | 次のハイライトまでスクロール | `/window scroll_next_highlight`
`Alt`+`p` | 前のハイライトまでスクロール | `/window scroll_previous_highlight`
`Alt`+`u` | バッファを最初の未読行までスクロール | `/window scroll_unread`
`Alt`+`<` | バッファ訪問履歴で前のバッファに移動 | `/buffer jump prev_visited`
`Alt`+`>` | バッファ訪問履歴で次のバッファに移動 | `/buffer jump next_visited`
`Alt`+`/` | 最後に表示したバッファに移動 (バッファ移動前に表示していたウィンドウ) | `/buffer jump last_displayed`

### 6.3. Windows

キー | 説明 | コマンド
--- | --- | ---
`Ctrl`+`l` (`L`) | 全ウィンドウを再描画 | `/window refresh`
`Alt`+`l` (`L`) | 最小限表示の有効無効を切り替え | `/window bare`
`F7` | ウィンドウを前に移動 | `/window -1`
`F8` | ウィンドウを後に移動 | `/window +1`
`Alt`+`w`, `Alt`+`↑` | 上のウィンドウに移動 | `/window up`
`Alt`+`w`, `Alt`+`↓` | 下のウィンドウに移動 | `/window down`
`Alt`+`w`, `Alt`+`←` | 左のウィンドウに移動 | `/window left`
`Alt`+`w`, `Alt`+`→` | 右のウィンドウに移動 | `/window right`
`Alt`+`w`, `Alt`+`b` | すべてのウィンドウサイズを均等に | `/window balance`
`Alt`+`w`, `Alt`+`s` | 2 つのウィンドウを入れ替え | `/window swap`
`Alt`+`z` | 現在のウィンドウを最大化 (再度 `Alt`+`z` することで: 最初のウィンドウ状態に戻す、最大化前の状態) | `/window zoom`

### 6.4. Bars

キー | 説明 | コマンド
--- | --- | ---
`F1` `Ctrl`+`F1` | バッファリストを上方に 1 ページスクロール | `/bar scroll buflist * -100%`
`F2` `Ctrl`+`F2` | バッファリストを下方に 1 ページスクロール | `/bar scroll buflist * +100%`
`Alt`+`F1` | バッファリストを上端までスクロール | `/bar scroll buflist * b`
`Alt`+`F2` | バッファリストを下端までスクロール | `/bar scroll buflist * e`
`F9` | バッファタイトルを左方向にスクロール | `/bar scroll title * -30%`
`F10` | バッファタイトルを右方向にスクロール | `/bar scroll title * +30%`
`F11` `Ctrl`+`F11` | ニックネームリストを上方向にスクロール | `/bar scroll nicklist * -100%`
`F12` `Ctrl`+`F12` | ニックネームリストを下方向にスクロール | `/bar scroll nicklist * +100%`
`Alt`+`F11` | ニックネームリストを一番上にスクロール | `/bar scroll nicklist * b`
`Alt`+`F12` | ニックネームリストを一番下にスクロール | `/bar scroll nicklist * e`
`Alt`+`Shift`+`B` | Toggle buflist. | `/buflist toggle`
`Alt`+`Shift`+`N` | Toggle nicklist bar. | `/bar toggle nicklist`

### 6.5. Hotlist

キー | 説明 | コマンド
--- | --- | ---
`Alt`+`a` | 変更のあった次のバッファに移動 (優先順位: ハイライト、新規メッセージ、その他) | `/buffer jump smart`
`Alt`+`h`, `Alt`+`c` | Clear hotlist (activity notification on buffers). | `/hotlist clear`
`Alt`+`h`, `Alt`+`m` | Remove current buffer from hotlist. | `/hotlist remove`
`Alt`+`h`, `Alt`+`r` | Restore latest hotlist removed in the current buffer. | `/hotlist restore`
`Alt`+`h`, `Alt`+`Shift`+`R` | Restore latest hotlist removed in all buffers. | `/hotlist restore -all`

### 6.6. Toggle keys

キー | 説明 | コマンド
--- | --- | ---
`Alt`+`m` | マウスの有効無効を切り替え | `/mouse toggle`
`Alt`+`s` | スペルチェッカの有効無効を切り替え | `/mute spell toggle`
`Alt`+`=` | フィルタの有効無効を切り替え | `/filter toggle`
`Alt`+`-` | 現在のバッファのフィルタの有効無効を切り替え | `/filter toggle @`

### 6.7. Search context

以下のキーは「検索」検索モード (バッファ内のテキスト検索用に `Ctrl`+`r` が押された状態) でのみ有効です。

キー | 説明 | コマンド
--- | --- | ---
`Ctrl`+`r` | 検索タイプを切り替え: 文字列 (デフォルト)、正規表現 | `/input search_switch_regex`
`Alt`+`c` | 大文字小文字を区別して検索 | `/input search_switch_case`
`Tab` | 検索範囲: メッセージ (デフォルト)、プレフィックス、プレフィックスとメッセージ | `/input search_switch_where`
`↑` | 前のキーワードで検索 | `/input search_previous`
`↓` | 次のキーワードで検索 | `/input search_next`
`Enter` `Ctrl`+`j` `Ctrl`+`m` | 現在の位置で検索を終了 | `/input search_stop_here`
`Ctrl`+`q` | Stop search and reset scroll to pre-text search state. | `/input search_stop`

### 6.8. Cursor context

以下のキーは「カーソル」モード (画面上でカーソルを自由に動かせる状態) でのみ有効です。

キー | エリア | 説明 | コマンド
--- | --- | --- | ---
`↑` | - | カーソルを上の行に移動 | `/cursor move up`
`↓` | - | カーソルを下の行に移動 | `/cursor move down`
`←` | - | カーソルを左の列に移動 | `/cursor move left`
`→` | - | カーソルを右の列に移動 | `/cursor move right`
`Alt`+`↑` | - | カーソルを上のエリアに移動 | `/cursor move area_up`
`Alt`+`↓` | - | カーソルを下のエリアに移動 | `/cursor move area_down`
`Alt`+`←` | - | カーソルを左のエリアに移動 | `/cursor move area_left`
`Alt`+`→` | - | カーソルを右のエリアに移動 | `/cursor move area_right`
`m` | チャット | メッセージを引用 | `hsignal:chat_quote_message;/cursor stop`
`l` | チャット | Quote focused line. | `hsignal:chat_quote_focused_line;/cursor stop`
`q` | チャット | プレフィックスとメッセージを引用 | `hsignal:chat_quote_prefix_message;/cursor stop`
`Q` | チャット | 時間、プレフィックス、メッセージを引用 | `hsignal:chat_quote_time_prefix_message;/cursor stop`
`b` | ニックネームリスト | ニックネームをバンする | `/window ${_window_number};/ban ${nick}`
`k` | ニックネームリスト | ニックネームをキックする | `/window ${_window_number};/kick ${nick}`
`K` | ニックネームリスト | ニックネームをバンとキックする | `/window ${_window_number};/kickban ${nick}`
`q` | ニックネームリスト | ニックネームに対するクエリを開く | `/window ${_window_number};/query ${nick};/cursor stop`
`w` | ニックネームリスト | ニックネームに対して whois を行う | `/window ${_window_number};/whois ${nick}`
`Enter` `Ctrl`+`j` `Ctrl`+`m` | - | カーソルモードを終了 | `/cursor stop`

### 6.9. Mouse

These mouse actions are possible only if mouse is enabled with key `Alt`+`m` (command: `/mouse toggle`).

ボタン/ホイール (1) | ジェスチャー | エリア | 説明 | コマンド
--- | --- | --- | --- | ---
◾◽◽ | - | チャット | ウィンドウに移動 | `/window ${_window_number}`
◾◽◽ | 左 | チャット | 前のバッファに移動 | `/window ${_window_number};/buffer +1`
◾◽◽ | 右 | チャット | 次のバッファに移動 | `/window ${_window_number};/buffer +1`
◾◽◽ | 左 (長く) | チャット | 最初のバッファに移動 | `/window ${_window_number};/buffer 1`
◾◽◽ | 右 (長く) | チャット | 最後のバッファに移動 | `/window ${_window_number};/buffer +`
`▲` | - | チャット | バッファ履歴を上方向にスクロール | `/window scroll_up -window ${_window_number}`
`▼` | - | チャット | バッファ履歴を下方向にスクロール | `/window scroll_down -window ${_window_number}`
`Ctrl`+`▲` | - | チャット | 水平左方向にスクロール | `/window scroll_horiz -window ${_window_number} -10%`
`Ctrl`+`▼` | - | チャット | 水平右方向にスクロール | `/window scroll_horiz -window ${_window_number} +10%`
`▲` | - | chat: fset buffer | Move five lines up in fset buffer. | `/fset -up 5`
`▼` | - | chat: fset buffer | Move five lines down in fset buffer. | `/fset -down 5`
◾◽◽ | - | chat: fset buffer | Select line in fset buffer. | `/window ${_window_number};/fset -go ${_chat_line_y}`
◽◽◾ | - | chat: fset buffer | Toggle boolean (on/off) or edit the option value. | `hsignal:fset_mouse`
◽◽◾ | left | chat: fset buffer | Decrease value for integer/color, set/append to value for other types. | `hsignal:fset_mouse`
◽◽◾ | right | chat: fset buffer | Increase value for integer/color, set/append to value for other types. | `hsignal:fset_mouse`
◽◽◾ | up / down | chat: fset buffer | Mark/unmark multiple options. | `hsignal:fset_mouse`
`▲` | - | チャット: スクリプトバッファ | スクリプトバッファを 5 行上方向にスクロール | `/script up 5`
`▼` | - | チャット: スクリプトバッファ | スクリプトバッファで 5 行下方向にスクロール | `/script down 5`
◾◽◽ | - | チャット: スクリプトバッファ | スクリプトバッファで行選択 | `/script go ${_chat_line_y}`
◽◽◾ | - | チャット: スクリプトバッファ | スクリプトのインストール `+/ 削除 | /script go ${_chat_line_y};/script installremove ${script_name_with_extension}+`
◾◽◽ | 上 / 左 | バッファリスト | 指定したバッファを下の番号に移動 | `buflist_mouse` シグナル
◾◽◽ | 下 / 右 | バッファリスト | 指定したバッファを上の番号に移動 | `buflist_mouse` シグナル
◾◽◽ | - | バッファリスト | 指定したバッファに切り替える (現在のバッファを指定した場合、バッファ切り替え履歴で前のバッファに切り替える) | `buflist_mouse` シグナル
◽◽◾ | - | バッファリスト | 現在のバッファを指定した場合、バッファ切り替え履歴で次のバッファに切り替える | `buflist_mouse` シグナル
`Ctrl`+`▲` | - | バッファリスト | バッファ切り替え履歴で前のバッファに切り替える | `buflist_mouse` シグナル
`Ctrl`+`▼` | - | バッファリスト | バッファ切り替え履歴で次のバッファに切り替える | `buflist_mouse` シグナル
◾◽◽ | 上 | ニックネームリスト | ニックネームリストを 1 ページ分上方向にスクロール | `/bar scroll nicklist ${_window_number} -100%`
◾◽◽ | 下 | ニックネームリスト | ニックネームリストを 1 ページ分下方向にスクロール | `/bar scroll nicklist ${_window_number} +100%`
◾◽◽ | 上 (長く) | ニックネームリスト | ニックネームリストの最初に移動 | `/bar scroll nicklist ${_window_number} b`
◾◽◽ | 下 (長く) | ニックネームリスト | ニックネームリストの最後に移動 | `/bar scroll nicklist ${_window_number} e`
◾◽◽ | - | ニックネームリスト | ニックネームに対するクエリを開く | `/window ${_window_number};/query ${nick}`
◽◽◾ | - | ニックネームリスト | ニックネームに対する whois を行う | `/window ${_window_number};/whois ${nick}`
◾◽◽ | 左 | ニックネームリスト | ニックネームをキックする | `/window ${_window_number};/kick ${nick}`
◾◽◽ | 左 (長く) | ニックネームリスト | ニックネームをキックとバンする | `/window ${_window_number};/kickban ${nick}`
◽◽◾ | 左 | ニックネームリスト | ニックネームをバンする | `/window ${_window_number};/ban ${nick}`
◽◽◾ | - | 入力 | マウスイベントを奪ってコマンドラインにコードを入力 | `/input grab_mouse_area`
`▲` | - | 任意のバー | バーを -20% スクロール | `/bar scroll ${_bar_name} ${_window_number} -20%`
`▼` | - | 任意のバー | バーを +20% スクロール | `/bar scroll ${_bar_name} ${_window_number} +20%`
◽◾◽ | - | 任意の場所 | この場所でカーソルモードを開始 | `/cursor go ${_x},${_y}`

| (1) `▲` と `▼` はホイールの上方向回転と下方向回転に対応します。

### 6.10. Fset buffer

These keys and actions are used on the fset buffer (see Fset plugin).

Key | Action (1) | Description | Command
--- | --- | --- | ---
`↑` |  | Move one line up. | `/fset -up`
`↓` |  | Move one line down. | `/fset -down`
`PgUp` |  | Move one page up. | `/window page_up`
`PgDn` |  | Move one page down. | `/window page_down`
`Alt`+`Home` | `<<` | Move to first line. | `/fset -go 0`
`Alt`+`End` | `>>` | Move to last line. | `/fset -go end`
`F11` | `<` | Scroll horizontally on the left. | `/fset -left`
`F12` | `>` | Scroll horizontally on the right. | `/fset -right`
`Alt`+`Space` | `t` | Toggle boolean value. | `/fset -toggle`
`Alt`+`-` | `-` | Subtract 1 from value for integer/color, set value for other types. | `/fset -add -1`
`Alt`+`+` | `+` | Add 1 to value for integer/color, append to value for other types. | `/fset -add 1`
`Alt`+`f`, `Alt`+`r` | `r` | Reset value. | `/fset -reset`
`Alt`+`f`, `Alt`+`u` | `u` | Unset value. | `/fset -unset`
`Alt`+`Enter` | `s` | Set value. | `/fset -set`
`Alt`+`f`, `Alt`+`n` | `n` | Set new value. | `/fset -setnew`
`Alt`+`f`, `Alt`+`a` | `a` | Append to value. | `/fset -append`
`Alt`+`,` | `,` | Mark/unmark option. | `/fset -mark 1`
`Shift`+`↑` |  | Move one line up and mark/unmark option. | `/fset -up; /fset -mark`
`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 /fset command). |
| `u:xxx` | Unmark options displayed that are matching filter "xxx" (any filter on option or value is allowed, see /fset command). |
`Ctrl`+`l` (`L`) |  | Refresh options and whole screen. | `/fset -refresh`
| `$` | Refresh options (keep marked options). |
| `$$` | Refresh options (unmark all options). |
`Alt`+`p` |  | Toggle plugin description options (`plugins.desc.*`). | `/mute /set fset.look.show_plugins_desc toggle`
`Alt`+`v` |  | Toggle help bar. | `/bar toggle fset`
| `s:x,y` | Sort options by fields x,y (see option fset.look.sort). | `/mute /set fset.look.sort x,y`
| `s:` | Reset sort to its default value (see option 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`
`Ctrl`+`x` | `x` | Switch the format used to display options. | `/fset -format`
| `q` | Close fset buffer. | `/buffer close`

| (1) The action must be entered as input on the command line, followed by `Enter`.

### 6.11. Script buffer

These keys and actions are used on the script buffer (see script manager).

Key | Action (1) | Description | Command
--- | --- | --- | ---
`↑` |  | Move one line up. | `/script up`
`↓` |  | Move one line down. | `/script down`
`PgUp` |  | Move one page up. | `/window page_up`
`PgDn` |  | Move one page down. | `/window page_down`
`Alt`+`i` | `i` | Install script. | `/script install`
`Alt`+`r` | `r` | Remove script. | `/script remove`
`Alt`+`l` (`L`) | `l` | Load script. | `/script load`
`Alt`+`u` | `u` | Unload script. | `/script unload`
`Alt`+`Shift`+`A` | `A` | Autoload script. | `/script toggleautoload`
`Alt`+`h` | `h` | Hold/unhold script. | `/script hold`
`Alt`+`v` | `v` | View script. | `/script show`

| (1) The action must be entered as input on the command line, followed by `Enter`.

## 7. Configuration

### 7.1. Fset

fset (高速設定) プラグインはバッファ内にオプションのリストを表示し、WeeChat とプラグインのオプション設定を支援します。

Example of fset buffer displaying options starting with `weechat.look` :

    ┌──────────────────────────────────────────────────────────────────────────────────────┐
    │1.weechat│1/121 | Filter: weechat.look.* | Sort: ~name | Key(input): alt+space=toggle │
    │2.fset   │weechat.look.bare_display_exit_on_input: exit the bare display mode on any c│
    │         │hanges in input [default: on]                                               │
    │         │----------------------------------------------------------------------------│
    │         │  weechat.look.align_end_of_lines                   integer  message        │
    │         │  weechat.look.align_multiline_words                boolean  on             │
    │         │  weechat.look.bar_more_down                        string   "++"           │
    │         │  weechat.look.bar_more_left                        string   "<<"           │
    │         │  weechat.look.bar_more_right                       string   ">>"           │
    │         │  weechat.look.bar_more_up                          string   "--"           │
    │         │  weechat.look.bare_display_exit_on_input           boolean  on             │
    │         │  weechat.look.bare_display_time_format             string   "%H:%M"        │
    │         │  weechat.look.buffer_auto_renumber                 boolean  on             │
    │         │  weechat.look.buffer_notify_default                integer  all            │
    │         │  weechat.look.buffer_position                      integer  end            │
    │         │  weechat.look.buffer_search_case_sensitive         boolean  off            │
    │         │  weechat.look.buffer_search_force_default          boolean  off            │
    │         │  weechat.look.buffer_search_regex                  boolean  off            │
    │         │  weechat.look.buffer_search_where                  integer  prefix_message │
    │         │  weechat.look.buffer_time_format                   string   "%H:%M:%S"     │
    │         │  weechat.look.buffer_time_same                     string   ""             │
    │         │[12:55] [2] [fset] 2:fset                                                   │
    │         │█                                                                           │
    └──────────────────────────────────────────────────────────────────────────────────────┘

#### コマンド

- `fset`: définir rapidement des options WeeChat et des extensions

    /fset  -bar
           -refresh
           -up|-down [<nombre>]
           -left|-right [<pourcentage>]
           -go <ligne>|end
           -toggle
           -add [<valeur>]
           -reset
           -unset
           -set
           -setnew
           -append
           -mark
           -format
           -export [-help|-nohelp] <fichier>
           <filtre>

           -bar : ajouter la barre d'aide
       -refresh : rafraîchir la liste des options, puis l'écran entier (commande : /window refresh)
            -up : déplacer la ligne sélectionnée de "nombre" lignes vers le haut
          -down : déplacer la ligne sélectionnée de "nombre" lignes vers le bas
          -left : faire défier le tampon fset de "pourcentage" de largeur vers la gauche
         -right : faire défier le tampon fset de "pourcentage" de largeur vers la droite
            -go : sélectionner une ligne par numéro, la première ligne est 0 ("end" pour sélectionner la dernière ligne)
        -toggle : basculer la valeur booléenne
           -add : ajouter "valeur" (qui peut être un nombre négatif) pour les entiers et couleurs, définir/ajouter à la valeur pour les autres types (définir pour une valeur négative, ajouter pour un nombre positif)
         -reset : réinitialiser la valeur de l'option
         -unset : supprimer/réinitialiser l'option
           -set : ajouter la commande /set dans l'entrée pour éditer la valeur de l'option (déplacer le curseur au début de la valeur)
        -setnew : ajouter la commande /set dans l'entrée pour éditer une nouvelle valeur pour l'option
        -append : ajouter la commande /set pour ajouter quelque chose dans la valeur de l'option (déplacer le curseur à la fin de la valeur)
          -mark : marquer/démarquer
        -format : basculer vers le prochain format disponible
        -export : exporter les options et valeurs affichées dans un fichier (chaque ligne a le format : "/set nom valeur" ou "/unset nom")
          -help : forcer l'écriture de l'aide sur les options dans le fichier exporté (voir /help fset.look.export_help_default)
        -nohelp : ne pas écrire l'aide sur les options dans le fichier exporté (voir /help fset.look.export_help_default)
         filtre : définir un nouveau filtre pour voir seulement les options correspondantes (ce filtre peut aussi être utilisé en entrée du tampon fset) ; les formats autorisés sont :
                   *       afficher toutes les options (pas de filtre)
                   xxx     afficher seulement les options avec "xxx" dans le nom
                   f:xxx   afficher seulement le fichier de configuration "xxx"
                   t:xxx   afficher seulement le type "xxx" (bool/int/str/col)
                   d       afficher seulement les options changées
                   d:xxx   afficher seulement les options changées avec "xxx" dans le nom
                   d=xxx   afficher seulement les options changées avec "xxx" dans la valeur
                   d==xxx  afficher seulement les options changées avec la valeur exacte "xxx"
                   h=xxx   afficher seulement les options avec "xxx" dans la description (traduite)
                   he=xxx  afficher seulement les options avec "xxx" dans la description (en Anglais)
                   =xxx    afficher seulement les options avec "xxx" dans la valeur
                   ==xxx   afficher seulement les options avec la valeur exacte "xxx"
                   c:xxx   afficher seulement les options qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : file, section, option, name, parent_name, type, type_en, type_short (bool/int/str/col), type_tiny (b/i/s/c), default_value, default_value_undef, value, quoted_value, value_undef, value_changed, parent_value, min, max, description, description2, description_en, description_en2, string_values

    Les lignes avec des options sont affichées en utilisant l'évaluation de chaîne (voir /help eval pour le format), avec ces options :
      - fset.format.option1 : premier format pour une option
      - fset.format.option2 : second format pour une option

    Les variables suivantes peuvent être utilisées dans ces options :
      - données de l'option, avec couleur et alignées avec des espaces sur la droite :
        - ${file} : fichier de configuration (par exemple "weechat" ou "irc")
        - ${section} : section
        - ${option} : nom de l'option
        - ${name} : nom complet de l'option (fichier.section.option)
        - ${parent_name} : nom de l'option parente
        - ${type} : type de l'option (traduit)
        - ${type_en} : type de l'option (en Anglais)
        - ${type_short} : type court de l'option (bool/int/str/col)
        - ${type_tiny} : type très court de l'option (b/i/s/c)
        - ${default_value} : valeur par défaut de l'option
        - ${default_value_undef} : "1" si la valeur par défaut est null, sinon "0"
        - ${value} : valeur de l'option
        - ${value_undef} : "1" si la valer est null, sinon "0"
        - ${value_changed} : "1" si la valeur est différente de la valeur par défaut, sinon "0"
        - ${value2} : valeur de l'option, avec la valeur héritée si null
        - ${parent_value} : valeur de l'option parente
        - ${min} : valeur minimale
        - ${max} : valeur maximale
        - ${description} : description de l'option (traduite)
        - ${description2} : description de l'option (traduite), "(pas de description)" s'il n'y a pas de description
        - ${description_en} : description de l'option (en Anglais)
        - ${description_en2} : description de l'option (en Anglais), "(no description)" s'il n'y a pas de description
        - ${string_values} : valeurs chaîne autorisées pour définir une option de type entier utilisant des chaînes
        - ${marked} : "1" si l'option est marquée, sinon "0"
        - ${index} : index de l'option dans la liste
      - données de l'option, avec couleur mais sans espaces :
        - mêmes noms préfixés par un underscore, par exemple : ${_name}, ${_type}, ...
      - données de l'option, format brut (par de couleurs/espaces) :
        - mêmes noms préfixés par deux underscores, par exemple : ${__name}, ${__type}, ...
      - données de l'option, seulement des espaces :
        - mêmes noms préfixés par "empty_", par exemple : ${empty_name}, ${empty_type}
      - autres données :
        - ${selected_line} : "1" si la ligne est sélectionnée, sinon "0"
        - ${newline} : insérer une nouvelle ligne à cet endroit, pour afficher l'option sur plusieurs lignes

    Touches et entrées pour le déplacement dans le tampon fset :
      haut                      se déplacer d'une ligne vers le haut
      bas                       se déplacer d'une ligne vers le bas
      pgup                      se déplacer d'une page vers le haut
      pgdn                      se déplacer d'une page vers le bas
      alt-home          <<      se déplacer à la première ligne
      alt-end           >>      se déplacer à la dernière ligne
      F11               <       faire défiler horizontalement vers la gauche
      F12               >       faire défiler horizontalement vers la droite

    Touches et entrées pour définir les options sur le tampon fset :
      alt+espace        t       basculer la valeur booléenne
      alt+'-'           -       soustraire 1 de la valeur pour un entier/couleur, définir la valeur pour les autres types
      alt+'+'           +       ajouter 1 à la valeur pour un entier/couleur, ajouter à la valeur pour les autres types
      alt+f, alt+r      r       réinitialiser la valeur
      alt+f, alt+u      u       supprimer/réinitialiser la valeur
      alt+entrée        s       définir la valeur
      alt+f, alt+n      n       définir une nouvelle valeur
      alt+f, alt+a      a       ajouter à la valeur
      alt+','           ,       marquer/démarquer l'option
      shift+haut                se déplacer d'une ligne vers le haut et marquer/démarquer l'option
      shift+bas                 marquer/démarquer l'option et se déplacer d'une ligne vers le bas
                        m:xxx   marquer les options affichées qui correspondent au filtre "xxx" (tout filtre sur une option ou valeur est autorisé, voir les filtres ci-dessus)
                        u:xxx   démarquer les options affichées qui correspondent au filtre "xxx" (tout filtre sur une option ou valeur est autorisé, voir les filtres ci-dessus)

    Autres touches et entrées sur le tampon fset :
      ctrl+l                    rafraîchir les options et l'écran entier (commande : /fset -refresh)
                        $       rafraîchir les options (garder les options marquées)
                        $$      rafraîchir les options (démarquer toutes les options)
      alt+p             p       activer/désactiver la description des options d'extensions (plugins.desc.*)
      alt+v             v       activer/désactiver la barre d'aide
                        s:x,y   trier les options par les champs x,y (voir /help fset.look.sort)
                        s:      réinitialiser le tri à sa valeur par défaut (voir /help fset.look.sort)
                        w:xxx   exporter les options dans le fichier "xxx"
                        w-:xxx  exporter les options dans le fichier "xxx" sans aide
                        w+:xxx  exporter les options dans le fichier "xxx" avec aide
      ctrl+x            x       basculer le format utilisé pour afficher les options
                        q       fermer le tampon fset

    Actions de la souris sur le tampon fset :
      roulette haut/bas                     se déplacer vers le haut/bas
      bouton gauche                         se déplacer à cette ligne
      bouton droit                          basculer le booléen (on/off) ou éditer la valeur de l'option
      bouton droit + glisser gauche/droite  incrémenter/décrémenter la valeur pour un entier/couleur, définir/ajouter à la valeur pour les autres types
      bouton droit + glisser haut/bas       marquer/démarquer plusieurs options

    Note : si l'entrée comporte un ou plusieurs espaces en tête, le texte suivant est interprété comme un filtre, sans les espaces. Par exemple " q" cherche toutes les options avec "q" dans le nom, tandis que "q" ferme le tampon fset.

    Exemples :
      afficher les options IRC changées :
        /fset d:irc.*
      afficher les options avec "nicklist" dans le nom :
        /fset nicklist
      afficher les valeurs qui contiennent "red" :
        /fset =red
      afficher les valeurs qui sont exactement "red" :
        /fset ==red
      afficher toutes les options de type "entier" dans l'extension irc :
        /fset c:${file} == irc && ${type_en} == integer

#### オプション

fset.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`color` | `/set fset.color.*` | 色
`format` | `/set fset.format.*` | オプションリストの表示書式
`look` | `/set fset.look.*` | 外観

オプション:

- fset.color.color_name

  - description: couleur pour le nom de la couleur lorsque l'option fset.look.use_color_value est activée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `246`

- fset.color.color_name_selected

  - description: couleur pour le nom de la couleur sur la ligne sélectionnée lorsque l'option fset.look.use_color_value est activée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.default_value

  - description: couleur pour la valeur par défaut

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.default_value_selected

  - description: couleur pour la valeur par défaut sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.description

  - description: couleur pour la description

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `242`

- fset.color.description_selected

  - description: couleur pour la description sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.file

  - description: couleur pour le fichier

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.file_changed

  - description: couleur pour le fichier si la valeur est changée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- fset.color.file_changed_selected

  - description: couleur pour le fichier si la valeur est changée sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- fset.color.file_selected

  - description: couleur pour le fichier sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.help_default_value

  - description: couleur pour la valeur par défaut dans la barre d'aide

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.help_description

  - description: couleur pour la description dans la barre d'aide

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.help_name

  - description: couleur pour le nom dans la barre d'aide

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.help_quotes

  - description: couleur pour les guillemets autour des valeurs de type chaîne

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `darkgray`

- fset.color.help_values

  - description: couleur pour les valeurs autorisées

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.index

  - description: couleur pour l'index de l'option

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- fset.color.index_selected

  - description: couleur pour l'index de l'option sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightcyan`

- fset.color.line_marked_bg1

  - description: couleur du fond pour une ligne marquée (utilisé avec le premier format, voir l'option fset.format.option1)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `17`

- fset.color.line_marked_bg2

  - description: couleur du fond pour une ligne marquée (utilisé avec le second format, voir l'option fset.format.option2)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `17`

- fset.color.line_selected_bg1

  - description: couleur du fond pour la ligne sélectionnée (utilisé avec le premier format, voir l'option fset.format.option1)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `24`

- fset.color.line_selected_bg2

  - description: couleur du fond pour la ligne sélectionnée (utilisé avec le second format, voir l'option fset.format.option2)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `24`

- fset.color.marked

  - description: couleur pour l'indicateur de marquage

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- fset.color.marked_selected

  - description: couleur pour l'indicateur de marquage sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- fset.color.max

  - description: couleur pour la valeur maximale

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.max_selected

  - description: couleur pour la valeur maximale sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.min

  - description: couleur pour la valeur minimale

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.min_selected

  - description: couleur pour la valeur minimale sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.name

  - description: couleur pour le nom

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.name_changed

  - description: couleur pour le nom si la valeur est changée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `185`

- fset.color.name_changed_selected

  - description: couleur pour le nom si la valeur est changée sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- fset.color.name_selected

  - description: couleur pour le nom sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.option

  - description: couleur pour l'option

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.option_changed

  - description: couleur pour l'option si la valeur est changée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- fset.color.option_changed_selected

  - description: couleur de l'option si la valeur est changée sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- fset.color.option_selected

  - description: couleur pour l'option sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.parent_name

  - description: couleur pour le nom de l'option parente

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.parent_name_selected

  - description: couleur pour le nom de l'option parente sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.parent_value

  - description: couleur pour la valeur de l'option parente

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- fset.color.parent_value_selected

  - description: couleur pour la valeur de l'option parente sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightcyan`

- fset.color.quotes

  - description: couleur pour les guillemets autour des valeurs de type chaîne

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `darkgray`

- fset.color.quotes_changed

  - description: couleur pour les guillemets autour des valeurs de chaîne qui sont changées

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.quotes_changed_selected

  - description: couleur des guillemets autour des valeurs de chaîne qui sont changées sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.quotes_selected

  - description: couleur pour les guillemets autour des valeurs de chaîne sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.section

  - description: couleur pour la section

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.section_changed

  - description: couleur pour la section si la valeur est changée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- fset.color.section_changed_selected

  - description: couleur pour la section si la valeur est changée sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- fset.color.section_selected

  - description: couleur pour la section sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.string_values

  - description: couleur pour les valeurs de chaîne

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.string_values_selected

  - description: couleur pour les valeurs de chaîne sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.title_count_options

  - description: couleur pour le nombre d'options trouvées avec le filtre courant dans le titre du tampon

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- fset.color.title_current_option

  - description: couleur pour le numéro de l'option courante dans le titre du tampon

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightcyan`

- fset.color.title_filter

  - description: couleur pour le filtre dans le titre du tampon

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- fset.color.title_marked_options

  - description: couleur pour le nombre d'option marquées dans le titre du tampon

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightgreen`

- fset.color.title_sort

  - description: couleur pour le tri dans le titre du tampon

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.type

  - description: couleur pour le type

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `138`

- fset.color.type_selected

  - description: couleur pour le type sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `216`

- fset.color.unmarked

  - description: couleur pour l'indicateur de marquage lorsque l'option n'est pas marquée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- fset.color.unmarked_selected

  - description: couleur pour l'indicateur de marquage lorsque l'option n'est pas marquée sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- fset.color.value

  - description: couleur pour la valeur

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `38`

- fset.color.value_changed

  - description: couleur pour une valeur changée (différente de la valeur par défaut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `185`

- fset.color.value_changed_selected

  - description: couleur pour la valeur changée (différente de la valeur par défaut) sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- fset.color.value_selected

  - description: couleur pour la valeur sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `159`

- fset.color.value_undef

  - description: couleur pour une valeur non définie

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `magenta`

- fset.color.value_undef_selected

  - description: couleur pour une valeur non définie sur la ligne sélectionnée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightmagenta`

- fset.format.export_help

  - description: format pour l'aide sur l'option écrite avant chaque option dans le fichier exporté (note : le contenu est évalué, voir /help fset)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"# ${description2}"`

- fset.format.export_option

  - description: format pour chaque option exportée dans un fichier (note : le contenu est évalué, voir /help fset)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/set ${name} ${quoted_value}"`

- fset.format.export_option_null

  - description: format pour chaque option avec la valeur "null" exportée dans un fichier (note : le contenu est évalué, voir /help fset)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/unset ${name}"`

- fset.format.option1

  - description: premier format de chaque ligne, utilisé lorsque l'option fset.look.format_number est définie à 1 (note : le contenu est évalué, voir /help fset) ; un format vide utilise le format par défaut ("${marked} ${name} ${type} ${value2}"), qui se fait sans évaluation de chaîne et donc plus rapide ; les formats peuvent être changés avec la touche ctrl+x

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- fset.format.option2

  - description: second format de chaque ligne, utilisé lorsque l'option fset.look.format_number est définie à 2 (note : le contenu est évalué, voir /help fset) ; un format vide utilise le format par défaut ("${marked} ${name} ${type} ${value2}"), qui se fait sans évaluation de chaîne et donc plus rapide ; les formats peuvent être changés avec la touche ctrl+x

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${marked} ${name} ${type} ${value2}${newline} ${empty_name} ${_default_value}${color:244} -- ${min}..${max}${newline} ${empty_name} ${description}"`

- fset.look.auto_refresh

  - description: liste des options à rafraichir automatiquement sur le tampon fset (s'il est ouvert) ; "*" signifie toutes les options (recommandé), un nom commençant par "!" est une valeur négative pour empêcher une option d'être rafraichie, le caractère joker "*" est autorisé dans les noms (exemple : "*,!plugin.section.*")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"*"`

- fset.look.auto_unmark

  - description: démarquer automatiquement toutes les options après une action sur les options marquées ou après un rafraichissement

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- fset.look.condition_catch_set

  - description: condition pour capturer la commande /set et afficher les résultats dans le tampon fset ; les variables suivantes peuvent être utilisées : ${name} (nom de l'option donné pour la commande /set), ${count} (nombre d'options trouvées avec le paramètre de /set) ; une chaîne vide désactive la capture de la commande /set ; avec la valeur "1", le tampon fset est toujours utilisé avec la commande /set

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${count} >= 1"`

- fset.look.export_help_default

  - description: afficher l'aide de chaque option exportée par défaut (cela peut être passé outre avec les paramètres "-help" et "-nohelp" pour la commande /fset -export)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- fset.look.format_number

  - description: numéro du format utilisé pour afficher les options ; cela est dynamiquement changé par la touche ctrl-x sur le tampon fset

  - type: entier

  - valeurs: 1 .. 2

  - valeur par défaut: `1`

- fset.look.marked_string

  - description: chaîne affichée lorsqu'une option est marquée (pour effectuer une action sur plusieurs options)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"*"`

- fset.look.scroll_horizontal

  - description: défilement gauche/droite dans le tampon fset (pourcentage de la largeur)

  - type: entier

  - valeurs: 1 .. 100

  - valeur par défaut: `10`

- fset.look.show_plugins_desc

  - description: afficher les options de description des extensions (plugins.desc.*)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- fset.look.sort

  - description: liste de champs séparés par des virgules pour trier les options (voir /help fset pour la liste des champs) ; le caractère "-" peut être utilisé pour inverser l'ordre, le caractère "~" peut être utilisé pour effectuer une comparaison insensible à la casse ; exemple : "-~name" pour un tri inverse insensible à la casse sur le nom de l'option

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"~name"`

- fset.look.unmarked_string

  - description: chaîne affichée lorsqu'un option n'est pas marquée

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `" "`

- fset.look.use_color_value

  - description: utiliser la couleur pour afficher la valeur des options de couleur

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- fset.look.use_keys

  - description: utiliser les touches alt+X sur le tampon fset pour effectuer les actions sur les options ; si désactivé, seule l'entrée est autorisée

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- fset.look.use_mute

  - description: utiliser la commande /mute pour définir les options

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

### 7.2. Colors

#### 基本色

WeeChat における基本色とは:

名前 | 色
--- | ---
`default` | デフォルトの端末色 (背景色を透過色とする)
`black` | 黒
`darkgray` | 暗い灰色
`red` | 暗い赤
`lightred` | 明るい赤
`green` | 暗い緑色
`lightgreen` | 明るい緑色
`brown` | 茶色
`yellow` | 黄色
`blue` | 暗い青
`lightblue` | 明るい青
`magenta` | 暗い赤紫色
`lightmagenta` | 明るい赤紫色
`cyan` | 暗い青緑色
`lightcyan` | 明るい青緑色
`gray` | 灰色
`white` | 白

#### 拡張色

WeeChat は画面に色が表示された時点で色ペアを動的に割り当てます (バッファとバーを表示する時点で)。

基本色に加えて、1 番 から端末の対応状況に依存する番号までの色番号を利用できます。

`/color` コマンドで現在の色と色制限を確認できます。`Alt`+`c` をタイプすることで、一時的に端末色を選択された色に変更できます。

例えば、バッファ中のに表示される時刻をオレンジ色にしたい場合、以下のようにしてください:

    /set weechat.color.chat_time 214

ステータスバーの色を非常に暗い緑色にしたい場合:

    /set weechat.bar.status.color_bg 22

#### 別名

`/color alias` コマンドを使えば色の別名を追加できます。 追加後は任意の色関連オプションで別名を使えます。

例:

    /color alias 214 orange
    /set weechat.color.chat_delimiters orange

#### 属性

色に対していくつかの属性を付加することができます。1 つ以上の属性を色名または色番号の前に付加できます:

- `%`: blink

- `.`: "dim" (half bright)

- `*` : テキストを太字に

- `!` : テキストを反転

- `/` : テキストをイタリック体に

- `_` : テキストに下線を引く

- `|`: keep attributes: do not reset blink/dim/bold/reverse/italic/underlined when changing color

例えば、自分自身のニックネームの表示色を白にして、下線を引きたい場合:

    /set weechat.color.chat_nick_self _white

ステータスバーの時刻の表示色を橙色にして、下線を引いて、太字にしたい場合:

    /set weechat.color.status_time *_214

デフォルト端末色 (-1) に対して属性を設定したい場合、端末色番号の最大値よりも大きな値を利用してください。例えば、WeeChat における色番号の最大値は 99999 です。

端末の表示色に太字の属性を付加する例:

    /set weechat.color.status_time *99999

### 7.3. Charset

Charset プラグインを使うことで、文字コードに従ってデータのデコードとエンコードができます。

デコード/エンコード用にデフォルトの文字コードが設定されていますが、それぞれのバッファ (バッファグループ) に対して個別に文字コードを設定することもできます。

このプラグインの導入は任意ですが、導入を推奨します: このプラグインがロードされていない場合、WeeChat が読み書きできるデータは UTF-8 データのみになります。

Charset プラグインは WeeChat によって自動的にロードされるべきです。プラグインがロードされていることを確認するには、以下のようにしてください:

    /charset

コマンドが見つからない場合、以下のコマンドでプラグインをロードしてください:

    /plugin load charset

プラグインが見つからない場合、文字コードサポートを有効化した状態で WeeChat を再コンパイルしてください。

Charset プラグインがロードされた場合、端末文字コードと内部文字コードが表示されます。端末文字コードはロケールに依存し、内部文字コードは UTF-8 です。

例:

    charset: terminal: ISO-8859-15, internal: UTF-8

#### 文字コードの設定

グローバルデコード文字コードとエンコード文字コードを設定するには、`/set` コマンドを使ってください。

例:

    /set charset.default.decode ISO-8859-15
    /set charset.default.encode ISO-8859-15

グローバルデコード文字コードが設定されていない場合 (例えば Charset プラグインを始めてロードした場合)、これは自動的に端末の文字コードか (UTF-8 でなければ)、デフォルトの ISO-8859-1 に設定されます。

デフォルトのエンコード文字コードはありません。従って、内部文字コード (UTF-8) が使われます。

IRC サーバの文字コードを設定するには、サーババッファで `/charset` コマンドを使ってください。文字コードのみを引数として与えた場合、この文字コードがデコードとエンコードに利用されます。

例:

    /charset ISO-8859-15

これは以下と等価です:

    /charset decode ISO-8859-15
    /charset encode ISO-8859-15

IRC チャンネル (またはプライベートメッセージ) の文字コードを設定するには、サーバの文字コード設定と同様のコマンドをチャンネル (またはプライベートメッセージ) バッファで使ってください。

IRC サーバの全てのチャンネルおよびプライベートバッファに対する文字コードを設定するには:

    /set charset.encode.irc.libera ISO-8859-15

すべての文字コード設定を確認するには、以下のコマンドを利用してください:

    /set charset.*

#### トラブルシューティング

文字コードに関する問題があれば、WeeChat FAQ (よくある質問) / いくつかの文字が見えません。どうすれば良いですか。 ↗を参照してください。

#### コマンド

- `charset`: changer le charset pour le tampon courant

    /charset  decode|encode <charset>
              reset

     decode : changer le charset de décodage
     encode : changer le charset d'encodage
    charset : nouveau charset pour le tampon courant
      reset : réinitialiser les charsets pour le tampon courant

#### オプション

charset.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`default` | `/set charset.default.*` | デフォルトのデコード/エンコード文字セット
`decode` | `/charset decode /set charset.decode.*` | バッファのデコード文字セット (オプションをセクションに追加/削除出来ます)
`encode` | `/charset encode /set charset.encode.*` | バッファのエンコード文字セット (オプションをセクションに追加/削除出来ます)

オプション:

- charset.default.decode

  - description: charset de décodage global : charset utilisé pour décoder les messages entrants lorsqu'ils ne sont pas valides UTF-8

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"iso-8859-1"`

- charset.default.encode

  - description: charset d'encodage global : charset utilisé pour encoder les messages sortants (si vide, le défaut est UTF-8 car c'est le charset interne de WeeChat)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

### 7.4. 通知レベル

#### 通知レベルの設定

バッファに表示された各メッセージには 4 つのレベルが設定されています。レベルの低いものから順に:

- low: 重要性の低いメッセージ (例えば irc の参加/退出/終了メッセージ)

- message: ユーザからのメッセージ

- private: プライベートバッファのメッセージ

- highlight: ハイライトされたメッセージ

それぞれのバッファには通知レベルが設定されており、通知レベルに対応するメッセージの数がホットリストに表示されます。

デフォルトの通知レベルは weechat.look.buffer_notify_default オプションで指定し、デフォルトは all です。

通知レベル | ホットリストに追加されるメッセージのレベル
--- | ---
`none` | (無効)
`highlight` | highlight + private
`message` | highlight + private + message
`all` | highlight + private + message + low

通知レベルはバッファグループに対して設定することも可能で、例えば irc サーバ "libera" に含まれる全てのバッファに対して設定する場合:

    /set weechat.notify.irc.libera message

"#weechat" チャンネルだけに対して、通知レベルを highlight に設定する場合:

    /set weechat.notify.irc.libera.#weechat highlight

`/buffer` コマンドで、あるバッファに対する通知レベルを設定できます:

    /buffer notify highlight

#### ニックネームに対するホットリストレベルの最大値

ニックネーム、バッファ、バッファグループ (IRC サーバなど) に対してホットリストレベルの最大値を設定することが可能です。

あるニックネームのリストに対してバッファプロパティ "hotlist_max_level_nicks" を設定したり、各ニックネームに対してホットリストレベルの最大値を設定することも可能です。設定可能なレベルは以下です:

- -1: ニックネームがホットリストを変更しない優先度

- 0: 低優先度 (参加および退出メッセージなど)

- 1: 通常メッセージ

- 2: プライベートメッセージ

- 3: ハイライト (これはすべてのメッセージのデフォルト最大値であるため、通常これを指定することはありません)

例えば現在のバッファで "joe" と "mike" からのメッセージに対するハイライトを無効化するには以下のように設定します:

    /buffer set hotlist_max_level_nicks_add joe:2,mike:2

| バッファプロパティ "hotlist_max_level_nicks" は設定ファイルに保存されません。 これを保存するには buffer_autoset.py スクリプトを使ってください: このスクリプトをインストールするには `/script install buffer_autoset.py` コマンドを使い、ヘルプを見るには `/help buffer_autoset` コマンドを使ってください。

### 7.5. ハイライト

#### Disable highlights

You can disable highlights with option weechat.look.highlight_disable_regex (regular expression).
When a highlight is disabled with this option, the other highlight options are ignored.

For example to disable any highlight on messages with a word beginning with "flash" between chevrons:

    /set weechat.look.highlight_disable_regex "<flash.*>"

This can also be set with the buffer property "highlight_disable_regex".

Same example, specific to the current buffer:

    /buffer set highlight_disable_regex <flash.*>

| バッファプロパティ "highlight_disable_regex" は設定ファイルに保存されません。 これを保存するには buffer_autoset.py スクリプトを使ってください: このスクリプトをインストールするには `/script install buffer_autoset.py` コマンドを使い、ヘルプを見るには `/help buffer_autoset` コマンドを使ってください。

#### ハイライトする単語の追加

デフォルトで WeeChat は自分のニックネームが含まれる他のユーザからのメッセージをハイライトします。このため、ハイライトはバッファに依存します (ニックネームはバッファごとに異なる場合があります)。

他の単語を追加するには weechat.look.highlight オプションを使います。例えば自分のニックネーム、"word1"、"word2"、"test" から始まる任意の単語をハイライトするには以下のように設定します:

    /set weechat.look.highlight "word1,word2,test*"

単語に対してさらに具体的なルールを設定する必要がある場合、weechat.look.highlight_regex オプションを使って正規表現で指定することも可能です。例えば "flashcode"、"flashcöde"、"flashy" という単語をハイライトするには以下のように設定します:

    /set weechat.look.highlight_regex "flashc[oö]de|flashy"

ハイライトする単語の区切りは weechat.look.word_chars_highlight オプションを使って設定します。

#### ハイライトするタグの追加

表示される行には「タグ」を含めることが可能です。「タグ」とはメッセージの出自やメッセージ自身に関する情報を与えるものです。
`/debug tags` コマンドでタグを表示することが可能です (タグを非表示にする場合も同じコマンドを使います)。

ハイライトするタグを明示するには weechat.look.highlight_tags オプションを使います。複数のタグを指定するにはコンマで区切り、複数のタグの論理 "and" を表すには `+` で区切ります。

例えば "FlashCode" というニックネームからのすべてのメッセージと "toto" で始まるニックネームからのすべての通知メッセージをハイライトするには以下のように設定します:

    /set weechat.look.highlight_tags "nick_flashcode,irc_notice+nick_toto*"

#### バッファに対する特別なハイライトの設定

バッファプロパティ "highlight_regex" と正規表現を使ってハイライトを強制できます。

例えば現在のバッファ宛のすべてのメッセージをハイライトするには以下のように設定します:

    /buffer set highlight_regex .*

| バッファプロパティ "highlight_regex" は設定ファイルに保存されません。 これを保存するには buffer_autoset.py スクリプトを使ってください: このスクリプトをインストールするには `/script install buffer_autoset.py` コマンドを使い、ヘルプを見るには `/help buffer_autoset` コマンドを使ってください。

### 7.6. Buffer logging

Logger プラグインを使うことで、バッファの内容をファイルに保存できます。保存形式とその方法をオプションで設定できます。

#### ログレベル

ログ保存はそれぞれのバッファに対して設定されたログレベルに従って行われます。デフォルトのレベルは 9 (バッファに表示されたメッセージをすべて保存) です。特定のバッファやバッファグループに対して個別にログレベルを設定できます。

設定可能なレベルは 0 から 9 です。0 は "保存しない"、9 は「すべてのメッセージを保存」を意味します。

それぞれのプラグインでレベルの意味が変わります。IRC プラグインに対しては以下のレベルが利用されます:

- レベル 1: ユーザからのメッセージ (チャンネルまたはプライベート)

- レベル 2: ニックネームの変更 (自身と他のユーザ)

- レベル 3: 任意のサーバメッセージ (参加/退出/終了メッセージを除く)

- レベル 4: 参加/退出/終了メッセージ

従って、IRC チャンネルに対してレベル 3 を設定した場合、WeeChat は参加/退出/終了メッセージを除いて全てのメッセージを保存します。

例:

- IRC チャンネル #weechat に対してレベル 3 を設定:

    /set logger.level.irc.libera.#weechat 3

- libera サーババッファに対してレベル 3 を設定:

    /set logger.level.irc.server.libera 3

- libera サーバの全てのチャンネルに対してレベル 3 を設定:

    /set logger.level.irc.libera 3

- 全ての IRC バッファに対してレベル 2 を設定:

    /set logger.level.irc 2

#### ファイル名マスク

It is possible to define a filename mask for each buffer, and use local buffer variables to build filename. To see available local variables for current buffer:

    /buffer listvar

Masks will be matched on options in descending order of specificity on `logger.mask.$plugin.*`, with `logger.file.mask` as fallback option.

例えば "irc.libera.#weechat" バッファの場合、WeeChat は以下の順番でオプションに設定されたファイル名マスクを検索します:

    logger.mask.irc.libera.#weechat
    logger.mask.irc.libera
    logger.mask.irc
    logger.file.mask

特定の IRC サーバ ("logger.mask.irc.libera") またはプラグイン ("logger.mask.irc") のグループに対して共通のマスクを適用できます。

##### ログファイルに日付を利用する

ログファイルに日付を使うには、マスクに日時/時間指定子を利用できます (書式に関しては `man strftime` を参照してください)。例えば:

    /set logger.file.mask "%Y/%m/$plugin.$name.weechatlog"

以下のファイルが作成されます:

    ~/.local/share/weechat
    └── logs
        ├── 2010
        │   ├── 11
        │   │   ├── irc.server.libera.weechatlog
        │   │   └── irc.libera.#weechat.weechatlog
        │   └── 12
        │       ├── irc.server.libera.weechatlog
        │       └── irc.libera.#weechat.weechatlog
        ├── 2011
        │   ├── 01
        │   │   ├── irc.server.libera.weechatlog
        │   │   └── irc.libera.#weechat.weechatlog
        │   ├── 02
        ...

##### IRC ログファイルにサーバとチャンネル名を利用する

IRC サーバ名を使ったディレクトリに、チャンネル名を使ったファイルを作成する場合:

    /set logger.mask.irc "irc/$server/$channel.weechatlog"

以下のファイルが作成されます:

    ~/.local/share/weechat
    └── logs
        └── irc
            ├── libera
            │   ├── libera.weechatlog
            │   ├── #weechat.weechatlog
            │   └── #mychan.weechatlog
            ├── oftc
            │   ├── oftc.weechatlog
            │   ├── #channel1.weechatlog
            │   └── #channel2.weechatlog
            ...

#### Rotation and compression

It is possible to define a max size for log files, and when it is reached, there is automatic rotation of log file.

The rotated log files can be compressed with gzip or zstd ↗.

| As the compression of a file can take some time, it is performed in background.

Example with a max size of 2GB and compression with gzip, using good compression level (slower than default one):

    /set logger.file.rotation_compression_type gzip
    /set logger.file.rotation_compression_level 80
    /set logger.file.rotation_size_max "2g"

If you want to use a decimal number, you can use the unit below and multiply by 1000, for example to set max size to 2.5GB:

    /set logger.file.rotation_size_max "2500m"

With these settings, you’ll end with files like these ones (in this example there is rotation only for the log of #weechat channel):

    ~/.local/share/weechat
    └── logs
        ├── core.weechat.weechatlog
        ├── irc.server.libera.weechatlog
        ├── irc.libera.#weechat.weechatlog
        ├── irc.libera.#weechat.weechatlog.1.gz
        ├── irc.libera.#weechat.weechatlog.2.gz
        └── irc.libera.#weechat.weechatlog.3.gz

#### コマンド

- `logger`: configuration de l’extension logger

    /logger  list
             set <niveau>
             flush
             disable

       list : afficher le statut d'enregistrement pour les tampons ouverts
        set : définir le niveau d'enregistrement pour le tampon courant
     niveau : niveau pour les messages à enregistrer (0 = pas d'enregistrement, 1 = quelques messages (les plus importants) .. 9 = tous les messages)
      flush : écrire tous les fichiers de log maintenant
    disable : désactiver l'enregistrement pour le tampon courant (définir le niveau à 0)

    Les options "logger.level.*" et "logger.mask.*" peuvent être utilisées pour définir le niveau ou le masque de nom de fichier pour un tampon, ou plusieurs tampons commençant par un nom.

    Niveaux de log utilisés par l'extension IRC :
      1 : message d'utilisateur (canal et privé), notice (serveur et canal)
      2 : changement de pseudo
      3 : message du serveur
      4 : join/part/quit
      9 : tous les autres messages

    Exemples :
      définir le niveau d'enregistrement à 5 pour le tampon courant :
        /logger set 5
      désactiver l'enregistrement pour le tampon courant :
        /logger disable
      définir le niveau à 3 pour les tampons IRC :
        /set logger.level.irc 3
      désactiver l'enregistrement pour le tampon principal de WeeChat :
        /set logger.level.core.weechat 0
      utiliser un répertoire par serveur IRC et un fichier par canal dedans :
        /set logger.mask.irc "$server/$channel.weechatlog"

#### オプション

logger.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set logger.look.*` | 外観
`color` | `/set logger.color.*` | 色
`file` | `/set logger.file.*` | ログファイルのオプション
`level` | `/set logger.level.*` | バッファのログレベル (オプションをセクションに追加/削除出来ます)
`mask` | `/set logger.mask.*` | バッファのファイル名マスク (オプションをセクションに追加/削除出来ます)

オプション:

- logger.color.backlog_end

  - description: couleur pour la ligne de fin de l'historique

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `246`

- logger.color.backlog_line

  - description: couleur pour les lignes de l'historique, utilisée seulement si l'option logger.file.color_lines est désactivée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `246`

- logger.file.auto_log

  - description: sauve automatiquement le contenu des tampons dans des fichiers (sauf si un tampon désactive le log) ; si désactivé, l'enregistrement est désactivé sur tous les tampons

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- logger.file.color_lines

  - description: utiliser des codes de couleurs ANSI dans les lignes écrites dans les fichiers de log et afficher les lignes de l'historique avec ces couleurs

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- logger.file.flush_delay

  - description: nombre de secondes entre les "flush" (écriture) dans les fichiers de log (0 = écrire immédiatement dans les fichiers de log pour chaque ligne affichée)

  - type: entier

  - valeurs: 0 .. 3600

  - valeur par défaut: `120`

- logger.file.fsync

  - description: utiliser fsync pour synchroniser le fichier de log avec le périphérique de stockage après le flush (voir man fsync) ; cela est plus lent mais devrait éviter toute perte de données en cas de panne de courant durant la sauvegarde du fichier de log

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- logger.file.info_lines

  - description: écrire une ligne d'information dans le fichier log quand le log démarre ou se termine pour un tampon

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- logger.file.log_conditions

  - description: conditions pour sauver le contenu des tampons dans des fichiers (note : le contenu est évalué, voir /help eval) ; une valeur vide sauve le contenu de tous les tampons ; par exemple pour sauver uniquement les tampons privés : "${type} == private"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- logger.file.mask

  - description: masque de fichier par défaut pour les fichiers de log (le format est "repertoire/vers/fichier" ou "fichier", sans le premier "/" car l'option "path" est utilisée pour construire le chemin complet vers le fichier) ; les variables locales du tampon sont permises (vous ne devriez utiliser que des variables qui sont définies sur tous les tampons, donc par exemple vous ne devriez PAS utiliser $server ou $channel) ; les caractères de formatage de date sont autorisés (voir man strftime)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"$plugin.$name.weechatlog"`

- logger.file.name_lower_case

  - description: utiliser seulement des minuscules dans le nom des fichiers de log

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- logger.file.nick_prefix

  - description: texte à écrire avant le pseudo dans le préfixe du message, par exemple : "<"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- logger.file.nick_suffix

  - description: texte à écrire après le pseudo dans le préfixe du message, par exemple : ">"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- logger.file.path

  - description: chemin pour les fichiers de log WeeChat ; les caractères de formatage de date sont autorisés (voir man strftime) (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${weechat_data_dir}/logs"`

- logger.file.replacement_char

  - description: caractère de remplacement dans le nom de fichier construit avec le masque (comme le délimiteur de répertoire)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"_"`

- logger.file.rotation_compression_level

  - description: niveau de compression pour les fichiers de log qui tournent (avec extension ".1", ".2", etc.), si l'option logger.file.rotation_compression_type est activée ; 1 = peu de compression / rapide ... 100 = meilleure compression / lent ; la valeur est un pourcentage converti de 1 à 9 pour gzip et de 1 à 19 pour zstd ; la valeur par défaut est recommandée, elle offre un bon compromis compression/vitesse

  - type: entier

  - valeurs: 1 .. 100

  - valeur par défaut: `20`

- logger.file.rotation_compression_type

  - description: type de compression pour les fichiers de log qui tournent ; si défini à "none", les fichiers de logs qui tournent ne sont pas compressés ; ATTENTION : si la rotation est activée avec un autre type de compression (ou pas de compression), vous devez d'abord décharger l'extension logger, compresser les fichiers avec le nouveau type (ou décompresser les fichiers), puis changer l'option dans logger.conf, puis charger l'extension logger

  - type: entier

  - valeurs: none, gzip, zstd

  - valeur par défaut: `none`

- logger.file.rotation_size_max

  - description: lorsque cette taille est atteinte, une rotation des fichiers est effectuée : les fichiers de log existants sont renommés (.1 devient .2, .2 devient .3, etc.) et le fichier courant est renommé avec l'extension .1 ; un nombre entier avec un suffixe est accepté : b = octets (par défaut si pas d'unité spécifiée), k = kilo-octets, m = méga-octets, g = giga-octets, t = téra-octets ; exemple : "2g" provoque une rotation si la taille du fichier est > 2 000 000 000 octets ; si défini à "0", aucune rotation n'est effectuée (taille de log illimitée) ; ATTENTION : avant de changer cette option, vous devriez d'abord définir le type de compression via l'option logger.file.rotation_compression_type

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"0"`

- logger.file.time_format

  - description: format de date/heure utilisé dans les fichiers log (voir man strftime pour le format de date/heure)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"%Y-%m-%d %H:%M:%S"`

- logger.look.backlog

  - description: nombre maximum de lignes à afficher du fichier de log lors de l'ouverture du tampon (0 = ne rien afficher)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `20`

- logger.look.backlog_conditions

  - description: conditions pour afficher l'historique (note : le contenu est évalué, voir /help eval) ; une valeur vide affiche l'historique sur tous les tampons ; par exemple pour afficher l'historique seulement sur les tampons privés : "${type} == private"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

### 7.7. マウスサポート

WeeChat はマウスクリックとマウスジェスチャーをサポートしています。 ローカル端末と screen/tmux の有無にかかわらず ssh 接続経由で利用可能です。

#### マウスの有効化

起動時にマウスを有効化するには:

    /set weechat.look.mouse on

マウスを有効化するには `Alt`+`m` を押すか、以下のコマンドを使います:

    /mouse enable

キーにマウスの一時的な無効化を割り当てることができます。例えば、`Alt`+`%` キーにマウスを 10 秒間無効化する機能を割り当てるには:

    /key bind meta-% /mouse toggle 10

| WeeChat でマウスを有効化した場合、すべてのマウスイベントは WeeChat によって捕捉されます。したがって、カット/ペーストなどの操作や URL のクリックなどは端末に送信されません。`Shift` キーを使えば、一時的にマウスを無効化して、端末へ直接イベントを送信する事が可能です (一部の端末、例えば iTerm などでは `Shift` の代わりに `Alt` を使ってください)。

| マウスに関するトラブルがあれば WeeChat FAQ (よくある質問) / マウス ↗を参照してください。

#### コマンドに対してマウスイベントを割り当てる

WeeChat はデフォルトマウスイベントの多くを定義しています (mouse actionsを参照)。

`/key` コマンドで "mouse" コンテキストを指定することで割り当てを追加、変更できます (詳しい使い方は /key コマンドを参照)。

イベント名には修飾キー (任意)、ボタン/ホイール名、ジェスチャー (任意) を利用できます。異なるイベントは `-` で分割してください。

修飾キーリスト:

修飾キー | 説明
--- | ---
`ctrl` | `Ctrl` キー
`alt` | `Alt` キー
`ctrl-alt` | `Ctrl` + `Alt` キー

ボタン/ホイールのリスト:

ボタン/ホイール | 説明
--- | ---
`button1` | 左ボタンクリック
`button2` | 右ボタンクリック
`button3` | 中ボタンクリック (多くの場合ホイールクリック)
`button4 …​ button9` | その他のボタンクリック
`wheelup` | ホイール (上方向)
`wheeldown` | ホイール (下方向)

ジェスチャーのリスト (ボタンのみ対応、ホイール未対応):

ジェスチャー | 距離
--- | ---
`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 以上

未完了イベントのリスト (ボタンのみ、プラグイン/スクリプトで便利):

イベント | 説明
--- | ---
`event-down` | マウスボタンが押され、離されていない状態
`event-drag` | マウスボタンが押された状態でマウスが動かされた

イベントの表記例:

- `button1`

- `ctrl-button1`

- `button1-gesture-right`

- `button1-event-down`

- `button1-event-drag`

- `alt-button2-gesture-down-long`

- `wheelup`

- `ctrl-alt-wheeldown`

- …​

| "mouse" イベントにキーを割り当てる場合、イベント名の最初または最後に `*` を使うことで複数のイベントにマッチさせることができます。例えば `button1-gesture-*` は左クリックを利用したすべてのジェスチャーにマッチします。

| `/input grab_mouse` コマンドの後にマウスを動かすことでコマンドラインにマウスイベントが入力されます。これにより対応するイベントを確認できます。

### 7.8. Spell checking

Spell プラグインを使うことで、コマンドラインに入力した文字列のスペルチェックができます。バッファごとに異なる言語に対するスペルチェックを実行できます。

スペルチェック機能はデフォルトで無効化されています。`Alt`+`s` で有効無効を切り替える事が可能です。

#### 辞書

スペルチェック機能を使う前に、すべてのバッファまたは特定のバッファに対して辞書を定義しなければいけません。

同時に複数の辞書を使用可能です: WeeChat はすべての辞書を使って単語をチェックします。

英語とフランス語の辞書を使う例:

    /set spell.check.default_dict "en,fr"

特定のバッファで使用する辞書を定義することも可能です。ドイツ語のチャンネルでドイツ語の辞書を使う例:

    /spell setdict de

バッファグループに対して特定の辞書を指定することも可能です。libera IRC サーバに対して英語の辞書を使う例:

    /set spell.dict.irc.libera en

詳しい情報はコマンド /spell を参照してください。

#### Speller オプション

Speller オプションは aspell 設定の "option" セクションにあるオプションを追加して定義します。

ここで利用するオプション名は aspell 設定オプションと同じものです。オプションのリストはシェルで以下のコマンドを実行することで確認できます:

    $ aspell config

例えば、"ignore-case" オプションを有効化するには:

    /set spell.option.ignore-case "true"

#### 修正候補

"spell_suggest" バー要素内に修正候補が表示されます。修正候補の数は spell.check.suggestions オプションで設定します。

修正候補を利用するには、spell.check.suggestions オプションをゼロ以上の整数に設定し、status バーなどに "spell_suggest" バー要素を追加してください。

英語辞書 (`en`) を用いた修正候補の例:

    │[12:55] [6] [irc/libera] 3:#test(+n){4} [print,prone,prune]                      │
    │[@Flashy] prinr █                                                                │
    └─────────────────────────────────────────────────────────────────────────────────┘

英語とフランス語辞書 (`en,fr`) を用いた修正候補の例:

    │[12:55] [6] [irc/libera] 3:#test(+n){4} [print,prone,prune/prime,primer,primé]   │
    │[@Flashy] prinr █                                                                │
    └─────────────────────────────────────────────────────────────────────────────────┘

#### コマンド

- `spell`: configuration de l’extension spell

    /spell  enable|disable|toggle
            listdict
            setdict -|<dict>[,<dict>...]
            deldict
            addword [<dict>] <mot>

      enable : activer le vérificateur d'orthographe
     disable : désactiver le vérificateur d'orthographe
      toggle : activer/désactiver le vérificateur d'orthographe
    listdict : afficher les dictionnaires installés
     setdict : définir le dictionnaire pour le tampon courant (plusieurs dictionnaires peuvent être séparés par une virgule, la valeur spéciale "-" désactive la vérification orthographique sur le tampon courant)
     deldict : supprimer le dictionnaire utilisé sur le tampon courant
     addword : ajouter un mot dans le dictionnaire personnel

    Les lignes d'entrée commençant par '/' ne sont pas vérifiées, sauf pour certaines commandes (voir /set spell.check.commands).

    Pour activer le vérificateur d'orthographe sur tous les tampons, utilisez l'option "default_dict", par exemple :
      /set spell.check.default_dict "en"
      /spell enable

    Pour afficher une liste des suggestions dans une barre, utilisez l'objet "spell_suggest".

    La touche par défaut pour activer/désactiver le vérificateur d'orthographe est alt-s.

#### オプション

spell.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`color` | `/set spell.color.*` | 色
`check` | `/set spell.check.*` | スペルチェックの操作コマンド
`dict` | `/spell setdict /set spell.dict.*` | バッファが利用するディレクトリ (オプションをセクションに追加/削除出来ます)
`look` | `/set spell.look.*` | 外観
`option` | `/set spell.option.*` | Speller オプション (オプションをセクションに追加/削除出来ます)

オプション:

- spell.check.commands

  - description: liste de commandes (séparées par des virgules) pour lesquelles la vérification orthographique est activée (la vérification est désactivée pour toutes les autres commandes)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"`

- spell.check.default_dict

  - description: dictionnaire par défaut (ou liste de dictionnaires séparés par une virgule) à utiliser quand le tampon courant n'a pas de dictionnaire défini (laissez blanc pour désactiver le vérificateur d'orthographe sur les tampons pour lesquels vous ne l'avez pas explicitement activé)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- spell.check.during_search

  - description: vérifier les mots pendant la recherche de texte dans le tampon

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- spell.check.enabled

  - description: activer le vérificateur d'orthographe pour la ligne de commande

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- spell.check.real_time

  - description: vérification orthographique des mots en temps réel (plus lent, désactivé par défaut : les mots sont vérifiés seulement s'il y a un délimiteur après)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- spell.check.suggestions

  - description: nombre de suggestions à afficher dans l'objet de barre "spell_suggest" pour chaque dictionnaire du tampon (-1 = désactiver les suggestions, 0 = afficher toutes les suggestions possibles dans toutes les langues)

  - type: entier

  - valeurs: -1 .. 2147483647

  - valeur par défaut: `-1`

- spell.check.word_min_length

  - description: longueur minimum d'un mot pour que l'orthographe soit vérifiée (utilisez 0 pour vérifier tous les mots)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `2`

- spell.color.misspelled

  - description: couleur du texte pour les mots mal orthographiés (barre de saisie)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightred`

- spell.color.suggestion

  - description: couleur du texte pour la suggestion sur un mot mal orthographié dans l'objet de barre "spell_suggest"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- spell.color.suggestion_delimiter_dict

  - description: couleur du texte pour les séparateurs affichés entre deux dictionnaires dans l'objet de barre "spell_suggest"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- spell.color.suggestion_delimiter_word

  - description: couleur du texte pour les séparateurs affichés entre deux mots dans l'objet de barre "spell_suggest"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- spell.look.suggestion_delimiter_dict

  - description: séparateur affiché entre deux dictionnaires dans l'objet de barre "spell_suggest"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `" / "`

- spell.look.suggestion_delimiter_word

  - description: séparateur affiché entre deux mots dans l'objet de barre "spell_suggest"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `","`

### 7.9. バー

バー とは任意のテキストを含めることができるチャットエリア以外の場所です。

バーオプションは `weechat.bar.name.option` オプションで設定します。ここで `name` はバーの名前、`option` はこのバーのオプション名です。

バーオプションのリスト:

オプション名 | 値 | 説明
--- | --- | ---
`type` | `root`、`window` | `root` 型バーは画面上の全ウィンドウの外側にきっかり 1 回だけ表示されます。 デフォルトバーである buflist は `root` 型のバーです。 `window` 型バーは各ウィンドウの中に表示されます。例えば、`/window splith` や `/window splitv` などの方法で画面を 1 回分割した場合、1 つのバーがそれぞれのウィンドウに表示されます。デフォルトの `window` 型バーには title、status、input、nicklist などがあります。
`position` | `top`、`bottom`、`left`、`right` | バーの位置: チャットエリアの上、下、左、右。
`priority` | 0 以上の整数 | バーの表示優先度: 型と位置が同じ複数のバーを画面に表示する順番に利用される。 バーは画面の端から中心に向かって表示される。高い優先度を持つバーが先に (画面の端に近い側に) 表示される。 例: 優先度 1000 の input バーは優先度 500 の status バーよりも先に表示される。
`size` | 0 以上の整数 | バーのサイズ: 位置が右/左の場合は列数、位置が上/下の場合は行数。値が `0` の場合は自動 (バーのサイズはバーの内容を基に計算される)。
`size_max` | 0 以上の整数 | バーの最大サイズ、`0` = 制限無し (このオプションは `size` = `0` の場合のみ使われる)。
`color_bg` | 色 | バーのデフォルトの背景色
`color_fg` | 色 | バーのデフォルトのテキスト色
`color_delim` | 色 | バーの区切り文字の色
`hidden` | `on`、`off` | このオプションが `on` の場合、バーは表示されません。 注意: このオプションを変更する代わりに、`/bar` コマンドを使うと便利です。例: `/bar toggle nicklist` (/bar コマンドを参照)。
`separator` | `on`、`off` | このオプションが `on` の場合、セパレータ (区切り線) がバー同士またはバーとチャットエリアの間に表示されます。
`items` | 文字列 | items のリスト (詳細はバー要素を参照)。
`filling_left_right` | `horizontal`、`vertical`、`columns_horizontal`、`columns_vertical` | 位置が `left` または `right` のバーに対するフィリングタイプ (詳細はバーフィリングを参照)。
`filling_top_bottom` | `horizontal`、`vertical`、`columns_horizontal`、`columns_vertical` | 位置が `top` または `bottom` のバーに対するフィリングタイプ (詳細はバーフィリングを参照)。
`conditions` | 文字列 | バーを表示する状態 (詳細はバー状態を参照)。

#### バー要素

items オプションはバー要素をコンマ (画面上の要素同士に間隔を空ける) または `+` (間隔を空けない) で区切った文字列です。

バー要素のリストは `/bar listitems` コマンドで表示されます。

要素名の前または後に文字を表示させることができます (英数字以外の文字、`-` または `_`)。この文字はバー (color_delim オプション) で定義された区切り文字の色をつけて要素の前または後に表示されます。

バー要素を含むバーの例 "[time],buffer_number+:+buffer_plugin+.+buffer_name,[buffer_last_number]":

    ┌───────────────────────────────────────────────────────────────────────────┐
    │[12:55] 3:irc/libera.#weechat [9]                                          │
    └───────────────────────────────────────────────────────────────────────────┘

##### Spacer item

An item called `spacer` can be used to align items (left, center, right).

When at least one `spacer` item is used in a bar, the whole bar width is used: the spacers auto expand with the same size (or almost).
When the bar is not large enough for all items, spacers are not displayed.

| The `spacer` bar item can be used only in bars with position `top` or `bottom`, filling `horizontal` and size `1`.

Example of bar with items "[time],spacer,buffer_number+:+buffer_plugin+.+buffer_name,spacer,[buffer_last_number]":

    ┌───────────────────────────────────────────────────────────────────────────┐
    │[12:55]                      3:irc/libera.#weechat                      [9]│
    └───────────────────────────────────────────────────────────────────────────┘

##### Force buffer

特殊構文を使うことで、バー要素: "@buffer:item" ("buffer" はバッファの完全な名前、"item" はバー要素の名前) を表示する際に強制的に指定されたバッファを利用することが可能です。

これはルートバーに現在のウィンドウで表示されない (またはどこにも表示されない) 特定のバッファの要素を表示させる際に便利です。

例: bitlbee のニックネームリストをルートバーに表示させる (バーが bitlist で bitlbee サーバが bitlbee の場合):

    /set weechat.bar.bitlist.items "@irc.bitlbee.&bitlbee:buffer_nicklist"

##### Custom bar items

Custom bar items can be added with the /item command, each new item having two properties defined via configuration options:

- `conditions`: evaluated conditions to display the bar item, for example to restrict the bar item to some specific buffers (if empty, the bar item is displayed everywhere)

- `content`: evaluated content of bar item.

In both options, the following variables can be used:

- `window`: pointer to the window where the bar is displayed (`NULL` for root bars)

- `buffer`: pointer to buffer where the bar is displayed (current buffer for root bars).

Examples of conditions:

Condition | Description
--- | ---
`${window}` | Displayed in window bars only
`${buffer.number} == 1` | Displayed in all buffers with number = 1
`${buffer.plugin.name} == irc` | Displayed in all IRC buffers
`${type} == channel` | Displayed in all buffers where local variable `type` is set to `channel` (example: all IRC channels)
`${type} == private` | Displayed in all buffers where local variable `type` is set to `private` (example: all IRC private buffers)

| There’s no builtin way to refresh the custom bar items. You can use the Trigger plugin to force the refresh, for example via one or more signals received.

For more information and examples, see the /item command.

#### バーフィリング

フィリングタイプには 4 つの種類があります:

- `horizontal`: 左から右に向かって要素を水平に表示。要素内に改行がある場合、空白を行区切りに利用します。

- `vertical`: 上から下に向かって要素を表示。要素内に改行がある場合、改行を行区切りに利用します。

- `columns_horizontal`: テキストを左寄せして、列形式で要素を表示。最初の要素は左上、2 番目は同じ行の 1 列右側。

- `columns_vertical`: テキストを左寄せして、列形式で要素を表示。最初の要素は左上、2 番目は同じ列の 1 行下側。

デフォルトバーである title、status、input は horizontal フィリング、nicklist は vertical フィリング。

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 ▲

#### バー状態

conditions オプションはバーを表示するか否かを評価する文字列です。

文字列は以下のいずれか:

- active: 非アクティブ状態のウィンドウ

- inactive: 非アクティブ状態のウィンドウ

- nicklist: ニックネームリストが含まれるバッファのウィンドウ

- 式: ブール値として評価 (/eval コマンドを参照)

式に使える変数は以下:

- `${active}`: ウィンドウがアクティブ状態の時に真

- `${inactive}`: ウィンドウが非アクティブ状態の時に真

- `${nicklist}`: ウィンドウに表示されるバッファがニックネームリストの場合に真。

式に使えるポインタは以下:

- `${window}`: 状態が評価されたウィンドウ

- `${buffer}`: 状態が評価されたウィンドウのバッファ

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)"

### 7.10. 暗号化データ

#### データの保存

WeeChat はパスワードおよび sec.conf ファイルに保存されている個人データを暗号化することができます。

この設定ファイルは他のどのファイルよりも先に読まれ、ファイルに保存されている値を WeeChat およびプラグイン/スクリプトのオプションで使うことができます。

sec.conf に含まれるデータを暗号化するパスフレーズを設定することが可能です。これは必須ではありませんが、パスフレーズを設定することを強く勧めます。パスフレーズを設定しない場合、データは平文でファイルに保存されます。

    /secure passphrase this is my passphrase

##### 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.

##### 暗号化

データの暗号化は 3 段階に分けて行われます:

1. パスフレーズから鍵を生成 (任意の salt を加えます)。

2. 暗号化するデータのハッシュを計算。

3. ハッシュとデータを暗号化 (出力: salt + 暗号化済みのハッシュ/データ)。

| ブロック暗号モードは CFB です。

結果は 16 進数文字列として sec.conf ファイルに保存されます、例:

    [data]
    __passphrase__ = on
    libera = "53B1C86FCDA28FC122A95B0456ABD79B5AB74654F21C3D099A6CCA8173239EEA59533A1D83011251F96778AC3F5166A394"

##### 復号化

データの復号化は 3 段階に分けて行われます:

1. salt とパスフレーズを使って鍵を生成。

2. ハッシュとデータを復号化。

3. 復号化したハッシュとデータのハッシュが同じことを確認。

#### 暗号化データの管理

暗号化データを追加するには、`/secure set` を使ってください、libera IRC サーバのパスワードを設定する例:

    /secure set libera mypassword

利便性を考慮して、暗号化データを専用のバッファに表示できるようになっています (値を見るにはバッファで `Alt`+`v`、以下のコマンドを実行してください:

    /secure

例えばパスワードなどの個人データを含むオプションで暗号化データを使うことができます、書式: "${sec.data.xxx}" ここで "xxx" は暗号化データの名前です (`/secure set xxx …​` のように使います)。
利用できるオプションの完全なリストはを見るには、`/help secure` を使ってください。

例えば上の libera パスワードを SASL 認証で使うには:

    /set irc.server.libera.sasl_password "${sec.data.libera}"

### 7.11. Command aliases

Alias プラグインを使うことで、コマンドの別名を定義できます (WeeChat だけでなく他のプラグインが提供するコマンドの別名を定義することもできます)。

大文字の別名はデフォルトで定義されたものです (標準コマンドと区別するために大文字を使っています); WeeChat はコマンドの大文字小文字を区別しないので、コマンド `/close` は別名である `/CLOSE` を実行します。

デフォルトで定義された別名のリスト:

Alias | Commande | Complétion
--- | --- | ---
`/aaway` | `/allserv /away` | -
`/anick` | `/allserv /nick` | -
`/beep` | `/print -beep` | -
`/bye` | `/quit` | -
`/c` | `/buffer clear` | -
`/cl` | `/buffer clear` | -
`/close` | `/buffer close` | -
`/chat` | `/dcc chat` | -
`/exit` | `/quit` | -
`/ig` | `/ignore` | -
`/j` | `/join` | -
`/k` | `/kick` | -
`/kb` | `/kickban` | -
`/leave` | `/part` | -
`/m` | `/msg` | -
`/mub` | `/unban *` | -
`/msgbuf` | `/command -buffer $1 * /input send $2-` | %(buffers_plugins_names)
`/n` | `/names` | -
`/q` | `/query` | -
`/redraw` | `/window refresh` | -
`/say` | `/msg *` | -
`/signoff` | `/quit` | -
`/t` | `/topic` | -
`/ub` | `/unban` | -
`/umode` | `/mode $nick` | -
`/v` | `/command core version` | -
`/w` | `/who` | -
`/wc` | `/window close` | -
`/wi` | `/whois` | -
`/wii` | `/whois $1 $1` | -
`/wm` | `/window merge` | -
`/ww` | `/whowas` | -

#### コマンド

- `alias`: lister, ajouter ou retirer des alias de commande

    /alias  list [<alias>]
            add <alias> [<commande>[;<commande>...]]
            addcompletion <complétion> <alias> [<commande>[;<commande>...]]
            del <alias> [<alias>...]
            rename <alias> <nouvel_alias>
            missing

             list : afficher les alias (sans paramètre, cette liste est affichée)
              add : ajouter un alias
    addcompletion : ajouter un alias avec une complétion personnalisée
              del : supprimer un alias
           rename : renommer un alias
          missing : ajouter les alias manquants (en utilisant les alias par défaut)
       complétion : complétion pour l'alias : par défaut la complétion se fait avec la commande cible
                    note : vous pouvez utiliser %%commande pour utiliser la complétion d'une commande existante
            alias : nom de l'alias
         commande : nom de la commande avec les paramètres (plusieurs commandes peuvent être séparées par des points-virgules)

    Note : dans la commande, les variables spéciales sont remplacées :
            $n : paramètre 'n' (entre 1 et 9)
           $-m : paramètres de 1 à 'm'
           $n- : paramètres de 'n' au dernier
          $n-m : paramètres de 'n' à 'm'
            $* : tous les paramètres
            $& : tous les paramètres, avec " remplacés par \"
            $~ : le dernier paramètre
          $var : où "var" est une variable locale du tampon (voir /buffer listvar)
                 exemples : $nick, $channel, $server, $plugin, $name

    Exemples :
      alias /split pour diviser la fenêtre horizontalement :
        /alias add split /window splith
      alias /hello pour dire "hello" sur tous les canaux mais pas sur #weechat :
        /alias add hello /allchan -exclude=#weechat hello
      renommer l'alias "hello" en "Hello" :
        /alias rename hello Hello
      alias /forcejoin pour envoyer la commande IRC "forcejoin" avec la complétion de /sajoin :
        /alias addcompletion %%sajoin forcejoin /quote forcejoin

#### オプション

alias.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`cmd` | `/alias /set alias.cmd.*` | 別名に割り当てたコマンド
`completion` | `/alias /set alias.completion.*` | 別名に割り当てた補完

### 7.12. コマンドとオプション

#### WeeChat コマンド

- `allbuf`: exécuter une commande sur tous les tampons

    /allbuf  <commande>

    commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')

    Exemples :
      définir le marqueur de lecture sur tous les tampons :
        /allbuf /buffer set unread

- `away`: définir ou supprimer le statut d’absence

    /away  [-all] [<message>]

       -all : définir ou supprimer le statut d'absence sur tous les serveurs connectés
    message : message pour l'absence (si pas de message donné, le statut d'absence est supprimé)

- `bar`: gestion des barres

    /bar  list|listfull|listitems
          add <nom> <type>[,<conditions>] <position> <taille> <séparateur> <objet1>[,<objet2>...]
          default [input|title|status|nicklist]
          rename <nom> <nouveau_nom>
          del <nom>|-all
          set <nom> <option> <valeur>
          hide|show|toggle <nom>
          scroll <nom> <fenêtre> <valeur_scroll>

             list : lister toutes les barres
         listfull : lister toutes les barres (verbeux)
        listitems : lister tous les objets de barre
              add : ajouter une nouvelle barre
              nom : nom de la barre (doit être unique)
             type :   root : en dehors des fenêtres
                    window : dans les fenêtres, avec condition(s) optionnelle(s) (voir ci-dessous)
       conditions : les conditions pour afficher la barre :
                      active : sur la fenêtre active
                    inactive : sur les fenêtres inactives
                    nicklist : sur les fenêtres avec liste de pseudos
                    autre condition : voir /help weechat.bar.xxx.conditions et /help eval
                    sans condition, la barre est toujours affichée
         position : bottom (bas), top (haut), left (gauche) ou right (droite)
           taille : taille de la barre (en caractères)
       séparateur : 1 pour utiliser un séparateur (ligne), 0 ou rien signifie sans séparateur
       objet1,... : objets pour cette barre (les objets peuvent être séparés par une virgule (espace entre les objets) ou "+" (objets collés))
          default : créer une barre par défaut (toutes les barres par défaut si aucun nom de barre n'est donné)
           rename : renommer une barre
              del : supprimer une barre (ou toutes les barres avec -all)
              set : changer la valeur d'une propriété de la barre
           option : option à modifier (pour la liste des options, voir /set weechat.bar.<nombarre>.*)
           valeur : nouvelle valeur pour l'option
             hide : cacher la barre
             show : montrer une barre cachée
           toggle : cacher/montrer une barre
           scroll : faire défiler la barre
          fenêtre : numéro de fenêtre (utilisez '*' pour la fenêtre courante ou une barre de type root)
    valeur_scroll : valeur pour le défilement : 'x' ou 'y' (optionnel), suivi par '+', '-', 'b' (début) ou 'e' (fin), valeur (pour +/-), et un % optionnel (pour faire défiler par % de la largeur/hauteur, sinon la valeur est un nombre de caractères)

    Exemples :
      créer une barre avec l'heure, numéro + nom de tampon, et la complétion :
        /bar add mabarre root bottom 1 0 [time],buffer_number+:+buffer_name,completion
      cacher une barre :
        /bar hide mabarre
      faire défiler la liste des pseudos de 10 lignes vers le bas sur le tampon courant :
        /bar scroll nicklist * y+10
      faire défiler la liste des pseudos à la fin sur le tampon courant :
        /bar scroll nicklist * ye

- `buffer`: gestion des tampons

    /buffer  list
             add [-free] [-switch] <nom>
             clear [<nombre>|<nom>|-merged|-all [<nombre>|<nom>...]]
             move <nombre>|-|+
             swap <nombre1>|<nom1> [<nombre2>|<nom2>]
             cycle <nombre>|<nom> [<nombre>|<nom>...]
             merge <nombre>|<nom>
             unmerge [<nombre>|-all]
             hide [<nombre>|<nom>|-all [<nombre>|<nom>...]]
             unhide [<nombre>|<nom>|-all [<nombre>|<nom>...]]
             switch [-previous]
             zoom
             renumber <nombre1> [<nombre2> [<départ>]]
             close [<n1>[-<n2>]|<nom>...]
             notify [<niveau>]
             listvar [<nombre>|<nom>]
             setvar <nom> [<valeur>]
             delvar <nom>
             set <propriété> [<valeur>]
             get <propriété>
             jump smart|last_displayed|prev_visited|next_visited
             <nombre>|-|+|<nom>

        list : lister les tampons ouverts (sans paramètre, cette liste est affichée)
         add : ajouter un nouveau tampon (il peut être fermé avec "/buffer close" ou l'entrée "q")
       clear : effacer le contenu du tampon (un numéro pour un tampon, -merged pour les tampons mélangés, -all pour tous les tampons, ou rien pour le tampon courant)
        move : déplacer le tampon dans la liste (peut être relatif, par exemple -1) ; "-" = déplacer vers le premier numéro de tampon, "+" = déplacer vers le dernier numéro de tampon + 1
        swap : échanger deux tampons (échanger avec le tampon courant si un seul numéro/nom donné)
       cycle : sauter en boucle entre une liste de plusieurs tampons
       merge : mélanger le tampon courant avec un autre tampon (la zone de discussion sera un mélange des deux tampons)
               (par défaut ctrl-x bascule entre les tampons mélangés)
     unmerge : détacher le tampon courant des autres tampons portant le même numéro
        hide : masquer le tampon
      unhide : démasquer le tampon
      switch : basculer vers le tampon mélangé suivant (ou vers le tampon précédent avec -previous)
        zoom : zoom sur le tampon mélangé
    renumber : renuméroter des tampons (fonctionne seulement si l'option weechat.look.buffer_auto_renumber est désactivée)
       close : fermer le tampon (nombre/intervalle ou nom optionnel)
      notify : afficher ou définir le niveau de notification pour le tampon courant : ce niveau détermine si le tampon doit être ajouté à la hotlist ou pas :
                    none : jamais
               highlight : pour les highlights seulement
                 message : pour les messages d'utilisateurs + highlights
                     all : pour tous les messages
                   reset : réinitialise à valeur par défaut (all)
     listvar : afficher la liste des variables locales d'un tampon
      setvar : modifier une variable locale du tampon courant
      delvar : supprimer une variable locale du tampon courant
         set : modifier une propriété du tampon courant
         get : afficher une propriété du tampon courant
        jump : sauter vers un autre tampon :
               smart : prochain tampon avec de l'activité
               last_displayed : dernier tampon affiché (avant le dernier saut vers un tampon)
               prev_visited : tampon visité précédemment
               next_visited : tampon visité après
      nombre : sauter au tampon qui a ce numéro, préfixe possible :
               '+' : saut relatif, ajoute le numéro au courant
               '-' : saut relatif, soustrait le numéro au courant
               '*' : saut au numéro en utilisant l'option "jump_current_to_previous_buffer"
           - : sauter au premier numéro de tampon
           + : sauter au dernier numéro de tampon
         nom : sauter au tampon par nom (partiel)

    Exemples :
      effacer le tampon courant :
        /buffer clear
      déplacer le tampon vers le numéro 5 :
        /buffer move 5
      échanger le tampon 1 avec le 3 :
        /buffer swap 1 3
      échanger le tampon #weechat avec le tampon courant :
        /buffer swap #weechat
      sauter sur #canal1, #canal2, #canal3 en boucle :
        /buffer cycle #canal1 #canal2 #canal3
      mélanger avec le tampon core :
        /buffer merge 1
      mélanger avec le tampon #weechat :
        /buffer merge #weechat
      détacher le tampon :
        /buffer unmerge
      fermer le tampon courant :
        /buffer close
      fermer les tampons 5 à 7 :
        /buffer close 5-7
      aller sur #weechat :
        /buffer #weechat
      aller au tampon suivant :
        /buffer +1
      aller au dernier numéro de tampon :
        /buffer +

- `color`: définir des alias de couleurs et afficher la palette des couleurs

    /color  alias <couleur> <nom>
            unalias <couleur>
            reset
            term2rgb <color>
            rgb2term <rgb> [<limit>]
            -o

       alias : ajouter un alias pour une couleur
     unalias : supprimer un alias pour une couleur
     couleur : numéro de couleur (supérieur ou égal à 0, le max dépend du terminal, généralement 63 ou 255)
         nom : nom d'alias pour la couleur (par exemple : "orange")
       reset : réinitialiser toutes les paires de couleurs (requis quand il n'y a plus de paires de couleurs disponibles si la réinitialisation automatique est désactivée, voir l'option "weechat.look.color_pairs_auto_reset")
    term2rgb : convertir une couleur du terminal (0-255) en couleur RGB
    rgb2term : convertir une couleur RGB en couleur du terminal (0-255)
      limite : nombre de couleurs à utiliser dans la table du terminal (en démarrant de 0) ; par défaut 256
          -o : envoyer les infos terminal/couleurs sur le tampon courant comme entrée

    Sans paramètre, cette commande affiche les couleurs dans un nouveau tampon.

    Exemples :
      ajouter l'alias "orange" pour la couleur 214 :
        /color alias 214 orange
      supprimer la couleur 214 :
        /color unalias 214

- `command`: lancer explicitement une commande WeeChat ou d’une extension

    /command  [-buffer <nom>] <extension> <commande>

      -buffer : exécuter la commande sur ce tampon
    extension : exécuter la commande de cette extension ; 'core' pour une commande WeeChat, '*' pour une extension automatique (cela dépend sur quel tampon est exécutée la commande)
     commande : commande à exécuter (un '/' est automatiquement ajouté s'il n'est pas trouvé au début de la commande)

- `cursor`: mouvement libre du curseur sur l’écran pour exécuter des actions sur des zones spécifiques de l’écran

    /cursor  go chat|<barre>|<x>,<y>
             move up|down|left|right|area_up|area_down|area_left|area_right
             stop

      go : déplacer le curseur vers la zone de discussion ("chat"), une barre (en utilisant son nom) ou les coordonnées "x,y"
    move : déplacer le curseur dans une direction
    stop : arrêter le mode curseur

    Sans paramètre, cette commande active/désactive le mode curseur.

    Lorsque la souris est activée (voir /help mouse), par défaut un clic du milieu démarre le mode curseur à ce point.

    Touches par défaut dans le mode curseur sur les messages de la zone de discussion :
      m  citer le message
      q  citer le préfixe + le message
      Q  citer l'heure + le préfixe + le message

    Touches par défaut dans le mode curseur sur la liste de pseudos :
      b  bannir le pseudo (/ban)
      k  éjecter le pseudo (/kick)
      K  éjecter et bannir le pseudo (/kickban)
      q  ouvrir une discussion privée avec le pseudo (/query)
      w  demander les informations sur l'utilisateur (/whois)

    Autres touches par défaut dans le mode curseur :
      flèche      déplacer le curseur
      alt+flèche  déplacer le curseur vers la zone suivante
      entrée      sortir du mode curseur

    Exemples :
      aller dans la liste des pseudos :
        /cursor go nicklist
      aller aux coordonnées x=10, y=5 :
        /cursor go 10,5

- `debug`: fonctions de debug

    /debug  list
            set <extension> <niveau>
            dump|hooks [<extension>]
            buffer|certs|color|dirs|infolists|libs|memory|tags|term|windows
            cursor|mouse [verbose]
            hdata [free]
            time <commande>
            unicode <chaîne>

         list : lister les extensions avec leur niveau de debug
          set : définir le niveau de debug pour l'extension
    extension : nom de l'extension ("core" pour le cœur de WeeChat)
       niveau : niveau de debug pour l'extension
         dump : afficher les variables mémoire WeeChat dans le fichier log (les mêmes messages sont affichés lorsque WeeChat plante)
        hooks : afficher des infos sur les hooks (avec une extension : afficher les infos détaillées sur les hooks créés par l'extension)
       buffer : afficher le contenu du tampon en valeurs hexadécimales dans le fichier log
        certs : afficher le nombre de certificats des autorités de certification chargés
        color : afficher des infos sur les paires de couleur courantes
       cursor : activer/désactiver le debug pour le mode curseur
         dirs : afficher les répertoires
        hdata : afficher des infos sur les hdata (avec free : supprimer tous les hdata en mémoire)
    infolists : afficher des infos sur les infolists
          key : activer le debug pour le clavier et la souris : afficher les codes bruts, le nom étendu et la commande associée ('q' pour quitter ce mode)
         libs : afficher des infos sur les bibliothèques externes utilisées
       memory : afficher des infos sur l'utilisation de la mémoire
        mouse : activer/désactiver le debug pour la souris
         tags : afficher les étiquettes pour les lignes
         term : afficher des infos sur le terminal
      windows : afficher l'arbre des fenêtres
         time : mesurer le temps pour exécuter une commande ou pour envoyer du texte au tampon courant
      unicode : afficher des informations sur la chaîne et les caractères unicode (évaluée, voir /help eval)

    Exemples :
      /debug set irc 1
      /debug mouse verbose
      /debug time /filter toggle
      /debug unicode ${chars:${\u26C0}-${\u26CF}}

- `eval`: évaluer une expression

    /eval  [-n|-s] [-d [-d]] <expression>
           [-n] [-d] -c <expression1> <opérateur> <expression2>

            -n : afficher le résultat sans envoyer au tampon (mode debug)
            -s : découper l'expression avant de l'évaluer (plusieurs commandes peuvent être séparées par des points-virgules)
            -d : afficher la sortie de debug après l'évaluation (avec deux -d : mode debug plus verbeux)
            -c : évaluer comme une condition : utiliser les opérateurs et les parenthèses, retourner une valeur booléenne ("0" ou "1")
    expression : expression à évaluer, les variables avec le format ${variable} sont remplacées (voir ci-dessous) ; plusieurs commandes peuvent être séparées par des points-virgules
     opérateur : un opérateur logique ou de comparaison :
                 - opérateurs logiques :
                     &&   "et" booléen
                     ||   "ou" booléen
                 - opérateurs de comparaison :
                     ==   égal
                     !=   non égal
                     <=   inférieur ou égal
                     <    inférieur
                     >=   supérieur ou égal
                     >    supérieur
                     =~   correspond à l'expression régulière POSIX étendue
                     !~   ne correspond PAS à l'expression régulière POSIX étendue
                     ==*  correspond au masque, sensible à la casse (le caractère joker "*" est autorisé)
                     !!*  ne correspond PAS au masque, sensible à la casse (le caractère joker "*" est autorisé)
                     =*   correspond au masque, insensible à la casse (le caractère joker "*" est autorisé)
                     !=   ne correspond PAS au masque, insensible à la casse (le caractère joker "*" est autorisé)
                     ==-  est inclus, sensible à la casse
                     !!-  n'est PAS inclus, sensible à la casse
                     =-   est inclus, insensible à la casse
                     !-   n'est PAS inclus, insensible à la casse

    Une expression est considérée comme "vraie" si elle est non NULL, non vide, et différente de "0".
    La comparaison est faite en utilisant des nombres à virgule si les deux expressions sont des nombres valides, avec l'un de ces formats :
      - entier (exemples : 5, -7)
      - nombre à virgule (exemples : 5.2, -7.5, 2.83e-2)
      - nombre hexadécimal (exemples : 0xA3, -0xA3)
    Pour forcer une comparaison de chaînes, vous pouvez ajouter des guillemets autour de chaque expression, par exemple :
      50 > 100      ==> 0
      "50" > "100"  ==> 1

    Des variables sont remplacées dans l'expression, en utilisant le format ${variable}, la variable pouvant être, par ordre de priorité :
      - la chaîne elle-même sans évaluation (format : "raw:xxx")
      - une variable définie par l'utilisateur (format : "nom")
      - une sous-chaîne évaluée (format : "eval:xxx")
      - une condition évaluée (format : "eval_cond:xxx")
      - une chaîne avec les caractères échappés (format : "esc:xxx" ou "\xxx")
      - une chaîne avec un intervalle de caractères (format : "chars:xxx" ou "chars:c1-c2")
      - une chaîne convertie en minuscules (format : "lower:xxx")
      - une chaîne convertie en majuscules (format : "upper:xxx")
      - une chaîne avec des caractères à cacher (format : "hide:caractère,chaîne")
      - une chaîne avec un maximum de caractères (format : "cut:max,suffixe,chaîne" ou "cut:+max,suffixe,chaîne")
        ou un maximum de caractères affichés à l'écran (format : "cutscr:max,suffixe,chaîne" ou "cutscr:+max,suffixe,chaîne")
      - une chaîne inversée (format : "rev:xxx" ou "revscr:xxx")
      - une chaîne répétée (format : "repeat:nombre,chaîne")
      - longueur d'une chaîne (format : "length:xxx" ou "lengthscr:xxx")
      - découpage d'une chaîne (format : "split:nombre,séparateurs,flags,xxx")
      - découpage de paramètres shell (format : "split_shell:nombre,xxx")
      - une couleur (format : "color:xxx", voir la "Référence API extension", fonction "color")
      - un modificateur (format : "modifier:nom,données,chaîne")
      - une info (format : "info:nom,paramètres", les paramètres sont optionnels)
      - une chaîne encodée/decodée en base 16, 32 ou 64 (format : "base_encode:base,xxx" ou "base_decode:base,xxx")
      - la date/heure courante (format : "date" ou "date:format")
      - une variable d'environnement (format : "env:XXX")
      - un opérateur ternaire (format : "if:condition?valeur_si_vrai:valeur_si_faux")
      - le résultat d'une expression avec parenthèses et les opérateurs + - * / // % ** (format : "calc:xxx")
      - un nombre entier aléatoire (format : "random:min,max")
      - une chaîne traduite (format : "translate:xxx")
      - déclaration d'une variable utilisateur (format : "define:nom,valeur")
      - une option (format : "fichier.section.option")
      - une variable locale du tampon
      - un hdata/variable (la valeur est automatiquement convertie en chaîne), par défaut "window" et "buffer" pointent vers la fenêtre et le tampon courants.
    Le format du hdata peut être le suivant :
      hdata.var1.var2... : démarrer avec un hdata (le pointeur doit être connu), et demander les variables l'une après l'autre (d'autres hdata peuvent être suivis)
      hdata[liste].var1.var2... : démarrer avec un hdata en utilisant une liste/pointeur/nom de pointeur, par exemple :
        ${buffer[gui_buffers].full_name} : nom complet du premier tampon dans la liste chaînée des tampons
        ${plugin[weechat_plugins].name} : nom de la première extension dans la liste chaînée des extensions
      hdata[pointeur].var1.var2... : démarrer avec un hdata en utilisant un pointeur, par exemple :
        ${buffer[0x1234abcd].full_name} : nom complet du tampon avec ce pointeur (peut être utilisé dans les triggers)
        ${buffer[my_pointer].full_name} : nom complet du tampon avec ce nom de pointeur (peut être utilisé dans les triggers)
      hdata[pointeur].var1.méthode() : lorsque var1 est une table de hachage, les méthodes "keys()", "values()", "keys_sorted()", "keys_values()" et "keys_values_sorted()" peuvent être appelées
    Pour le nom du hdata et des variables, voir la "Référence API extension", fonction "weechat_hdata_get".

    Exemples (chaînes simples) :
      /eval -n ${raw:${info:version}}                  ==> ${info:version}
      /eval -n ${eval_cond:${window.win_width}>100}    ==> 1
      /eval -n ${info:version}                         ==> 0.4.3
      /eval -n ${env:HOME}                             ==> /home/user
      /eval -n ${weechat.look.scroll_amount}           ==> 3
      /eval -n ${sec.data.password}                    ==> secret
      /eval -n ${window}                               ==> 0x2549aa0
      /eval -n ${window.buffer}                        ==> 0x2549320
      /eval -n ${window.buffer.full_name}              ==> core.weechat
      /eval -n ${window.buffer.number}                 ==> 1
      /eval -n ${buffer.local_variables.keys_values()} ==> plugin:core,name:weechat
      /eval -n ${buffer.local_variables.plugin}        ==> core
      /eval -n ${\t}                                   ==> <tab>
      /eval -n ${chars:digit}                          ==> 0123456789
      /eval -n ${chars:J-T}                            ==> JKLMNOPQRST
      /eval -n ${lower:TEST}                           ==> test
      /eval -n ${upper:test}                           ==> TEST
      /eval -n ${hide:-,${relay.network.password}}     ==> --------
      /eval -n ${cut:3,+,test}                         ==> tes+
      /eval -n ${cut:+3,+,test}                        ==> te+
      /eval -n ${date:%H:%M:%S}                        ==> 07:46:40
      /eval -n ${if:${info:term_width}>80?big:small}   ==> big
      /eval -n ${rev:Hello}                            ==> olleH
      /eval -n ${repeat:5,-}                           ==> -----
      /eval -n ${length:test}                          ==> 4
      /eval -n ${split:1,,,abc,def,ghi}                ==> abc
      /eval -n ${split:-1,,,abc,def,ghi}               ==> ghi
      /eval -n ${split:count,,,abc,def,ghi}            ==> 3
      /eval -n ${split:random,,,abc,def,ghi}           ==> def
      /eval -n ${split_shell:1,"arg 1" arg2}           ==> arg 1
      /eval -n ${split_shell:-1,"arg 1" arg2}          ==> arg2
      /eval -n ${split_shell:count,"arg 1" arg2}       ==> 2
      /eval -n ${split_shell:random,"arg 1" arg2}      ==> arg2
      /eval -n ${calc:(5+2)*3}                         ==> 21
      /eval -n ${random:0,10}                          ==> 3
      /eval -n ${base_encode:64,test}                  ==> dGVzdA==
      /eval -n ${base_decode:64,dGVzdA==}              ==> test
      /eval -n ${translate:Plugin}                     ==> Extension
      /eval -n ${define:len,${calc:5+3}}${len}x${len}  ==> 8x8

    Exemples (conditions) :
      /eval -n -c ${window.buffer.number} > 2 ==> 0
      /eval -n -c ${window.win_width} > 100   ==> 1
      /eval -n -c (8 > 12) || (5 > 2)         ==> 1
      /eval -n -c (8 > 12) && (5 > 2)         ==> 0
      /eval -n -c abcd =~ ^ABC                ==> 1
      /eval -n -c abcd =~ (?-i)^ABC           ==> 0
      /eval -n -c abcd =~ (?-i)^abc           ==> 1
      /eval -n -c abcd !~ abc                 ==> 0
      /eval -n -c abcd =* a*d                 ==> 1
      /eval -n -c abcd =- bc                  ==> 1

- `filter`: filtrer les messages dans les tampons, pour les cacher/afficher selon des étiquettes ou expressions régulières

    /filter  list
             enable|disable|toggle [<nom>|@]
             add|addreplace <nom> <tampon>[,<tampon>...] <étiquettes> <regex>
             rename <nom> <nouveau_nom>
             recreate <nom>
             del <nom>|-all [<nom>...]

          list : lister tous les filtres
        enable : activer les filtres (par défaut les filtres sont activés)
       disable : désactiver les filtres
        toggle : activer/désactiver les filtres
           nom : nom de filtre ("@" = activer/désactiver tous les filtres dans le tampon courant)
           add : ajouter un filtre
    addreplace : ajouter ou remplacer un filtre existant
        rename : renommer un filtre
      recreate : définir la ligne de commande utilisée pour modifier le filtre
           del : supprimer un filtre
          -all : supprimer tous les filtres
        tampon : liste des tampons, séparés par des virgules, où le filtre est actif :
                 - il s'agit du nom complet incluant l'extension (exemple : "irc.libera.#weechat" ou "irc.server.libera")
                 - "*" signifie tous les tampons
                 - un nom commençant par '!' est exclu
                 - le caractère joker "*" est autorisé
    étiquettes : liste d'étiquettes, séparées par des virgules, par exemple : "irc_join,irc_part,irc_quit"
                 - "et" logique : utilisez "+" entre les étiquettes (par exemple : "nick_toto+irc_action")
                 - le caractère joker "*" est autorisé
                 - si l'étiquette commence par '!', alors elle est exclue et ne doit PAS être dans le message
         regex : expression régulière POSIX étendue à rechercher dans la ligne
                 - utiliser '\t' pour séparer le préfixe du message, les caractères spéciaux comme '|' doivent être échappés : '\|'
                 - si l'expression régulière commence par '!' alors le résultat est inversé (utiliser '\!' pour démarrer par '!')
                 - deux expressions régulières sont créées : une pour le préfixe et une pour le message
                 - les expressions régulières sont insensibles à la casse, elles peuvent commencer par "(?-i)" pour devenir sensibles à la casse

    La touche par défaut alt+'=' active/désactive le filtrage globalement et alt+'-' active/désactive le filtrage sur le tampon courant.

    Les étiquettes les plus couramment utilisées :
      no_filter, no_highlight, no_log, log0..log9 (niveau de log),
      notify_none, notify_message, notify_private, notify_highlight,
      self_msg, nick_xxx (xxx est le pseudo dans le message), prefix_nick_ccc (ccc est la couleur du pseudo),
      host_xxx (xxx est le nom d'utilisateur + hôte dans le message),
      irc_xxx (xxx est un nom de commande ou nombre, voir /server raw ou /debug tags),
      irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
    Pour voir les étiquettes des lignes affichées : /debug tags

    Exemples :
      utiliser le filtre intelligent IRC sur tous les tampons :
        /filter add irc_smart * irc_smart_filter *
      utiliser le filtre intelligent IRC sur tous les tampons sauf ceux avec "#weechat" dans le nom :
        /filter add irc_smart *,!*#weechat* irc_smart_filter *
      filtrer tous les messages IRC join/part/quit :
        /filter add joinquit * irc_join,irc_part,irc_quit *
      filtrer les pseudos afficher en rejoignant les canaux ou avec /names :
        /filter add nicks * irc_366 *
      filtrer le pseudo "toto" sur le canal IRC #weechat :
        /filter add toto irc.libera.#weechat nick_toto *
      filtrer les messages IRC join/action du pseudo "toto" :
        /filter add toto * nick_toto+irc_join,nick_toto+irc_action *
      filtrer les lignes contenant "weechat sucks" sur le canal IRC #weechat :
        /filter add sucks irc.libera.#weechat * weechat sucks
      filtrer les lignes qui sont strictement égales à "WeeChat sucks" sur tous les tampons :
        /filter add sucks2 * * (?-i)^WeeChat sucks$

- `help`: afficher l’aide sur les commandes et les options

    /help  -list|-listfull [<extension> [<extension>...]]
           <commande>
           <option>

        -list : lister les commandes, par extension (sans paramètre, cette liste est affichée)
    -listfull : lister les commandes avec description, par extension
    extension : lister les commandes de cette extension
     commande : un nom de commande
       option : un nom d'option (utilisez /set pour voir la liste)

- `history`: afficher l’historique des commandes du tampon

    /history  clear
              <valeur>

     clear : effacer l'historique
    valeur : nombre d'entrées dans l'historique à afficher

- `hotlist`: gestion de la hotlist

    /hotlist  add [low|message|private|highlight]
              clear [<niveau>]
              remove
              restore [-all]

       add : ajouter le tampon courant dans la hotlist (niveau par défaut : "low", les conditions définies dans l'option weechat.look.hotlist_add_conditions ne sont PAS vérifiées)
     clear : effacer la hotlist
     niveau : "lowest" pour effacer seulement le plus petit niveau dans la hotlist, "highest" pour effacer seulement le niveau le plus haut dans la hotlist, ou un masque de niveaux : entier qui est une combinaison de 1=join/part, 2=message, 4=privé, 8=highlight
     remove : supprimer le tampon courant de la hotlist
    restore : restaurer la dernière hotlist supprimée dans le tampon courant (ou tous les tampons avec -all)

- `input`: fonctions pour la ligne de commande

    /input  <action> [<paramètres>]

    liste des actions :
      return : simuler la touche "entrée"
      split_return : découper la ligne de commande sur les caractères de retour chariot puis simuler la touche "entrée" pour chaque ligne
      complete_next : compléter le mot avec la complétion suivante
      complete_previous : compléter le mot avec la complétion précédente
      search_text_here : chercher du texte dans le tampon à la position courante
      search_text : chercher du texte dans le tampon
      search_switch_case : basculer la casse exacte pour la recherche
      search_switch_regex : basculer le type de recherche : chaîne/expression régulière
      search_switch_where : basculer la recherche dans les messages/préfixes
      search_previous : chercher la ligne précédente
      search_next : chercher la ligne suivante
      search_stop_here : arrêter la recherche à la position courante
      search_stop : arrêter la recherche
      delete_previous_char : effacer le caractère précédent
      delete_next_char : effacer le caractère suivant
      delete_previous_word : effacer le mot précédent
      delete_previous_word_whitespace : effacer le mot précédent (jusqu'à un espace)
      delete_next_word : effacer le mot suivant
      delete_beginning_of_line : effacer du début de la ligne jusqu'au curseur
      delete_beginning_of_input : effacer du début de la ligne de commande jusqu'au curseur
      delete_end_of_line : effacer du curseur jusqu'à la fin de la ligne
      delete_end_of_input : effacer du curseur jusqu'à la fin de la ligne de commande
      delete_line : effacer la ligne courante
      delete_input : effacer la ligne de commande entière
      clipboard_paste : coller depuis le presse-papiers interne
      transpose_chars : inverser deux caractères
      undo : défaire la dernière action de la ligne de commande
      redo : refaire la dernière action de la ligne de commande
      move_beginning_of_line : déplacer le curseur au début de la ligne
      move_beginning_of_input : déplacer le curseur au début de la ligne de commande
      move_end_of_line : déplacer le curseur à la fin de la ligne
      move_end_of_input : déplacer le curseur à la fin de la ligne de commande
      move_previous_char : déplacer le curseur sur le caractère précédent
      move_next_char : déplacer le curseur sur le caractère suivant
      move_previous_word : déplacer le curseur sur le mot précédent
      move_next_word : déplacer le curseur sur le mot suivant
      move_previous_line : déplacer le curseur sur la ligne précédente
      move_next_line : déplacer le curseur sur la ligne suivante
      history_previous : rappeler la commande précédente dans l'historique du tampon courant
      history_next : rappeler la commande suivante dans l'historique du tampon courant
      history_global_previous : rappeler la commande précédente dans l'historique global
      history_global_next : rappeler la commande suivante dans l'historique global
      grab_key : capturer une touche (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes)
      grab_key_command : capturer une touche avec sa commande associée (paramètre facultatif : délai pour la fin de la capture, par défaut 500 millisecondes)
      grab_mouse : capturer un évènement de la souris
      grab_mouse_area : capturer un évènement de la souris avec la zone
      insert : insérer du texte dans la ligne de commande (les caractères échappés sont autorisés, voir /help print)
      send : envoyer du texte au tampon

    Cette commande est utilisée par les associations de touches ou les extensions.

- `item`: gestion des objets de barre personnalisés

    /item  list
           add|addreplace <nom> "<conditions>" "<contenu>"
           rename <nom> <nouveau_nom>
           refresh <nom> [<nom>...]
           recreate <nom>
           del <nom>|-all

          list : lister tous les objets de barre personnalisés
           add : ajouter un objet de barre personnalisé
    addreplace : ajouter ou remplacer un objet de barre personnalisé existant
           nom : nom de l'objet de barre personnalisé
    conditions : conditions évaluées pour afficher l'objet de barre (par exemple pour afficher l'objet de barre seulement sur certains tampons)
       contenu : contenu (évalué, voir /help eval)
        rename : renommer un objet de barre personnalisé
       refresh : mettre à jour le contenu d'un objet de barre personnalisé dans toutes les barres où l'objet est affiché ; tout objet peut être rafraîchi : défaut/extension/objets de barre personnalisés
      recreate : définir la ligne de commande utilisée pour éditer l'objet de barre personnalisé
           del : supprimer un objet de barre personnalisé
          -all : supprimer tous les objets de barre personnalisés

    Exemples :
      ajouter un objet avec la taille du terminal, affiché seulement sur les tampons avec numéro = 1 :
        /item add terminfo "${buffer.number} == 1" "term:${info:term_width}x${info:term_height}"
      ajouter un objet avec des informations sur le tampon :
        /item add bufinfo "" "${buffer.number}:${buffer.name}${if:${buffer.zoomed}?(Z)}"
      ajouter un objet avec la date/heure en utilisant le format "Dec 25, 12:34 +0100", rafraîchi chaque minute :
        /item add datetime "" "${date:%b %d, %H:%M %z}"
        /trigger add datetime_refresh timer "60000;60" "" "" "/item refresh datetime"
      ajouter un objet avec le nombre de lignes dans le tampon (affichées/total), rafraîchi à chaque nouvelle ligne affichée ou si les lignes filtrées ont changé :
        /item add lines_count "" "${calc:${buffer.lines.lines_count}-${buffer.lines.lines_hidden}}/${buffer.lines.lines_count} lines"
        /trigger add lines_count_refresh_print print "" "" "" "/item refresh lines_count"
        /trigger add lines_count_refresh_signal signal "window_switch;buffer_switch;buffer_lines_hidden;filters_*" "" "" "/item refresh lines_count"
      forcer le rafraîchissement de l'objet "lines_count" :
        /item refresh lines_count
      recréer l'objet "lines_count" avec différentes conditions ou contenu :
        /item recreate lines_count
      supprimer l'objet "lines_count" :
        /item del lines_count

- `key`: associer/libérer des touches

    /key  [list|listdefault|listdiff] [<contexte>]
          bind <touche> [<commande> [<args>]]
          bindctxt <contexte> <touche> [<commande> [<args>]]
          unbind <touche>
          unbindctxt <contexte> <touche>
          reset <touche>
          resetctxt <contexte> <touche>
          resetall -yes [<contexte>]
          missing [<contexte>]
          legacy <touche> [<touche>...]

           list : afficher toutes les touches courantes (sans paramètre, cette liste est affichée)
    listdefault : afficher les touches par défaut
       listdiff : afficher les différences entre les touches courantes et celles par défaut (touches ajoutées, redéfinies ou supprimées)
       contexte : nom du contexte ("default" ou "search")
           bind : associer une commande à une touche ou affiche la commande associée à la touche
       bindctxt : associer une commande à une touche ou affiche la commande associée à la touche pour le contexte donné
       commande : commande (plusieurs commandes peuvent être séparées par des points-virgules)
         unbind : supprimer l'association à une touche
     unbindctxt : supprimer l'association à une touche pour le contexte donné
          reset : réinitialiser une touche à son association par défaut
      resetctxt : réinitialiser une touche à son association par défaut pour le contexte donné
       resetall : restaurer les touches aux valeurs par défaut et supprimer TOUTES les touches personnelles (utiliser avec précaution !)
        missing : ajouter les touches manquantes (en utilisant les touches par défaut), pratique après installation d'une nouvelle version de WeeChat
         legacy : afficher le nouveau nom pour des anciennes touches

    Lors de l'association d'une commande à une touche, il est recommandé d'utiliser la touche alt+k (ou Échap puis k), et puis de presser la touche à associer : cela insère le code de la touche dans la ligne de commande.

    Modificateurs autorisés (dans cet ordre lorsque plusieurs sont utilisés) :
      meta-  (touche alt)
      ctrl-  (touche control)
      shift-  (touche shift, peut être utilisé seulement avec les noms de touches ci-dessous)

    Noms de touches autorisés : f0 à f20, home, insert, delete, end, backspace, pgup, pgdn, up, down, right, left, tab, return, comma, space.

    La virgule est utilisée pour séparer plusieurs touches.

    Pour le contexte "mouse" (possible aussi pour le contexte "cursor"), la touche a le format : "@zone:touche" ou "@zone1>zone2:touche" où la zone peut être :
              * : n'importe quelle zone à l'écran
           chat : la zone de discussion (n'importe quel tampon)
      chat(xxx) : la zone de discussion pour le tampon avec le nom "xxx" (nom complet incluant l'extension)
         bar(*) : n'importe quelle barre
       bar(xxx) : la barre "xxx"
        item(*) : n'importe quel objet de barre
      item(xxx) : l'objet de barre "xxx"
    La caractère joker "*" est autorisé pour plusieurs évènements de la souris.
    Une valeur spéciale pour la commande avec le format "hsignal:nom" peut être utilisée dans le contexte "mouse", cela enverra le signal "nom" avec la table de hachage du focus comme paramètre.
    Une autre valeur spéciale "-" peut être utilisée pour désactiver la touche (elle sera ignorée lors de la recherche de touches).

    Exemples :
      touche alt-r pour aller sur le canal IRC #weechat :
        /key bind meta-r /buffer #weechat
      restaurer l'association par défaut pour la touche alt-r :
        /key reset meta-r
      touche meta-v puis f1 pour lancer /help :
        /key bind meta-v,f1 /help
      touche "tab" pour arrêter la recherche dans le tampon :
        /key bindctxt search ctrl-i /input search_stop
      bouton du milieu de la souris sur un pseudo pour récupérer les infos sur le pseudo :
        /key bindctxt mouse @item(buffer_nicklist):button3 /msg nickserv info ${nick}

- `layout`: gestion des dispositions de tampons/fenêtres

    /layout  store [<nom>] [buffers|windows]
             apply [<nom>] [buffers|windows]
             leave
             del [<nom>] [buffers|windows]
             rename <nom> <nouveau_nom>

      store : stocker les tampons/fenêtres courants dans une disposition
      apply : appliquer une disposition stockée
      leave : quitter la disposition courante (ne met à jour aucune disposition)
        del : supprimer les tampons et/ou fenêtres dans une disposition stockée
              (si ni "buffers" ni "windows" n'est donné après le nom, la disposition est supprimée)
     rename : renommer une disposition
        nom : nom pour la disposition stockée (par défaut "default")
    buffers : stocker/appliquer seulement pour les tampons (ordre des tampons)
    windows : stocker/appliquer seulement pour les fenêtres (le tampon affiché par chaque fenêtre)

    Sans paramètre, cette commande affiche les dispositions stockées.

    La disposition courante peut être sauvegardée sur la commande /quit avec l'option "weechat.look.save_layout_on_exit".

    Note : la disposition se souvient seulement de la division des fenêtres et des numéros de tampons. Elle n'ouvre pas les tampons. Cela signifie par exemple que vous devez toujours automatiquement rejoindre les canaux IRC pour ouvrir les tampons, la disposition sauvée ne s'applique qu'une fois les tampons ouverts.

- `mouse`: contrôle de la souris

    /mouse  enable|disable|toggle [<délai>]

     enable : activer la souris
    disable : désactiver la souris
     toggle : activer/désactiver la souris
      délai : délai (en secondes) après lequel l'état initial de la souris est restauré (pratique pour désactiver temporairement la souris)

    L'état de la souris est sauvé dans l'option "weechat.look.mouse".

    Exemples :
      activer la souris :
        /mouse enable
      activer/désactiver la souris pendant 5 secondes :
        /mouse toggle 5

- `mute`: exécuter une commande silencieusement

    /mute  [-core | -current | -buffer <nom>] <commande>

       -core : pas d'affichage sur le tampon core WeeChat
    -current : pas d'affichage sur le tampon courant
     -buffer : pas d'affichage sur le tampon spécifié
         nom : nom complet du tampon (exemples : "irc.server.libera", "irc.libera.#weechat")
    commande : commande à exécuter silencieusement (un '/' est automatiquement ajouté s'il n'est pas trouvé au début de la commande)

    Si aucune cible n'est spécifiée (-core, -current ou -buffer), alors par défaut tous les tampons seront silencieux.

    Exemples :
      sauvegarde configuration :
        /mute save
      message au canal IRC courant :
        /mute -current msg * bonjour !
      message au canal #weechat :
        /mute -buffer irc.libera.#weechat msg #weechat bonjour !

- `plugin`: lister/charger/décharger des extensions

    /plugin  list [-o|-ol|-i|-il|<nom>]
             listfull [<nom>]
             load <fichier> [<paramètres>]
             autoload [<paramètres>]
             reload [<nom>|* [<paramètres]]
             unload [<nom>]

          list : lister les extensions chargées
            -o : envoyer la liste des extensions chargées au tampon (chaîne en anglais)
           -ol : envoyer la liste des extensions chargées au tampon (chaîne traduite)
            -i : copier la liste des extensions chargées dans la ligne de commande (pour envoi au tampon) (chaîne en anglais)
           -il : copier la liste des extensions chargées dans la ligne de commande (pour envoi au tampon) (chaîne traduite)
           nom : nom d'extension
      listfull : lister les extensions chargées (verbeux)
          load : charger une extension
       fichier : extension (fichier) à charger
    paramètres : paramètres donnés à l'extension lors de son chargement
      autoload : charger automatiquement les extensions dans un répertoire système ou utilisateur
        reload : recharger une extension (si pas de nom donné, décharger toutes les extensions, puis recharger automatiquement les extensions)
        unload : décharger une extension (si pas de nom donné, décharger toutes les extensions)

    Sans paramètre, cette commande liste les extensions chargées.

- `print`: afficher du texte dans un tampon

    /print  [-buffer <numéro>|<nom>] [-newbuffer <nom>] [-free] [-switch] [-core|-current] [-y <ligne>] [-escape] [-date <date>] [-tags <étiquettes>] [-action|-error|-join|-network|-quit] [<texte>]
            -stdout|-stderr [<texte>]
            -beep

       -buffer : afficher le texte dans ce tampon (par défaut : tampon où est exécutée la commande)
    -newbuffer : créer un nouveau tampon et afficher le texte dans ce tampon
         -free : créer un tampon avec contenu libre (avec -newbuffer seulement)
       -switch : basculer vers le tampon
         -core : alias de "-buffer core.weechat"
      -current : afficher le texte dans le tampon courant
            -y : afficher sur une ligne personnalisée (pour un tampon avec contenu libre seulement)
         ligne : numéro de ligne pour un tampon avec contenu libre (la première ligne est 0, un nombre négatif affiche après la dernière ligne : -1 = après la dernière ligne, -2 = deux lignes après la dernière ligne, etc.)
       -escape : interpréter les caractères échappés (par exemple \a, \07, \x07)
         -date : date du message, le format peut être :
                   -n : 'n' secondes avant maintenant
                   +n : 'n' secondes dans le futur
                    n : 'n' secondes depuis l'époque (voir man time)
                   date/heure (ISO 8601) : yyyy-mm-ddThh:mm:ss, exemple : 2014-01-19T04:32:55
                   heure : hh:mm:ss (exemple : 04:32:55)
         -tags : liste d'étiquettes séparées par des virgules (voir /help filter pour une liste des étiquettes couramment utilisées)
         texte : texte à afficher (le préfixe et le message doivent être séparés par "\t", si le texte commence par "-", ajoutez "\" avant)
       -stdout : afficher le texte sur stdout (les caractères échappés sont interprétés)
       -stderr : afficher le texte sur stderr (les caractères échappés sont interprétés)
         -beep : alias de "-stderr \a"

    Les options -action ... -quit utilisent le préfixe défini dans les options "weechat.look.prefix_*".

    Les caractères échappés suivants sont supportés :
      \" \\ \a \b \e \f \n \r \t \v \0ooo \xhh \uhhhh \Uhhhhhhhh

    Exemples :
      afficher un pense-bête sur le tampon core avec un highlight :
        /print -core -tags notify_highlight Pense-bête : acheter du lait
      afficher une erreur sur le tampon core :
        /print -core -error Une erreur ici
      afficher un message sur le tampon core avec le préfixe "abc" :
        /print -core abc\tLe message
      afficher un message sur le canal #weechat :
        /print -buffer irc.libera.#weechat Message sur #weechat
      afficher un bonhomme de neige (U+2603) :
        /print -escape \u2603
      envoyer une alerte (BEL) :
        /print -beep

- `proxy`: gestion des proxies

    /proxy  list
            add <nom> <type> <adresse> <port> [<utilisateur> [<mot_de_passe>]]
            del <nom>|-all
            set <nom> <option> <valeur>

            list : lister tous les proxies
             add : ajouter un nouveau proxy
             nom : nom du proxy (doit être unique)
            type : http, socks4 ou socks5
         adresse : IP ou nom de machine
            port : port
     utilisateur : nom d'utilisateur (optionnel)
    mot_de_passe : mot de passe (optionnel)
             del : supprimer un proxy (ou tous les proxies avec -all)
             set : changer la valeur d'une propriété d'un proxy
          option : option à modifier (pour la liste des options, voir /set weechat.proxy.<proxyname>.*)
          valeur : nouvelle valeur pour l'option

    Exemples :
      ajouter un proxy http, tournant en local, port 8888 :
        /proxy add local http 127.0.0.1 8888
      ajouter un proxy http en utilisant le protocole IPv6 :
        /proxy add local http ::1 8888
        /proxy set local ipv6 on
      ajouter un proxy socks5 avec un utilisateur/mot de passe :
        /proxy add myproxy socks5 sample.host.org 3128 myuser mypass
      supprimer un proxy :
        /proxy del myproxy

- `quit`: quitter WeeChat

    /quit  [-yes] [<paramètres>]

          -yes : requis si l'option "weechat.look.confirm_quit" est activée
    paramètres : texte envoyé avec le signal "quit"
                 (par exemple l'extension irc utilise ce texte pour envoyer le message de quit au serveur)

    Par défaut en quittant les fichiers de configuration sont sauvegardés (voir l'option "weechat.look.save_config_on_exit") et la disposition courante peut être sauvegardée (voir l'option "weechat.look.save_layout_on_exit").

- `reload`: recharger les fichiers de configuration depuis le disque

    /reload  [<fichier> [<fichier>...]]

    fichier : fichier de configuration à recharger (sans l'extension ".conf")

    Sans paramètre, tous les fichiers (WeeChat et extensions) sont rechargés.

- `repeat`: exécuter une commande plusieurs fois

    /repeat  [-interval <délai>[<unité>]] <nombre> <commande>

       délai : délai entre l'exécution des commandes
       unité : optionnelle, valeurs possibles :
                 ms : millisecondes
                  s : secondes (par défaut)
                  m : minutes
                  h : heures
      nombre : nombre de fois que la commande sera exécutée
    commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')

    Note : la commande est exécutée sur le tampon où /repeat a été exécuté (si le tampon n'existe plus, la commande n'est pas exécutée).

    Exemple :
      faire défiler de 2 pages vers le haut :
        /repeat 2 /window page_up

- `reset`: réinitialiser des options de configuration

    /reset  <option>
            -mask <option>

    option : nom d'une option
     -mask : utiliser un masque pour l'option (le caractère joker "*" est autorisé pour réinitialiser plusieurs options, à utiliser avec prudence !)

    Exemples :
      réinitialiser une option :
        /reset weechat.look.item_time_format
      réinitialiser toutes les options de couleur :
        /reset -mask weechat.color.*

- `save`: sauvegarder les fichiers de configuration sur disque

    /save  [<fichier> [<fichier>...]]

    fichier : fichier de configuration à sauvegarder (sans l'extension ".conf")

    Sans paramètre, tous les fichiers (WeeChat et extensions) sont sauvegardés.

    Par défaut tous les fichiers de configuration sont sauvegardés sur disque sur la commande /quit (voir l'option "weechat.look.save_config_on_exit").

- `secure`: gestion des données sécurisées (mots de passe ou données privées chiffrés dans le fichier sec.conf)

    /secure  passphrase <phrase de chiffrement>|-delete
             decrypt <phrase de chiffrement>|-discard
             set <nom> <valeur>
             del <nom>

    passphrase : modifier la phrase de chiffrement (sans phrase de chiffrement, les données sont stockées en texte brut dans le fichier sec.conf)
       -delete : supprimer la phrase de chiffrement
       decrypt : déchiffrer les données toujours chiffrées
      -discard : jeter toutes les données encore chiffrées
           set : ajouter ou modifier une donnée sécurisée
           del : supprimer une donnée sécurisée

    Sans paramètre, cette commande affiche les données sécurisées dans un nouveau tampon.

    Les touches sur le tampon des données sécurisées :
      alt+v  afficher/cacher les valeurs

    Lorsqu'une phrase de chiffrement est utilisée (données chiffrées), elle est demandée au démarrage de WeeChat.
    Il est possible de définir la variable d'environnement WEECHAT_PASSPHRASE pour éviter la demande (cette même variable est utilisée par WeeChat sur le /upgrade) ou de définir l'option sec.crypt.passphrase_command pour lire la phrase de chiffrement depuis la sortie d'une commande externe comme un coffre-fort à mots de passe (voir /help sec.crypt.passphrase_command).

    Les données sécurisées avec le format ${sec.data.xxx} peuvent être utilisées dans :
      - la commande /eval
      - le paramètre de ligne de commande "--run-command"
      - les options weechat.startup.command_{before|after}_plugins
      - d'autres options qui peuvent contenir un mot de passe ou des données sensibles (par exemple proxy, serveur irc et relay) ; voir /help sur les options pour vérifier si elles sont évaluées.

    Exemples :
      définir une phrase de chiffrement :
        /secure passphrase ceci est ma phrase de chiffrement
      utiliser le programme "pass" pour lire la phrase de chiffrement au démarrage :
        /set sec.crypt.passphrase_command "/usr/bin/pass show weechat/passphrase"
      chiffrer le mot de passe libera SASL :
        /secure set libera motdepasse
        /set irc.server.libera.sasl_password "${sec.data.libera}"
      chiffrer le mot de passe oftc pour nickserv :
        /secure set oftc motdepasse
        /set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}"
      alias pour ghost du pseudo "pseudo" :
        /alias add ghost /eval /msg -server libera nickserv ghost pseudo ${sec.data.libera}

- `set`: définir des options de configuration et des variables d’environnement

    /set  [<option> [<valeur>]]
          diff [<option> [<option>...]]
          env [<variable> [<valeur>]]

    option : nom d'une option (le caractère joker "*" est autorisé pour lister les options, si aucune valeur n'est spécifiée)
    valeur : nouvelle valeur pour l'option, selon le type :
               booléen : on, off ou toggle
                entier : nombre, ++nombre ou --nombre
                chaîne : toute chaîne ("" pour une chaîne vide)
               couleur : nom de couleur, ++nombre ou --nombre
             Note : pour tous les types, vous pouvez utiliser null pour supprimer la valeur de l'option (valeur non définie). Cela ne fonctionne qu'avec certaines options spéciales des extensions.
      diff : afficher seulement les options modifiées
       env : afficher ou définir une variable d'environnement (utilisez la valeur "" pour supprimer une variable)

    Exemples :
      afficher les options à propos du highlight :
        /set *highlight*
      ajouter un mot pour le highlight :
        /set weechat.look.highlight "mot"
      afficher les options modifiées :
        /set diff
      afficher les options modifiées dans l'extension irc :
        /set diff irc.*
      afficher la valeur de la variable d'environnement LANG :
        /set env LANG
      modifier la variable d'environnement LANG et l'utiliser :
        /set env LANG fr_FR.UTF-8
        /upgrade
      réinitialiser la variable d'environnement ABC :
        /set env ABC ""

- `toggle`: basculer la valeur d’une option de configuration

    /toggle  <option> [<valeur> [<valeur>...]]

    option : nom d'une option
    valeur : valeurs possibles pour l'option (les valeurs sont découpées comme le les paramètres d'une commande par le shell : des guillemets peuvent être utilisés pour préserver les espaces au début et à la fin des valeurs)

    Comportement :
      - seule une option de type booléen ou chaîne peut être basculée sans valeur :
          - booléen : basculer on/off selon la valeur courante
          - chaîne : basculer entre chaîne vide et la valeur par défaut (fonctionne seulement si une chaîne vide est autorisée pour l'option)
      - avec une seule valeur donnée, basculer entre cette valeur et la valeur par défaut de l'option
      - avec plusieurs valeurs données, basculer entre les valeurs : la valeur utilisée est celle qui suit la valeur courante de l'option ; si la valeur courante n'est pas dans la liste, la première valeur de la liste est utilisée
      - la valeur spéciale "null" peut être donnée, mais seulement comme première valeur dans la liste et sans guillemets autour.

    Exemples :
      basculer l'affichage de l'heure dans la zone de discussion (sans afficher la nouvelle valeur utilisée) :
        /mute /toggle weechat.look.buffer_time_format
      basculer le format de l'heure dans la zone de discussion (avec secondes, sans secondes, désactivé) :
        /toggle weechat.look.buffer_time_format "%H:%M:%S" "%H:%M" ""
      basculer le "join" automatique du canal #weechat sur le serveur libera :
        /toggle irc.server.libera.autojoin null #weechat

- `unset`: supprimer/réinitialiser des options de configuration

    /unset  <option>
            -mask <option>

    option : nom d'une option
     -mask : utiliser un masque pour l'option (le caractère joker "*" est autorisé pour réinitialiser plusieurs options, à utiliser avec prudence !)

    Selon l'option, elle est réinitialisée (pour les options standards) ou supprimée (pour les options facultatives, comme les valeurs pour les serveurs).

    Exemples :
      réinitialiser une option :
        /unset weechat.look.item_time_format
      réinitialiser toutes les options de couleur :
        /unset -mask weechat.color.*

- `upgrade`: sauvegarder la session WeeChat et relancer le binaire WeeChat sans se déconnecter des serveurs

    /upgrade  [-yes] [<chemin_vers_binaire>|-save|-quit]

                   -yes : requis si l'option "weechat.look.confirm_upgrade" est activée
    chemin_vers_binaire : chemin vers le binaire WeeChat (par défaut le binaire courant)
                 -dummy : ne rien faire (option utilisée pour éviter une complétion accidentelle avec "-quit")
                  -save : sauvegarder seulement la session, ne pas quitter ni relancer WeeChat ; les fichiers de configuration ne sont pas sauvegardés (si besoin vous pouvez utiliser /save avant cette commande)
                  -quit : fermer *TOUTES* les connexions, sauvegarder la session et quitter, ce qui rend possible une restauration différée (voir ci-dessous)

    Cette commande met à jour et recharge une session de WeeChat qui tourne. Le nouveau binaire WeeChat doit avoir été compilé ou installé via un gestionnaire de paquet avant de lancer cette commande.

    Note : les connexions TLS sont perdues durant la mise à jour, car le rechargement de session TLS n'est pas possible actuellement avec GnuTLS. Il y a une reconnexion automatique après la mise à jour.

    Important : l'utilisation de l'option -save peut être dangereuse, il est recommandé d'utiliser seulement /upgrade (ou avec -quit) pour une mise à jour standard et un redémarrage ; l'option -save peut être utilisée pour sauvegarder régulièrement la session et la restaurer en cas de sortie anormale (panne de courant, crash, etc.).

    Le processus de mise à jour comporte 4 étapes :
      1. sauvegarder la session pour le cœur et les extensions (tampons, historique, ...)
      2. décharger toutes les extensions (les fichiers de configuration (*.conf) sont écrits sur disque)
      3. sauvegarder la configuration WeeChat (weechat.conf)
      4. exécuter le nouveau binaire WeeChat et recharger la session.

    Avec l'option "-quit", le processus est le suivant :
      1. fermer *TOUTES* les connexions
      2. sauvegarder la session (fichiers *.upgrade)
      3. décharger les extensions
      4. sauvegarder la configuration WeeChat
      5. quitter WeeChat

    Avec l'option "-save", le processus est le suivant :
      1. sauvegarder la session (fichiers *.upgrade) avec un état déconnecté pour les serveurs IRC et les clients Relay (mais aucune déconnexion n'est faite)

    Avec "-quit" ou "-save", vous pouvez restaurer la session plus tard avec cette commande : weechat --upgrade
    IMPORTANT : vous devez restaurer la session avec exactement la même configuration (fichiers *.conf) et si possible la même version de WeeChat (ou une plus récente).
    Il est également possible de restaurer la session WeeChat sur une autre machine si vous y copiez le contenu des répertoires personnels de WeeChat (voir /debug dirs).

- `uptime`: montrer la durée de fonctionnement de WeeChat

    /uptime  [-o|-ol]

     -o : envoyer la durée de fonctionnement sur le tampon courant comme entrée (chaîne en anglais)
    -ol : envoyer la durée de fonctionnement sur le tampon courant comme entrée (chaîne traduite)

- `version`: afficher la version de WeeChat et la date de compilation

    /version  [-o|-ol]

     -o : envoyer la version sur le tampon courant comme entrée (chaîne en anglais)
    -ol : envoyer la version sur le tampon courant comme entrée (chaîne traduite)

    L'alias par défaut /v peut être utilisé pour exécuter cette commande sur tous les tampons (sinon la commande irc /version est utilisée sur les tampons irc).

- `wait`: planifier l’exécution d’une commande dans le futur

    /wait  <nombre>[<unité>] <commande>

      nombre : temps à attendre (nombre entier)
       unité : optionnelle, valeurs possibles :
                 ms : millisecondes
                  s : secondes (par défaut)
                  m : minutes
                  h : heures
    commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')

    Note : la commande est exécutée sur le tampon où /wait a été exécuté (si le tampon n'existe plus, la commande n'est pas exécutée).

    Exemples :
      rejoindre le canal dans 10 secondes :
        /wait 10 /join #test
      passer absent dans 15 minutes :
        /wait 15m /away -all I'm away
      dire 'bonjour' dans 2 minutes :
        /wait 2m bonjour

- `window`: gestion des fenêtres

    /window  list
             -1|+1|b#|up|down|left|right [-window <numéro>]
             <numéro>
             splith|splitv [-window <numéro>] [<pct>]
             resize [-window <numéro>] [h|v][+|-]<pct>
             balance
             merge [-window <numéro>] [all]
             close [-window <numéro>]
             page_up|page_down [-window <numéro>]
             refresh
             scroll [-window <numéro>] [+|-]<valeur>[s|m|h|d|M|y]
             scroll_horiz [-window <numéro>] [+|-]<valeur>[%]
             scroll_up|scroll_down|scroll_top|scroll_bottom|scroll_beyond_end|scroll_previous_highlight|scroll_next_highlight|scroll_unread [-window <numéro>]
             swap [-window <numéro>] [up|down|left|right]
             zoom [-window <numéro>]
             bare [<délai>]

             list : lister les fenêtres ouvertes (sans paramètre, cette liste est affichée)
               -1 : sauter à la fenêtre précédente
               +1 : sauter à la fenêtre suivante
               b# : sauter à la fenêtre affichant le tampon #
               up : sauter à la fenêtre au dessus
             down : sauter à la fenêtre au dessous
             left : sauter à la fenêtre à gauche
            right : sauter à la fenêtre à droite
           numéro : numéro de fenêtre (voir /window list)
           splith : éclater la fenêtre en deux horizontalement (pour défaire : /window merge)
           splitv : éclater la fenêtre en deux verticalement (pour défaire : /window merge)
           resize : redimensionner une fenêtre, la nouvelle taille est <pct> pourcentage de la fenêtre parente
                    si "h" ou "v" est spécifié, le redimensionnement affecte la fenêtre parente la plus proche avec un découpage de ce type (horizontal/vertical)
          balance : équilibrer la taille de toutes les fenêtres
            merge : fusionner la fenêtre avec une autre
            close : fermer la fenêtre
          page_up : faire défiler d'une page vers le haut
        page_down : faire défiler d'une page vers le bas
          refresh : redessiner l'écran
           scroll : faire défiler d'un nombre de lignes (+/-N) ou avec du temps : s=secondes, m=minutes, h=heures, d=jours, M=mois, y=année
     scroll_horiz : faire défiler horizontalement d'un nombre de colonnes (+/-N) ou un pourcentage de la taille de fenêtre (ce défilement est possible seulement sur les tampons avec contenu libre)
        scroll_up : faire défiler de quelques lignes vers le haut
      scroll_down : faire défiler de quelques lignes vers le bas
       scroll_top : faire défiler jusqu'au début du tampon
    scroll_bottom : faire défiler jusqu'en bas du tampon
    scroll_beyond_end : faire défiler au-delà de la fin du tampon
    scroll_previous_highlight : faire défiler jusqu'au highlight précédent
    scroll_next_highlight : faire défiler jusqu'au highlight suivant
    scroll_unread : faire défiler jusqu'au marqueur de lecture
             swap : échanger les tampons de deux fenêtres (avec une direction facultative pour la fenêtre cible)
             zoom : zoomer sur la fenêtre
             bare : activer/désactiver le mode d'affichage dépouillé (avec un délai facultatif en secondes pour un retour automatique au mode d'affichage standard)

    Pour splith et splitv, pct est un pourcentage qui représente la taille de la nouvelle fenêtre, calculée par rapport à la taille de la fenêtre courante. Par exemple 25 signifie créer une fenêtre qui a pour taille : taille_courante / 4

    Exemples :
      sauter à la fenêtre affichant le tampon 1 :
        /window b1
      défilement de 2 lignes vers le haut :
        /window scroll -2
      défilement de 2 jours vers le haut :
        /window scroll -2d
      défilement jusqu'au début du jour courant :
        /window scroll -d
      zoom sur la fenêtre numéro 2 :
        /window zoom -window 2
      éclater la fenêtre horizontalement en utilisant 30% de l'espace pour la fenêtre du haut :
        /window splith 30
      redimensionner la fenêtre à 75% de la taille de la fenêtre parente :
        /window resize 75
      redimensionner le découpage vertical, ajouter 10% dans la taille :
        /window resize v+10
      supprimer l'éclatement, garder la fenêtre courante :
        /window merge
      fermer la fenêtre courante :
        /window close
      activer le mode d'affichage dépouillé pendant 2 secondes :
        /window bare 2

#### 保護データのオプション

sec.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`crypt` | `/set sec.crypt.*` | 暗号化に関するオプション
`data` | `/secure` | 保護データ

オプション:

- sec.crypt.cipher

  - description: chiffrement ("cipher") utilisé pour chiffrer les données (le nombre après l'algorithme est la taille de la clé en bits)

  - type: entier

  - valeurs: aes128, aes192, aes256

  - valeur par défaut: `aes256`

- sec.crypt.hash_algo

  - description: algorithme de hash pour vérifier les données déchiffrées

  - type: entier

  - valeurs: sha224, sha256, sha384, sha512

  - valeur par défaut: `sha256`

- sec.crypt.passphrase_command

  - description: lire la phrase de chiffrement depuis la sortie de cette commande système (seule la première ligne est utilisée et elle ne doit contenir aucun autre caractère) ; cette option est utilisée seulement pour lire le fichier sec.conf et si la variable d'environnement "WEECHAT_PASSPHRASE" n'est pas définie (la variable d'environnement a une priorité plus haute) ; exemple avec password-store : "/usr/bin/pass show weechat/passphrase"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- sec.crypt.salt

  - description: utiliser du sel lors de la génération de la clé utilisée dans le chiffrement (recommandé pour un maximum de sécurité) ; lorsque cette option est activée, le contenu des données chiffrées dans le fichier sec.conf sera différent à chaque écriture du fichier ; si vous utilisez le fichier sec.conf dans un système de contrôle de version, alors vous pouvez désactiver cette option pour avoir toujours le même contenu de fichier

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

#### WeeChat オプション

weechat.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`debug` | `/debug set /set weechat.debug.*` | core とプラグインのデバッグレベル (オプションをセクションに追加/削除出来ます)
`startup` | `/set weechat.startup.*` | 起動オプション
`look` | `/set weechat.look.*` | 外観
`palette` | `/color alias /set weechat.palette.*` | 色の別名 (オプションをセクションに追加/削除出来ます)
`color` | `/set weechat.color.*` | 色
`completion` | `/set weechat.completion.*` | 補完オプション
`history` | `/set weechat.history.*` | 履歴オプション (コマンドとバッファ)
`proxy` | `/proxy /set weechat.proxy.*` | プロキシオプション
`network` | `/set weechat.network.*` | ネットワーク/TLS オプション
`plugin` | `/set weechat.plugin.*` | Options on plugins.
`signal` | `/set weechat.signal.*` | Options on signals.
`bar` | `/bar /set weechat.bar.*` | バーオプション
`layout` | `/layout` | レイアウト
`notify` | `/buffer notify` | バッファに対する通知レベル (オプションをセクションに追加/削除出来ます)
`filter` | `/filter` | フィルタ
`key` | `/key` | デフォルトコンテキストのキー
`key_search` | `/key` | 検索コンテキストのキー
`key_cursor` | `/key` | カーソルコンテキストのキー
`key_mouse` | `/key` | マウスコンテキストのキー

オプション:

- weechat.color.bar_more

  - description: couleur du texte pour les "+" lors du défilement des barres

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightmagenta`

- weechat.color.chat

  - description: couleur du texte pour la discussion

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.chat_bg

  - description: couleur du fond pour la discussion

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.chat_buffer

  - description: couleur du texte pour le nom des tampons

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- weechat.color.chat_channel

  - description: couleur du texte pour le nom des canaux

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- weechat.color.chat_day_change

  - description: couleur du texte pour le message affiché lorsque le jour a changé

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- weechat.color.chat_delimiters

  - description: couleur du texte pour les délimiteurs

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `22`

- weechat.color.chat_highlight

  - description: couleur du texte pour le préfixe surligné (highlight)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- weechat.color.chat_highlight_bg

  - description: couleur du fond pour le préfixe surligné (highlight)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `124`

- weechat.color.chat_host

  - description: couleur du texte pour les noms d'hôtes

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- weechat.color.chat_inactive_buffer

  - description: couleur du texte pour la discussion lorsque la ligne est inactive (tampon mélangé avec d'autres tampons et non sélectionné)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.chat_inactive_window

  - description: couleur du texte pour la discussion lorsque la fenêtre n'est pas active (pas la fenêtre sélectionnée)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `240`

- weechat.color.chat_nick

  - description: couleur du texte pour les pseudos dans la fenêtre de discussion ; utilisée dans quelques messages du serveur et comme couleur par défaut quand la couleur du pseudo n'est pas trouvée ; la plupart du temps la couleur du pseudo vient de l'option weechat.color.chat_nick_colors

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightcyan`

- weechat.color.chat_nick_colors

  - description: couleur du texte pour les pseudos (liste de couleurs séparées par une virgule, un fond est autorisé avec le format : "couleur:fond", par exemple : "lightred:blue")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"cyan,magenta,green,brown,lightblue,lightcyan,lightmagenta,lightgreen,31,35,38,40,49,63,70,80,92,99,112,126,130,138,142,148,160,162,167,169,174,176,178,184,186,210,212,215,248"`

- weechat.color.chat_nick_offline

  - description: couleur du texte pour un pseudo déconnecté (qui n'est plus dans la liste de pseudos) ; cette couleur est utilisée seulement si l'option weechat.look.color_nick_offline est activée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `242`

- weechat.color.chat_nick_offline_highlight

  - description: couleur du texte pour un pseudo déconnecté avec highlight ; cette couleur est utilisée seulement si l'option weechat.look.color_nick_offline est activée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.chat_nick_offline_highlight_bg

  - description: couleur du fond pour un pseudo déconnecté avec highlight ; cette couleur est utilisée seulement si l'option weechat.look.color_nick_offline est activée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `17`

- weechat.color.chat_nick_other

  - description: couleur du texte pour l'autre pseudo dans le tampon privée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- weechat.color.chat_nick_prefix

  - description: couleur pour le préfixe du pseudo (chaîne affichée avant le pseudo dans le préfixe)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- weechat.color.chat_nick_self

  - description: couleur du texte pour le pseudo local dans la fenêtre de discussion

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- weechat.color.chat_nick_suffix

  - description: couleur pour le suffixe du pseudo (chaîne affichée après le pseudo dans le préfixe)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- weechat.color.chat_prefix_action

  - description: couleur du texte pour le préfixe d'action

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- weechat.color.chat_prefix_buffer

  - description: couleur du texte pour le nom du tampon (avant le préfixe, quand plusieurs tampons sont mélangés avec le même numéro)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `180`

- weechat.color.chat_prefix_buffer_inactive_buffer

  - description: couleur du texte pour le nom du tampon inactif (avant le préfixe, quand plusieurs tampons sont mélangés avec le même numéro et si le tampon n'est pas sélectionné)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.chat_prefix_error

  - description: couleur du texte pour le préfixe d'erreur

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- weechat.color.chat_prefix_join

  - description: couleur du texte pour le préfixe d'arrivée

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightgreen`

- weechat.color.chat_prefix_more

  - description: couleur du texte pour les "+" lorsque le préfixe est trop long

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightmagenta`

- weechat.color.chat_prefix_network

  - description: couleur du texte pour le préfixe réseau

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `magenta`

- weechat.color.chat_prefix_quit

  - description: couleur du texte pour le préfixe de départ

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightred`

- weechat.color.chat_prefix_suffix

  - description: couleur du texte pour le suffixe (après le préfixe)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `24`

- weechat.color.chat_read_marker

  - description: couleur du texte pour le marqueur de lecture

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `magenta`

- weechat.color.chat_read_marker_bg

  - description: couleur du fond pour le marqueur de lecture

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.chat_server

  - description: couleur du texte pour le nom des serveurs

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- weechat.color.chat_status_disabled

  - description: couleur du texte pour le statut "désactivé"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `red`

- weechat.color.chat_status_enabled

  - description: couleur du texte pour le statut "activé"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- weechat.color.chat_tags

  - description: couleur du texte pour les étiquettes après les messages (affichées avec la commande /debug tags)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `red`

- weechat.color.chat_text_found

  - description: couleur du texte pour le marqueur sur les lignes où le texte demandé est trouvé

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- weechat.color.chat_text_found_bg

  - description: couleur du fond pour le marqueur sur les lignes où le texte demandé est trouvé

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightmagenta`

- weechat.color.chat_time

  - description: couleur du texte pour l'heure dans la fenêtre de discussion

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.chat_time_delimiters

  - description: couleur du texte pour les délimiteurs de l'heure

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- weechat.color.chat_value

  - description: couleur du texte pour les valeurs

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- weechat.color.chat_value_null

  - description: couleur du texte pour les valeurs "null" (non définies)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `blue`

- weechat.color.emphasized

  - description: couleur du texte pour le texte mis en valeur (par exemple lors de la recherche de texte) ; cette option est utilisée seulement si l'option weechat.look.emphasized_attributes est une chaîne vide (valeur par défaut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- weechat.color.emphasized_bg

  - description: couleur du fond pour le texte mis en valeur (par exemple lors de la recherche de texte) ; cette option est utilisée seulement si l'option weechat.look.emphasized_attributes est une chaîne vide (valeur par défaut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `54`

- weechat.color.input_actions

  - description: couleur du texte pour les actions dans la ligne de saisie

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightgreen`

- weechat.color.input_text_not_found

  - description: couleur du texte pour la recherche infructueuse de texte dans la ligne de saisie

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `red`

- weechat.color.item_away

  - description: couleur du texte pour l'objet away

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- weechat.color.nicklist_away

  - description: couleur du texte pour les pseudos absents

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `240`

- weechat.color.nicklist_group

  - description: couleur du texte pour les groupes dans la liste des pseudos

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- weechat.color.separator

  - description: couleur pour les séparateurs de fenêtres (quand divisé) et les séparateurs à côté des barres (comme la liste de pseudos)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `236`

- weechat.color.status_count_highlight

  - description: couleur du texte pour le nombre de highlights dans la hotlist (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `magenta`

- weechat.color.status_count_msg

  - description: couleur du texte pour le nombre de messages dans la hotlist (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- weechat.color.status_count_other

  - description: couleur du texte pour le nombre d'autres messages dans la hotlist (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.status_count_private

  - description: couleur du texte pour le nombre de messages privés dans la hotlist (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- weechat.color.status_data_highlight

  - description: couleur du texte pour un tampon avec un highlight (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightmagenta`

- weechat.color.status_data_msg

  - description: couleur du texte pour un tampon avec de nouveaux messages (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- weechat.color.status_data_other

  - description: couleur du texte pour un tampon avec des nouvelles données (pas des messages) (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.status_data_private

  - description: couleur du texte pour un tampon avec un message privé (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightgreen`

- weechat.color.status_filter

  - description: couleur du texte pour l'indicateur de filtrage dans la barre de statut

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- weechat.color.status_more

  - description: couleur du texte pour un tampon avec des nouvelles données (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- weechat.color.status_mouse

  - description: couleur du texte pour l'indicateur de la souris dans la barre de statut

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightgreen`

- weechat.color.status_name

  - description: couleur du texte pour le nom du tampon courant dans la barre de statut

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- weechat.color.status_name_insecure

  - description: couleur du texte pour le nom du tampon courant dans la barre de statut, si des données sont échangées et non sécurisées avec un protocole tel que TLS

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightmagenta`

- weechat.color.status_name_tls

  - description: couleur du texte pour le nom du tampon courant dans la barre de statut, si des données sont échangées et sécurisées avec un protocole tel que TLS

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- weechat.color.status_nicklist_count

  - description: couleur du texte pour le nombre de pseudos dans la liste de pseudos (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.color.status_number

  - description: couleur du texte pour le numéro du tampon courant dans la barre de statut

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- weechat.color.status_time

  - description: couleur du texte pour l'heure (barre de statut)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- weechat.completion.base_word_until_cursor

  - description: si activé, le mot de base pour la complétion s'arrête au caractère avant le curseur ; sinon le mot de base s'arrête au premier espace après le curseur

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.completion.command_inline

  - description: si activé, les commandes à l'intérieur de la ligne de commande sont complétées (la commande en début de ligne a une priorité plus élevée et est utilisée en premier) ; note : lorsque cette option est activée, il n'y a plus de complétion automatique des chemins commençant par "/" (en dehors des paramètres de commandes)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.completion.default_template

  - description: modèle de complétion par défaut (merci de consulter la documentation pour les codes et valeurs du modèle : Référence API extension, fonction "weechat_hook_command")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"%(nicks)|%(irc_channels)"`

- weechat.completion.nick_add_space

  - description: ajouter un espace après la complétion du pseudo (quand le pseudo n'est pas le premier mot sur la ligne de commande)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.completion.nick_case_sensitive

  - description: complétion sensible à la casse pour les pseudos

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.completion.nick_completer

  - description: chaîne insérée après la complétion du pseudo (quand le pseudo est le premier mot sur la ligne de commande)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `": "`

- weechat.completion.nick_first_only

  - description: compléter seulement avec le premier pseudo trouvé

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.completion.nick_ignore_chars

  - description: caractères à ignorer pour la complétion des pseudos

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"[]`_-^"`

- weechat.completion.partial_completion_alert

  - description: envoyer une alerte (BEL) lorsqu'une complétion partielle survient

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.completion.partial_completion_command

  - description: complète partiellement les noms de commandes (stoppe quand plusieurs commandes trouvées commencent par les mêmes lettres)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.completion.partial_completion_command_arg

  - description: complète partiellement les paramètres de commande (stoppe quand plusieurs paramètres trouvés commencent par les mêmes lettres)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.completion.partial_completion_count

  - description: afficher le compteur pour chaque complétion partielle dans l'objet de barre

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.completion.partial_completion_other

  - description: complète partiellement en dehors des commandes (stoppe quand plusieurs mots trouvés commencent par les mêmes lettres)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.completion.partial_completion_templates

  - description: liste de modèles de complétion séparés par des virgules pour lesquels la complétion partielle est activée par défaut (avec la touche Tab au lieu de shift-Tab) ; la liste des modèles est dans la documentation : Référence API extension, fonction "weechat_hook_command"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"config_options"`

- weechat.history.display_default

  - description: nombre maximum de commandes à afficher par défaut dans le listing d'historique (0 = sans limite)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `5`

- weechat.history.max_buffer_lines_minutes

  - description: nombre maximum de minutes dans l'historique par tampon (0 = sans limite) ; exemples : 1440 = une journée, 10080 = une semaine, 43200 = un mois, 525600 = une année ; utilisez 0 SEULEMENT si l'option weechat.history.max_buffer_lines_number n'est pas égale à 0

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `0`

- weechat.history.max_buffer_lines_number

  - description: nombre maximum de lignes dans l'historique par tampon (0 = sans limite) ; utilisez 0 SEULEMENT si l'option weechat.history.max_buffer_lines_minutes n'est PAS égale à 0

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `4096`

- weechat.history.max_commands

  - description: nombre maximum de commandes utilisateur dans l'historique (0 = sans limite, NON RECOMMANDÉ : pas de limite dans l'utilisation mémoire)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `100`

- weechat.history.max_visited_buffers

  - description: nombre maximum de tampons visités à garder en mémoire

  - type: entier

  - valeurs: 0 .. 1000

  - valeur par défaut: `50`

- weechat.key.backspace

  - description: key "backspace" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_previous_char"`

- [[option_weechat.key.ctrl-]] weechat.key.ctrl-

  - description: key "ctrl-_" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input undo"`

- weechat.key.ctrl-a

  - description: key "ctrl-a" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_beginning_of_line"`

- weechat.key.ctrl-b

  - description: key "ctrl-b" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_previous_char"`

- weechat.key.ctrl-c,_

  - description: key "ctrl-c,_" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input insert \x1F"`

- weechat.key.ctrl-c,b

  - description: key "ctrl-c,b" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input insert \x02"`

- weechat.key.ctrl-c,c

  - description: key "ctrl-c,c" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input insert \x03"`

- weechat.key.ctrl-c,i

  - description: key "ctrl-c,i" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input insert \x1D"`

- weechat.key.ctrl-c,o

  - description: key "ctrl-c,o" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input insert \x0F"`

- weechat.key.ctrl-c,v

  - description: key "ctrl-c,v" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input insert \x16"`

- weechat.key.ctrl-d

  - description: key "ctrl-d" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_next_char"`

- weechat.key.ctrl-down

  - description: key "ctrl-down" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input history_global_next"`

- weechat.key.ctrl-e

  - description: key "ctrl-e" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_end_of_line"`

- weechat.key.ctrl-f

  - description: key "ctrl-f" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_next_char"`

- weechat.key.ctrl-f1

  - description: key "ctrl-f1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll buflist * -100%"`

- weechat.key.ctrl-f11

  - description: key "ctrl-f11" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist * -100%"`

- weechat.key.ctrl-f12

  - description: key "ctrl-f12" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist * +100%"`

- weechat.key.ctrl-f2

  - description: key "ctrl-f2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll buflist * +100%"`

- weechat.key.ctrl-k

  - description: key "ctrl-k" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_end_of_line"`

- weechat.key.ctrl-l

  - description: key "ctrl-l" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window refresh"`

- weechat.key.ctrl-left

  - description: key "ctrl-left" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_previous_word"`

- weechat.key.ctrl-n

  - description: key "ctrl-n" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer +1"`

- weechat.key.ctrl-p

  - description: key "ctrl-p" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer -1"`

- weechat.key.ctrl-r

  - description: key "ctrl-r" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input search_text_here"`

- weechat.key.ctrl-right

  - description: key "ctrl-right" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_next_word"`

- weechat.key.ctrl-s,ctrl-u

  - description: key "ctrl-s,ctrl-u" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/allbuf /buffer set unread"`

- weechat.key.ctrl-t

  - description: key "ctrl-t" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input transpose_chars"`

- weechat.key.ctrl-u

  - description: key "ctrl-u" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_beginning_of_line"`

- weechat.key.ctrl-up

  - description: key "ctrl-up" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input history_global_previous"`

- weechat.key.ctrl-w

  - description: key "ctrl-w" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_previous_word_whitespace"`

- weechat.key.ctrl-x

  - description: key "ctrl-x" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer switch"`

- weechat.key.ctrl-y

  - description: key "ctrl-y" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input clipboard_paste"`

- weechat.key.delete

  - description: key "delete" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_next_char"`

- weechat.key.down

  - description: key "down" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input history_next"`

- weechat.key.end

  - description: key "end" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_end_of_line"`

- weechat.key.f1

  - description: key "f1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll buflist * -100%"`

- weechat.key.f10

  - description: key "f10" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll title * +30%"`

- weechat.key.f11

  - description: key "f11" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist * -100%"`

- weechat.key.f12

  - description: key "f12" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist * +100%"`

- weechat.key.f2

  - description: key "f2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll buflist * +100%"`

- weechat.key.f5

  - description: key "f5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer -1"`

- weechat.key.f6

  - description: key "f6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer +1"`

- weechat.key.f7

  - description: key "f7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window -1"`

- weechat.key.f8

  - description: key "f8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window +1"`

- weechat.key.f9

  - description: key "f9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll title * -30%"`

- weechat.key.home

  - description: key "home" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_beginning_of_line"`

- weechat.key.left

  - description: key "left" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_previous_char"`

- weechat.key.meta--

  - description: key "meta--" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/filter toggle @"`

- [[option_weechat.key.meta-/]] weechat.key.meta-/

  - description: key "meta-/" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer jump last_displayed"`

- weechat.key.meta-0

  - description: key "meta-0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *10"`

- weechat.key.meta-1

  - description: key "meta-1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *1"`

- weechat.key.meta-2

  - description: key "meta-2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *2"`

- weechat.key.meta-3

  - description: key "meta-3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *3"`

- weechat.key.meta-4

  - description: key "meta-4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *4"`

- weechat.key.meta-5

  - description: key "meta-5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *5"`

- weechat.key.meta-6

  - description: key "meta-6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *6"`

- weechat.key.meta-7

  - description: key "meta-7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *7"`

- weechat.key.meta-8

  - description: key "meta-8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *8"`

- weechat.key.meta-9

  - description: key "meta-9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *9"`

- [[option_weechat.key.meta-<]] weechat.key.meta-<

  - description: key "meta-<" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer jump prev_visited"`

- [[option_weechat.key.meta-=]] weechat.key.meta-=

  - description: key "meta-=" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/filter toggle"`

- [[option_weechat.key.meta→]] weechat.key.meta→

  - description: key "meta->" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer jump next_visited"`

- weechat.key.meta-B

  - description: key "meta-B" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buflist toggle"`

- weechat.key.meta-K

  - description: key "meta-K" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input grab_raw_key_command"`

- weechat.key.meta-N

  - description: key "meta-N" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar toggle nicklist"`

- weechat.key.meta-R

  - description: key "meta-R" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_input"`

- [[option_weechat.key.meta-]] weechat.key.meta-

  - description: key "meta-_" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input redo"`

- weechat.key.meta-a

  - description: key "meta-a" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer jump smart"`

- weechat.key.meta-b

  - description: key "meta-b" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_previous_word"`

- weechat.key.meta-backspace

  - description: key "meta-backspace" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_previous_word"`

- weechat.key.meta-ctrl-k

  - description: key "meta-ctrl-k" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_end_of_input"`

- weechat.key.meta-ctrl-u

  - description: key "meta-ctrl-u" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_beginning_of_input"`

- weechat.key.meta-d

  - description: key "meta-d" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_next_word"`

- weechat.key.meta-down

  - description: key "meta-down" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer +1"`

- weechat.key.meta-end

  - description: key "meta-end" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_bottom"`

- weechat.key.meta-f

  - description: key "meta-f" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_next_word"`

- weechat.key.meta-f1

  - description: key "meta-f1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll buflist * b"`

- weechat.key.meta-f11

  - description: key "meta-f11" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist * b"`

- weechat.key.meta-f12

  - description: key "meta-f12" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist * e"`

- weechat.key.meta-f2

  - description: key "meta-f2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll buflist * e"`

- weechat.key.meta-h,meta-R

  - description: key "meta-h,meta-R" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/hotlist restore -all"`

- weechat.key.meta-h,meta-c

  - description: key "meta-h,meta-c" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/hotlist clear"`

- weechat.key.meta-h,meta-m

  - description: key "meta-h,meta-m" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/hotlist remove"`

- weechat.key.meta-h,meta-r

  - description: key "meta-h,meta-r" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/hotlist restore"`

- weechat.key.meta-home

  - description: key "meta-home" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_top"`

- weechat.key.meta-j,0,1

  - description: key "meta-j,0,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *1"`

- weechat.key.meta-j,0,2

  - description: key "meta-j,0,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *2"`

- weechat.key.meta-j,0,3

  - description: key "meta-j,0,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *3"`

- weechat.key.meta-j,0,4

  - description: key "meta-j,0,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *4"`

- weechat.key.meta-j,0,5

  - description: key "meta-j,0,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *5"`

- weechat.key.meta-j,0,6

  - description: key "meta-j,0,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *6"`

- weechat.key.meta-j,0,7

  - description: key "meta-j,0,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *7"`

- weechat.key.meta-j,0,8

  - description: key "meta-j,0,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *8"`

- weechat.key.meta-j,0,9

  - description: key "meta-j,0,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *9"`

- weechat.key.meta-j,1,0

  - description: key "meta-j,1,0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *10"`

- weechat.key.meta-j,1,1

  - description: key "meta-j,1,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *11"`

- weechat.key.meta-j,1,2

  - description: key "meta-j,1,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *12"`

- weechat.key.meta-j,1,3

  - description: key "meta-j,1,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *13"`

- weechat.key.meta-j,1,4

  - description: key "meta-j,1,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *14"`

- weechat.key.meta-j,1,5

  - description: key "meta-j,1,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *15"`

- weechat.key.meta-j,1,6

  - description: key "meta-j,1,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *16"`

- weechat.key.meta-j,1,7

  - description: key "meta-j,1,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *17"`

- weechat.key.meta-j,1,8

  - description: key "meta-j,1,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *18"`

- weechat.key.meta-j,1,9

  - description: key "meta-j,1,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *19"`

- weechat.key.meta-j,2,0

  - description: key "meta-j,2,0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *20"`

- weechat.key.meta-j,2,1

  - description: key "meta-j,2,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *21"`

- weechat.key.meta-j,2,2

  - description: key "meta-j,2,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *22"`

- weechat.key.meta-j,2,3

  - description: key "meta-j,2,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *23"`

- weechat.key.meta-j,2,4

  - description: key "meta-j,2,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *24"`

- weechat.key.meta-j,2,5

  - description: key "meta-j,2,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *25"`

- weechat.key.meta-j,2,6

  - description: key "meta-j,2,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *26"`

- weechat.key.meta-j,2,7

  - description: key "meta-j,2,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *27"`

- weechat.key.meta-j,2,8

  - description: key "meta-j,2,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *28"`

- weechat.key.meta-j,2,9

  - description: key "meta-j,2,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *29"`

- weechat.key.meta-j,3,0

  - description: key "meta-j,3,0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *30"`

- weechat.key.meta-j,3,1

  - description: key "meta-j,3,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *31"`

- weechat.key.meta-j,3,2

  - description: key "meta-j,3,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *32"`

- weechat.key.meta-j,3,3

  - description: key "meta-j,3,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *33"`

- weechat.key.meta-j,3,4

  - description: key "meta-j,3,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *34"`

- weechat.key.meta-j,3,5

  - description: key "meta-j,3,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *35"`

- weechat.key.meta-j,3,6

  - description: key "meta-j,3,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *36"`

- weechat.key.meta-j,3,7

  - description: key "meta-j,3,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *37"`

- weechat.key.meta-j,3,8

  - description: key "meta-j,3,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *38"`

- weechat.key.meta-j,3,9

  - description: key "meta-j,3,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *39"`

- weechat.key.meta-j,4,0

  - description: key "meta-j,4,0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *40"`

- weechat.key.meta-j,4,1

  - description: key "meta-j,4,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *41"`

- weechat.key.meta-j,4,2

  - description: key "meta-j,4,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *42"`

- weechat.key.meta-j,4,3

  - description: key "meta-j,4,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *43"`

- weechat.key.meta-j,4,4

  - description: key "meta-j,4,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *44"`

- weechat.key.meta-j,4,5

  - description: key "meta-j,4,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *45"`

- weechat.key.meta-j,4,6

  - description: key "meta-j,4,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *46"`

- weechat.key.meta-j,4,7

  - description: key "meta-j,4,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *47"`

- weechat.key.meta-j,4,8

  - description: key "meta-j,4,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *48"`

- weechat.key.meta-j,4,9

  - description: key "meta-j,4,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *49"`

- weechat.key.meta-j,5,0

  - description: key "meta-j,5,0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *50"`

- weechat.key.meta-j,5,1

  - description: key "meta-j,5,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *51"`

- weechat.key.meta-j,5,2

  - description: key "meta-j,5,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *52"`

- weechat.key.meta-j,5,3

  - description: key "meta-j,5,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *53"`

- weechat.key.meta-j,5,4

  - description: key "meta-j,5,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *54"`

- weechat.key.meta-j,5,5

  - description: key "meta-j,5,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *55"`

- weechat.key.meta-j,5,6

  - description: key "meta-j,5,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *56"`

- weechat.key.meta-j,5,7

  - description: key "meta-j,5,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *57"`

- weechat.key.meta-j,5,8

  - description: key "meta-j,5,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *58"`

- weechat.key.meta-j,5,9

  - description: key "meta-j,5,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *59"`

- weechat.key.meta-j,6,0

  - description: key "meta-j,6,0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *60"`

- weechat.key.meta-j,6,1

  - description: key "meta-j,6,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *61"`

- weechat.key.meta-j,6,2

  - description: key "meta-j,6,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *62"`

- weechat.key.meta-j,6,3

  - description: key "meta-j,6,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *63"`

- weechat.key.meta-j,6,4

  - description: key "meta-j,6,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *64"`

- weechat.key.meta-j,6,5

  - description: key "meta-j,6,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *65"`

- weechat.key.meta-j,6,6

  - description: key "meta-j,6,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *66"`

- weechat.key.meta-j,6,7

  - description: key "meta-j,6,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *67"`

- weechat.key.meta-j,6,8

  - description: key "meta-j,6,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *68"`

- weechat.key.meta-j,6,9

  - description: key "meta-j,6,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *69"`

- weechat.key.meta-j,7,0

  - description: key "meta-j,7,0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *70"`

- weechat.key.meta-j,7,1

  - description: key "meta-j,7,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *71"`

- weechat.key.meta-j,7,2

  - description: key "meta-j,7,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *72"`

- weechat.key.meta-j,7,3

  - description: key "meta-j,7,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *73"`

- weechat.key.meta-j,7,4

  - description: key "meta-j,7,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *74"`

- weechat.key.meta-j,7,5

  - description: key "meta-j,7,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *75"`

- weechat.key.meta-j,7,6

  - description: key "meta-j,7,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *76"`

- weechat.key.meta-j,7,7

  - description: key "meta-j,7,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *77"`

- weechat.key.meta-j,7,8

  - description: key "meta-j,7,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *78"`

- weechat.key.meta-j,7,9

  - description: key "meta-j,7,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *79"`

- weechat.key.meta-j,8,0

  - description: key "meta-j,8,0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *80"`

- weechat.key.meta-j,8,1

  - description: key "meta-j,8,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *81"`

- weechat.key.meta-j,8,2

  - description: key "meta-j,8,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *82"`

- weechat.key.meta-j,8,3

  - description: key "meta-j,8,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *83"`

- weechat.key.meta-j,8,4

  - description: key "meta-j,8,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *84"`

- weechat.key.meta-j,8,5

  - description: key "meta-j,8,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *85"`

- weechat.key.meta-j,8,6

  - description: key "meta-j,8,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *86"`

- weechat.key.meta-j,8,7

  - description: key "meta-j,8,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *87"`

- weechat.key.meta-j,8,8

  - description: key "meta-j,8,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *88"`

- weechat.key.meta-j,8,9

  - description: key "meta-j,8,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *89"`

- weechat.key.meta-j,9,0

  - description: key "meta-j,9,0" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *90"`

- weechat.key.meta-j,9,1

  - description: key "meta-j,9,1" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *91"`

- weechat.key.meta-j,9,2

  - description: key "meta-j,9,2" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *92"`

- weechat.key.meta-j,9,3

  - description: key "meta-j,9,3" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *93"`

- weechat.key.meta-j,9,4

  - description: key "meta-j,9,4" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *94"`

- weechat.key.meta-j,9,5

  - description: key "meta-j,9,5" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *95"`

- weechat.key.meta-j,9,6

  - description: key "meta-j,9,6" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *96"`

- weechat.key.meta-j,9,7

  - description: key "meta-j,9,7" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *97"`

- weechat.key.meta-j,9,8

  - description: key "meta-j,9,8" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *98"`

- weechat.key.meta-j,9,9

  - description: key "meta-j,9,9" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer *99"`

- weechat.key.meta-j,meta-f

  - description: key "meta-j,meta-f" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer -"`

- weechat.key.meta-j,meta-l

  - description: key "meta-j,meta-l" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer +"`

- weechat.key.meta-j,meta-r

  - description: key "meta-j,meta-r" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/server raw"`

- weechat.key.meta-j,meta-s

  - description: key "meta-j,meta-s" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/server jump"`

- weechat.key.meta-k

  - description: key "meta-k" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input grab_key_command"`

- weechat.key.meta-l

  - description: key "meta-l" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window bare"`

- weechat.key.meta-left

  - description: key "meta-left" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer -1"`

- weechat.key.meta-m

  - description: key "meta-m" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/mute mouse toggle"`

- weechat.key.meta-n

  - description: key "meta-n" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_next_highlight"`

- weechat.key.meta-p

  - description: key "meta-p" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_previous_highlight"`

- weechat.key.meta-pgdn

  - description: key "meta-pgdn" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_down"`

- weechat.key.meta-pgup

  - description: key "meta-pgup" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_up"`

- weechat.key.meta-r

  - description: key "meta-r" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input delete_line"`

- weechat.key.meta-return

  - description: key "meta-return" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input insert \n"`

- weechat.key.meta-right

  - description: key "meta-right" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer +1"`

- weechat.key.meta-s

  - description: key "meta-s" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/mute spell toggle"`

- weechat.key.meta-u

  - description: key "meta-u" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_unread"`

- weechat.key.meta-up

  - description: key "meta-up" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer -1"`

- weechat.key.meta-w,meta-b

  - description: key "meta-w,meta-b" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window balance"`

- weechat.key.meta-w,meta-down

  - description: key "meta-w,meta-down" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window down"`

- weechat.key.meta-w,meta-left

  - description: key "meta-w,meta-left" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window left"`

- weechat.key.meta-w,meta-right

  - description: key "meta-w,meta-right" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window right"`

- weechat.key.meta-w,meta-s

  - description: key "meta-w,meta-s" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window swap"`

- weechat.key.meta-w,meta-up

  - description: key "meta-w,meta-up" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window up"`

- weechat.key.meta-x

  - description: key "meta-x" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/buffer zoom"`

- weechat.key.meta-z

  - description: key "meta-z" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window zoom"`

- weechat.key.pgdn

  - description: key "pgdn" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window page_down"`

- weechat.key.pgup

  - description: key "pgup" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window page_up"`

- weechat.key.return

  - description: key "return" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input return"`

- weechat.key.right

  - description: key "right" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_next_char"`

- weechat.key.shift-down

  - description: key "shift-down" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_next_line"`

- weechat.key.shift-end

  - description: key "shift-end" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_end_of_input"`

- weechat.key.shift-home

  - description: key "shift-home" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_beginning_of_input"`

- weechat.key.shift-left

  - description: key "shift-left" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_previous_char"`

- weechat.key.shift-right

  - description: key "shift-right" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_next_char"`

- weechat.key.shift-tab

  - description: key "shift-tab" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input complete_previous"`

- weechat.key.shift-up

  - description: key "shift-up" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input move_previous_line"`

- weechat.key.tab

  - description: key "tab" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input complete_next"`

- weechat.key.up

  - description: key "up" in context "default"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input history_previous"`

- [[option_weechat.key_cursor.@chat:Q]] weechat.key_cursor.@chat:Q

  - description: key "@chat:Q" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:chat_quote_time_prefix_message;/cursor stop"`

- [[option_weechat.key_cursor.@chat:l]] weechat.key_cursor.@chat:l

  - description: key "@chat:l" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:chat_quote_focused_line;/cursor stop"`

- [[option_weechat.key_cursor.@chat:m]] weechat.key_cursor.@chat:m

  - description: key "@chat:m" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:chat_quote_message;/cursor stop"`

- [[option_weechat.key_cursor.@chat:q]] weechat.key_cursor.@chat:q

  - description: key "@chat:q" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:chat_quote_prefix_message;/cursor stop"`

- [[option_weechat.key_cursor.@item(buffer_nicklist):K]] weechat.key_cursor.@item(buffer_nicklist):K

  - description: key "@item(buffer_nicklist):K" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/kickban ${nick}"`

- [[option_weechat.key_cursor.@item(buffer_nicklist):b]] weechat.key_cursor.@item(buffer_nicklist):b

  - description: key "@item(buffer_nicklist):b" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/ban ${nick}"`

- [[option_weechat.key_cursor.@item(buffer_nicklist):k]] weechat.key_cursor.@item(buffer_nicklist):k

  - description: key "@item(buffer_nicklist):k" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/kick ${nick}"`

- [[option_weechat.key_cursor.@item(buffer_nicklist):q]] weechat.key_cursor.@item(buffer_nicklist):q

  - description: key "@item(buffer_nicklist):q" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/query ${nick};/cursor stop"`

- [[option_weechat.key_cursor.@item(buffer_nicklist):w]] weechat.key_cursor.@item(buffer_nicklist):w

  - description: key "@item(buffer_nicklist):w" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/whois ${nick}"`

- weechat.key_cursor.down

  - description: key "down" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor move down"`

- weechat.key_cursor.left

  - description: key "left" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor move left"`

- weechat.key_cursor.meta-down

  - description: key "meta-down" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor move area_down"`

- weechat.key_cursor.meta-left

  - description: key "meta-left" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor move area_left"`

- weechat.key_cursor.meta-right

  - description: key "meta-right" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor move area_right"`

- weechat.key_cursor.meta-up

  - description: key "meta-up" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor move area_up"`

- weechat.key_cursor.return

  - description: key "return" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor stop"`

- weechat.key_cursor.right

  - description: key "right" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor move right"`

- weechat.key_cursor.up

  - description: key "up" in context "cursor"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor move up"`

- [[option_weechat.key_mouse.@:button3]] *weechat.key_mouse.@:button3*

  - description: key "@*:button3" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/cursor go ${_x},${_y}"`

- [[option_weechat.key_mouse.@bar(buflist):ctrl-wheeldown]] weechat.key_mouse.@bar(buflist):ctrl-wheeldown

  - description: key "@bar(buflist):ctrl-wheeldown" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:buflist_mouse"`

- [[option_weechat.key_mouse.@bar(buflist):ctrl-wheelup]] weechat.key_mouse.@bar(buflist):ctrl-wheelup

  - description: key "@bar(buflist):ctrl-wheelup" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:buflist_mouse"`

- [[option_weechat.key_mouse.@bar(input):button2]] weechat.key_mouse.@bar(input):button2

  - description: key "@bar(input):button2" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input grab_mouse_area"`

- [[option_weechat.key_mouse.@bar(nicklist):button1-gesture-down]] weechat.key_mouse.@bar(nicklist):button1-gesture-down

  - description: key "@bar(nicklist):button1-gesture-down" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist ${_window_number} +100%"`

- [[option_weechat.key_mouse.@bar(nicklist):button1-gesture-down-long]] weechat.key_mouse.@bar(nicklist):button1-gesture-down-long

  - description: key "@bar(nicklist):button1-gesture-down-long" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist ${_window_number} e"`

- [[option_weechat.key_mouse.@bar(nicklist):button1-gesture-up]] weechat.key_mouse.@bar(nicklist):button1-gesture-up

  - description: key "@bar(nicklist):button1-gesture-up" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist ${_window_number} -100%"`

- [[option_weechat.key_mouse.@bar(nicklist):button1-gesture-up-long]] weechat.key_mouse.@bar(nicklist):button1-gesture-up-long

  - description: key "@bar(nicklist):button1-gesture-up-long" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll nicklist ${_window_number} b"`

- [[option_weechat.key_mouse.@bar:wheeldown]] weechat.key_mouse.@bar:wheeldown

  - description: key "@bar:wheeldown" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll ${_bar_name} ${_window_number} +20%"`

- [[option_weechat.key_mouse.@bar:wheelup]] weechat.key_mouse.@bar:wheelup

  - description: key "@bar:wheelup" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/bar scroll ${_bar_name} ${_window_number} -20%"`

- [[option_weechat.key_mouse.@chat(fset.fset):button1]] weechat.key_mouse.@chat(fset.fset):button1

  - description: key "@chat(fset.fset):button1" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/fset -go ${_chat_line_y}"`

- [[option_weechat.key_mouse.@chat(fset.fset):button2*]] weechat.key_mouse.@chat(fset.fset):button2*

  - description: key "@chat(fset.fset):button2*" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:fset_mouse"`

- [[option_weechat.key_mouse.@chat(fset.fset):wheeldown]] weechat.key_mouse.@chat(fset.fset):wheeldown

  - description: key "@chat(fset.fset):wheeldown" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/fset -down 5"`

- [[option_weechat.key_mouse.@chat(fset.fset):wheelup]] weechat.key_mouse.@chat(fset.fset):wheelup

  - description: key "@chat(fset.fset):wheelup" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/fset -up 5"`

- [[option_weechat.key_mouse.@chat(script.scripts):button1]] weechat.key_mouse.@chat(script.scripts):button1

  - description: key "@chat(script.scripts):button1" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/script go ${_chat_line_y}"`

- [[option_weechat.key_mouse.@chat(script.scripts):button2]] weechat.key_mouse.@chat(script.scripts):button2

  - description: key "@chat(script.scripts):button2" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/script go ${_chat_line_y};/script installremove -q ${script_name_with_extension}"`

- [[option_weechat.key_mouse.@chat(script.scripts):wheeldown]] weechat.key_mouse.@chat(script.scripts):wheeldown

  - description: key "@chat(script.scripts):wheeldown" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/script down 5"`

- [[option_weechat.key_mouse.@chat(script.scripts):wheelup]] weechat.key_mouse.@chat(script.scripts):wheelup

  - description: key "@chat(script.scripts):wheelup" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/script up 5"`

- [[option_weechat.key_mouse.@chat:button1]] weechat.key_mouse.@chat:button1

  - description: key "@chat:button1" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number}"`

- [[option_weechat.key_mouse.@chat:button1-gesture-left]] weechat.key_mouse.@chat:button1-gesture-left

  - description: key "@chat:button1-gesture-left" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/buffer -1"`

- [[option_weechat.key_mouse.@chat:button1-gesture-left-long]] weechat.key_mouse.@chat:button1-gesture-left-long

  - description: key "@chat:button1-gesture-left-long" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/buffer 1"`

- [[option_weechat.key_mouse.@chat:button1-gesture-right]] weechat.key_mouse.@chat:button1-gesture-right

  - description: key "@chat:button1-gesture-right" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/buffer +1"`

- [[option_weechat.key_mouse.@chat:button1-gesture-right-long]] weechat.key_mouse.@chat:button1-gesture-right-long

  - description: key "@chat:button1-gesture-right-long" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/buffer +"`

- [[option_weechat.key_mouse.@chat:ctrl-wheeldown]] weechat.key_mouse.@chat:ctrl-wheeldown

  - description: key "@chat:ctrl-wheeldown" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_horiz -window ${_window_number} +10%"`

- [[option_weechat.key_mouse.@chat:ctrl-wheelup]] weechat.key_mouse.@chat:ctrl-wheelup

  - description: key "@chat:ctrl-wheelup" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_horiz -window ${_window_number} -10%"`

- [[option_weechat.key_mouse.@chat:wheeldown]] weechat.key_mouse.@chat:wheeldown

  - description: key "@chat:wheeldown" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_down -window ${_window_number}"`

- [[option_weechat.key_mouse.@chat:wheelup]] weechat.key_mouse.@chat:wheelup

  - description: key "@chat:wheelup" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window scroll_up -window ${_window_number}"`

- [[option_weechat.key_mouse.@item(buffer_nicklist):button1]] weechat.key_mouse.@item(buffer_nicklist):button1

  - description: key "@item(buffer_nicklist):button1" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/query ${nick}"`

- [[option_weechat.key_mouse.@item(buffer_nicklist):button1-gesture-left]] weechat.key_mouse.@item(buffer_nicklist):button1-gesture-left

  - description: key "@item(buffer_nicklist):button1-gesture-left" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/kick ${nick}"`

- [[option_weechat.key_mouse.@item(buffer_nicklist):button1-gesture-left-long]] weechat.key_mouse.@item(buffer_nicklist):button1-gesture-left-long

  - description: key "@item(buffer_nicklist):button1-gesture-left-long" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/kickban ${nick}"`

- [[option_weechat.key_mouse.@item(buffer_nicklist):button2]] weechat.key_mouse.@item(buffer_nicklist):button2

  - description: key "@item(buffer_nicklist):button2" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/whois ${nick}"`

- [[option_weechat.key_mouse.@item(buffer_nicklist):button2-gesture-left]] weechat.key_mouse.@item(buffer_nicklist):button2-gesture-left

  - description: key "@item(buffer_nicklist):button2-gesture-left" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/window ${_window_number};/ban ${nick}"`

- [[option_weechat.key_mouse.@item(buflist):button1*]] weechat.key_mouse.@item(buflist):button1*

  - description: key "@item(buflist):button1*" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:buflist_mouse"`

- [[option_weechat.key_mouse.@item(buflist):button2*]] weechat.key_mouse.@item(buflist):button2*

  - description: key "@item(buflist):button2*" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:buflist_mouse"`

- [[option_weechat.key_mouse.@item(buflist2):button1*]] weechat.key_mouse.@item(buflist2):button1*

  - description: key "@item(buflist2):button1*" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:buflist_mouse"`

- [[option_weechat.key_mouse.@item(buflist2):button2*]] weechat.key_mouse.@item(buflist2):button2*

  - description: key "@item(buflist2):button2*" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:buflist_mouse"`

- [[option_weechat.key_mouse.@item(buflist3):button1*]] weechat.key_mouse.@item(buflist3):button1*

  - description: key "@item(buflist3):button1*" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:buflist_mouse"`

- [[option_weechat.key_mouse.@item(buflist3):button2*]] weechat.key_mouse.@item(buflist3):button2*

  - description: key "@item(buflist3):button2*" in context "mouse"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"hsignal:buflist_mouse"`

- weechat.key_search.ctrl-q

  - description: key "ctrl-q" in context "search"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input search_stop"`

- weechat.key_search.ctrl-r

  - description: key "ctrl-r" in context "search"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input search_switch_regex"`

- weechat.key_search.down

  - description: key "down" in context "search"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input search_next"`

- weechat.key_search.meta-c

  - description: key "meta-c" in context "search"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input search_switch_case"`

- weechat.key_search.return

  - description: key "return" in context "search"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input search_stop_here"`

- weechat.key_search.tab

  - description: key "tab" in context "search"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input search_switch_where"`

- weechat.key_search.up

  - description: key "up" in context "search"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/input search_previous"`

- weechat.look.align_end_of_lines

  - description: alignement pour la fin des lignes (toutes les lignes après la première) : elles démarrent sous cette donnée (time, buffer, prefix, suffix, message (par défaut))

  - type: entier

  - valeurs: time, buffer, prefix, suffix, message

  - valeur par défaut: `message`

- weechat.look.align_multiline_words

  - description: alignement pour les mots sur plusieurs lignes selon l'option weechat.look.align_end_of_lines ; si désactivé, les mots sur plusieurs lignes ne seront pas alignés, ce qui peut être pratique pour ne pas casser les longs URLs

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.bar_more_down

  - description: chaîne affichée quand la barre peut être défilée vers le bas (pour les barres avec un remplissage différent de "horizontal")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"+"+`

- weechat.look.bar_more_left

  - description: chaîne affichée quand la barre peut être défilée vers la gauche (pour les barres avec un remplissage "horizontal")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"<<"`

- weechat.look.bar_more_right

  - description: chaîne affichée quand la barre peut être défilée vers la droite (pour les barres avec un remplissage "horizontal")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `">>"`

- weechat.look.bar_more_up

  - description: chaîne affichée quand la barre peut être défilée vers le haut (pour les barres avec un remplissage différent de "horizontal")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"--"`

- weechat.look.bare_display_exit_on_input

  - description: sortir du mode d'affichage dépouillé ("bare") sur tout changement dans la ligne de commande

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.bare_display_time_format

  - description: format de date/heure dans l'affichage dépouillé ("bare") (voir man strftime pour le format de date/heure)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"%H:%M"`

- weechat.look.buffer_auto_renumber

  - description: renuméroter automatiquement les tampons pour qu'ils aient des numéros consécutifs et démarrent au numéro 1 ; si désactivé, des trous entre les numéros de tampons sont autorisés et le premier tampon peut avoir un numéro supérieur à 1

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.buffer_notify_default

  - description: niveau de notification par défaut pour les tampons (utilisé pour dire à WeeChat si le tampon doit être affiché dans la hotlist ou non, selon l'importance du message) : all=tous les messages (par défaut), message=messages+highlights, highlight=highlights seulement, none=ne jamais afficher dans la hotlist

  - type: entier

  - valeurs: none, highlight, message, all

  - valeur par défaut: `all`

- weechat.look.buffer_position

  - description: position d'un nouveau tampon : end = après la fin de la liste (numéro = dernier numéro + 1), first_gap = au premier numéro disponible dans la liste (après la fin de la liste si aucun numéro n'est disponible) ; cette option est utilisée seulement si le tampon n'a pas de numéro dans le "layout"

  - type: entier

  - valeurs: end, first_gap

  - valeur par défaut: `end`

- weechat.look.buffer_search_case_sensitive

  - description: recherche par défaut dans le tampon : sensible à la casse ou non

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.buffer_search_force_default

  - description: forcer les valeurs par défaut pour la recherche de texte dans le tampon (au lieu d'utiliser les valeurs de la dernière recherche dans le tampon)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.buffer_search_regex

  - description: recherche par défaut dans le tampon : si activé, rechercher une expression régulière POSIX étendue, sinon rechercher du texte simple

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.buffer_search_where

  - description: recherche par défaut dans le tampon : dans le message, le préfixe, le préfixe et le message

  - type: entier

  - valeurs: prefix, message, prefix_message

  - valeur par défaut: `prefix_message`

- weechat.look.buffer_time_format

  - description: format de date/heure pour chaque ligne affichée dans les tampons (voir man strftime pour le format de date/heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval) ; par exemple l'heure avec des niveaux de gris : "${color:252}%H${color:243}%M${color:237}%S"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"%H:%M:%S"`

- weechat.look.buffer_time_same

  - description: heure affichée pour un message avec la même heure que le message précédent ; utilisez un espace " " pour cacher l'heure, une autre chaîne pour l'afficher à la place de l'heure, ou une chaîne vide pour désactiver cette fonctionnalité (afficher l'heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.chat_space_right

  - description: garder un espace sur la droite de la zone de discussion s'il y a une barre affichée sur la droite (pour le texte et le marqueur de lecture)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.color_basic_force_bold

  - description: forcer l'attribut "bold" (gras) pour les couleurs claires et "darkgray" dans les couleurs de base (cette option est désactivée par défaut : le gras est utilisé seulement si le terminal a moins de 16 couleurs)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.color_inactive_buffer

  - description: utiliser une couleur différente pour les lignes dans un tampon inactif (si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.color_inactive_message

  - description: utiliser une couleur différente pour un message inactif (quand la fenêtre n'est pas la fenêtre courante, ou si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.color_inactive_prefix

  - description: utiliser une couleur différente pour le préfixe inactif (quand la fenêtre n'est pas la fenêtre courante, ou si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.color_inactive_prefix_buffer

  - description: utiliser une couleur différente pour le nom de tampon inactif dans le préfixe (quand la fenêtre n'est pas la fenêtre courante, ou si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.color_inactive_time

  - description: utiliser une couleur différente pour l'heure inactive (quand la fenêtre n'est pas la fenêtre courante, ou si la ligne est d'un tampon mélangé et le tampon n'est pas sélectionné)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.color_inactive_window

  - description: utiliser une couleur différente pour les lignes dans une fenêtre inactive (quand la fenêtre n'est pas la fenêtre courante)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.color_nick_offline

  - description: utiliser une couleur différente pour les pseudos déconnectés (qui ne sont plus dans la liste de pseudos)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.color_pairs_auto_reset

  - description: réinitialisation automatique de la table des paires de couleurs quand le nombre de paires disponibles est inférieur ou égal à ce nombre (-1 = désactiver la réinitialisation automatique, et donc un "/color reset" manuel est nécessaire quand la table est pleine)

  - type: entier

  - valeurs: -1 .. 256

  - valeur par défaut: `5`

- weechat.look.color_real_white

  - description: si activé, utilise la vraie couleur blanche, désactivé par défaut pour les terminaux avec un fond blanc (si vous n'utilisez jamais de fond blanc, vous devriez activer cette option pour voir du vrai blanc au lieu de la couleur d'avant plan par défaut du terminal)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.command_chars

  - description: caractères utilisés pour déterminer si la chaîne entrée est une commande ou non : l'entrée doit démarrer avec un de ces caractères ; la barre oblique ("/") est toujours considérée comme un préfixe de commande (exemple : ".$")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.command_incomplete

  - description: si activé, les commandes incomplètes et non ambiguës sont autorisées, par exemple /he pour /help

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.confirm_quit

  - description: si activé, la commande /quit doit être confirmée par le paramètre supplémentaire "-yes" (voir /help quit)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.confirm_upgrade

  - description: si activé, la commande /upgrade doit être confirmée par le paramètre supplémentaire "-yes" (voir /help upgrade)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.day_change

  - description: affiche un message quand le jour change

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.day_change_message_1date

  - description: message affiché lorsque le jour a changé, avec une date affichée (par exemple au début d'un tampon) (voir man strftime pour le format de date/heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"-- %a, %d %b %Y --"`

- weechat.look.day_change_message_2dates

  - description: message affiché lorsque le jour a changé, avec deux dates affichées (entre deux messages) ; les formats pour la seconde date doivent démarrer par deux "%" car strftime est appelé deux fois sur cette chaîne (voir man strftime pour le format de date/heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"-- %%a, %%d %%b %%Y (%a, %d %b %Y) --"`

- weechat.look.eat_newline_glitch

  - description: si activé, le eat_newline_glitch sera positionné à 0 ; cela est utilisé pour ne pas ajouter de nouvelle ligne à la fin de chaque ligne, et donc ne pas couper le texte quand vous copiez/collez du texte depuis WeeChat vers une autre application (cette option est désactivée par défaut car elle peut causer de sérieux problèmes d'affichages)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.emphasized_attributes

  - description: attributs pour le texte mis en valeur : un ou plusieurs caractères d'attributs ("%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l'italique, "_" pour le souligné) ; si la chaîne est vide, les couleurs weechat.color.emphasized* sont utilisées

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.highlight

  - description: liste des mots pour la notification séparés par des virgules ; la comparaison est insensible à la casse (utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse), les mots peuvent commencer ou se terminer par "*" pour une comparaison partielle ; exemple : "test,(?-i)*toto*,flash*"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.highlight_disable_regex

  - description: expression régulière POSIX étendue utilisée pour empêcher un highlight sur un message : cette option a une priorité plus élevée sur les autres options de highlight (si la chaîne est trouvée dans le message, le highlight est désactivé et les autres options sont ignorées), l'expression régulière est insensible à la casse (utilisez "(?-i)" au début pour la rendre sensible à la casse), exemples : "", "(?-i)"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.highlight_regex

  - description: expression régulière POSIX étendue utilisée pour vérifier si un message a un "highlight" ou non, au moins une correspondance dans la chaîne doit être entourée de délimiteurs (caractères différents de : alphanumérique, "-", "_" et "|"), l'expression régulière est insensible à la casse (utilisez "(?-i)" au début pour la rendre sensible à la casse), exemples : "flashcode|flashy", "(?-i)FlashCode|flashy"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.highlight_tags

  - description: liste des étiquettes pour le highlight (séparées par des virgules) ; la comparaison ne tient pas compte de la casse ; le caractère joker "*" est autorisé dans chaque étiquette ; plusieurs étiquettes peuvent être séparées par "+" pour faire un "et" logique entre les étiquettes ; exemples : "nick_flashcode" pour les messages du pseudo "FlashCode", "irc_notice+nick_toto*" pour les notices d'un pseudo commençant par "toto"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.hotlist_add_conditions

  - description: conditions pour ajouter un tampon dans la hotlist (si le niveau de notification est OK pour le tampon) ; vous pouvez utiliser dans ces conditions : \"window\" (pointeur de la fenêtre courante), \"buffer\" (pointeur du tampon à ajouter dans la hotlist), "priority" (0 = faible, 1 = message, 2 = privé, 3 = highlight) ; par défaut un tampon est ajouté dans la hotlist si vous êtes absent, ou si le tampon n'est pas visible à l'écran (pas affiché dans une fenêtre), ou si au moins un client relay est connecté via le protocole weechat

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${away} || ${buffer.num_displayed} == 0 || ${info:relay_client_count,weechat,connected} > 0"`

- weechat.look.hotlist_buffer_separator

  - description: chaîne affichée entre les tampons dans la hotlist

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `", "`

- weechat.look.hotlist_count_max

  - description: nombre maximum de compteurs de messages à afficher dans la hotlist pour un tampon : 0 = ne jamais afficher les compteurs de messages, autre nombre = afficher un maximum de N compteurs de messages (de la plus haute à la plus basse priorité)

  - type: entier

  - valeurs: 0 .. 4

  - valeur par défaut: `2`

- weechat.look.hotlist_count_min_msg

  - description: afficher les compteurs de messages si le nombre de messages est supérieur ou égal à cette valeur

  - type: entier

  - valeurs: 1 .. 100

  - valeur par défaut: `2`

- weechat.look.hotlist_names_count

  - description: nombre maximum de noms dans la liste d'activité (0 = pas de nom affiché, seulement les numéros de tampons)

  - type: entier

  - valeurs: 0 .. 10000

  - valeur par défaut: `3`

- weechat.look.hotlist_names_length

  - description: nombre maximum des noms dans la liste d'activité (0 = pas de limite)

  - type: entier

  - valeurs: 0 .. 32

  - valeur par défaut: `0`

- weechat.look.hotlist_names_level

  - description: niveau pour l'affichage des noms dans la liste d'activité (combinaison de : 1=join/part, 2=message, 4=privé, 8=highlight, par exemple : 12=privé+highlight)

  - type: entier

  - valeurs: 1 .. 15

  - valeur par défaut: `12`

- weechat.look.hotlist_names_merged_buffers

  - description: si défini, force l'affichage des noms dans la hotlist pour les tampons mélangés

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.hotlist_prefix

  - description: chaîne affichée au début de la hotlist

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"H: "`

- weechat.look.hotlist_remove

  - description: supprimer les tampons de la liste d'activité : buffer = supprimer tampon par tampon, merged = supprimer tous les tampons mélangés visibles d'un seul coup

  - type: entier

  - valeurs: buffer, merged

  - valeur par défaut: `merged`

- weechat.look.hotlist_short_names

  - description: si défini, utilise des noms courts pour afficher les noms de tampons dans la hotlist (commence après le premier "." dans le nom)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.hotlist_sort

  - description: type de tri pour la liste d'activité : group_time_* : grouper par niveau de notification (les highlights en premier) puis tri par date, group_number_* : grouper par niveau de notification (les highlights en premier) puis tri par numéro, number_* : tri par numéro ; asc = tri ascendant, desc = tri descendant

  - type: entier

  - valeurs: group_time_asc, group_time_desc, group_number_asc, group_number_desc, number_asc, number_desc

  - valeur par défaut: `group_time_asc`

- weechat.look.hotlist_suffix

  - description: chaîne affichée à la fin de la hotlist

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.hotlist_unique_numbers

  - description: garde seulement des numéros uniques dans la hotlist (cela s'applique seulement aux éléments de la hotlist où le nom n'est PAS affiché après le numéro)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.hotlist_update_on_buffer_switch

  - description: mettre à jour la hotlist lors du changement de tampon

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.input_cursor_scroll

  - description: nombre de caractères affichés après la fin de la ligne de saisie lors d'un défilement pour afficher la fin de la ligne

  - type: entier

  - valeurs: 0 .. 100

  - valeur par défaut: `20`

- weechat.look.input_multiline_lead_linebreak

  - description: démarrer le texte d'entrée avec une nouvelle ligne lorsque la ligne de commande contient plusieurs lignes, pour aligner le début de chaque ligne

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.input_share

  - description: partage les commandes, le texte, ou les deux dans la zone de saisie pour tous les tampons (il y a toujours un historique local sur chaque tampon)

  - type: entier

  - valeurs: none, commands, text, all

  - valeur par défaut: `none`

- weechat.look.input_share_overwrite

  - description: si défini et que la zone de saisie est partagée, écrase toujours la zone de saisie sur le tampon cible

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.input_undo_max

  - description: nombre maximum de "undo" pour la ligne de commande, par tampon (0 = undo désactivé)

  - type: entier

  - valeurs: 0 .. 65535

  - valeur par défaut: `32`

- weechat.look.item_away_message

  - description: afficher le message d'absence du serveur dans l'objet de barre d'absence

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.item_buffer_filter

  - description: chaîne utilisée pour montrer que des lignes sont filtrées dans le tampon courant (objet de barre "buffer_filter")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"*"`

- weechat.look.item_buffer_zoom

  - description: chaîne utilisée pour montrer le zoom sur un tampon mélangé (objet de barre "buffer_zoom")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"!"`

- weechat.look.item_mouse_status

  - description: chaîne utilisée pour montrer si la souris est activée (objet de barre "mouse_status")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"M"`

- weechat.look.item_time_format

  - description: format de date/heure pour l'objet de barre "time" (voir man strftime pour le format de date/heure) (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"%H:%M"`

- weechat.look.jump_current_to_previous_buffer

  - description: sauter au tampon affiché précédemment lors du saut vers le numéro de tampon courant avec /buffer *N (où N est un numéro de tampon), pour facilement basculer à un autre tampon, puis revenir au tampon courant

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.jump_previous_buffer_when_closing

  - description: sauter au tampon précédemment visité lors de la fermeture d'un tampon (si désactivé, alors le saut se fait vers le numéro de tampon - 1)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.jump_smart_back_to_buffer

  - description: retourner au tampon initial après avoir atteint la fin de la hotlist

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.key_bind_safe

  - description: autoriser seulement l'association de touches "sûres" (commençant par un code ctrl ou meta)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.key_grab_delay

  - description: délai par défaut (en millisecondes) pour capturer une touche (en utilisant la touche par défaut alt-k) ; ce délai peut être remplacé dans la commande /input (voir /help input)

  - type: entier

  - valeurs: 1 .. 10000

  - valeur par défaut: `800`

- weechat.look.mouse

  - description: activer le support de la souris

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.mouse_timer_delay

  - description: délai (en millisecondes) pour capturer un évènement de la souris : WeeChat attendra ce délai avant de traiter l'évènement

  - type: entier

  - valeurs: 1 .. 10000

  - valeur par défaut: `100`

- weechat.look.nick_color_force

  - description: force la couleur pour certains pseudos : le hash calculé avec le pseudo pour trouver la couleur ne sera pas utilisé pour ces pseudos (le format est : "pseudo1:couleur1;pseudo2:couleur2") ; la recherche de pseudos s'effectue avec la casse exacte puis en minuscules, donc il est possible d'utiliser uniquement des minuscules pour les pseudos dans cette option ; la couleur peut inclure le fond avec le format "texte,fond", par exemple "yellow,red"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.nick_color_hash

  - description: algorithme de hash utilisé pour trouver la couleur du pseudo : djb2 = variante de djb2 (la position des lettres compte : les anagrammes d'un pseudo ont une couleur différente), sum = somme des lettres, djb2_32 = variante de djb2 en utilisant un entier sur 32 bits au lieu de 64 bits, sum_32 = somme des lettres en utilisant un entier sur 32 bits au lieu de 64 bits

  - type: entier

  - valeurs: djb2, sum, djb2_32, sum_32

  - valeur par défaut: `djb2`

- weechat.look.nick_color_hash_salt

  - description: sel pour l'algorithme de hash utilisé pour trouver la couleur des pseudos (le pseudo est ajouté à ce sel et l'algorithme de hash opère sur cette chaîne) ; changer cette valeur permet de mélanger les couleurs des pseudos

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.nick_color_stop_chars

  - description: caractères utilisés pour l'arrêt dans le pseudo lors du calcul de la couleur avec les lettres du pseudo (au moins un caractère en dehors de cette liste doit être dans la chaîne avant de s'arrêter) (exemple : le pseudo "|nick|away" avec "|" dans les caractères retournera la couleur du pseudo "|nick") ; cette option a un impact sur l'option weechat.look.nick_color_force, donc le pseudo pour la couleur forcée ne doit pas contenir les caractères ignorés par cette option

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"_|["`

- weechat.look.nick_prefix

  - description: texte à afficher avant le pseudo dans le préfixe, exemple : "<"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.nick_suffix

  - description: texte à afficher après le pseudo dans le préfixe, exemple : ">"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.paste_bracketed

  - description: activer le mode du terminal "bracketed paste" (pas supporté par tous les terminaux/multiplexeurs) : dans ce mode, le texte collé est entouré avec des séquences de contrôle de sorte que WeeChat puisse différencier le texte collé du texte tapé ("ESC[200~", suivi par le texte collé, suivi par "ESC[201~")

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.paste_bracketed_timer_delay

  - description: forcer la fin du "bracketed paste" après ce délai (en secondes) si la séquence de contrôle pour la fin du "bracketed paste" ("ESC[201~") n'a pas été reçue à temps

  - type: entier

  - valeurs: 1 .. 60

  - valeur par défaut: `10`

- weechat.look.paste_max_lines

  - description: nombre maximum de lignes pour la détection de collage sans demander à l'utilisateur (-1 = désactiver cette fonctionnalité) ; cette option est utilisée seulement si l'objet de barre "input_paste" est utilisé dans au moins une barre (par défaut il est utilisé dans la barre "input")

  - type: entier

  - valeurs: -1 .. 2147483647

  - valeur par défaut: `100`

- weechat.look.prefix_action

  - description: préfixe pour les messages d'action (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `" *"`

- weechat.look.prefix_align

  - description: alignement de préfixe (none, left, right (par défaut))

  - type: entier

  - valeurs: none, left, right

  - valeur par défaut: `right`

- weechat.look.prefix_align_max

  - description: taille maximum pour le préfixe (0 = pas de taille maximum)

  - type: entier

  - valeurs: 0 .. 128

  - valeur par défaut: `0`

- weechat.look.prefix_align_min

  - description: taille minimum pour le préfixe

  - type: entier

  - valeurs: 0 .. 128

  - valeur par défaut: `0`

- weechat.look.prefix_align_more

  - description: caractère à afficher si le préfixe est tronqué (doit être exactement un caractère à l'écran)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""+`

- weechat.look.prefix_align_more_after

  - description: afficher le caractère de troncature (par défaut "+") après le texte (en remplaçant l'espace qui devrait être affiché ici) ; si désactivé, le caractère de troncature remplace le dernier caractère du texte

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.prefix_buffer_align

  - description: alignement de préfixe pour le nom du tampon, quand plusieurs tampons sont mélangés avec le même numéro (none, left, right (par défaut))

  - type: entier

  - valeurs: none, left, right

  - valeur par défaut: `right`

- weechat.look.prefix_buffer_align_max

  - description: taille maximum pour le nom du tampon, quand plusieurs tampons sont mélangés avec le même numéro (0 = pas de taille maximum)

  - type: entier

  - valeurs: 0 .. 128

  - valeur par défaut: `0`

- weechat.look.prefix_buffer_align_more

  - description: caractère à afficher si le nom du tampon est tronqué (lorsque plusieurs tampons sont mélangés avec le même numéro) (doit être exactement un caractère à l'écran)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""+`

- weechat.look.prefix_buffer_align_more_after

  - description: afficher le caractère de troncature (par défaut "+") après le texte (en remplaçant l'espace qui devrait être affiché ici) ; si désactivé, le caractère de troncature remplace le dernier caractère du texte

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.prefix_error

  - description: préfixe pour les messages d'erreur (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"=!="`

- weechat.look.prefix_join

  - description: préfixe pour les messages d'arrivée (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"-->"`

- weechat.look.prefix_network

  - description: préfixe pour les messages réseau (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"--"`

- weechat.look.prefix_quit

  - description: préfixe pour les messages de départ (note : le contenu est évalué, donc vous pouvez utiliser des couleurs avec le format "${color:xxx}", voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"<--"`

- weechat.look.prefix_same_nick

  - description: préfixe affiché pour un message avec le même pseudo que le précédent message mais pas le message suivant : utiliser un espace " " pour cacher le préfixe, une autre chaîne pour l'afficher à la place du préfixe, ou une chaîne vide pour désactiver cette fonctionnalité (afficher le préfixe)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.prefix_same_nick_middle

  - description: préfixe affiché pour un message avec le même pseudo que le précédent message et le message suivant : utiliser un espace " " pour cacher le préfixe, une autre chaîne pour l'afficher à la place du préfixe, ou une chaîne vide pour désactiver cette fonctionnalité (afficher le préfixe)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.prefix_suffix

  - description: chaîne affichée après le préfixe

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"│"`

- weechat.look.quote_nick_prefix

  - description: texte à afficher avant le pseudo dans la citation d'un message (voir /help cursor)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"<"`

- weechat.look.quote_nick_suffix

  - description: texte à afficher après le pseudo dans la citation d'un message (voir /help cursor)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `">"`

- weechat.look.quote_time_format

  - description: format de date/heure dans la citation d'un message (voir /help cursor)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"%H:%M:%S"`

- weechat.look.read_marker

  - description: utiliser un marqueur (ligne ou caractère) sur les tampons pour montrer la première ligne non lue

  - type: entier

  - valeurs: none, line, char

  - valeur par défaut: `line`

- weechat.look.read_marker_always_show

  - description: toujours afficher le marqueur de lecture, même s'il est après la dernière ligne du tampon

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.read_marker_string

  - description: chaîne utilisée pour tracer la ligne du marqueur de lecture (la chaîne est répétée jusqu'à la fin de la ligne)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"- "`

- weechat.look.read_marker_update_on_buffer_switch

  - description: mettre à jour le marqueur de lecture lors du changement de tampon

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.save_config_on_exit

  - description: sauvegarder la configuration en quittant

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.save_config_with_fsync

  - description: utiliser fsync pour synchroniser le fichier de configuration avec le périphérique de stockage (voir man fsync) ; cela est plus lent mais devrait éviter toute perte de données en cas de panne de courant durant la sauvegarde du fichier de configuration

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.save_layout_on_exit

  - description: sauvegarder la disposition en quittant (tampons, fenêtres, ou les deux)

  - type: entier

  - valeurs: none, buffers, windows, all

  - valeur par défaut: `none`

- weechat.look.scroll_amount

  - description: nombre de lignes pour le défilement avec scroll_up et scroll_down

  - type: entier

  - valeurs: 1 .. 2147483647

  - valeur par défaut: `3`

- weechat.look.scroll_bottom_after_switch

  - description: faire défiler en bas de la fenêtre après un basculement vers un autre tampon (ne pas sauvegarder la position du défilement dans les fenêtres) ; le défilement n'est fait que pour les tampons avec contenu formaté (pas le contenu libre)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.scroll_page_percent

  - description: pourcentage de l'écran à faire défiler lors du défilement avec page précédente ou suivante (par exemple 100 signifie une page, 50 une demi-page)

  - type: entier

  - valeurs: 1 .. 100

  - valeur par défaut: `100`

- weechat.look.search_text_not_found_alert

  - description: alerte l'utilisateur lorsque le texte cherché n'est pas trouvé dans le tampon

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.separator_horizontal

  - description: caractère utilisé pour tracer les séparateurs horizontaux autour des barres et fenêtres (une valeur vide tracera une vraie ligne avec ncurses, mais peut causer des problèmes d'affichage avec la sélection d'URL sous certains terminaux) ; la largeur à l'écran doit être exactement d'un caractère

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"-"`

- weechat.look.separator_vertical

  - description: caractère utilisé pour tracer les séparateurs verticaux autour des barres et fenêtres (une valeur vide tracera une vraie ligne avec ncurses) ; la largeur à l'écran doit être exactement d'un caractère

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.tab_width

  - description: nombre d'espaces utilisés pour afficher les tabulations dans les messages

  - type: entier

  - valeurs: 1 .. 64

  - valeur par défaut: `1`

- weechat.look.time_format

  - description: format de date/heure pour les dates converties en chaînes et affichées dans les messages (voir man strftime pour le format de date/heure)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"%a, %d %b %Y %T"`

- weechat.look.window_auto_zoom

  - description: zoomer automatiquement la fenêtre courante si le terminal devient trop petit pour afficher les fenêtres (utilisez alt-z pour dézoomer la fenêtre quand le terminal est suffisamment grand)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- weechat.look.window_separator_horizontal

  - description: afficher un séparateur horizontal entre les fenêtres

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.window_separator_vertical

  - description: afficher un séparateur vertical entre les fenêtres

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.look.window_title

  - description: titre pour la fenêtre (le terminal pour l'interface Curses), défini au démarrage ; une chaîne vide gardera le titre inchangé (note : le contenu est évalué, voir /help eval) ; exemple : "WeeChat ${info:version}"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.look.word_chars_highlight

  - description: liste de caractères (ou intervalle de caractères) séparés pas des virgules qui sont considérés comme faisant partie des mots pour les highlights ; chaque élément peut être un simple caractère, un intervalle de caractères (format : a-z), une classe de caractère large (par exemple "alnum", voir man wctype) ; un "!" avant un élément le rend négatif (c'est-à-dire le caractère ne fait PAS partie des mots) ; la valeur "*" correspond à n'importe quel caractère ; les caractères unicode sont autorisés avec le format \u1234, par exemple \u00A0 pour l'espace insécable (voir /help print pour les formats supportés)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"!\u00A0,-,_,|,alnum"`

- weechat.look.word_chars_input

  - description: liste de caractères (ou intervalle de caractères) séparés pas des virgules qui sont considérés comme faisant partie des mots pour la ligne de commande ; chaque élément peut être un simple caractère, un intervalle de caractères (format : a-z), une classe de caractère large (par exemple "alnum", voir man wctype) ; un "!" avant un élément le rend négatif (c'est-à-dire le caractère ne fait PAS partie des mots) ; la valeur "*" correspond à n'importe quel caractère ; les caractères unicode sont autorisés avec le format \u1234, par exemple \u00A0 pour l'espace insécable (voir /help print pour les formats supportés)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"!\u00A0,-,_,|,alnum"`

- weechat.network.connection_timeout

  - description: délai d'attente maximum (en secondes) pour la connexion à une machine distante (effectuée dans un processus fils)

  - type: entier

  - valeurs: 1 .. 2147483647

  - valeur par défaut: `60`

- weechat.network.gnutls_ca_system

  - description: charger les certificats des autorités de certification système au démarrage ; cela peut être désactivée pour économiser de la mémoire, seulement si vous n'utilisez pas du tout de connexions TLS

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.network.gnutls_ca_user

  - description: fichier(s) supplémentaire(s) avec des autorités de certification ; plusieurs fichiers doivent être séparés par ":" (chaque chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.network.gnutls_handshake_timeout

  - description: délai d'attente maximum (en secondes) pour la poignée de main (handshake) gnutls

  - type: entier

  - valeurs: 1 .. 2147483647

  - valeur par défaut: `30`

- weechat.network.proxy_curl

  - description: nom du proxy utilisé pour télécharger les URLs avec Curl (utilisé pour télécharger la liste des scripts et dans les scripts appelant la fonction hook_process) ; le proxy doit être défini avec la commande /proxy

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.plugin.autoload

  - description: liste des extensions à charger automatiquement au démarrage (séparées par des virgules), "*" signifie toutes les extensions trouvées, un nom commençant par "!" est une valeur négative pour empêcher une extension d'être chargée, le caractère joker "*" est autorisé dans les noms (exemples : "*" ou "*,!lua,!tcl")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"*"`

- weechat.plugin.extension

  - description: liste d'extensions de noms de fichiers pour les extensions (séparées par des virgules)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `".so,.dll"`

- weechat.plugin.path

  - description: chemin de recherche des extensions (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${weechat_data_dir}/plugins"`

- weechat.plugin.save_config_on_unload

  - description: sauvegarder les fichiers de configuration lors du déchargement des extensions

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.signal.sighup

  - description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${if:${info:weechat_headless}?/reload:/quit -yes}"`

- weechat.signal.sigquit

  - description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/quit -yes"`

- weechat.signal.sigterm

  - description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"/quit -yes"`

- weechat.signal.sigusr1

  - description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.signal.sigusr2

  - description: commande à exécuter lorsque le signal est reçu, plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.startup.command_after_plugins

  - description: commande exécutée quand WeeChat démarre, après le chargement des extensions ; plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.startup.command_before_plugins

  - description: commande exécutée quand WeeChat démarre, avant le chargement des extensions ; plusieurs commandes peuvent être séparées par des point-virgules (note : les commandes sont évaluées, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- weechat.startup.display_logo

  - description: afficher le logo WeeChat au démarrage

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.startup.display_version

  - description: afficher la version de WeeChat au démarrage

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- weechat.startup.sys_rlimit

  - description: définir les limites de ressource pour le processus WeeChat, le format est : "res1:limite1,res2:limite2" ; le nom de ressource est la fin de la constante (RLIMIT_XXX) en minuscules (voir man setrlimit pour les valeurs) ; une limite de -1 signifie "illimitée" ; exemple : définir une taille illimitée pour le fichier core et max 1 Go de mémoire virtuelle : "core:-1,as:1000000000"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

## 8. IRC

IRC プラグインは IRC プロトコルに従って他の人と会話を行うために設計されています。

マルチサーバに対応し、DCC チャットとファイル転送 (xfer プラグインを使います。Xfer プラグインを参照) を含む全ての IRC コマンドをサポートしています。

### 8.1. コマンドラインオプション

以下のように 1 つ以上の IRC サーバに対応する URL を引数として与えることができます:

    irc[6][s]://[nick[:password]@]irc.example.org[:port][/channel][,channel[...]]

alice というニックネームを使って irc.libera.chat ホストのデフォルトポート (6667) で稼働中の IRC サーバ上の #weechat と #weechat-fr チャンネルに参加する例:

    $ weechat irc://alice@irc.libera.chat/#weechat,#weechat-fr

### 8.2. Servers

#### Add a server

By default no servers are defined. You can add as many servers as you want with the /server command.

For example to connect to libera.chat ↗ with TLS (encrypted trafic):

    /server add libera irc.libera.chat/6697 -tls

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 SASL authentication):

    /set irc.server.libera.sasl_username "alice"
    /secure set libera xxxxxxx
    /set irc.server.libera.sasl_password "${sec.data.libera}"

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}"

| 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`.

#### 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.autojoin_dynamic      boolean  null -> off
    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}"
    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.tls                   boolean  on
    irc.server.libera.tls_cert              string   null -> ""
    irc.server.libera.tls_dhkey_size        integer  null -> 2048
    irc.server.libera.tls_fingerprint       string   null -> ""
    irc.server.libera.tls_password          string   null -> ""
    irc.server.libera.tls_priorities        string   null -> "NORMAL:-VERS-SSL3.0"
    irc.server.libera.tls_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

#### TLS 証明書

TLS を使って IRC サーバに接続する場合、WeeChat はデフォルトで接続が完全に信頼できるものかどうかを確認します。

以下のオプションで TLS 接続を設定します:

weechat.network.gnutls_ca_system

  load system’s default trusted certificate authorities on startup

weechat.network.gnutls_ca_user

  extra file(s) with certificate authorities

irc.server.xxx.tls_cert

  自動的にニックネームを確認するために利用される TLS 証明書ファイル (例えば oftc サーバにおける CertFP の場合、以下を確認してください)

irc.server.xxx.tls_dhkey_size

  Diffie-Hellman キー交換の際に利用される鍵サイズ (デフォルト: 2048)

irc.server.xxx.tls_verify

  TLS 接続が完全に信頼できることの確認を行う (デフォルトで有効)

| "tls_verify" オプションはデフォルトで有効です、したがって厳密な確認が行われ、0.3.1 より前のバージョンでは信頼性の確認に成功していたものが失敗する場合もあります。

##### 最初の例: oftc に接続して、証明書を確認

- シェルを使って証明書をインポート:

    $ mkdir -p ~/.config/weechat/tls
    $ wget -O ~/.config/weechat/tls/CAs.pem https://www.spi-inc.org/ca/spi-cacert.crt

| You must replace `~/.config/weechat` by the path to your WeeChat config directory which can also be for example `~/.weechat`.

| CAs.pem ファイル中で複数の証明書を連結することもできます。

- WeeChat では、"oftc" サーバが既に追加されています:

    /connect oftc

##### 2 番目の例: CertFP を使って oftc に接続

- シェルで証明書を作成:

    $ mkdir -p ~/.config/weechat/tls
    $ cd ~/.config/weechat/tls
    $ openssl req -nodes -newkey rsa:2048 -keyout nick.pem -x509 -days 365 -out nick.pem

| You must replace `~/.config/weechat` by the path to your WeeChat config directory which can also be for example `~/.weechat`.

- WeeChat では、"oftc" サーバが既に追加されています:

    /set irc.server.oftc.tls_cert "${weechat_config_dir}/tls/nick.pem"
    /connect oftc
    /msg nickserv cert add

For more information, please look at this page ↗.

#### SASL 認証

WeeChat は SASL 認証をサポートします、以下の認証メカニズムを利用できます:

- plain: 平文パスワード (デフォルト)

- scram-sha-1: SCRAM with SHA-1 digest algorithm

- scram-sha-256: SCRAM with SHA-256 digest algorithm

- scram-sha-512: SCRAM with SHA-512 digest algorithm

- ecdsa-nist256p-challenge: 公開鍵/秘密鍵を使うチャレンジ認証

- external: クライアント側 TLS 証明書

サーバオプション:

- sasl_mechanism: 利用する認証メカニズム (上記参照)

- sasl_timeout: 認証時のタイムアウト (秒単位)

- sasl_fail: 認証に失敗した場合の挙動

- sasl_username: ユーザ名 (ニックネーム)

- sasl_password: パスワード

- sasl_key: ECC 秘密鍵を含むファイル (ecdsa-nist256p-challenge 用)

##### SASL ECDSA-NIST256P-CHALLENGE 認証

ECDSA-NIST256P-CHALLENGE を使って認証を行うためには、秘密鍵を作成してください (接続の際にパスワードは不要です)。

鍵を作成するには、以下のコマンドを使ってください:

    $ openssl ecparam -genkey -name prime256v1 -out ~/.config/weechat/ecdsa.pem

| You must replace `~/.config/weechat` by the path to your WeeChat config directory which can also be for example `~/.weechat`.

公開鍵を (base64 エンコード形式で) 作成するには、以下のコマンドを使ってください:

    $ openssl ec -noout -text -conv_form compressed -in ~/.config/weechat/ecdsa.pem | grep '^pub:' -A 3 | tail -n 3 | tr -d ' \n:' | xxd -r -p | base64

サーバに接続、本人確認 (例えば "nickserv identify" を使って)、nickserv を使ってアカウントに公開鍵を設定 (アカウントの公開鍵に base64 文字列を指定する):

    /connect libera
    /msg nickserv identify your_password
    /msg nickserv set pubkey Av8k1FOGetUDq7sPMBfufSIZ5c2I/QYWgiwHtNXkVe/q

サーバの SASL オプションを設定:

    /set irc.server.libera.sasl_mechanism ecdsa-nist256p-challenge
    /set irc.server.libera.sasl_username "your_nickname"
    /set irc.server.libera.sasl_key "${weechat_config_dir}/ecdsa.pem"

サーバに再接続:

    /reconnect libera

#### Connection

You can connect to server with the /connect command:

    /connect libera

To disconnect:

    /disconnect libera

Or just this if you are on any buffer belonging to libera server (server, channel, private):

    /disconnect

When you connect to multiple servers at same time, server buffers are merged by default and you can switch between them with the `Ctrl`+`x` key.
It is possible to disable auto merge of server buffers to have independent server buffers:

    /set irc.look.server_buffer independent

#### Connect with Tor and SASL

Some servers support connections with Tor ↗, a network of virtual tunnels that allows people and groups to improve their privacy and security on the Internet.

最初に、Tor をインストールしてください。Debian (とその派生ディストリビューション) の場合:

    $ sudo apt-get install tor

WeeChat で Tor サービスを使った socks5 プロキシを作成してください (ホスト名/IP アドレス、ポート番号は Tor の設定に依存します):

    /proxy add tor socks5 127.0.0.1 9050

Now, add a new server (replace server name "irc-tor" and the address by a valid one):

    /server add irc-tor this.is.the.address.onion

Tor プロキシを設定:

    /set irc.server.irc-tor.proxy "tor"

ECDSA-NIST256P-CHALLENGE メカニズムで SASL 認証を設定 (秘密鍵を作成するには SASL ECDSA-NIST256P-CHALLENGE 認証を参照してください):

    /set irc.server.irc-tor.sasl_mechanism ecdsa-nist256p-challenge
    /set irc.server.irc-tor.sasl_username "your_nickname"
    /set irc.server.irc-tor.sasl_key "${weechat_config_dir}/ecdsa.pem"

And finally, connect to the server:

    /connect irc-tor

### 8.3. IRCv3 support

WeeChat supports the following IRCv3 extensions ↗:

- account-notify

- account-tag

- away-notify

- cap-notify

- batch

- chghost

- draft/multiline

- echo-message

- extended-join

- invite-notify

- message-tags

- monitor

- multi-prefix

- SASL v3.2

- server-time

- setname

- typing

- userhost-in-names

- WHOX

By default all capabilities supported by the server and WeeChat are automatically enabled (see option irc.server_default.capabilities).

Tables with comparison of different IRC clients, including WeeChat, are available on this page ↗.

#### account-notify

Specification: account-notify ↗

This capability allows the server to send messages when users identify or unidentify on the server.
WeeChat displays such messages if the option irc.look.display_account_message is enabled (default value).

Examples:

    -- alice has identified as Alice01

    -- alice has unidentified

#### account-tag

Specification: account-tag ↗

This capability allows the server to send account as message tag to commands sent to the client.
WeeChat parses this tag and saves it in the message, but it is not used or displayed. It can be used in /filter command to filter messages matching specific accounts.

Example of raw IRC message received:

    @account=Alice01 :user@example.com PRIVMSG #test :Hello!

Message displayed in channel:

    <alice> Hello!

Message with tags:

    <alice> Hello! [irc_privmsg,irc_tag_account_Alice01,notify_message,prefix_nick_lightcyan,nick_alice,host_user@example.com,log1]

#### away-notify

Specification: away-notify ↗

This capability allows the server to send away notifications for users present on the same channels as you.

When the away status is changed for a user (away or back), this is reflected with a specific color in the nicklist, using the following options:

- irc.server_default.away_check

- irc.server_default.away_check_max_nicks

- weechat.look.item_away_message

#### batch

Specification: batch ↗

This capability allows the server to send batched events (grouping of several messages that are related).

For now, WeeChat only stores messages received in a batch and processes as usual later, when the batch ends.

#### cap-notify

Specification: cap-notify ↗

This capability allows the server to advertise on new or removed capabilities on the server (via `CAP NEW` and `CAP DEL` commands).

Examples:

    -- irc: クライアントの機能、現在利用可能なもの: sasl

    -- irc: クライアントの機能、削除されたもの: sasl

#### chghost

Specification: chghost ↗

This capability allows the server to send messages when users change name or host.
When the option irc.look.smart_filter_chghost is enabled (default value), the host changes are automatically hidden if the nick has not spoken for several minutes.
The color of the change host message is controlled by the option irc.color.message_chghost.

Example:

    -- alice (user@example.com) がホストを test.com に変更しました

#### draft/multiline

Specification: multiline ↗

This capability allows the client and server to send messages with multiple lines, using the batch capability, that must be enabled as well.

There are limits in term of bytes or number of lines in a multiline message that are given in the capability sent by the server, for example:

    CAP alice LS * :draft/multiline=max-bytes=4096,max-lines=24

This sets a limit of 4096 bytes and 24 lines for a multiline batched content.

If the limits are not given by the server, the default in WeeChat are:

- max bytes: 4096

- max lines: 24

Only standard messages and those send by the /notice command can be multiline.
ACTION CTCP messages sent with command /me are not affected by this capability. That means multiline actions are sent as multiple actions.

| As the specification is a "draft", it may change and the multiline support can possibly break at any time in WeeChat. The capability is automatically enabled if the server supports it and can be disabled with this command: `/set irc.server_default.capabilities "*,!draft/multiline"`. When the capability is disabled, a multiline message is sent as multiple messages, as if they were sent sequentially to the server.

Example of IRC messages sent for a user message with two lines (`this is a test` / `on two lines`), send to channel #test:

    BATCH +i8Je7M7gquddoyC9 draft/multiline #test
    @batch=i8Je7M7gquddoyC9 PRIVMSG #test :this is a test
    @batch=i8Je7M7gquddoyC9 PRIVMSG #test :on two lines
    BATCH -i8Je7M7gquddoyC9

Display of the message sent in WeeChat:

    19:01:45 alice | this is a test
                   | on two lines

#### echo-message

Specification: echo-message ↗

This capability forces the server to send PRIVMSG, NOTICE and TAGMSG messages back to WeeChat.

WeeChat displays only the message received and not the message sent, so a delay can be noticed between the send and the display. When the message is displayed, it means it has been properly received by the server and propagated to other clients connected to the server as well.

#### extended-join

Specification: extended-join ↗

This capability allows the server to send account and real name when users join channels.
WeeChat displays this additional information in join messages if the option irc.look.display_extended_join is enabled (default value).

Example:

    --> john [John01] (John Doe) (~user@example.com) が #test に参加

#### invite-notify

Specification: invite-notify ↗

This capability allows the server to send invite messages when users are invited to channels.

Example:

    -- alice が bob を #test に招待しました

#### message-tags

Specification: message-tags ↗

This capability allows to add metadata in messages.
These tags can be displayed using the command `/debug tags`.

It must be enabled to use typing notifications.

#### monitor

Specification: monitor ↗

This capability allows the server to send notifications when clients become online/offline.
WeeChat automatically uses this extension if available when using the /notify command.

#### multi-prefix

Specification: multi-prefix ↗

This capability allows the server to send all user modes at once in /names and /whois responses.

| For now, WeeChat doesn’t display all prefixes in the `/names` output, even if they are received and properly saved internally.

Example: output of `/whois alice`:

    -- [alice] @%+#test

#### SASL

Specification: SASL 3.2 ↗

See the dedicated chapter SASL authentication.

#### server-time

Specification: server-time ↗

This capability allows the server to send time for messages as message tag.
When the time is received in a message, WeeChat uses it to display the message (it can then be displayed with a past date).

The IRC proxy in Relay plugin supports this capability, so any IRC client of Relay should enable it to display the real message time in the backlog sent upon connection.

#### setname

Specification: setname ↗

This capability lets you change your real name by using the /setname command.

#### typing

Specification: typing ↗

See the dedicated chapter Typing notifications.

#### userhost-in-names

Specification: userhost-in-names ↗

This capability allows the server to send hostnames in /names responses.

| WeeChat doesn’t display hostnames in the `/names` output.

Example of raw IRC messages received without the capability:

    :irc.server 353 alice = #test :@alice bob +carol

Example of raw IRC messages received with the capability:

    :irc.server 353 alice = #test :@alice!user1@host1 bob!user2@host2 +carol!user3@host3

#### WHOX

Specification: WHOX ↗

This capability lets you request additional fields in the WHO response (via the /who command).
WeeChat displays all additional information received in the WHO output.

### 8.4. Channels

You can join channels with the /join command:

    /join #channel

Part a channel (keeping the buffer open):

    /part [quit message]

The channels you joined are not saved. If you want to join them automatically when connecting to the server, you must set the server `autojoin` option:

    /set irc.server.libera.autojoin "#weechat,#weechat-fr"

| Some scripts can help to automatically set this option, see `/script search autojoin`.

Be careful, spaces can be used only to separate list of channels from keys, for example if `#channel1` requires a key but not `#channel2`:

    /set irc.server.libera.autojoin "#channel1,#channel2 key1"

For help on the format, see `/help irc.server.libera.autojoin`.

### 8.5. Private messages

You can send a private message with the /query command, which opens a separate buffer:

    /query bob hi, how are you?

Without arguments the command just opens the buffer (or selects it if already open):

    /query bob

To close the private buffer, you can do this command on the private buffer:

    /close

### 8.6. Smart filter

A smart filter is available to filter some messages when someone did not write anything in the channel during a configurable delay:

- join: user joins the channel

- part: user leaves the channel

- quit: user quits the server

- account: user changes its account

- chghost: user changes name or host

- mode: mode changes on channel

- nick: user changes its nick

- setname: user changes its real name

Smart filter is enabled by default, but you must add a filter to hide lines on buffers, for example:

    /filter add irc_smart * irc_smart_filter *

It is possible to create filter for one channel only or channels beginning with same name (see `/help filter`):

    /filter add irc_smart_weechat irc.libera.#weechat* irc_smart_filter *

You can setup a longer delay (in minutes):

    /set irc.look.smart_filter_delay 10

If someone did not write anything during last 10 minutes, its messages like join/part/quit will be hidden by default on channel, and you can use key `Alt`+`=` (toggle filters) to see them.

### 8.7. CTCP 応答

CTCP 応答をカスタマイズしたり、いくつかの CTCP 要求をブロック (無応答) することができます。

例えば、CTCP "VERSION" 要求に対する応答をカスタマイズするには、以下のコマンドを使ってください:

    /set irc.ctcp.version "I'm running WeeChat $version, it rocks!"

| The name of CTCP must be in lower case. That means option irc.ctcp.VERSION would not work.

CTCP "VERSION" 要求をブロックする (要求に対する応答を行わない) には、空文字列を設定してください:

    /set irc.ctcp.version ""

未定義の CTCP 要求に対する応答もカスタマイズできます。例えば CTCP "BLABLA" 要求に対する応答を以下のように設定できます:

    /set irc.ctcp.blabla "This is my answer to CTCP BLABLA"

特定のサーバに対して CTCP 応答をカスタマイズするには、CTCP 名の前に内部サーバ名をつけてください:

    /set irc.ctcp.libera.version "WeeChat $version (for libera)"

標準の CTCP 応答を復元するには、オプションを削除してください:

    /unset irc.ctcp.version

以下のコードを設定値に含めることが可能です。これらのコードは CTCP 応答時に自動的に WeeChat によって展開されます:

コード | 説明 | 値/例
--- | --- | ---
     $clientinfo
| サポートしている CTCP オプションのリスト | `ACTION DCC CLIENTINFO FINGER PING SOURCE TIME USERINFO VERSION`
     $version
| WeeChat バージョン | `0.4.0-dev`
     $versiongit
| WeeChat バージョン + Git バージョン (1) | `0.4.0-dev (git: v0.3.9-104-g7eb5cc4)`
     $git
| Git バージョン (1) | `v0.3.9-104-g7eb5cc4`
     $compilation
| WeeChat コンパイル日時 | `Dec 16 2012`
     $osinfo
| OS に関する情報 | `Linux 2.6.32-5-amd64 / x86_64`
     $site
| WeeChat ウェブサイト | `https://weechat.org/`
     $download
| WeeChat ウェブサイトのダウンロードページ | `https://weechat.org/download/`
     $time
| 現在の日時 | `Sun, 16 Dec 2012 10:40:48 +0100`
     $username
| IRC サーバ上で使うユーザ名 | `name`
     $realname
| IRC サーバ上で使う実名 | `John Doe`

| (1) git バージョンとは `git describe` コマンドの出力です。Git リポジトリで WeeChat をコンパイルし、Git がインストールされている場合のみ値が設定されます。

CTCP オプションが設定されていない (デフォルトの) 場合、CTCP 応答は以下のようになります:

CTCP | 応答書式 | 例
--- | --- | ---
CLIENTINFO | `$clientinfo` | `ACTION DCC CLIENTINFO FINGER PING SOURCE TIME USERINFO VERSION`
FINGER | `WeeChat $versiongit` | `WeeChat 0.4.0-dev (git: v0.3.9-104-g7eb5cc4)`
SOURCE | `$download` | `https://weechat.org/download/`
TIME | `$time` | `Sun, 16 Dec 2012 10:40:48 +0100`
USERINFO | `$username ($realname)` | `name (John Doe)`
VERSION | `WeeChat $versiongit ($compilation)` | `WeeChat 0.4.0-dev (git: v0.3.9-104-g7eb5cc4) (Dec 16 2012)`

### 8.8. IRC メッセージのターゲットバッファ

`irc.msgbuffer.*` オプションを使えば、IRC メッセージに対するターゲットバッファ (メッセージを表示するバッファ) をカスタマイズすることができます。

一部の IRC メッセージ (以下のリストを参照) に対して、以下の値を設定できます:

current

  現在のバッファ (IRC バッファまたはサーババッファの場合のデフォルト)

private

  ニックネームに対するプライベートバッファ、見つからない場合は現在のバッファまたはサーババッファ (irc.look.msgbuffer_fallback オプションに依存)

server

  サーババッファ

weechat

  WeeChat "core" バッファ

オプションが設定されていない (デフォルトの) 場合、WeeChat は適当なバッファを選びます。通常ではサーバまたはチャンネルバッファです。

カスタマイズできる一部の IRC メッセージ、別名のリストは以下です:

メッセージ | 別名 | 説明
--- | --- | ---
`error` |  | エラー
`invite` |  | チャンネルへの招待
`join` |  | 参加
`kick` |  | キック
`kill` |  | キル
`mode` |  | モード
`notice` |  | 通知
`part` |  | 退出
`quit` |  | 終了
`topic` |  | トピック
`wallops` |  | IRC オペレータメッセージ
| `ctcp` | ctcp (プライベートまたは notice メッセージ内の、送信または受信メッセージ)
`221` |  | ユーザモード文字列
`275` | `whois` | whois (セキュアな接続)
`301` | `whois` | whois (離席状態)
`303` |  | サーバへの接続状態
`305` | `unaway` | 着席状態
`306` | `away` | 離席状態
`307` | `whois` | whois (登録済みニックネーム)
`310` | `whois` | whois (ヘルプモード)
`311` | `whois` | whois (ユーザ)
`312` | `whois` | whois (サーバ)
`313` | `whois` | whois (オペレータ)
`314` | `whowas` | whowas
`315` | `who` | who (終了)
`317` | `whois` | whois (アイドル状態)
`318` | `whois` | whois (終了)
`319` | `whois` | whois (チャンネル)
`320` | `whois` | whois (身元確認済みユーザ)
`321` | `list` | list (開始)
`322` | `list` | list (チャンネル)
`323` | `list` | list (終了)
`326` | `whois` | whois (オペレータ権限を持っているユーザ)
`327` | `whois` | whois (ホスト)
`328` |  | チャンネルの URL
`329` |  | チャンネル作成日時
`330` | `whois` | whois (ログイン時の名前)
`331` |  | トピックが未設定のチャンネル
`332` |  | チャンネルのトピック
`333` |  | トピックに関する情報
`335` | `whois` | whois (ボットが有効化されているか)
`338` | `whois` | whois (ホスト)
`341` |  | 招待中
`343` | `whois` | whois (オペレータ)
`344` | `reop` | チャンネルオペレータを復活
`345` | `reop` | チャンネルオペレータを復活 (終了)
`346` | `invitelist` | 招待リスト
`347` | `invitelist` | 招待リスト (終了)
`348` | `exceptionlist` | 除外リスト
`349` | `exceptionlist` | 除外リスト (終了)
`351` |  | サーババージョン
`352` | `who` | who
`353` | `names` | チャンネル内ユーザのリスト
`366` | `names` | チャンネル内ユーザのリストの終了
`367` | `banlist` | 禁止リスト
`368` | `banlist` | 禁止リストの終了
`369` | `whowas` | whowas (終了)
`378` | `whois` | whois (接続元)
`379` | `whois` | whois (モード)
`401` | `whois` | 指定したニックネームおよびチャンネルがありません
`402` | `whois` | 指定したサーバがありません
`432` |  | ニックネームにエラーがあります
`433` |  | ニックネームが使用されています
`438` |  | ニックネームを変更する権限がありません
`671` | `whois` | whois (セキュアな接続)
`728` | `quietlist` | 発言禁止リスト
`729` | `quietlist` | 発言禁止リストの終了
`732` | `monitor` | 監視中のニックネームのリスト
`733` | `monitor` | 監視中のニックネームのリスト (終了)
`901` |  | ログインに成功

その他の数値コマンドも同様にカスタマイズできます。

サーバ名を前につけることで、特定のサーバに対して設定することができます (例: `libera.whois`)。

例:

- `/whois` の結果をプライベートバッファに表示:

    /set irc.msgbuffer.whois private

- whois に対する設定をデフォルトに戻す (サーババッファに表示):

    /unset irc.msgbuffer.whois

- "libera" サーバの場合、招待メッセージを現在のバッファに表示:

    /set irc.msgbuffer.libera.invite current

- "303" (ison) メッセージを WeeChat "core" バッファに表示:

    /set irc.msgbuffer.303 weechat

### 8.9. コマンド

- `action`: envoyer une action CTCP à un pseudo ou canal

    /action  [-server <serveur>] <cible>[,<cible>...] <texte>

    serveur : envoyer à ce serveur (nom interne)
      cible : pseudo ou canal (peut-être un masque, '*' = canal courant)
      texte : texte à envoyer

- `admin`: trouver les informations sur l’administrateur du serveur

    /admin  [<cible>]

    cible : nom du serveur

- `allchan`: exécuter une commande sur tous les canaux de tous les serveurs connectés

    /allchan  [-current] [-parted] [-exclude=<canal>[,<canal>...]] <commande>
              [-current] [-parted] -include=<canal>[,<canal>...] <commande>

      -current : exécuter la commande pour les canaux du serveur courant seulement
       -parted : exécuter la commande sur les canaux quittés seulement
      -exclude : exclure certains canaux (le caractère joker "*" est autorisé)
      -include : inclure seulement certains canaux (le caractère joker "*" est autorisé)
      commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')

    La commande et les paramètres sont évalués (voir /help eval), les variables suivantes sont remplacées :
      $server             nom du serveur
      $channel            nom du canal
      $nick               pseudo sur le serveur
      ${irc_server.xxx}   variable xxx dans le serveur
      ${irc_channel.xxx}  variable xxx dans le canal

    Exemples :
      exécuter '/me teste' sur tous les canaux :
        /allchan /me teste
      dire 'bonjour' partout sauf sur #weechat :
        /allchan -exclude=#weechat bonjour
      dire 'bonjour' partout sauf sur #weechat et les canaux commençant par #linux :
        /allchan -exclude=#weechat,#linux* bonjour
      dire 'bonjour' sur tous les canaux commençant par #linux :
        /allchan -include=#linux* bonjour
      fermer tous les tampons avec des canaux quittés :
        /allchan -parted /close

- `allpv`: exécuter une commande sur tous les tampons privés de tous les serveurs connectés

    /allpv  [-current] [-exclude=<pseudo>[,<pseudo>...]] <commande>
            [-current] [-include=<pseudo>[,<pseudo>...]] <commande>

      -current : exécuter la commande pour les tampons privés du serveur courant seulement
      -exclude : exclure certains pseudos (le caractère joker "*" est autorisé)
      -include : inclure seulement certains pseudos (le caractère joker "*" est autorisé)
      commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')

    La commande et les paramètres sont évalués (voir /help eval), les variables suivantes sont remplacées :
      $server             nom du serveur
      $channel            nom du canal
      $nick               pseudo sur le serveur
      ${irc_server.xxx}   variable xxx dans le serveur
      ${irc_channel.xxx}  variable xxx dans le canal

    Exemples :
      exécuter '/me teste' sur tous les tampons privés :
        /allpv /me teste
      dire 'bonjour' partout sauf sur pour le pseudo foo :
        /allpv -exclude=foo bonjour
      dire 'bonjour' partout sauf pour le pseudo foo et les pseudos commençant par bar :
        /allpv -exclude=foo,bar* bonjour
      dire 'bonjour' pour tous les pseudos commençant par bar :
        /allpv -include=bar* bonjour
      fermer tous les tampons privés :
        /allpv /close

- `allserv`: exécuter une commande sur tous les serveurs connectés

    /allserv  [-exclude=<serveur>[,<serveur>...]] <commande>
              [-include=<serveur>[,<serveur>...]] <commande>

      -exclude : exclure certains serveurs (le caractère joker "*" est autorisé)
      -include : inclure seulement certains serveurs (le caractère joker "*" est autorisé)
      commande : commande à exécuter (ou texte à envoyer au tampon si la commande ne commence pas par '/')

    La commande et les paramètres sont évalués (voir /help eval), les variables suivantes sont remplacées :
      $server             nom du serveur
      $nick               pseudo sur le serveur
      ${irc_server.xxx}   variable xxx dans le serveur

    Exemples :
      changer de pseudo sur tous les serveurs :
        /allserv /nick newnick
      positionner l'absence sur tous les serveurs :
        /allserv /away Je suis absent
      faire un whois sur mon pseudo sur tous les serveurs :
        /allserv /whois $nick

- `auth`: s’authentifier avec SASL

    /auth  [<utilisateur> <mot_de_passe>]

     utilisateur : nom d'utilisateur SASL (le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)
    mot_de_passe : mot de passe SASL ou chemin vers le fichier de clé privée (le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

    Si le nom d'utilisateur et mot de passe ne sont pas donnés, les valeurs des options serveur "sasl_username" et "sasl_password" (ou "sasl_key") sont utilisées.

    Exemples :
      s'authentifier avec le nom d'utilisateur et mot de passe défini dans le serveur :
        /auth
      s'authentifier avec un utilisateur différent :
        /auth utilisateur2 mot_de_passe2
      s'authentifier avec un utilisateur différent et le mécanisme ecdsa-nist256p-challenge :
        /auth utilisateur2 ${weechat_config_dir}/ecdsa2.pem

- `autojoin`: configurer l’option serveur "autojoin"

    /autojoin  add [<canal1> [<canal2>...]]
               addraw <canal1>[,<canal2>...] [<clé1>[,<clé2>...]]
               del [<canal1> [<canal2>...]]
               apply
               join
               sort [buffer]

        add : ajouter le canal courant ou une liste de canaux (avec clés facultatives) dans l'option autojoin ; si vous êtes sur le canal et que la clé n'est pas fournie, la clé est lue sur ce canal
     addraw : utiliser le format brut IRC (identique à la commande /join) : tous les canaux séparés par des virgules, clés facultatives séparées par des virgules
        del : supprimer le canal courant ou une liste de canaux de l'option autojoin
    channel : nom du canal
        key : clé pour le canal
      apply : définir les canaux actuellement joints dans l'option autojoin
       join : joindre les canaux de l'option autojoin
       sort : trier les canaux de l'option autojoin par ordre alphabétique ; avec "buffer" : trier d'abord par numéro de tampon, puis par ordre alphabétique

    Exemples :
      /autojoin add
      /autojoin add #test
      /autojoin add #chan1 #chan2
      /allchan /autojoin add
      /autojoin addraw #chan1,#chan2,#chan3 key1,key2
      /autojoin del
      /autojoin del #chan1
      /autojoin apply
      /autojoin join
      /autojoin sort
      /autojoin sort buffer

- `ban`: bannir des pseudos ou hôtes

    /ban  [<canal>] [<pseudo> [<pseudo>...]]

     canal : nom du canal
    pseudo : pseudo ou hôte

    Sans paramètre, cette commande affiche la liste des bannissements pour le canal courant.

- `cap`: négociation de capacité client

    /cap  ls
          list
          req|ack [<capacité> [<capacité>...]]
          end

       ls : lister les capacités supportées par le serveur
     list : lister les capacités actuellement activées
      req : demander une nouvelle capacité ou supprimer une capacité (si elle commence par "-", par exemple : "-multi-prefix")
      ack : accuser réception de capacités qui nécessitent un accusé de réception du client
      end : terminer la négociation de capacité

    Sans paramètre, "ls" et "list" sont envoyés.

    Les capacités supportées par WeeChat sont : account-notify, away-notify, batch, cap-notify, chghost, draft/multiline, echo-message, extended-join, invite-notify, message-tags, multi-prefix, server-time, setname, userhost-in-names.

    Les capacités à activer automatiquement sur les serveurs peuvent être définies dans l'option irc.server_default.capabilities (ou par serveur dans l'option irc.server.xxx.capabilities).

    Exemples :
      afficher les capacités supportées et activées :
        /cap
      demander les capacités multi-prefix et away-notify :
        /cap req multi-prefix away-notify
      demander la capacité extended-join, supprimer la capacité multi-prefix :
        /cap req extended-join -multi-prefix
      supprimer la capacité away-notify :
        /cap req -away-notify

- `connect`: se connecter à un/plusieurs serveur(s) IRC

    /connect  [<serveur> [<serveur>...]] [-<option>[=<valeur>]] [-no<option>] [-nojoin] [-switch]
              -all|-auto|-open [-nojoin] [-switch]

     serveur : nom du serveur, qui peut être :
               - nom interne de serveur (ajouté par /server add, usage recommandé)
               - nom/port ou IP/port, le port par défaut est 6697 pour TLS, sinon 6667
               - URL avec le format : irc[6][s]://[pseudo[:mot_passe]@]irc.example.org[:port][/#canal1][,#canal2[...]]
               Note : pour une adresse/IP/URL, un serveur temporaire est ajouté (NON SAUVÉ), voir /help irc.look.temporary_servers
      option : définir l'option pour le serveur (pour une option booléenne, la valeur peut être omise)
    nooption : définir l'option booléenne à 'off' (par exemple : -notls)
        -all : se connecter à tous les serveurs définis dans la configuration
       -auto : se connecter aux serveurs qui ont "autoconnect" activé
       -open : se connecter à tous les serveurs ouverts qui ne sont pas actuellement connectés
     -nojoin : ne rejoindre aucun canal (même si l'autojoin est activé pour le serveur)
     -switch : basculer vers l'adresse suivante du serveur

    Pour se déconnecter du serveur ou stopper toute tentative de connexion, utilisez la commande /disconnect.

    Exemples :
      /connect libera
      /connect irc.oftc.net
      /connect irc.oftc.net/6667 -notls
      /connect irc6.oftc.net/9999 -ipv6
      /connect my.server.org -password=test
      /connect irc://nick@irc.oftc.net/#channel
      /connect -switch

- `ctcp`: envoyer un message CTCP (Client-To-Client Protocol)

    /ctcp  [-server <serveur>] <cible>[,<cible>...] <type> [<paramètres>]

       server : envoyer à ce serveur (nom interne)
        cible : pseudo ou nom de canal ('*' = canal courant)
         type : type de CTCP (exemples : "version", "ping", etc.)
    arguments : paramètres pour le CTCP

    Exemples :
      /ctcp toto time
      /ctcp toto version
      /ctcp * version

- `cycle`: quitter et rejoindre un canal

    /cycle  [<canal>[,<canal>...]] [message]

      canal : nom du canal à quitter
    message : message de fin (affiché aux autres utilisateurs)

- `dcc`: démarrer un DCC (transfert de fichier ou discussion directe)

    /dcc  chat <pseudo>
          send <pseudo> <fichier>

     pseudo : pseudo
    fichier : nom du fichier (sur la machine locale)

    Exemples :
      discuter avec le pseudo "toto" :
        /dcc chat toto
      envoyer le fichier "/home/foo/bar.txt" au pseudo "toto" :
        /dcc send toto /home/foo/bar.txt

- `dehalfop`: retirer le statut de demi-opérateur du canal à/aux pseudo(s)

    /dehalfop  <pseudo> [<pseudo>...]
               * -yes

    pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
         * : retirer le statut de demi-opérateur de tout le monde sur le canal excepté vous-même

- `deop`: retirer le statut d’opérateur du canal à/aux pseudo(s)

    /deop  <pseudo> [<pseudo>...]
           * -yes

    pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
         * : retirer le statut d'opérateur de tout le monde sur le canal excepté vous-même

- `devoice`: retirer la voix du/des pseudo(s)

    /devoice  <pseudo> [<pseudo>...]
              * -yes

    pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
         * : retirer la voix de tout le monde sur le canal

- `die`: arrêter le serveur

    /die  [<cible>]

    cible : nom du serveur

- `disconnect`: se déconnecter d’un ou de tous les serveurs IRC

    /disconnect  [<serveur>|-all|-pending [<raison>]]

     serveur : nom interne du serveur
        -all : se déconnecter de tous les serveurs
    -pending : annuler la reconnexion automatique sur les serveurs en cours de reconnexion
      raison : raison pour le "quit"

- `halfop`: donner le statut de demi-opérateur à un/des pseudo(s)

    /halfop  <pseudo> [<pseudo>...]
             * -yes

    pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
         * : donner le statut de demi-opérateur à tout le monde sur le canal

- `ignore`: ignorer des pseudos/hôtes de serveurs ou canaux

    /ignore  list
             add [re:]<pseudo> [<serveur> [<canal>]]
             del <numéro>|-all

           list : lister tous les ignores
            add : ajouter un ignore
         pseudo : pseudo ou hôte (peut être une expression régulière POSIX étendue si "re:" est donné ou un masque avec "*" pour remplacer zéro ou plusieurs caractères)
            del : supprimer un ignore
         numéro : numéro du ignore à supprimer (voir la liste des ignore pour le trouver)
           -all : supprimer tous les ignores
        serveur : nom de serveur interne où l'ignore fonctionnera
          canal : canal où l'ignore fonctionnera

    Note : l'expression régulière peut commencer par "(?-i)" pour devenir sensible à la casse.

    Exemples :
      ignorer le pseudo "toto" partout :
        /ignore add toto
      ignorer le hôte "toto@domain.com" sur le serveur libera :
        /ignore add toto@domain.com libera
      ignorer le hôte "toto*@*.domain.com" sur libera/#weechat :
        /ignore add toto*@*.domain.com libera #weechat

- `info`: voir les informations décrivant le serveur

    /info  [<cible>]

    cible : nom du serveur

- `invite`: inviter un pseudo sur un canal

    /invite  <pseudo> [<pseudo>...] [<canal>]

    pseudo : pseudo
     canal : canal

- `ison`: vérifier si un pseudo est actuellement sur IRC

    /ison  <pseudo> [<pseudo>...]

    pseudo : pseudo

- `join`: rejoindre un canal

    /join  [-noswitch] [-server <serveur>] [<canal1>[,<canal2>...]] [<clé1>[,<clé2>...]]

    -noswitch : ne pas basculer sur le nouveau tampon
      serveur : envoyer à ce serveur (nom interne)
        canal : nom du canal à rejoindre
          clé : clé pour rejoindre le canal (les canaux avec une clé doivent être les premiers dans la liste)

    Exemples :
      /join #weechat
      /join #protectedchan,#weechat key
      /join -server libera #weechat
      /join -noswitch #weechat

- `kick`: éjecter un utilisateur d’un canal

    /kick  [<canal>] <pseudo> [<raison>]

     canal : nom du canal
    pseudo : pseudo
    raison : raison (évaluée, voir /help eval ; les variables spéciales ${nick} (propre pseudo), ${target} (pseudo cible), ${channel} et ${server} sont remplacées par leur valeurs)

- `kickban`: éjecter un utilisateur d’un canal et bannir l’hôte

    /kickban  [<canal>] <pseudo> [<raison>]

     canal : nom du canal
    pseudo : pseudo
    raison : raison (évaluée, voir /help eval ; les variables spéciales ${nick} (propre pseudo), ${target} (pseudo cible), ${channel} et ${server} sont remplacées par leur valeurs)

    Il est possible d'éjecter/bannir avec un masque, le pseudo sera extrait du masque et remplacé par "*".

    Exemple :
      bannir "*!*@host.com" puis éjecter "toto" :
        /kickban toto!*@host.com

- `kill`: fermer la connexion client-serveur

    /kill  <pseudo> [<raison>]

    pseudo : pseudo
    raison : raison

- `knock`: envoyer une notice à un canal en invitation seulement, en demandant une invitation

    /knock  <canal> [<message>]

      canal : nom du canal
    message : message à envoyer

- `links`: lister tous les noms de serveurs connus du serveur qui répondent à la requête

    /links  [[<cible>] <masque_serveur>]

             cible : ce serveur doit répondre à la requête
    masque_serveur : liste des serveurs correspondant au masque

- `list`: lister les canaux et leurs titres

    /list  [-server <serveur>] [-re <regex>] [<canal>[,<canal>...]] [<cible>]

    serveur : envoyer à ce serveur (nom interne)
      regex : expression régulière POSIX étendue utilisée pour filtrer les résultats (insensible à la casse, peut commencer par "(?-i)" pour devenir sensible à la casse)
      canal : canal à lister
      cible : nom du serveur

    Exemples :
      lister tous les canaux du serveur (peut être très lent pour les grands réseaux) :
        /list
      lister le canal #weechat :
        /list #weechat
      lister tous les canaux commençant par "#weechat" (peut être très lent pour les grands réseaux) :
        /list -re #weechat.*

- `lusers`: obtenir des statistiques sur la taille du réseau IRC

    /lusers  [<masque> [<cible>]]

    masque : serveurs qui correspondent au masque seulement
     cible : serveur pour faire suivre la requête

- `map`: afficher une carte graphique du réseau IRC

- `me`: envoyer une action CTCP au canal courant

    /me  <message>

    message : message à envoyer

- `mode`: changer le mode du canal ou de l’utilisateur

    /mode  [<canal>] [+|-]o|p|s|i|t|n|m|l|b|e|v|k [<paramètres>]
           <pseudo> [+|-]i|s|w|o

    modes de canaux :
      canal : nom du canal à modifier (par défaut le canal courant)
      o : donner/reprendre le statut privilégié d'opérateur
      p : indicateur de canal privé
      s : indicateur de canal secret
      i : indicateur de canal avec invitation seulement
      t : le titre est modifiable seulement par un opérateur du canal
      n : aucun message au canal depuis l'extérieur
      m : canal modéré
      l : fixer la limite d'utilisateurs pour le canal
      b : paramétrer un masque de bannissement pour garder des utilisateurs dehors
      e : paramétrer un masque d'exception
      v : donner/reprendre la possibilité de parler sur un canal modéré
      k : définir une clé (mot de passe) pour accéder au canal
    modes utilisateur :
      pseudo : pseudo à modifier
      i : marquer un utilisateur comme invisible
      s : marquer un utilisateur pour recevoir les notices du serveur
      w : l'utilisateur reçoit les wallops
      o : drapeau opérateur

    La liste des modes n'est pas exhaustive, vous devriez lire la documentation de votre serveur pour voir tous les modes possibles.

    Exemples :
      protéger le titre du canal #weechat :
        /mode #weechat +t
      devenir invisible sur le serveur :
        /mode nick +i

- `motd`: obtenir le message du jour

    /motd  [<cible>]

    cible : nom du serveur

- `msg`: envoyer un message à un pseudo ou canal

    /msg  [-server <serveur>] <cible>[,<cible>...] <texte>

    serveur : envoyer à ce serveur (nom interne)
      cible : pseudo ou canal (peut-être un masque, '*' = canal courant)
      texte : texte à envoyer

- `names`: lister les pseudos sur des canaux

    /names  [<canal>[,<canal>...]]

    canal : nom du canal

- `nick`: changer le pseudo courant

    /nick  [-all] <pseudo>

      -all : définir le nouveau pseudo sur tous les serveurs connectés
    pseudo : nouveau pseudo

- `notice`: envoyer un message notice à un utilisateur

    /notice  [-server <serveur>] <cible> <texte>

    serveur : envoyer à ce serveur (nom interne)
      cible : pseudo ou nom de canal
      texte : texte à envoyer

- `notify`: ajouter une notification de présence ou de statut d’absence pour des pseudos sur les serveurs

    /notify  add <pseudo> [<serveur> [-away]]
             del <pseudo>|-all [<serveur>]

        add : ajouter une notification
     pseudo : pseudo
    serveur : nom interne du serveur (par défaut le serveur courant)
      -away : notifier quand le message d'absence est changé (en faisant un whois sur le pseudo)
        del : supprimer une notification
       -all : supprimer toutes les notifications

    Sans paramètre, cette commande affiche les notifications pour le serveur courant (ou tous les serveurs si la commande est exécutée sur le tampon "core").

    Exemples :
      notifier quand "toto" rejoint/quitte le serveur courant :
        /notify add toto
      notifier quand "toto" rejoint/quitte le serveur libera :
        /notify add toto libera
      notifier quand "toto" est absent ou de retour sur le serveur libera :
        /notify add toto libera -away

- `op`: donner le statut d’opérateur à un/des pseudo(s)

    /op  <pseudo> [<pseudo>...]
         * -yes

    pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
         * : donner le statut d'opérateur à tout le monde sur le canal

- `oper`: obtenir le statut d’opérateur

    /oper  <utilisateur> <mot_de_passe>

     utilisateur : utilisateur
    mot_de_passe : mot de passe

- `part`: quitter un canal

    /part  [<canal>[,<canal>...]] [message]

      canal : canal à quitter
    message : message de fin (affiché aux autres utilisateurs)

- `ping`: envoyer un ping au serveur

    /ping  <cible1> [<cible2>]

    cible1 : serveur
    cible2 : faire suivre le ping à ce serveur

- `pong`: répondre à un message ping

    /pong  <démon> [<démon2>]

     démon : démon qui a répondu au message Ping
    démon2 : faire suivre le message à ce démon

- `query`: envoyer un message privé à un pseudo

    /query  [-noswitch] [-server <serveur>] <pseudo>[,<pseudo>...] [<texte>]

    -noswitch : ne pas basculer sur le nouveau tampon
      serveur : envoyer à ce serveur (nom interne)
       pseudo : pseudo
        texte : texte à envoyer

- `quiet`: faire taire des pseudos ou hôtes

    /quiet  [<canal>] [<pseudo> [<pseudo>...]]

     canal : nom du canal
    pseudo : pseudo ou hôte

    Sans paramètre, cette commande affiche la liste des "quiet" pour le canal courant.

- `quote`: envoyer des données brutes au serveur sans analyse

    /quote  [-server <serveur>] <données>

    serveur : envoyer à ce serveur (nom interne)
    données : données brutes à envoyer

- `reconnect`: se reconnecter à un/plusieurs serveur(s)

    /reconnect  <serveur> [<serveur>...] [-nojoin] [-switch]
                -all [-nojoin] [-switch]

    serveur : serveur pour se reconnecter (nom interne)
       -all : se reconnecter à tous les serveurs
    -nojoin : ne rejoindre aucun canal (même si l'autojoin est activé pour le serveur)
    -switch : basculer vers l'adresse suivante du serveur

- `rehash`: demander au serveur de recharger son fichier de configuration

    /rehash  [<option>]

    option : option supplémentaire, pour certains serveurs

- `remove`: forcer un utilisateur à quitter un canal

    /remove  [<canal>] <pseudo> [<raison>]

     canal : nom du canal
    pseudo : pseudo
    raison : raison (les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs)

- `restart`: demander au serveur de redémarrer

    /restart  [<cible>]

    cible : nom du serveur

- `rules`: demander les règles du serveur

- `sajoin`: forcer un utilisateur à rejoindre un ou plusieurs canaux

    /sajoin  <pseudo> <canal>[,<canal>...]

    pseudo : pseudo
     canal : canal

- `samode`: changer le mode du canal, sans avoir le statut d’opérateur

    /samode  [<canal>] <mode>

    canal : nom du canal
     mode : mode pour le canal

- `sanick`: forcer un utilisateur à utiliser un autre pseudo

    /sanick  <pseudo> <nouveau_pseudo>

            pseudo : pseudo
    nouveau_pseudo : nouveau pseudo

- `sapart`: forcer un utilisateur à quitter un ou plusieurs canaux

    /sapart  <pseudo> <canal>[,<canal>...]

    pseudo : pseudo
     canal : canal

- `saquit`: forcer un utilisateur à quitter le serveur avec une raison

    /saquit  <pseudo> <raison>

    pseudo : pseudo
    raison : raison

- `server`: lister, ajouter ou retirer des serveurs IRC

    /server  list|listfull [<nom>]
             add <nom> <nom_machine>[/<port>] [-temp] [-<option>[=<valeur>]] [-no<option>]
             copy|rename <nom> <nouveau_nom>
             reorder <nom> [<nom>...]
             open <nom>|-all [<nom>...]
             del|keep <nom>
             deloutq|jump
             raw [<filtre>]

           list : afficher les serveurs (sans paramètre, cette liste est affichée)
       listfull : afficher les serveurs avec de l'info détaillée pour chaque
            add : ajouter un nouveau serveur
            nom : nom du serveur, pour usage interne et affichage ; ce nom est utilisé pour se connecter au serveur (/connect nom) et pour définir les options du serveur : irc.server.name.xxx
    nom_machine : nom ou adresse IP du serveur avec port en option (défaut : 6697 pour TLS, 6667 sinon), plusieurs adresses peuvent être séparées par une virgule
          -temp : ajouter un serveur temporaire (non sauvé)
         option : définir l'option pour le serveur (pour une option booléenne, la valeur peut être omise)
       nooption : définir l'option booléenne à 'off' (par exemple : -notls)
           copy : dupliquer un serveur
         rename : renommer un serveur
        reorder : réordonner la liste des serveurs
           open : ouvrir le tampon du serveur sans s'y connecter
           keep : garder le serveur dans le fichier de configuration (pour les serveurs temporaires seulement)
            del : supprimer un serveur
        deloutq : supprimer la file d'attente des messages sortants pour tous les serveurs (tous les messages que WeeChat est actuellement en train d'envoyer)
           jump : sauter au tampon du serveur
            raw : ouvrir le tampon avec les données brutes IRC
         filtre : définir un nouveau filtre pour voir seulement les messages correspondants (ce filtre peut aussi être utilisé en entrée du tampon des données brutes) ; les formats autorisés sont :
                    *      afficher tous les messages (pas de filtre)
                    xxx    afficher seulement les messages contenant "xxx"
                    s:xxx  afficher seulement les messages pour le serveur "xxx"
                    f:xxx  afficher seulement les messages avec un drapeau : recv (message reçu), sent (message envoyé), modified (message modifié par un modificateur), redirected (message redirigé)
                    m:xxx  afficher seulement les messages pour la commande IRC "xxx"
                    c:xxx  afficher seulement les messages qui correspondent à la condition évaluée "xxx", en utilisant les variables suivantes : sortie de la fonction irc_message_parse (comme nick, command, channel, text, etc., voir la fonction info_get_hashtable dans la référence API extension pour la liste de toutes les variables), date (format : "yyyy-mm-dd hh:mm:ss"), server, recv, sent, modified, redirected

    Exemples :
      /server listfull
      /server add libera irc.libera.chat
      /server add libera irc.libera.chat/6667 -notls -autoconnect
      /server add chatspike irc.chatspike.net/6667,irc.duckspike.net/6667 -notls
      /server copy libera libera-test
      /server rename libera-test libera2
      /server reorder libera2 libera
      /server del libera
      /server deloutq
      /server raw
      /server raw s:libera
      /server raw c:${recv} && ${command}==PRIVMSG && ${nick}==foo

- `service`: enregistrer un nouveau service

    /service  <pseudo> <réservé> <distribution> <type> <réservé> <info>

    distribution : visibilité du service
            type : réservé pour une utilisation future

- `servlist`: lister les services actuellement connectés au réseau

    /servlist  [<masque> [<type>]]

    masque : lister seulement les services qui correspondent à ce masque
      type : lister seulement les services de ce type

- `setname`: définir le nom réel

    /setname  <nom_réel>

    nom_réel : nouveau nom réel

- `squery`: envoyer un message à un service

    /squery  <service> <texte>

    service : nom du service
      texte : texte à envoyer

- `squit`: déconnecter les liens vers un serveur

    /squit  <cible> <commentaire>

          cible : nom du serveur
    commentaire : commentaire

- `stats`: demander des statistiques sur le serveur

    /stats  [<requête> [<cible>]]

    requête : c/h/i/k/l/m/o/y/u (voir la RFC1459)
      cible : nom du serveur

- `summon`: envoyer aux utilisateurs d’un serveur IRC un message leur demandant de rejoindre IRC

    /summon  <utilisateur> [<cible> [<canal>]]

    utilisateur : nom d'utilisateur
          cible : nom du serveur
          canal : nom du canal

- `time`: demander l’heure locale de serveur

    /time  [<cible>]

    cible : demander l'heure de ce serveur

- `topic`: recevoir/définir le titre du canal

    /topic  [<canal>] [<titre>|-delete]

      canal : nom du canal
      titre : nouveau titre
    -delete : supprimer le titre du canal

- `trace`: trouver le chemin jusqu’à un serveur spécifique

    /trace  [<cible>]

    cible : nom du serveur

- `unban`: supprimer le bannissement sur des pseudos ou hôtes

    /unban  [<canal>] <pseudo>|<nombre> [<pseudo>|<nombre>...]

     canal : nom du canal
    pseudo : pseudo ou hôte
    nombre : numéro de bannissement (comme affiché par la commande /ban)

- `unquiet`: ne plus taire des pseudos ou hôtes

    /unquiet  [<canal>] <pseudo>|<nombre> [<pseudo>|<nombre>...]

     canal : nom du canal
    pseudo : pseudo ou hôte
    nombre : numéro de "quiet" (comme affiché par la commande /quiet)

- `userhost`: retourner une liste d’informations sur des pseudos

    /userhost  <pseudo> [<pseudo>...]

    pseudo : pseudo

- `users`: liste des utilisateurs connectés au serveur

    /users  [<cible>]

    cible : nom du serveur

- `version`: retourner la version du pseudo ou du serveur (courant ou spécifié)

    /version  [<cible>|<pseudo>]

     cible : nom du serveur
    pseudo : pseudo

- `voice`: donner la voix à/aux pseudo(s)

    /voice  <pseudo> [<pseudo>...]
            * -yes

    pseudo : pseudo ou masque (le caractère joker "*" est autorisé)
         * : donner la voix à tout le monde sur le canal

- `wallchops`: envoyer une notice aux opérateurs du canal

    /wallchops  [<canal>] <texte>

    canal : nom du canal
    texte : texte à envoyer

- `wallops`: envoyer un message à tous les utilisateurs connectés qui ont activé le mode utilisateur 'w' pour eux-mêmes

    /wallops  <texte>

    texte : texte à envoyer

- `who`: générer une requête qui retourne une liste d’information

    /who  [<masque> [o]]

    masque : information qui correspond à ce masque uniquement
         o : seuls les opérateurs sont retournés correspondant au masque fourni

- `whois`: demander les informations sur le(s) utilisateur(s)

    /whois  [<cible>] [<pseudo>[,<pseudo>...]]

     cible : nom de serveur
    pseudo : pseudo (peut être un masque)

    Sans paramètre, cette commande effectuera un whois sur :
    - votre propre pseudo si le tampon est un serveur/canal
    - le pseudo distant si le tampon est un privé.

    Si l'option irc.network.whois_double_nick est activée, deux pseudos sont envoyés (si un seul est donné), pour avoir le temps d'inactivité dans la réponse.

- `whowas`: demander de l’information sur un pseudo qui n’existe plus

    /whowas  <pseudo>[,<pseudo>...] [<nombre> [<cible>]]

    pseudo : pseudo
    nombre : nombre de réponses à retourner (recherche complète si nombre négatif)
     cible : la réponse doit correspondre à ce masque

### 8.10. オプション

irc.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set irc.look.*` | 外観
`color` | `/set irc.color.*` | 色
`network` | `/set irc.network.*` | ネットワークオプション
`msgbuffer` | `/set irc.msgbuffer.*` | IRC メッセージのターゲットバッファ (オプションをセクションに追加/削除出来ます)
`ctcp` | `/set irc.ctcp.*` | CTCP 応答 (オプションをセクションに追加/削除出来ます)
`ignore` | `/ignore` | 無視ユーザ
`server_default` | `/set irc.server_default.*` | サーバに対するデフォルト値 (サーバオプションが定義されていない場合に利用されます)
`server` | `/server /set irc.server.*` | サーバ

オプション:

- irc.color.input_nick

  - description: couleur du pseudo dans la barre de saisie

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightcyan`

- irc.color.item_channel_modes

  - description: couleur pour les modes du canal, à côté du nom du canal

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- irc.color.item_lag_counting

  - description: couleur pour l'indicateur de lag, lorsque le décompte est en cours (pong non reçu du serveur, le lag augmente)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- irc.color.item_lag_finished

  - description: couleur pour l'indicateur de lag, lorsque le pong a été reçu du serveur

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- irc.color.item_nick_modes

  - description: couleur pour les modes du pseudo dans l'objet de barre "input_prompt"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- irc.color.item_tls_version_deprecated

  - description: couleur pour les versions obsolètes de TLS dans l'objet de barre "tls_version"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- irc.color.item_tls_version_insecure

  - description: couleur pour les versions non sécurisées de TLS dans l'objet de barre "tls_version"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `red`

- irc.color.item_tls_version_ok

  - description: couleur pour la version de TLS la plus haute dans l'objet de barre "tls_version"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- irc.color.message_account

  - description: couleur pour le texte dans les messages account

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- irc.color.message_chghost

  - description: couleur pour le texte dans les messages "chghost"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- irc.color.message_join

  - description: couleur pour le texte dans les messages join

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- irc.color.message_kick

  - description: couleur pour le texte dans les messages kick/kill

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `red`

- irc.color.message_quit

  - description: couleur pour le texte dans les messages part/quit

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `red`

- irc.color.message_setname

  - description: couleur pour le texte dans les messages "setname"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- irc.color.mirc_remap

  - description: réassigner les couleurs mirc dans les messages en utilisant une table de hachage : les clés sont "fg,bg" sous forme d'entiers entre -1 (non spécifié) et 15, les valeurs sont des noms de couleur WeeChat ou nombres (le format est : "1,-1:couleur1;2,7:couleur2"), exemple : "1,-1:darkgray;1,2:white,blue" pour réassigner le noir en "darkgray" et le noir sur bleu en "white,blue" ; les couleurs WeeChat par défaut pour les codes IRC sont : 0=white, 1=black, 2=blue, 3=green, 4=lightred, 5=red, 6=magenta, 7=brown, 8=yellow, 9=lightgreen, 10=cyan, 11=lightcyan, 12=lightblue, 13=lightmagenta, 14=darkgray, 15=gray

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"1,-1:darkgray"`

- irc.color.nick_prefixes

  - description: couleur pour les préfixes du pseudo en utilisant les caractères de mode (o=op, h=halfop, v=voice, ...), le format est : "o:couleur1;h:couleur2;v:couleur3" (si un mode n'est pas trouvé, WeeChat essaiera avec les modes suivants reçus du serveur ("PREFIX") ; un mode spécial "*" peut être utilisé comme couleur par défaut si aucun mode n'est trouvé dans la liste)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"y:lightred;q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue"`

- irc.color.notice

  - description: couleur pour le texte "Notice" dans les notices

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- irc.color.reason_kick

  - description: couleur pour la raison dans les messages kick/kill

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- irc.color.reason_quit

  - description: couleur pour la raison dans les messages part/quit

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `244`

- irc.color.topic_current

  - description: couleur pour le titre du canal actuel (en rejoignant un canal ou sur /topic)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- irc.color.topic_new

  - description: couleur pour le nouveau titre du canal (lorsque le titre est changé)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `36`

- irc.color.topic_old

  - description: couleur pour l'ancien titre du canal (lorsque le titre est changé)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `244`

- irc.look.buffer_open_before_autojoin

  - description: ouvrir le tampon du canal avant que le JOIN soit reçu du serveur lorsqu'il est automatiquement rejoint (avec l'option du serveur "autojoin")

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.buffer_open_before_join

  - description: ouvrir le tampon du canal avant que le JOIN soit reçu du serveur lorsqu'il est manuellement rejoint (avec la commande /join)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.buffer_switch_autojoin

  - description: basculer automatiquement vers le tampon du canal lorsqu'il est automatiquement rejoint (avec l'option du serveur "autojoin")

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.buffer_switch_join

  - description: basculer automatiquement vers le tampon du canal lorsqu'il est manuellement rejoint (avec la commande /join)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.color_nicks_in_names

  - description: utiliser la couleur du pseudo dans la sortie de /names (ou la liste des pseudos affichée lorsqu'on rejoint un canal)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.color_nicks_in_nicklist

  - description: utiliser la couleur du pseudo dans la liste des pseudos

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.color_nicks_in_server_messages

  - description: utiliser la couleur du pseudo dans les messages du serveur

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.color_pv_nick_like_channel

  - description: utiliser la même couleur de pseudo pour le canal et le privé

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.ctcp_time_format

  - description: format de date/heure utilisé pour la réponse au message CTCP TIME (voir man strftime pour le format de date/heure)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"%a, %d %b %Y %T %z"`

- irc.look.display_account_message

  - description: afficher les messages ACCOUNT reçus quand la capacité account-notify est activée

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_away

  - description: afficher un message pour l'absence/retour (off : ne rien afficher/envoyer, local : afficher en local, channel : envoyer l'action aux canaux)

  - type: entier

  - valeurs: off, local, channel

  - valeur par défaut: `local`

- irc.look.display_ctcp_blocked

  - description: afficher le message CTCP même s'il est bloqué

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_ctcp_reply

  - description: afficher la réponse CTCP envoyée par WeeChat

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_ctcp_unknown

  - description: afficher le message CTCP même si le CTCP est inconnu

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_extended_join

  - description: afficher les informations supplémentaires sur les messages JOIN : nom de compte et nom réel (la capacité extended-join doit être activée)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_host_join

  - description: afficher le nom d'hôte dans les messages join

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_host_join_local

  - description: afficher le nom d'hôte dans les messages join du client local

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_host_notice

  - description: afficher le nom d'hôte dans les messages notice

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_host_quit

  - description: afficher le nom d'hôte dans les messages part/quit

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_join_message

  - description: liste de messages (séparés par des virgules) à afficher après avoir rejoint un canal : 324 = modes du canal, 329 = date de création du canal, 332 = titre, 333 = pseudo/date pour le titre, 353 = noms sur le canal, 366 = décompte des noms

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"329,332,333,366"`

- irc.look.display_old_topic

  - description: afficher l'ancien titre lorsque le titre du canal est changé

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_pv_away_once

  - description: afficher le message d'absence distant une seule fois en privé

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_pv_back

  - description: afficher un message en privé lorsque l'utilisateur est de retour (après avoir quitté le serveur)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_pv_nick_change

  - description: afficher le changement de pseudo en privé

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.display_pv_warning_address

  - description: afficher un avertissement dans le tampon privé si l'adresse du pseudo distant a changé ; cette option est désactivée par défaut car les serveurs comme bitlbee causent un affichage de cet avertissement à tort (l'adresse du pseudo distant change plusieurs fois à la connexion)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.highlight_channel

  - description: liste de mots pour le highlight dans les tampons de type "canal", séparés par des virgules (insensible à la casse, utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse ; les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs), ces mots sont ajoutés à la propriété du tampon "highlight_words" seulement lorsque le tampon est créé (cela n'affecte pas les tampons courants), une chaîne vide désactive le highlight par défaut sur le pseudo, exemples : "$nick", "(?-i)$nick"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"$nick"`

- irc.look.highlight_pv

  - description: liste de mots pour le highlight dans les tampons de type "privé", séparés par des virgules (insensible à la casse, utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse ; les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs), ces mots sont ajoutés à la propriété du tampon "highlight_words" seulement lorsque le tampon est créé (cela n'affecte pas les tampons courants), une chaîne vide désactive le highlight par défaut sur le pseudo, exemples : "$nick", "(?-i)$nick"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"$nick"`

- irc.look.highlight_server

  - description: liste de mots pour le highlight dans les tampons de type "serveur", séparés par des virgules (insensible à la casse, utilisez "(?-i)" au début des mots pour les rendre sensibles à la casse ; les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs), ces mots sont ajoutés à la propriété du tampon "highlight_words" seulement lorsque le tampon est créé (cela n'affecte pas les tampons courants), une chaîne vide désactive le highlight par défaut sur le pseudo, exemples : "$nick", "(?-i)$nick"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"$nick"`

- irc.look.highlight_tags_restrict

  - description: restreindre les highlights à ces étiquettes sur les tampons irc (pour avoir un highlight seulement sur les messages utilisateur et pas les messages du serveur) ; les étiquettes doivent être séparées par des virgules et "+" peut être utilisé pour faire un "et" logique entre étiquettes ; le caractère joker "*" est autorisé dans les étiquettes ; une valeur vide autorise le highlight sur n'importe quelle étiquette

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"irc_privmsg,irc_notice"`

- irc.look.item_channel_modes_hide_args

  - description: cacher les paramètres des modes du canal si au moins un de ces modes est dans les modes du canal ("*" pour toujours cacher les paramètres, valeur vide pour ne jamais cacher les paramètres) ; exemple : "kf" pour cacher les paramètres si "k" ou "f" sont dans les modes du canal

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"k"`

- irc.look.item_display_server

  - description: nom de l'objet de barre où est affiché le serveur IRC (pour la barre de statut)

  - type: entier

  - valeurs: buffer_plugin, buffer_name

  - valeur par défaut: `buffer_plugin`

- irc.look.item_nick_modes

  - description: afficher les modes du pseudo dans l'objet de barre "input_prompt"

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.item_nick_prefix

  - description: afficher le préfixe du pseudo dans l'objet de barre "input_prompt"

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.join_auto_add_chantype

  - description: ajouter automatiquement le type de canal devant le nom du canal sur la commande /join si le nom du canal ne commence pas par un type de canal valide pour le serveur ; par exemple "/join weechat" enverra en fait : "/join #weechat"

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.msgbuffer_fallback

  - description: tampon cible par défaut pour les options msgbuffer quand la cible est "private" et que le tampon privé n'est pas trouvé

  - type: entier

  - valeurs: current, server

  - valeur par défaut: `current`

- irc.look.new_channel_position

  - description: force la position du nouveau canal dans la liste des tampons (none = position par défaut (devrait être le dernier tampon), next = tampon courant + 1, near_server = après le dernier canal/privé du serveur)

  - type: entier

  - valeurs: none, next, near_server

  - valeur par défaut: `none`

- irc.look.new_pv_position

  - description: force la position du nouveau privé dans la liste des tampons (none = position par défaut (devrait être le dernier tampon), next = tampon courant + 1, near_server = après le dernier canal/privé du serveur)

  - type: entier

  - valeurs: none, next, near_server

  - valeur par défaut: `none`

- irc.look.nick_completion_smart

  - description: complétion intelligente pour les pseudos (complète d'abord avec les personnes qui ont parlé récemment) : speakers = tous ceux qui ont parlé (incluant les highlights), speakers_highlights = seulement ceux qui ont parlé avec un highlight

  - type: entier

  - valeurs: off, speakers, speakers_highlights

  - valeur par défaut: `speakers`

- irc.look.nick_mode

  - description: afficher le mode du pseudo (op, voice, ...) avant le pseudo (none = jamais, prefix = dans le préfixe seulement, action = dans les messages d'action seulement, both = préfixe + messages d'actions)

  - type: entier

  - valeurs: none, prefix, action, both

  - valeur par défaut: `prefix`

- irc.look.nick_mode_empty

  - description: afficher un espace si le mode du pseudo est activé mais que le pseudo n'a pas de mode (pas op, voice, ...)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.nicks_hide_password

  - description: liste des pseudos (séparés par des virgules) pour lesquels les mots de passe seront masqués quand un message est envoyé, par exemple pour cacher le mot de passe dans le message affiché par "/msg nickserv identify motdepasse", exemple : "nickserv|nickbot"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"nickserv"`

- irc.look.notice_as_pv

  - description: afficher les notices comme des messages privés (si auto, utilise le tampon privé s'il est trouvé)

  - type: entier

  - valeurs: auto, never, always

  - valeur par défaut: `auto`

- irc.look.notice_welcome_redirect

  - description: rediriger automatiquement les notices de bienvenue sur le canal vers le tampon du canal ; de telles notices ont le pseudo comme cible mais le nom du canal au début du message de notice, par exemple les notices ENTRYMSG envoyées par les services Atheme IRC qui ressemblent à : "[#canal] Bienvenue sur ce canal..."

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.notice_welcome_tags

  - description: liste des étiquettes (séparées par des virgules) utilisées dans la notice de bienvenue redirigée vers un canal, par exemple : "notify_private"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.look.notify_tags_ison

  - description: liste des étiquettes (séparées par des virgules) utilisées dans les messages affichés par notify lorsqu'un pseudo a rejoint ou quitté le serveur (résultat de la commande ison ou monitor), par exemple : "notify_message", "notify_private" ou "notify_highlight"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"notify_message"`

- irc.look.notify_tags_whois

  - description: liste des étiquettes (séparées par des virgules) utilisées dans les messages affichés par notify lorsque le statut d'absence d'un pseudo change (résultat de la commande whois), par exemple : "notify_message", "notify_private" ou "notify_highlight"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"notify_message"`

- irc.look.part_closes_buffer

  - description: fermer le tampon lorsque /part est exécuté sur un canal

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.pv_buffer

  - description: mélanger les tampons privés

  - type: entier

  - valeurs: independent, merge_by_server, merge_all

  - valeur par défaut: `independent`

- irc.look.pv_tags

  - description: liste des étiquettes (séparées par des virgules) utilisées dans les messages privés, par exemple : "notify_message", "notify_private" ou "notify_highlight"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"notify_private"`

- irc.look.raw_messages

  - description: nombre de messages bruts à sauvegarder en mémoire lorsque le tampon des données brutes est fermé (ces messages seront affichés lors de l'ouverture du tampon des données brutes)

  - type: entier

  - valeurs: 0 .. 65535

  - valeur par défaut: `256`

- irc.look.server_buffer

  - description: mélanger les tampons de serveur ; cette option n'a pas d'effet si une disposition est sauvée et qu'elle est en conflit avec cette valeur (voir /help layout)

  - type: entier

  - valeurs: merge_with_core, merge_without_core, independent

  - valeur par défaut: `merge_with_core`

- irc.look.smart_filter

  - description: filtrer les messages join/part/quit/nick pour un pseudo s'il n'a pas parlé pendant quelques minutes sur le canal (vous devez créer un filtre sur l'étiquette "irc_smart_filter", voir /help filter)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.smart_filter_account

  - description: activer le filtre intelligent pour les messages "account"

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.smart_filter_chghost

  - description: activer le filtre intelligent pour les messages "chghost"

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.smart_filter_delay

  - description: délai pour filtrer les messages join/part/quit (en minutes) : si le pseudo n'a pas parlé durant les N dernières minutes, le join/part/quit est filtré

  - type: entier

  - valeurs: 1 .. 10080

  - valeur par défaut: `5`

- irc.look.smart_filter_join

  - description: activer le filtre intelligent pour les messages "join"

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.smart_filter_join_unmask

  - description: délai pour démasquer un message "join" qui a été filtré avec l'étiquette "irc_smart_filter" (en minutes) : si le pseudo a rejoint au maximum il y a N minutes et qu'il a dit quelque chose sur le canal (message, notice ou mise à jour du topic), le "join" est démasqué, tout comme les changements de pseudo après ce "join" (0 = désactiver : ne jamais démasquer un "join")

  - type: entier

  - valeurs: 0 .. 10080

  - valeur par défaut: `30`

- irc.look.smart_filter_mode

  - description: activer le filtre intelligent pour les messages "mode" : "*" pour filtrer tous les modes, "+" pour filtrer tous les modes dans les préfixes du serveur (par exemple "ovh"), "xyz" pour filtrer seulement les modes x/y/z, "-xyz" pour filtrer tous les modes sauf x/y/z ; exemples : "ovh" : filtrer les modes o/v/h, "-bkl" : filtrer tous les modes sauf b/k/l

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""+`

- irc.look.smart_filter_nick

  - description: activer le filtre intelligent pour les messages "nick" (changements de pseudo)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.smart_filter_quit

  - description: activer le filtre intelligent pour les messages "part" et "quit"

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.smart_filter_setname

  - description: activer le filtre intelligent pour les messages "setname"

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.look.temporary_servers

  - description: activer l'ajout automatique des serveurs temporaires avec la commande /connect

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.topic_strip_colors

  - description: supprimer les couleurs dans le titre (utilisé seulement lors de l'affichage du titre du tampon)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.typing_status_nicks

  - description: afficher les pseudos qui écrivent sur le canal dans l'objet de barre "typing" (l'option typing.look.enabled_nicks doit être activée et la capacité "message-tags" doit être activée sur le serveur)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.look.typing_status_self

  - description: envoyer le statut d'écriture de message aux canaux de sorte que les autres utilisateurs voient quand vous écrivez un message (l'option typing.look.enabled_self doit être activée et la capacité "message-tags" doit être activée sur le serveur)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.network.autoreconnect_delay_growing

  - description: facteur de croissance du délai d'auto-reconnexion au serveur (1 = toujours le même délai, 2 = délai*2 pour chaque tentative, etc.)

  - type: entier

  - valeurs: 1 .. 100

  - valeur par défaut: `2`

- irc.network.autoreconnect_delay_max

  - description: délai maximum d'auto-reconnexion au serveur (en secondes, 0 = pas de maximum)

  - type: entier

  - valeurs: 0 .. 604800

  - valeur par défaut: `600`

- irc.network.ban_mask_default

  - description: masque de bannissement par défaut pour les commandes /ban, /unban et /kickban ; les variables $nick, $user, $ident et $host sont remplacées par leurs valeurs (extraites de "nick!user@host") ; $ident est identique à $user si $user ne commence pas par "~", sinon $ident vaut "*" ; ce masque par défaut est utilisé seulement si WeeChat connaît l'hôte pour le pseudo

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"*!$ident@$host"`

- irc.network.colors_receive

  - description: si désactivé, les codes couleurs des messages entrants sont ignorés

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.network.colors_send

  - description: autorise l'utilisateur à envoyer des couleurs avec des codes spéciaux (ctrl-c + un code et une couleur optionnelle : b=gras, cxx=couleur, cxx,yy=couleur+fond, i=italique, o=désactiver couleur/attributs, r=inversé, u=souligné)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.network.lag_check

  - description: intervalle entre deux vérifications du lag (en secondes, 0 = ne jamais vérifier)

  - type: entier

  - valeurs: 0 .. 604800

  - valeur par défaut: `60`

- irc.network.lag_max

  - description: lag maximum (en secondes) : si ce lag est atteint, WeeChat considérera que la réponse du serveur (pong) ne sera jamais reçue et arrêtera de compter le lag (0 = ne jamais abandonner)

  - type: entier

  - valeurs: 0 .. 604800

  - valeur par défaut: `1800`

- irc.network.lag_min_show

  - description: lag minimum à afficher (en millisecondes)

  - type: entier

  - valeurs: 0 .. 86400000

  - valeur par défaut: `500`

- irc.network.lag_reconnect

  - description: se reconnecter au serveur si le lag est supérieur ou égal à cette valeur (en secondes, 0 = ne jamais se reconnecter) ; cette valeur doit être inférieure ou égale à irc.network.lag_max

  - type: entier

  - valeurs: 0 .. 604800

  - valeur par défaut: `300`

- irc.network.lag_refresh_interval

  - description: intervalle entre deux rafraîchissements du lag, lorsque le lag augmente (en secondes)

  - type: entier

  - valeurs: 1 .. 3600

  - valeur par défaut: `1`

- irc.network.notify_check_ison

  - description: intervalle entre deux vérifications de notification avec la commande IRC "ison" (en minutes)

  - type: entier

  - valeurs: 1 .. 10080

  - valeur par défaut: `1`

- irc.network.notify_check_whois

  - description: intervalle entre deux vérifications de notification avec la commande IRC "whois" (en minutes)

  - type: entier

  - valeurs: 1 .. 10080

  - valeur par défaut: `5`

- irc.network.sasl_fail_unavailable

  - description: provoquer un échec d'authentification SASL quand SASL est demandé mais non disponible sur le serveur ; lorsque cette option est activée, elle n'a d'effet que si l'option "sasl_fail" est égale à "reconnect" ou "disconnect" dans le serveur

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.network.send_unknown_commands

  - description: envoie les commandes inconnues au serveur

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.network.whois_double_nick

  - description: doubler le pseudo dans la commande /whois (si un seul pseudo est donné), pour avoir le temps d'inactivité dans la réponse ; par exemple : "/whois pseudo" enverra "whois pseudo pseudo"

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.server_default.addresses

  - description: liste de nom/port ou IP/port pour le serveur (séparés par des virgules) (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.anti_flood_prio_high

  - description: anti-flood pour la file d'attente haute priorité : nombre de secondes entre deux messages utilisateur ou commandes envoyés au serveur IRC (0 = pas d'anti-flood)

  - type: entier

  - valeurs: 0 .. 60

  - valeur par défaut: `2`

- irc.server_default.anti_flood_prio_low

  - description: anti-flood pour la file d'attente basse priorité : nombre de secondes entre deux messages envoyés au serveur IRC (messages comme les réponses automatiques aux CTCP) (0 = pas d'anti-flood)

  - type: entier

  - valeurs: 0 .. 60

  - valeur par défaut: `2`

- irc.server_default.autoconnect

  - description: connexion automatique au serveur quand WeeChat démarre

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.server_default.autojoin

  - description: liste des canaux (séparés par des virgules) à rejoindre après la connexion au serveur (et après exécution de la commande + délai s'ils sont définis) ; les canaux nécessitant une clé doivent être en début de liste, et toutes les clés doivent être données après les canaux (séparées par un espace) (exemple : "#canal1,#canal2,#canal3 clé1,clé2" où #canal1 et #canal2 sont protégés par clé1 et clé2) (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.autojoin_dynamic

  - description: définir automatiquement l'option "autojoin" selon les canaux que vous rejoignez ou quittez manuellement avec les commandes /join et /part

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.server_default.autoreconnect

  - description: reconnexion automatique au serveur après une déconnexion

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.server_default.autoreconnect_delay

  - description: délai (en secondes) avant de tenter une reconnexion au serveur

  - type: entier

  - valeurs: 1 .. 65535

  - valeur par défaut: `10`

- irc.server_default.autorejoin

  - description: rejoindre automatiquement les canaux après un "kick" ; vous pouvez définir une variable locale de tampon sur un canal pour remplacer cette valeur (nom de la variable : "autorejoin", valeur : "on" ou "off")

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- irc.server_default.autorejoin_delay

  - description: délai (en secondes) avant de rejoindre automatiquement (après un "kick")

  - type: entier

  - valeurs: 0 .. 86400

  - valeur par défaut: `30`

- irc.server_default.away_check

  - description: intervalle entre deux vérifications des absences (en minutes, 0 = ne jamais vérifier)

  - type: entier

  - valeurs: 0 .. 10080

  - valeur par défaut: `0`

- irc.server_default.away_check_max_nicks

  - description: ne pas vérifier les pseudos absents lorsqu'il y a un nombre important de pseudos (0 = pas de limite)

  - type: entier

  - valeurs: 0 .. 1000000

  - valeur par défaut: `25`

- irc.server_default.capabilities

  - description: liste séparée par des virgules de capacités client ("client capabilities") à activer sur le serveur si elles sont disponibles (voir /help cap pour la liste des capacités supportées par WeeChat) ; "*" active toutes les capacités par défaut (supportées par le serveur et WeeChat) ; le caractère joker "*" est autorisé ; une capacité commençant par "!" est exclue (exemple : "*,!account-*,!extended-join")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"*"`

- irc.server_default.charset_message

  - description: partie du message IRC (reçu ou envoyé) qui est décodé/encode vers le jeu de caractères cible ; message = le message IRC entier (par défaut), channel = à partir du nom du canal seulement (si trouvé, sinon à partir du texte), text = à partir du texte seulement (vous devriez essayer cette valeur si vous avec des problèmes d'encodage avec le nom du canal)

  - type: entier

  - valeurs: message, channel, text

  - valeur par défaut: `message`

- irc.server_default.command

  - description: commande(s) à exécuter après la connexion au serveur et avant le "join" automatique des canaux (plusieurs commandes peuvent être séparées par ";", utilisez "\;" pour un point-virgule, les variables spéciales $nick, $channel et $server sont remplacées par leurs valeurs) (note : les commandes sont évaluées, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.command_delay

  - description: délai (en secondes) après exécution de la commande et avant le "join" automatique des canaux (exemple : donner du temps pour l'authentification avant de rejoindre les canaux)

  - type: entier

  - valeurs: 0 .. 3600

  - valeur par défaut: `0`

- irc.server_default.connection_timeout

  - description: délai d'attente (en secondes) entre la connexion TCP au serveur et la réception du message 001, si ce délai est atteint avant que le message 001 soit reçu, WeeChat se déconnectera du serveur

  - type: entier

  - valeurs: 1 .. 3600

  - valeur par défaut: `60`

- irc.server_default.default_chantypes

  - description: préfixes de types de canaux à utiliser si le serveur ne les envoie pas dans le message 005 (par défaut "#&")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"#&"`

- irc.server_default.ipv6

  - description: utiliser le protocole IPv6 pour la communication avec le serveur (essayer IPv6 puis repli sur l'IPv4) ; si désactivé, seulement l'IPv4 est utilisé

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.server_default.local_hostname

  - description: nom local de machine/IP personnalisé pour le serveur (optionnel, si non renseigné, le nom de machine local est utilisé)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.msg_kick

  - description: message par défaut pour l'éjection utilisé par les commandes "/kick" et "/kickban" (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick} (propre pseudo), ${target} (pseudo cible), ${channel} et ${server} sont remplacées par leur valeurs)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.msg_part

  - description: message par défaut pour le part (en quittant un canal) (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick}, ${channel} et ${server} sont remplacées par leur valeurs ; "%v" est remplacé par la version de WeeChat s'il n'y a pas de ${...} dans la chaîne)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"WeeChat ${info:version}"`

- irc.server_default.msg_quit

  - description: message de fin par défaut (lors de la déconnexion du serveur) (note : le contenu est évalué, voir /help eval ; les variables spéciales ${nick}, ${channel} et ${server} sont remplacées par leurs valeurs ; "%v" est remplacé par la version de WeeChat s'il n'y a pas de ${...} dans la chaîne)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"WeeChat ${info:version}"`

- irc.server_default.nicks

  - description: pseudos à utiliser sur le serveur (séparés par des virgules) (note : le contenu est évalué, voir /help eval ; ${username} est remplacé par l'utilisateur système ("weechat" par défaut s'il n'est pas trouvé), les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${username},${username}2,${username}3,${username}4,${username}5"`

- irc.server_default.nicks_alternate

  - description: obtenir un pseudo alternatif lorsque tous les pseudos déclarés sont déjà utilisés sur le serveur : ajouter des "_" jusqu'à ce que le pseudo ait une longueur de 9, puis remplacer le dernier caractère (ou les deux derniers) par un nombre de 1 à 99, jusqu'à trouver un pseudo non utilisé sur le serveur

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.server_default.notify

  - description: liste de notifications pour le serveur (vous ne devriez pas changer cette option mais utiliser la commande /notify)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.password

  - description: mot de passe pour le serveur (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.proxy

  - description: nom du proxy utilisé pour ce serveur (optionnel, le proxy doit être défini avec la commande /proxy)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.realname

  - description: nom réel pour le serveur (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.registered_mode

  - description: mode qui est défini sur les utilisateurs qui se sont enregistrés (la valeur par défaut est "r")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"r"`

- irc.server_default.sasl_fail

  - description: action à effectuer si l'authentification SASL échoue : "continue" pour ignorer le problème d'authentification, "reconnect" pour planifier une reconnexion au serveur, "disconnect" pour se déconnecter du serveur (voir aussi l'option irc.network.sasl_fail_unavailable)

  - type: entier

  - valeurs: continue, reconnect, disconnect

  - valeur par défaut: `reconnect`

- irc.server_default.sasl_key

  - description: fichier avec la clé privée ECC pour le mécanisme "ecdsa-nist256p-challenge" (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.sasl_mechanism

  - description: mécanisme pour l'authentification SASL : "plain" pour un mot de passe en clair, "scram-sha-1" pour une authentification SCRAM avec algorithme de hachage SHA-1, "scram-sha-256" pour une authentification SCRAM avec algorithme de hachage SHA-256, "scram-sha-512" pour une authentification SCRAM avec algorithme de hachage SHA-512, "ecdsa-nist256p-challenge" pour une authentification par challenge avec clé, "external" pour une authentification en utilisant un certificat TLS côté client

  - type: entier

  - valeurs: plain, scram-sha-1, scram-sha-256, scram-sha-512, ecdsa-nist256p-challenge, external

  - valeur par défaut: `plain`

- irc.server_default.sasl_password

  - description: mot de passe pour l'authentification SASL ; cette option n'est pas utilisée pour les mécanismes "ecdsa-nist256p-challenge" et "external" (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.sasl_timeout

  - description: délai d'attente maximum (en secondes) avant d'abandonner l'authentification SASL

  - type: entier

  - valeurs: 1 .. 3600

  - valeur par défaut: `15`

- irc.server_default.sasl_username

  - description: nom d'utilisateur pour l'authentification SASL ; cette option n'est pas utilisée pour le mécanisme "external" (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.split_msg_max_length

  - description: découper les messages IRC sortants pour tenir dans ce nombre de caractères ; la valeur par défaut est 512, c'est une valeur sûre et recommandée ; la valeur 0 désactive le découpage (non recommandé, sauf si vous êtes sûr de ce que vous faites) ; les valeurs autorisées sont 0 ou tout entier compris entre 128 et 4096 ; cette option devrait être changée seulement sur les serveurs IRC non standards, par exemple sur les passerelles comme bitlbee

  - type: entier

  - valeurs: 0 .. 4096

  - valeur par défaut: `512`

- irc.server_default.tls

  - description: utiliser TLS pour la communication avec le serveur

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.server_default.tls_cert

  - description: fichier de certificat TLS utilisé pour identifier automatiquement votre pseudo (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.tls_dhkey_size

  - description: taille de clé utilisée pour l'échange de clé Diffie-Hellman

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `2048`

- irc.server_default.tls_fingerprint

  - description: empreinte du certificat qui est de confiance et accepté pour le serveur ; seuls les chiffres hexadécimaux sont autorisés (0-9, a-f) : 128 caractères pour SHA-512, 64 caractères pour SHA-256, 40 caractères pour SHA-1 (non sûr, non recommandé) ; plusieurs empreintes peuvent être séparées par des virgules ; si cette option est définie, les autres vérifications sur les certificats ne sont PAS effectuées (option "tls_verify") (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.tls_password

  - description: mot de passe pour la clé privée du certificat TLS ; utilisé seulement avec gnutls >= 3.1.0 (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.tls_priorities

  - description: chaîne avec les priorités pour gnutls (pour la syntaxe, voir la documentation de la fonction gnutls_priority_init du manuel gnutls, les chaînes courantes sont : "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"NORMAL:-VERS-SSL3.0"`

- irc.server_default.tls_verify

  - description: vérifier que la connexion TLS est entièrement de confiance

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- irc.server_default.usermode

  - description: mode(s) utilisateur à définir après la connexion au serveur et avant d'exécuter la commande et de rejoindre automatiquement les canaux ; exemples : "+R" (pour définir le mode "R"), "+R-i" (pour définir le mode "R" et supprimer "i") ; voir /help mode pour la syntaxe complète du mode (note : le contenu est évalué, voir /help eval ; les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- irc.server_default.username

  - description: nom d'utilisateur pour le serveur (note : le contenu est évalué, voir /help eval ; ${username} est remplacé par l'utilisateur système ("weechat" par défaut s'il n'est pas trouvé), les options de serveur sont évaluées avec ${irc_server.xxx} et ${server} est remplacé par le nom du serveur)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${username}"`

## 9. Xfer

Xfer プラグインの機能:

- ダイレクトチャット (サーバ不要の 2 ホスト間直接接続): 例えば IRC プラグイン経由の "DCC チャット"

- ファイル転送、例えば IRC プラグイン経由の "DCC"

### 9.1. コマンド

- `me`: envoyer une action CTCP à l’hôte distant

    /me  <message>

    message : message à envoyer

- `xfer`: contrôle xfer

    /xfer  [list|listfull]

        list : lister les xfer
    listfull : lister les xfer (verbeux)

    Sans paramètre, cette commande ouvre le tampon avec la liste des xfer.

### 9.2. オプション

xfer.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set xfer.look.*` | 外観
`color` | `/set xfer.color.*` | 色
`network` | `/set xfer.network.*` | ネットワークオプション
`file` | `/set xfer.file.*` | ファイルの送信/受信に関するオプション

オプション:

- xfer.color.status_aborted

  - description: couleur du texte pour le statut "interrompu"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightred`

- xfer.color.status_active

  - description: couleur du texte pour le statut "actif"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightblue`

- xfer.color.status_connecting

  - description: couleur du texte pour le statut "connexion"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- xfer.color.status_done

  - description: couleur du texte pour le statut "terminé"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightgreen`

- xfer.color.status_failed

  - description: couleur du texte pour le statut "échoué"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightred`

- xfer.color.status_waiting

  - description: couleur du texte pour le statut "en attente"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightcyan`

- xfer.color.text

  - description: couleur du texte dans le tampon xfer

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- xfer.color.text_bg

  - description: couleur du fond dans le tampon xfer

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- xfer.color.text_selected

  - description: couleur du texte pour la ligne sélectionnée dans le tampon xfer

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- xfer.file.auto_accept_chats

  - description: accepte automatiquement les demandes de discussion (à utiliser avec précaution !)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- xfer.file.auto_accept_files

  - description: accepte automatiquement les demandes d'envoi de fichiers (à utiliser avec précaution !)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- xfer.file.auto_accept_nicks

  - description: liste de pseudos (séparés par des virgules) pour lesquels les demandes d'envoi de fichiers et de discussion sont automatiquement acceptées ; le format est "serveur.pseudo" (pour un serveur spécifique) ou "pseudo" (pour tous les serveurs) ; exemple : "libera.FlashCode,andrew"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- xfer.file.auto_check_crc32

  - description: vérifier automatiquement la somme de contrôle CRC32 du fichier si elle est trouvée dans le nom de fichier (8 caractères hexadécimaux)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- xfer.file.auto_rename

  - description: renommer les fichiers reçus s'ils existent déjà (ajoute ".1", ".2", ...)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- xfer.file.auto_resume

  - description: continuer automatiquement les transferts de fichiers si la connexion avec l'hôte a été perdue

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- xfer.file.convert_spaces

  - description: convertir les espaces en underscores lors de l'envoi et la réception de fichiers

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- xfer.file.download_path

  - description: chemin où écrire les fichiers reçus (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${weechat_data_dir}/xfer"`

- xfer.file.download_temporary_suffix

  - description: suffixe de fichier temporaire utilisé pendant le transfert pour un fichier reçu, il est supprimé après un transfert réussi ; si chaîne vide, aucun suffixe de fichier n'est utilisé pendant le transfert

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `".part"`

- xfer.file.upload_path

  - description: chemin où lire les fichiers à envoyer (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"~"`

- xfer.file.use_nick_in_filename

  - description: utiliser le pseudo distant comme préfixe dans le nom de fichier local lors de la réception d'un fichier

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- xfer.look.auto_open_buffer

  - description: ouvrir automatiquement le tampon xfer lorsqu'un nouveau xfer est ajouté à la liste

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- xfer.look.progress_bar_size

  - description: taille de la barre de progression, en caractères (si 0, la barre de progression est désactivée)

  - type: entier

  - valeurs: 0 .. 256

  - valeur par défaut: `20`

- xfer.look.pv_tags

  - description: liste des étiquettes (séparées par des virgules) utilisées dans les messages privés, par exemple : "notify_message", "notify_private" ou "notify_highlight"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"notify_private"`

- xfer.network.blocksize

  - description: taille de bloc pour les paquets envoyés, en octets

  - type: entier

  - valeurs: 1024 .. 102400

  - valeur par défaut: `65536`

- xfer.network.fast_send

  - description: n'attend pas les accusés de réception lors de l'envoi de fichier

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- xfer.network.own_ip

  - description: adresse IP ou DNS utilisée pour envoyer les fichiers/discussions (si non renseigné, l'interface IP locale est utilisée)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- xfer.network.port_range

  - description: restreint les fichiers/discussions sortants à utiliser des ports dans l'intervalle donné (pratique pour le NAT) (syntaxe : un port simple, par exemple 5000, un intervalle de ports, par exemple 5000-5015, si non renseigné tout port peut être utilisé, il est recommandé d'utiliser des ports supérieurs à 1024, car seul root peut utiliser les ports en dessous de 1024)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- xfer.network.send_ack

  - description: envoyer des acks lors de la réception de fichiers ; si désactivé, le transfert peut échouer si l'envoyeur attend des acks (par exemple un WeeChat qui envoie le fichier avec l'option xfer.network.fast_send à off) ; d'un autre côté, désactiver l'envoi des acks peut éviter un gel si les acks ne sont pas envoyés immédiatement à l'envoyeur

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- xfer.network.speed_limit_recv

  - description: limitation de vitesse pour la réception de fichiers, en kilo-octets par seconde (0 signifie pas de limite)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `0`

- xfer.network.speed_limit_send

  - description: limitation de vitesse pour l'envoi des fichiers, en kilo-octets par seconde (0 signifie pas de limite)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `0`

- xfer.network.timeout

  - description: délai d'attente pour la requête xfer (en secondes)

  - type: entier

  - valeurs: 5 .. 2147483647

  - valeur par défaut: `300`

## 10. Typing notifications

The typing plugin is used to inform other users you are typing messages and show a list of users currently typing a message on the buffer.

It is used by IRC plugin on channel and private buffers, when the "message-tags" capability is enabled (you can check with /cap command).
Under the hood, typing client tag is used, following this specification ↗.

### 10.1. Activation

For privacy considerations, the typing feature is disabled by default.
If you want to use it, you must enable options in both typing and irc plugins:

    /set typing.look.enabled_nicks on
    /set typing.look.enabled_self on
    /set irc.look.typing_status_nicks on
    /set irc.look.typing_status_self on

The typing notifications are displayed at the end of the status bar.

Example of status bar with the "typing" item: "bob" is typing a message and "alice" was typing a message but made a pause:

    │[12:55] [6] [irc/libera] 3:#test(+n){4} [Typing: bob, (alice)]                   │
    │[@Flashy] █                                                                      │
    └─────────────────────────────────────────────────────────────────────────────────┘

### 10.2. Signals sent

When you are typing a message (not a command starting with `/`), the typing plugin sends signals to inform other plugins (like IRC) that you are typing, and these plugins can then send typing notifications to other users.

The following signals are sent when you are typing messages:

Signal | Arguments | Description
--- | --- | ---
typing_self_typing | Pointer: buffer. | You are typing a message.
typing_self_paused | Pointer: buffer. | You made a pause while typing a message.
typing_self_cleared | Pointer: buffer. | You cleared the command line without sending the message.
typing_self_sent | Pointer: buffer. | You sent the message to the buffer.

### 10.3. Signals caught

The typing plugin is catching some signals that can be sent by other plugins (like IRC), to update internal hashtables used to store the typing state of nicks on buffers. These hashtables are used to build the content of "typing" bar item.

The following signals are caught by the typing plugin:

Signal | Arguments | Description
--- | --- | ---
typing_set_nick | String: buffer pointer + ";" + state (one of: "off", "typing", "paused", "cleared") + ";" + nick. Example: "0x1234abcd;typing;alice". | Set typing state for a nick on a buffer.
typing_reset_buffer | Pointer: buffer. | Remove typing state for all nicks on a buffer.

### 10.4. オプション

typing.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set typing.look.*` | 外観

オプション:

- typing.look.delay_purge_paused

  - description: nombre de secondes après que le statut "paused" ait été défini : si atteint, le statut d'écriture est supprimé

  - type: entier

  - valeurs: 1 .. 2147483647

  - valeur par défaut: `30`

- typing.look.delay_purge_typing

  - description: nombre de secondes après que le statut "typing" ait été défini : si atteint, le statut d'écriture est supprimé

  - type: entier

  - valeurs: 1 .. 2147483647

  - valeur par défaut: `6`

- typing.look.delay_set_paused

  - description: nombre de secondes après avoir tapé le dernier caractère : si atteint, le statut d'écriture devient "paused" et il n'y a plus de signaux typing envoyés

  - type: entier

  - valeurs: 1 .. 2147483647

  - valeur par défaut: `10`

- typing.look.enabled_nicks

  - description: activer le statut d'écriture pour les autres pseudos (afficher le statut d'écriture pour les autres pseudos écrivant un message dans le tampon courant)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- typing.look.enabled_self

  - description: activer le statut d'écriture pour ses propres messages (envoyer l'information aux autres utilisateurs)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- typing.look.input_min_chars

  - description: nombre minimum de caractères dans le message pour déclencher l'envoi des signaux typing

  - type: entier

  - valeurs: 1 .. 2147483647

  - valeur par défaut: `4`

- typing.look.item_max_length

  - description: nombre maximum de caractères affichés dans l'objet de barre "typing" (0 = ne pas tronquer le contenu)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `0`

## 11. Relay

Relay プラグインはネットワークを介して異なるプロトコルを用いてデータを中継するために利用します:

- irc: IRC プロキシ: IRC サーバに対する接続を、単一または複数の IRC クライアントで共有するために用います。

- weechat: protocol used by remote interfaces to display and interact with WeeChat, see this page ↗.

### 11.1. パスワード

It is highly recommended to set a password for relay, with these commands:

    secure set relay mypassword
    /set relay.network.password "${sec.data.relay}"

このパスワードは irc と weechat プロトコルで利用されます。

### 11.2. TOTP

weechat プロトコルでは、パスワードに加えて、二要素認証の TOTP (時間ベースのワンタイムパスワード) を使うことが可能です。

これは任意設定項目であり、セキュリティレベルを向上させます。

ワンタイムパスワードは以下のようなアプリケーションを使って生成します:

- FreeOTP: Android ↗, iOS ↗ (website ↗)

- Google Authenticator: Android ↗, iOS ↗

TOTP の secret を WeeChat とワンタイムパスワードを生成するアプリケーション内部に設定しなければいけません。

TOTP の secret は base32 でエンコードされた文字列 (文字および 2 から 7 までの数字) でなければいけません。以下はその例です:

    /secure set relay_totp secretpasswordbase32
    /set relay.network.totp_secret "${sec.data.relay_totp}"

### 11.3. TLS

証明書と秘密鍵を作り、プロトコル名の最初に "tls." を付けることで TLS 経由でリレーを利用することができます。

The default path to certificate/key is defined by option relay.network.tls_cert_key.

以下のコマンドを使って証明書と秘密鍵ファイルを作成します:

    $ mkdir -p ~/.config/weechat/tls
    $ cd ~/.config/weechat/tls
    $ openssl req -nodes -newkey rsa:2048 -keyout relay.pem -x509 -days 365 -out relay.pem

| You must replace `~/.config/weechat` by the path to your WeeChat config directory which can also be for example `~/.weechat`.

WeeChat が既に起動している場合、以下のコマンドで証明書と秘密鍵をリロードできます:

    /relay tlscertkey

### 11.4. IRC プロキシ

Relay プラグインは IRC プロキシとしても使えます: Relay プラグインは IRC サーバのふりをして、他の IRC クライアント (WeeChat 自身も) は WeeChat に接続できます。

IRC サーバごとに異なるポート、もしくは全てのサーバに対して共通のポートを定義することができます。

すべてのサーバに対して共通のポートを定義した場合には、クライアントからサーバの内部名を IRC の "PASS" コマンドに含めて送信するようにしてください、以下の書式を使ってください (see example below):

    PASS server:mypass

例: TLS を使い、全てのサーバに対して共通の IRC プロキシを設定 (サーバはクライアントが選択):

    /relay add tls.irc 8000

例: TLS を使わず、内部名 "libera" のサーバに対して IRC プロキシを設定:

    /relay add irc.libera 8000

任意の IRC クライアントからサーバパスワード "mypass" (全てのサーバに対して共通の IRC プロキシを設定した場合には "libera:mypass") で 8000 番ポートに接続出来ます。

For example if you use WeeChat as IRC client of the relay, with a server called "relay" and the relay password "secret", you can setup the password with these commands:

    /secure set relay_libera libera:secret
    /set irc.server.relay.password "${sec.data.relay_libera}"

### 11.5. WeeChat プロトコル

Relay プラグインは WeeChat プロトコルを使ってリモートインターフェースに対してデータを送信できます。

You can connect with a remote interface, see this page ↗.

| このプロトコルを使った場合 WeeChat から他の WeeChat に接続することはできません。

例:

    /relay add weechat 9000

この後、リモートインターフェースを使って 9000 番ポートに対して、パスワード "mypass" で接続することができます。

### 11.6. WebSocket

Relay プラグインはすべてのプロトコルに対して WebSocket プロトコル (RFC 6455 ↗) をサポートします。

WebSocket ハンドシェイクは自動的に検知され、ハンドシェイク中に必要なヘッダが見つかり origin が許可されていれば WebSocket 用のソケットが準備されます (オプション relay.network.websocket_allowed_origins を参照)。

HTML5 を使えばたった 1 行の JavaScript で WebSocket をオープンすることが可能です:

    websocket = new WebSocket("ws://server.com:9000/weechat");

ポート番号 (例では 9000 番) は Relay プラグインで定義したものです。URI の最後には必ず "/weechat" をつけます (irc と weechat プロトコルの場合)。

### 11.7. UNIX ドメインソケット

`/relay add` コマンドにプロトコルオプション "unix" をつけることで、指定したパスで動作する UNIX ドメインソケット上の任意のプロトコルをリッスンできます。例:

    /relay add unix.weechat ${weechat_runtime_dir}/relay_socket

こうすることで、クライアントは weechat プロトコルを使って /run/user/1000/weechat/relay_socket に接続できます。これは、他のポートをオープンが禁止されている状況下で、リレークライアントの SSH 転送を許可する際に特に便利です。

OpenSSH を使った例:

    $ ssh -L 9000:.weechat/relay_socket user@hostname

これでポート 9000 番に接続してきたローカルのリレークライアントは "hostname" 上で動作中の WeeChat インスタンスへ転送されます。

### 11.8. コマンド

- `relay`: contrôle du relai

    /relay  list|listfull|listrelay
            add <nom> <port>|<chemin>
            del|start|restart|stop <nom>
            raw
            tlscertkey

          list : lister les clients pour le relai
      listfull : lister les clients pour le relai (verbeux)
     listrelay : lister les relais (nom et port)
           add : ajouter un relai (écouter sur un port)
           del : supprimer un relai (les clients restent connectés)
         start : écouter sur le port
       restart : fermer le socket serveur et écouter à nouveau sur le port (les clients restent connectés)
          stop : fermer le socket serveur (les clients restent connectés)
           nom : nom du relai (voir le format ci-dessous)
          port : port utilisé pour le relai
        chemin : chemin utilisé pour le relai (pour un socket de domaine UNIX seulement) ; le chemin est évalué (voir la fonction string_eval_path_home dans la référence API extension)
           raw : ouvrir le tampon avec les données brutes Relay
    tlscertkey : définir le certificat/clé TLS en utilisant le chemin de l'option relay.network.tls_cert_key

    Le nom du relai est : [ipv4.][ipv6.][tls.]<protocole.nom> ou unix[.tls].<protocole.nom>
             ipv4 : forcer l'utilisation d'IPv4
             ipv6 : forcer l'utilisation d'IPv6
              tls : activer TLS
             unix : utiliser un socket de domaine UNIX
    protocole.nom : protocole et nom à relayer :
                      - protocole "irc" : le nom est le serveur à partager (optionnel, si non donné, le nom de serveur doit être envoyé par le client dans la commande "PASS", avec le format : "PASS serveur:motdepasse")
                      - protocole "weechat" (le nom n'est pas utilisé)

    Le protocole "irc" permet à n'importe quel client IRC (incluant WeeChat lui-même) de se connecter sur le port.
    Le protocole "weechat" permet à une interface distante de se connecter sur le port, voir la liste ici : https://weechat.org/about/interfaces/

    Sans paramètre, cette commande ouvre le tampon avec la liste des clients pour le relai.

    Exemples :
      proxy irc, pour le serveur "libera" :
        /relay add irc.libera 8000
      proxy irc, pour le serveur "libera", avec TLS :
        /relay add tls.irc.libera 8001
      proxy irc, pour tous les serveurs (le client choisira), avec TLS :
        /relay add tls.irc 8002
      protocole weechat :
        /relay add weechat 9000
      protocole weechat avec TLS :
        /relay add tls.weechat 9001
      protocole weechat avec TLS, en utilisant seulement IPv4 :
        /relay add ipv4.tls.weechat 9001
      protocole weechat avec TLS, en utilisant seulement IPv6 :
        /relay add ipv6.tls.weechat 9001
      protocole weechat avec TLS, en utilisant IPv4 + IPv6 :
        /relay add ipv4.ipv6.tls.weechat 9001
      protocole weechat avec un socket de domaine UNIX :
        /relay add unix.weechat ${weechat_runtime_dir}/relay_socket

### 11.9. オプション

relay.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set relay.look.*` | 外観
`color` | `/set relay.color.*` | 色
`network` | `/set relay.network.*` | ネットワークオプション
`irc` | `/set relay.irc.*` | 特定の irc プロトコルのオプション (irc プロキシ)
`port` | `/relay add /set relay.port.*` | リレーに使うポート(irc や weechat プロトコル) (オプションをセクションに追加/削除出来ます)

オプション:

- relay.color.client

  - description: couleur du texte pour la description du client

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- relay.color.status_active

  - description: couleur du texte pour le statut "connecté"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `green`

- relay.color.status_auth_failed

  - description: couleur du texte pour le statut "échec auth"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightmagenta`

- relay.color.status_connecting

  - description: couleur du texte pour le statut "connexion"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- relay.color.status_disconnected

  - description: couleur du texte pour le statut "déconnecté"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightred`

- relay.color.status_waiting_auth

  - description: couleur du texte pour le statut "attente auth"

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- relay.color.text

  - description: couleur du texte dans le tampon relay

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- relay.color.text_bg

  - description: couleur du fond dans le tampon relay

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- relay.color.text_selected

  - description: couleur du texte pour la ligne sélectionnée dans le tampon relay

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- relay.irc.backlog_max_minutes

  - description: nombre maximum de minutes dans l'historique par canal IRC (0 = sans limite, exemples : 1440 = une journée, 10080 = une semaine, 43200 = un mois, 525600 = une année)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `0`

- relay.irc.backlog_max_number

  - description: nombre maximum de lignes dans l'historique par canal IRC (0 = sans limite)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `1024`

- relay.irc.backlog_since_last_disconnect

  - description: afficher l'historique en démarrant depuis la dernière déconnexion du client

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- relay.irc.backlog_since_last_message

  - description: afficher l'historique en démarrant depuis votre dernier message envoyé

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- relay.irc.backlog_tags

  - description: liste d'étiquettes de messages (séparées par des virgules) qui sont affichés dans l'historique par canal IRC (étiquettes supportées : "irc_join", "irc_part", "irc_quit", "irc_nick", "irc_privmsg"), "*" = toutes les étiquettes supportées

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"irc_privmsg"`

- relay.irc.backlog_time_format

  - description: format pour l'heure dans les messages d'historique (voir man strftime pour le format) (non utilisé si la capacité de serveur "server-time" a été activée par le client, car l'heure est envoyée sous forme d'étiquette irc) ; chaîne vide = désactiver l'heure dans les messages d'historique

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"[%H:%M] "`

- relay.look.auto_open_buffer

  - description: ouvrir automatiquement le tampon des clients pour le relai lorsqu'un nouveau client est ajouté à la liste

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- relay.look.raw_messages

  - description: nombre de messages bruts à sauvegarder en mémoire lorsque le tampon des données brutes est fermé (ces messages seront affichés lors de l'ouverture du tampon des données brutes)

  - type: entier

  - valeurs: 0 .. 65535

  - valeur par défaut: `256`

- relay.network.allow_empty_password

  - description: autoriser un mot de passe vide dans relay (devrait être activé seulement pour des tests ou sur le réseau local)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- relay.network.allowed_ips

  - description: expression régulière POSIX étendue avec les IPs autorisées pour le relai (insensible à la casse, utilisez "(?-i)" en début de chaîne pour la rendre insensible à la casse), exemple : "^(123\.45\.67\.89|192\.160\..*)$"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- relay.network.auth_timeout

  - description: temps maximum (en secondes) pour l'authentification du client ; la connexion est fermée si le client n'est toujours pas authentifié après ce délai et le statut est positionné à "échec d'authentification" (0 = attendre sans fin)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `60`

- relay.network.bind_address

  - description: adresse pour le bind (si vide, la connexion est possible sur toutes les interfaces, utiliser "127.0.0.1" pour autoriser les connections depuis la machine locale seulement avec IPv4 et "::ffff:127.0.0.1" avec IPv6)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- relay.network.clients_purge_delay

  - description: délai pour purger les clients déconnectés (en minutes, 0 = purger les clients immédiatement, -1 = ne jamais purger)

  - type: entier

  - valeurs: -1 .. 43200

  - valeur par défaut: `0`

- relay.network.compression

  - description: compression des messages envoyés aux clients avec le protocole "weechat" : 0 = désactiver la compression, 1 = faible compression / rapide ... 100 = meilleure compression / lent ; la valeur est un pourcentage converti de 1 à 9 pour zlib et de 1 à 19 pour zstd ; la valeur par défaut est recommandée, elle offre un bon compromis compression/vitesse

  - type: entier

  - valeurs: 0 .. 100

  - valeur par défaut: `20`

- relay.network.ipv6

  - description: écouter en IPv6 sur le socket par défaut (en plus de l'IPv4 qui est par défaut) ; les protocoles IPv4 et IPv6 peuvent être forcés (individuellement ou ensemble) dans le nom du protocole (voir /help relay)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- relay.network.max_clients

  - description: nombre maximum de clients qui se connectent sur un port (0 = pas de limite)

  - type: entier

  - valeurs: 0 .. 2147483647

  - valeur par défaut: `5`

- relay.network.nonce_size

  - description: taille du nonce (en octets), généré lorsqu'un client se connecte ; le client doit utiliser ce nonce, concaténé au nonce client et au mot de passe pour hacher le mot de passe dans la commande "init" du protocole weechat

  - type: entier

  - valeurs: 8 .. 128

  - valeur par défaut: `16`

- relay.network.password

  - description: mot de passe requis par les clients pour accéder à ce relai (une valeur vide indique que le mot de passe n'est pas nécessaire, voir l'option relay.network.allow_empty_password) (note : le contenu est évalué, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- relay.network.password_hash_algo

  - description: liste des algorithmes de hachage pour l'authentification par mot de passe dans le protocole relay, parmi ces valeurs : "plain" (mot de passe en clair, non haché), "sha256", "sha512", "pbkdf2+sha256", "pbkdf2+sha512" ; "*" signifie tous les algorithmes, un nom commençant par "!" est une valeur négative pour empêcher un algorithme d'être utilisé, le caractère joker "*" est autorisé dans les noms (exemples : "*", "pbkdf2*", "*,!plain")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"*"`

- relay.network.password_hash_iterations

  - description: nombre d'itérations demandées au client dans le protocole weechat lorsqu'un mot de passe haché avec l'algorithme PBKDF2 est utilisé pour l'authentification ; plus d'itérations est mieux en terme de sécurité mais est plus lent à calculer ; ce nombre ne doit pas être trop élevé si votre micro-processeur est lent

  - type: entier

  - valeurs: 1 .. 1000000

  - valeur par défaut: `100000`

- relay.network.tls_cert_key

  - description: fichier avec le certificat et la clé privée TLS (pour servir les clients avec TLS) (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${weechat_config_dir}/tls/relay.pem"`

- relay.network.tls_priorities

  - description: chaîne avec les priorités pour gnutls (pour la syntaxe, voir la documentation de la fonction gnutls_priority_init du manuel gnutls, les chaînes courantes sont : "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"NORMAL:-VERS-SSL3.0"`

- relay.network.totp_secret

  - description: secret pour la génération du mot de passe à usage unique basé sur le temps (TOTP), encodé en base32 (seulement des lettres et chiffres de 2 à 7) ; il est utilisé comme second facteur d'authentification dans le protocole weechat, en plus du mot de passe, qui ne doit pas être vide (une valeur vide signifie que le TOTP n'est pas requis) (note : le contenu est évalué, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- relay.network.totp_window

  - description: nombre de mots de passe à usage unique basés sur le temps à accepter avant et après le mot de passe courant ; 0 = accepter seulement le mot de passe courant, 1 = accepter un mot de passe avant, le courant et un après; 2 = accepter deux mots de passe avant, le courant et deux après, ... ; un nombre élevé réduit le niveau de sécurité (0 ou 1 sont les valeurs recommandées)

  - type: entier

  - valeurs: 0 .. 256

  - valeur par défaut: `0`

- relay.network.websocket_allowed_origins

  - description: expression régulière POSIX étendue avec les origines autorisées dans les websockets (insensible à la casse, utilisez "(?-i)" en début de chaîne pour la rendre sensible à la casse), exemple : "^https?://(www\.)?example\.(com|org)"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- relay.weechat.commands

  - description: liste des commandes autorisées/interdites lorsque qu'une entrée de données (texte ou commande) est reçue du client (séparées par des virgules) ; "*" signifie toutes les commandes, un nom commençant par "!" est une valeur négative pour empêcher une commande d'être exécutée, le caractère joker "*" est autorisé dans les noms ; cette option devrait être définie si le client relay n'est pas sûr (quelqu'un pourrait l'utiliser pour exécuter des commandes) ; par exemple "*,!exec,!quit" autorise toute commande sauf /exec et /quit

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

## 12. External commands

`/exec` コマンドを使うことで WeeChat 内部から外部コマンドを実行し、その結果を表示したりバッファに送信することが可能になります。

### 12.1. コマンド

- `exec`: exécuter des commandes externes

    /exec  -list
           [-sh|-nosh] [-bg|-nobg] [-stdin|-nostdin] [-buffer <nom>] [-l|-o|-oc|-n|-nf] [-oerr] [-cl|-nocl] [-sw|-nosw] [-ln|-noln] |-flush|-noflush] [-color ansi|auto|irc|weechat|strip] [-rc|-norc] [-timeout <délai>] [-name <nom>] [-pipe <commande>] [-hsignal <nom>] <commande>
           -in <id> <texte>
           -inclose <id> [<texte>]
           -signal <id> <signal>
           -kill <id>
           -killall
           -set <id> <propriété> <valeur>
           -del <id>|-all [<id>...]

        -list : lister les commandes
          -sh : utiliser le shell pour exécuter la commande, plusieurs commandes peuvent être enchaînées avec des pipes (ATTENTION : utilisez cette option SEULEMENT si tous les paramètres sont fiables, voir l'option -nosh)
        -nosh : ne pas utiliser le shell pour exécuter la commande (requis si la commande a des données non fiables, par exemple le contenu d'un message d'un autre utilisateur) (par défaut)
          -bg : lancer le processus en tâche de fond : ne pas afficher la sortie ni le code retour (non compatible avec les options -o/-oc/-n/-nf/-pipe/-hsignal)
        -nobg : capturer la sortie du processus et afficher le code retour (par défaut)
       -stdin : créer un tuyau pour envoyer des données sur l'entrée standard du processus (avec /exec -in/-inclose)
     -nostdin : ne pas créer de tuyau pour l'entrée standard (par défaut)
      -buffer : afficher/envoyer la sortie de la commande sur ce tampon (si le tampon n'est pas trouvé, un nouveau tampon avec le nom "exec.exec.xxx" est créé)
           -l : afficher localement la sortie de la commande sur le tampon (par défaut)
           -o : envoyer la sortie de la commande au tampon sans exécuter les commandes (non compatible avec les options -bg/-pipe/-hsignal)
          -oc : envoyer la sortie de la commande au tampon et exécuter les commandes (lignes commençant par "/" ou un caractère personnalisé de commande) (non compatible avec les options -bg/-pipe/-hsignal)
           -n : afficher la sortie de la commande dans un nouveau tampon (non compatible avec les options -bg/-pipe/-hsignal)
          -nf : afficher la sortie de la commande dans un nouveau tampon avec contenu libre (pas de coupure des mots, pas de limite sur le nombre de lignes) (non compatible avec les options -bg/-pipe/-hsignal)
        -oerr : envoyer aussi stderr (sortie d'erreur) au tampon (peut être utilisé seulement avec les options -o et -oc)
          -cl : effacer le nouveau tampon avant d'afficher la sortie
        -nocl : ajouter au nouveau tampon sans effacer (par défaut)
          -sw : basculer vers le tampon de sortie (par défaut)
        -nosw : ne pas basculer vers le tampon de sortie
          -ln : afficher les numéros de ligne (par défaut dans un nouveau tampon seulement)
        -noln : ne pas afficher les numéros de ligne
       -flush : afficher la sortie de la commande en temps réel (par défaut)
     -noflush : afficher la sortie de la commande une fois qu'elle est terminée
       -color : action sur les couleurs ANSI dans la sortie :
                   ansi : garder les codes ANSI tels quels
                   auto : convertir les couleurs ANSI en couleurs WeeChat/IRC (par défaut)
                    irc : convertir les couleurs ANSI en couleurs IRC
                weechat : convertir les couleurs ANSI en couleurs WeeChat
                  strip : supprimer les couleurs ANSI
          -rc : afficher le code retour (par défaut)
        -norc : ne pas afficher le code retour
     -timeout : définir un délai maximum pour la commande (en secondes)
        -name : définir un nom pour la commande (pour la nommer plus tard avec /exec)
        -pipe : envoyer la sortie vers une commande WeeChat/extension (ligne par ligne) ; s'il y a des espaces dans la commande/paramètres, entourez les de guillemets ; la variable $line est remplacée par la ligne (par défaut la ligne est ajoutée après la commande, séparée par un espace) (non compatible avec les options -bg/-o/-oc/-n/-nf)
     -hsignal : envoyer la sortie sous forme de hsignal (pour être utilisé par exemple dans un trigger) (non compatible avec les options -bg/-o/-oc/-n/-nf)
     commande : la commande à exécuter ; si elle commence par "url:", le shell est désactivé et le contenu de l'URL est téléchargé et envoyé comme sortie
           id : identifiant de commande : soit le numéro ou le nom (si défini avec "-name xxx")
          -in : envoyer le texte sur l'entrée standard du processus
     -inclose : identique à -in, mais l'entrée standard est fermée après (et le texte est facultatif : sans texte, l'entrée standard est juste fermée)
      -signal : envoyer un signal au processus ; le signal peut être un entier ou l'un de ces noms : hup, int, quit, kill, term, usr1, usr2
        -kill : alias de "-signal <id> kill"
     -killall : tuer tous les processus
         -set : définir une propriété du hook (voir la fonction hook_set dans l'API de référence extension)
    propriété : propriété du hook
       valeur : nouvelle valeur pour la propriété du hook
         -del : supprimer la commande terminée
         -all : supprimer toutes les commandes terminées

    Les options par défaut peuvent être définies dans l'option exec.command.default_options.

    Exemples :
      /exec -n ls -l /tmp
      /exec -sh -n ps xu | grep weechat
      /exec -n -norc url:https://pastebin.com/raw.php?i=xxxxxxxx
      /exec -nf -noln links -dump https://weechat.org/files/doc/weechat/devel/weechat_user.en.html
      /exec -o uptime
      /exec -pipe "/print Durée de fonctionnement de la machine :" uptime
      /exec -n tail -f /var/log/messages
      /exec -kill 0

### 12.2. オプション

exec.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`command` | `/set exec.command.*` | コマンドに対するオプション
`color` | `/set exec.color.*` | 色

オプション:

- exec.color.flag_finished

  - description: couleur du texte pour le drapeau d'une commande terminée dans la liste des commandes

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightred`

- exec.color.flag_running

  - description: couleur du texte pour le drapeau d'une commande qui tourne dans la liste des commandes

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightgreen`

- exec.command.default_options

  - description: options par défaut pour la commande /exec (voir /help exec) ; exemple : "-nosh -bg" pour lancer toutes les commandes en tâche de fond (sans sortie) et sans utiliser le shell

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- exec.command.purge_delay

  - description: délai pour purger les commandes terminées (en secondes, 0 = purger les commandes immédiatement, -1 = ne jamais purger)

  - type: entier

  - valeurs: -1 .. 25920000

  - valeur par défaut: `0`

- exec.command.shell

  - description: shell à utiliser avec la commande "/exec -sh" ; cela peut être seulement le nom du shell s'il est dans le PATH (par exemple "bash") ou le chemin absolu vers le shell (par exemple "/bin/bash"); si la valeur est vide, "sh" est utilisé (note : le contenu est évalué, voir /help eval)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${env:SHELL}"`

## 13. FIFO pipe

外部から WeeChat を操作するには、FIFO パイプにコマンドやテキストを書き込んでください ("fifo.file.enabled" オプションが有効化されている必要がありますが、デフォルトで有効化されているはずです)。

The FIFO pipe is located in WeeChat runtime directory and is called weechat_fifo_12345 by default (where 12345 is the WeeChat process id).

FIFO パイプに書き込むコマンド/テキストの文法は以下の例の一つです:

      plugin.buffer *テキストまたはコマンド
      *テキストまたはコマンド

Backslashes can be interpreted with this format, where `*` is replaced by `\`, allowing for example to send multiline messages:

      plugin.buffer \text or command here
      \text or command here

例:

- IRC サーバ libera で使うニックネームを "newnick" に変更する:

    $ echo 'irc.server.libera */nick newnick' >/run/user/1000/weechat/weechat_fifo_12345

- IRC チャンネル #weechat に対してテキストを送信:

    $ echo 'irc.libera.#weechat *hello!' >/run/user/1000/weechat/weechat_fifo_12345

- Send a multiline message on IRC #test channel, if capability "draft/multiline" is enabled on the ergo server:

    $ echo 'irc.ergo.#test \hello\n...on two lines!' >/run/user/1000/weechat/weechat_fifo_12345

- 現在のバッファに対してテキストを送信:

    $ echo '*hello!' >/run/user/1000/weechat/weechat_fifo_12345

- Python スクリプトのアンロードとロードを行う 2 つのコマンドを送信 (複数のコマンドは "\n" で分割してください):

    $ printf '%b' '*/python unload\n*/python autoload\n' >/run/user/1000/weechat/weechat_fifo_12345

### 13.1. コマンド

- `fifo`: configuration de l’extension fifo

    /fifo  enable|disable|toggle

     enable : activer le tube FIFO
    disable : désactiver le tube FIFO
     toggle : activer/désactiver le tube FIFO

    Le tube FIFO est utilisé comme contrôle à distance de WeeChat : vous pouvez envoyer des commandes ou du texte au tube FIFO depuis votre shell.
    Par défaut le tube FIFO se nomme weechat_fifo_xxx (où xxx est l'id du processus WeeChat) et situé dans le répertoire "runtime" de WeeChat (voir /debug dirs).

    Le format attendu est l'un des suivants :
      plugin.buffer *texte ou commande ici
      *texte ou commande ici

    Par exemple pour changer votre pseudo sur libera :
      echo 'irc.server.libera */nick autrepseudo' >/run/user/1000/weechat/weechat_fifo_12345

    Merci de lire le guide utilisateur pour plus d'information et des exemples.

    Exemples :
      /fifo toggle

### 13.2. オプション

fifo.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`file` | `/set fifo.file.*` | FIFO パイプに関するオプション

オプション:

- fifo.file.enabled

  - description: activer le tube FIFO

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- fifo.file.path

  - description: chemin pour le tube FIFO ; le PID de WeeChat peut être utilisé dans le chemin avec ${info:pid} (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${weechat_runtime_dir}/weechat_fifo_${info:pid}"`

## 14. Trigger

トリガは WeeChat の便利ツールです: 様々なもの (signal、modifier、print、…​) をフックして、データの内容を書き換えたり、複数のコマンドを実行することができます。条件をつけることで一部の場合だけトリガを実行するように設定することもできます。

トリガを使うにはシグナル、修飾子、…​ がどのように動いているかを知らなければいけません。これを知るには WeeChat プラグイン API リファレンス / フック ↗を読むことをお勧めします。

### 14.1. デフォルトトリガ

WeeChat はデフォルトで 5 つのトリガを作成しますが、これらを無効化、更新、削除することも可能です:

- 通知用の beep トリガ

- それ以外の 4 つは画面上でパスワードを隠すためのトリガ

デフォルトトリガのリスト:

名前 | フック | 説明
--- | --- | ---
`beep` | print | ハイライト/プライベートメッセージを受信した際にビープを鳴らす。
`cmd_pass` | modifier | コマンド内のパスワードを隠す: `/msg nickserv id|identify|set password|ghost|release|regain|recover`、 `/oper`、 `/quote pass`、 `/secure passphrase|decrypt|set`。
`cmd_pass_register` | modifier | コマンド内のパスワードを隠す `/msg nickserv register`。
`msg_auth` | modifier | IRC auth メッセージ (ユーザがコマンドを実行した後にサーバから受信するメッセージ) の表示時にパスワードを隠す。
`server_pass` | modifier | `/server` と `/connect` コマンド内のパスワードを隠す。

### 14.2. トリガの構造

トリガは以下のオプションをとります (名前は `trigger.trigger.<name>.<option>`):

オプション | 値 | 説明
--- | --- | ---
`enabled` | `on`、`off` | オプションが `off` の場合、トリガは無効化され、アクションは実行されません。
`hook` | `signal`、`hsignal`、`modifier`、`line`, `print`、`command`、 `command_run`、`timer`、`config`、`focus`、`info`、`info_hashtable` | トリガの中で使われるフック。より詳しい情報は WeeChat プラグイン API リファレンス / フック ↗を参照してください。
`arguments` | 文字列 | フックに対する引数、指定したフックの型に依存します。
`conditions` | 文字列 | トリガを実行する条件; 内容は評価されます (コマンド /eval を参照)。
`regex` | 文字列 | 1 つ以上の POSIX 拡張正規表現、フックコールバック (とトリガプラグインによって追加されるもの) が受け取るデータに変更を加えるためのもの、正規表現を参照。
`command` | 文字列 | 実行するコマンド (複数のコマンドを使う場合には各コマンドをセミコロンで区切ってください); 内容は評価されます (コマンド /eval を参照)。
`return_code` | `ok`、`ok_eat`、`error` | コールバックの戻り値 (デフォルトは `ok`、ほとんどすべてのトリガで戻り値はこれを使うべきで、ほかの値を使うことは極めてまれです)。
`post_action` | `none` (何もしない)、`disable` (無効化)、`delete` (削除) | 実行後のトリガに対する処遇 (ほとんどすべてのトリガではデフォルトの `none` を設定するべきで、それ以外の値を設定することはほとんどありません)。

例えば、デフォルトの beep トリガは以下のオプションをとります:

    trigger.trigger.beep.enabled = on
    trigger.trigger.beep.hook = print
    trigger.trigger.beep.arguments = ""
    trigger.trigger.beep.conditions = "${tg_displayed} && (${tg_highlight} || ${tg_msg_pv})"
    trigger.trigger.beep.regex = ""
    trigger.trigger.beep.command = "/print -beep"
    trigger.trigger.beep.return_code = ok
    trigger.trigger.beep.post_action = none

### 14.3. 実行

トリガ機能が有効になっていてさらに対象のトリガが有効化されている場合に、トリガコールバックが呼び出されると、以下のアクションがこの順番で実行されます:

1. トリガ条件の確認: 偽の場合、終了

2. 正規表現を使ってトリガ内でテキスト置換

3. コマンドを実行

4. 戻り値を返して終了 (modifier、line、focus、info、info_hashtable フックを除く)

5. トリガ実行後の処遇を適用 (`none` 以外の場合)。

### 14.4. フック引数

引数は使用するフックの種類に依存します。引数はセミコロンで区切ってください。

フック | 引数 | 例 | 解説 (API)
--- | --- | --- | ---
signal | 1. シグナル名 (優先度の指定も可) (必須) 2. シグナル名 (優先度の指定も可) 3. …​ | `*,irc_in_privmsg` `*,irc_in_privmsg;*,irc_in_notice` `signal_sigwinch` | hook_signal ↗
hsignal | 1. シグナル名 (優先度の指定も可) (必須) 2. シグナル名 (優先度の指定も可) 3. …​ | `nicklist_nick_added` | hook_hsignal ↗
modifier | 1. 修飾子名 (優先度の指定も可) (必須) 2. 修飾子名 (優先度の指定も可) 3. …​ | `weechat_print` `5000|input_text_display;5000|history_add` | hook_modifier ↗
line | 1. バッファ型 2. バッファ名 3. タグ | `formatted` `free` `*;irc.libera.*` `*;irc.libera.#weechat` `formatted;irc.libera.#weechat;irc_notice` | hook_line ↗
print | 1. バッファ名 2. タグ 3. メッセージ 4. 色の削除 (0/1) | `irc.libera.*` `irc.libera.#weechat` `irc.libera.#weechat;irc_notice` `*;;;1` | hook_print ↗
command | 1. コマンド名 (優先度の指定も可) (必須) 2. 説明 (evaluated, /eval コマンドを参照) 3. 引数 (evaluated, /eval コマンドを参照) 4. 引数の説明 (evaluated, /eval コマンドを参照) 5. 補完 (evaluated, /eval コマンドを参照) | `test` `5000|test` `test;test command;arg1 arg2;arg1: description 1${\n}arg2: description 2` | hook_command ↗
command_run | 1. コマンド (優先度の指定も可) (必須) 2. コマンド (優先度の指定も可) 3. …​ | `/cmd arguments` | hook_command_run ↗
timer | 1. インターバルするミリ秒数 (必須) 2. 秒の調整 (デフォルト: 0) 3. 呼び出し回数の最大値 (デフォルト: 0、「無限に」呼び出すことを意味します) | `3600000` `60000;0;5` | hook_timer ↗
config | 1. オプション名 (優先度の指定も可) (必須) 2. オプション名 (優先度の指定も可) 3. …​ | `weechat.look.*` | hook_config ↗
focus | 1. エリア名 (優先度の指定も可) (必須) 2. エリア名 (優先度の指定も可) 3. …​ | `buffer_nicklist` | hook_focus ↗
info | 1. インフォ名 (優先度の指定も可) (必須) 2. インフォ名 (優先度の指定も可) 3. …​ | `my_info` | hook_info ↗
info_hashtable | 1. インフォ名 (優先度の指定も可) (必須) 2. インフォ名 (優先度の指定も可) 3. …​ | `my_info` | hook_info_hashtable ↗

### 14.5. 条件

条件を指定することで、トリガ内で処理を継続するか完全に止めるかを制御できます。

条件は評価され、コールバック内で利用できるデータを条件として利用できます (コールバック内のデータとコマンド /eval を参照)。

例: デフォルトの beep トリガは以下の条件を使い、ハイライトまたはプライベートメッセージの場合だけビープを鳴らすようにしています:

    ${tg_displayed} && (${tg_highlight} || ${tg_msg_pv})

### 14.6. Regular expression

The regular expression is used to change variables in callback hashtable.

Format is one of the following:

    /string1/string2
    /string1/string2/var
    s/string1/string2
    s/string1/string2/var
    y/string1/string2
    y/string1/string2/var

Fields:

- `s` or `y`: a letter with the command; if missing, default command is `s` and the first char is then used as the delimiter:

  - `s`: regex replacement: first string is a regular expression, second string is the replacement for every matching string

  - `y`: chars translation: first string is a set of characters that are replaced by the characters in the second string; once evaluated, each string must have exactly the same number of UTF-8 chars

- `/`: the regex delimiter; the char "/" can be replaced by any char (one or more identical chars)

- `string1`: the first string (use depends on the command)

- `string2`: the second string (use depends on the command)

- `var`: the hashtable variable to update

Many regular expressions can be separated by a space, for example:

    s/regex1/replace1/var1 y/abcdef/ABDDEF/var2

#### Regex replace

For the command `s`, the format is: `s/regex/replace` or `s/regex/replace/var` (where var is a variable of the hashtable).

As `s` is the default command, it can be omitted, so `/regex/replace` is also valid (but the first char, which is the delimiter, must not be a letter).

Matching groups can be used in replace:

- `${re:0}` to `${re:99}`: `${re:0}` is the whole match, `${re:1}` to `${re:99}` are groups captured

- `${re:}+`: the last match (with highest number)

- `${hide:c,${re:N}}`: match "N" with all chars replaced by "c" (example: `${hide:*,${re:2}}` is the group #2 with all chars replaced by `*`).

Example: use bold for words between `*`:

    s/\*([^ ]+)\*/*${color:bold}${re:1}${color:-bold}*/

Example: default trigger server_pass uses this regular expression to hide password in commands `/server` and `/connect` (chars in passwords are replaced by `*`):

    s==^(/(server|connect) .*-(sasl_)?password=)([^ ]+)(.*)==${re:1}${hide:*,${re:4}}${re:5}

| In this example, the delimiter used is "==" because there is a "/" in the regular expression.

#### Translate chars

For the command `y`, the format is: `y/chars1/chars2` or `y/chars1/chars2/var` (where var is a variable of the hashtable).

Example: replace "a", "b" and "c" by upper case letter:

    y/abc/ABC/

Example: rotate arrows clockwise:

    y/←↑→↓/↑→↓←/

Example: convert all letters to lower case:

    y/${chars:upper}/${chars:lower}/

Example: shift each letter by one position, preserving case: a→b, b→c … y→z, z→a:

    y/${chars:a-z}${chars:A-Z}/${chars:b-z}a${chars:B-Z}A/

#### Variable

If var does not exist in the hashtable, it is created automatically with an empty value. This allows to create custom temporary variables.

If var is not specified, the default variable is used, it depends on hook type:

フック | デフォルト変数 | 更新が許可Update allowed (1)
--- | --- | ---
signal | tg_signal_data |
hsignal |  |
modifier | tg_string | tg_string
line | message | buffer、buffer_name、y、date、date_printed、str_time、tags、notify_level、highlight、prefix、message
print | tg_message |
command | tg_argv_eol1 |
command_run | tg_command |
timer | tg_remaining_calls |
config | tg_value |
focus |  |
info | tg_info | tg_info
info_hashtable |  | ハッシュテーブルで受け取ったすべての変数

| (1) トリガはすべての値を更新できますが、ここで挙げた変数だけがトリガによって返されて WeeChat によって使われる値に影響を及ぼします

### 14.7. コマンド

コマンドは正規表現を使ったテキスト置換の後に実行されます。複数のコマンドを実行するにはセミコロンで区切ってください。

コマンドは評価され (コマンド /eval を参照) コマンド内では正規表現を使って置換したテキストを使うことができます。

例: デフォルトの beep トリガは以下のコマンドを実行してビープ (BEL) を鳴らしています:

    /print -beep

### 14.8. コールバック内におけるデータ

コールバック内で受け取ったデータはハッシュテーブル (ポインタと文字列) の中に保存され、以下のオプションで使うことができます:

- conditions

- regex

- command

ハッシュテーブルの内容はフックの種類に依存します。

トリガ内部におけるデータを簡単に確認するには、以下のコマンドを使ってトリガ監視バッファを開いてください:

    /trigger monitor

All callbacks set following variables in hashtable:

変数 | 型 | 説明
--- | --- | ---
`tg_trigger_name` | string | Name of trigger.
`tg_hook_type` | string | Hook type: "signal", "command", etc.

#### Signal

"signal" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`tg_signal` | string | シグナル名
`tg_signal_data` | string | シグナルと一緒に送信されたデータ

シグナルが IRC メッセージを含む場合、メッセージは解析され以下のデータがハッシュテーブルに追加されます:

変数 | 型 | 説明
--- | --- | ---
`irc_server` | pointer | IRC サーバへのポインタ (`${irc_server.name}` のように使うことで、"irc_server" 型の hdata に含まれる変数を使うことが可能です)
`irc_channel` | pointer | IRC チャンネルへのポインタ (`${irc_channel.name}` のように使うことで、"irc_channel" 型の hdata に含まれる変数を使うことが可能です)
`server` | string | サーバの名前 (例: "libera")
`tags` | string | メッセージ内のタグ (使われることはまれです)
`message_without_tags` | string | タグを含まないメッセージ
`nick` | string | ニックネーム
`host` | string | ホスト名
`command` | string | IRC コマンド (例: "PRIVMSG"、"NOTICE"、…​)
`channel` | string | IRC チャンネル
`arguments` | string | コマンドの引数 (channel の値を含みます)
`text` | string | テキスト (例えばユーザメッセージ)
`pos_command` | string | メッセージ内における command のインデックス (command が見つからない場合 "-1")
`pos_arguments` | string | メッセージ内における arguments のインデックス (arguments が見つからない場合 "-1")
`pos_channel` | string | メッセージ内における channel のインデックス (channel が見つからない場合 "-1")
`pos_text` | string | メッセージ内における text のインデックス (text が見つからない場合 "-1")

データがポインタの場合、hdata の属性を読むために変数 `tg_signal_data` を以下のようにして使うことが可能です (以下の例では、バッファのポインタとして使っています):

    ${buffer[${tg_signal_data}].full_name}

#### Hsignal

"hsignal" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`tg_signal` | string | シグナル名

ハッシュテーブルには受け取ったハッシュテーブルに含まれる全てのキーおよび値 (型: string/string) が含まれています。

#### Modifier

"modifier" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`tg_modifier` | string | 修飾子の名前
`tg_modifier_data` | string | 修飾子と一緒に送信されたデータ
`tg_string` | string | 修正可能な文字列
`tg_string_nocolor` | string | 色コードを含まない文字列

weechat_print 修飾子では、メッセージタグを使う変数 (下の Print を参照) と以下の変数が追加されます:

変数 | 型 | 説明
--- | --- | ---
`buffer` | pointer | メッセージが表示されたバッファ
`tg_plugin` | string | メッセージが表示されたバッファのプラグイン
`tg_buffer` | string | メッセージが表示されたバッファの完全な名前
`tg_prefix` | string | 表示されたメッセージのプレフィックス
`tg_prefix_nocolor` | string | 色コードを削除したプレフィックス
`tg_message` | string | 表示されたメッセージ
`tg_message_nocolor` | string | 色コードを削除したメッセージ

修飾子が IRC メッセージを含む場合、メッセージは解析され追加のデータがハッシュテーブルに追加されます (Signal を参照)。

#### Line

"line" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`buffer` | pointer | バッファ
`buffer_name` | string | バッファ名
`buffer_type` | string | バッファ型 ("formatted" または "free")
`y` | string | 自由内容バッファの行番号 (≥ 0)、-1 はフォーマット済みバッファ用
`date` | string | 行の日付 (タイムスタンプ)
`date_printed` | string | 行が表示される日付 (タイムスタンプ).
`str_time` | string | 表示に使う日付、色コードを含めることも可能
`tags` | string | メッセージのタグ (文字列の最初と最後にコンマが追加されます)
`displayed` | string | "1" の場合は表示、"0" の場合は非表示
`notify_level` | string | "-1" = no notify, "0" = 低レベル、"1" = メッセージ、"2" = プライベートメッセージ、"3" = ハイライト
`highlight` | string | "1" の場合はハイライトあり、"0" の場合はハイライトなし
`prefix` | string | プレフィックス
`tg_prefix_nocolor` | string | 色コードを含まないプレフィックス
`message` | string | メッセージ
`tg_message_nocolor` | string | 色コードを含まないメッセージ

メッセージにつけられたタグに関する変数:

変数 | 型 | 説明
--- | --- | ---
`tg_tags_count` | string | メッセージのタグの個数
`tg_tag_nick` | string | ニックネーム ("nick_xxx" タグから)
`tg_tag_prefix_nick` | string | プレフィックスで使うニックネームの色 ("prefix_nick_ccc" タグから)
`tg_tag_host` | string | ユーザ名とホスト名、書式: username@host ("host_xxx" タグから)
`tg_tag_notify` | string | 通知レベル (none、message、private、highlight)
`tg_tag_irc_xxx` | string | IRC message tag (key "xxx"). (1)
`tg_notify` | string | 通知レベルが none 以外の場合、その通知レベル
`tg_msg_pv` | string | プライベートメッセージの場合 "1"、それ以外は "0"

| (1) Commas are replaced by semicolons in IRC tag (key and value).

#### Print

"print" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`buffer` | pointer | メッセージが表示されたバッファ
`tg_date` | string | メッセージの日付と時間 (書式: `YYYY-MM-DD hh:mm:ss`)
`tg_displayed` | string | 表示された場合 "1"、フィルタされた場合 "0"
`tg_highlight` | string | ハイライトされた場合 "1"、それ以外は "0"
`tg_prefix` | string | プレフィックス
`tg_prefix_nocolor` | string | 色コードを削除したプレフィックス
`tg_message` | string | メッセージ
`tg_message_nocolor` | string | 色コードを削除したメッセージ

メッセージにつけられたタグに関する変数:

変数 | 型 | 説明
--- | --- | ---
`tg_tags` | string | メッセージのタグ (文字列の最初と最後にコンマが追加されます)
`tg_tags_count` | string | メッセージのタグの個数
`tg_tag_nick` | string | ニックネーム ("nick_xxx" タグから)
`tg_tag_prefix_nick` | string | プレフィックスで使うニックネームの色 ("prefix_nick_ccc" タグから)
`tg_tag_host` | string | ユーザ名とホスト名、書式: username@host ("host_xxx" タグから)
`tg_tag_notify` | string | 通知レベル (none、message、private、highlight)
`tg_tag_irc_xxx` | string | IRC message tag (key "xxx"). (1)
`tg_notify` | string | 通知レベルが none 以外の場合、その通知レベル
`tg_msg_pv` | string | プライベートメッセージの場合 "1"、それ以外は "0"

| (1) Commas are replaced by semicolons in IRC tag (key and value).

#### Command

"command" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`buffer` | pointer | バッファ
`tg_argc` | string | The number of arguments (the command itself counts for one).
`tg_argvN` | string | N 番目の引数 (`tg_argv0` is the command itself, the others are command arguments).
`tg_argv_eolN` | string | N 番目の引数から最後の引数まで (`tg_argv_eol0` includes the command itself).
`tg_shell_argc` | string | The number of arguments with a split like the shell does (the command itself counts for one).
`tg_shell_argvN` | string | Argument #N with a split like the shell does (`tg_shell_argv0` is the command itself, the others are command arguments).

#### Command_run

"command_run" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`buffer` | pointer | バッファ
`tg_command` | string | 実行されたコマンド

#### Timer

"timer" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`tg_remaining_calls` | string | 残り呼び出し回数
`tg_date` | string | 現在の日付および時間 (書式: `YYYY-MM-DD hh:mm:ss`)

#### Config

"config" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`tg_option` | string | オプション
`tg_value` | string | 値

#### Focus

"focus" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`window` | pointer | ウィンドウ
`buffer` | pointer | バッファ

ハッシュテーブルには受け取ったハッシュテーブルに含まれる全てのキーおよび値 (型: string/string) が含まれています。

#### Info

"info" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`tg_info_name` | string | インフォ名
`tg_arguments` | string | 引数
`tg_info` | string | 空文字列 (インフォの返却先)

#### Info_hashtable

"info_hashtable" コールバックは以下の変数をハッシュテーブルに格納します:

変数 | 型 | 説明
--- | --- | ---
`tg_info_name` | string | インフォ名

ハッシュテーブルには受け取ったハッシュテーブルに含まれる全てのキーおよび値 (型: string/string) が含まれています。

### 14.9. 例

#### URL の色

URL を緑色にする:

    /trigger add url_color modifier weechat_print "${tg_notify}" "==[a-zA-Z0-9_]+://[^ ]+==${color:green}${re:0}${color:reset}=="

| ここで使われている URL を検出するための単純な正規表現はすべての URL をうまく検出するものではありませんが、複雑な正規表現を使うよりも高速です。

#### ping クエリに対する自動応答

誰かがプライベートバッファで "ping" を送信した場合、このトリガは `pong` で自動的に応答します:

    /trigger add pong print "" "${type} == private && ${tg_message} == ping" "" "pong"

#### レスポンシブレイアウト

以下のトリガは端末のサイズが変更されたときに表示されている内容をカスタマイズするものです:

    /trigger add resize_small signal signal_sigwinch "${info:term_width} < 100" "" "/bar hide nicklist"
    /trigger add resize_big signal signal_sigwinch "${info:term_width} >= 100" "" "/bar show nicklist"

WeeChat は SIGWINCH を受けとたった際 (端末のサイズが変更された際) に "signal_sigwinch" シグナルを送信し、このトリガはこのシグナルをキャッチします。

`${info:term_width}` を使った条件で端末の横幅を確認します (必要であれば `${info:term_height}` を使うことも可能です)。

この例では、端末が小さくなった場合、ニックネームリストを隠します。さらに横幅が 100 文字幅以上になった場合、ニックネームリストを表示します。

#### 設定の自動保存

例えば 1 時間ごとに、設定ファイル (`*.conf`) を自動的に保存することが可能です:

    /trigger add cfgsave timer 3600000;0;0 "" "" "/mute /save"

timer フックに対する引数は:

- 3600000: 3600 * 1000 ミリ秒、コールバックは毎時間呼び出される

- 0: 秒の調整 (この場合調整しない)

- 0: 呼び出し回数の最大値 (0 = タイマーを無限に繰り返す)

コマンド `/mute /save` は無言で設定ファイルを保存します (core バッファに対して何も表示しません)。

### 14.10. コマンド

- `trigger`: gestion des triggers, le couteau Suisse pour WeeChat

    /trigger  list|listfull|listdefault
              add|addoff|addreplace <nom> <hook> ["<paramètres>" ["<conditions>" ["<regex>" ["<commande>" ["<code_retour>" ["action_post"]]]]]]
              addinput [<hook>]
              input|output|recreate <nom>
              set <nom> <option> <valeur>
              rename|copy <nom> <nouveau_nom>
              enable|disable|toggle [<nom>|-all [<nom>...]]
              restart <nom>|-all [<nom>...]
              show <nom>
              del <nom>|-all [<nom>...]
              restore <nom> [<nom>...]
              default -yes
              monitor [<filtre>]

           list : lister les triggers (sans paramètre, cette liste est affichée)
       listfull : lister les triggers avec des informations détaillées pour chaque trigger
    listdefault : lister les triggers par défaut
            add : ajouter un trigger
         addoff : ajouter un trigger (désactivé)
     addreplace : ajouter ou remplacer un trigger existant
            nom : nom du trigger
           hook : signal, hsignal, modifier, line, print, command, command_run, timer, config, focus, info, info_hashtable
     paramètres : paramètres pour le hook, dépendant du hook (séparés par des points-virgules) :
                  signal : nom(s) de signal (obligatoire)
                  hsignal : nom(s) de signal (obligatoire)
                  modifier : nom(s) de modificateur (obligatoire)
                  line : type de tampon ("formatted", "free" ou "*"), liste de masques de tampons, étiquettes
                  print : tampon, étiquettes, message, suppression des couleurs (0/1)
                  command : commande (obligatoire), description, paramètres, description des paramètres, complétion (tous les paramètres sauf la commande sont évalués, "${tg_trigger_name}" est remplacé par le nom du trigger, voir /help eval)
                  command_run : commande(s) (obligatoire)
                  timer : intervalle (obligatoire), alignement sur la seconde, nombre max d'appels
                  config : nom(s) de l'option (obligatoire)
                  focus : nom(s) de la zone (obligatoire)
                  info : nom(s) de l'info (obligatoire)
                  info_hashtable : nom(s) de l'info (obligatoire)
     conditions : conditions évaluées pour le trigger
          regex : une ou plusieurs expressions régulières pour remplacer des chaînes dans les variables
       commande : commande à exécuter (plusieurs commandes peuvent être séparées par ";")
    code_retour : code retour dans la fonction de rappel (ok (par défaut), ok_eat, error)
    action_post : action à effectuer après l'exécution (none (par défaut), disable, delete)
       addinput : définir la ligne de commande avec les paramètres par défaut pour créer un trigger
          input : définir la ligne de commande utilisée pour créer le trigger
         output : envoyer la commande pour créer le trigger sur le tampon
       recreate : comme "input", avec l'option "addreplace" au lieu de "add"
            set : définir une option dans un trigger
         option : nom de l'option : name, hook, arguments, conditions, regex, command, return_code
                  (pour l'aide sur l'option, vous pouvez taper : /help trigger.trigger.<nom>.<option>)
         valeur : nouvelle valeur pour l'option
         rename : renommer un trigger
           copy : copier un trigger
         enable : activer un/des trigger(s) (sans paramètre : activer les triggers globalement)
        disable : désactiver un/des trigger(s) (sans paramètre : désactiver les triggers globalement)
         toggle : activer/désactiver un/des trigger(s) (sans paramètre : activer/désactiver les triggers globalement)
        restart : redémarrer un/des trigger(s) (recréer les hooks)
           show : afficher des informations détaillées sur un trigger (avec quelques statistiques)
            del : supprimer un trigger
           -all : effectuer l'action sur tous les triggers
        restore : restaurer un/des trigger(s) avec les valeurs par défaut (fonctionne seulement pour les triggers par défaut)
        default : restaurer les triggers par défaut
        monitor : ouvrir le tampon moniteur des triggers
         filtre : filtrer les hooks/triggers à afficher (un hook doit commencer par "@", par exemple "@signal"), plusieurs filtres peuvent être séparés par des virgules ; le caractère joker "*" est autorisé dans chaque nom de trigger

    Lorsqu'une fonction de rappel de trigger est appelée, les actions suivantes sont exécutées, dans cet ordre :
      1. vérifier les conditions ; si faux, sortir
      2. remplacer le texte en utilisant une/des expression(s)s régulière(s)s POSIX étendue(s)s (si définie(s) dans le trigger)
      3. exécuter le(s) commande(s) (si définie(s) dans le trigger)
      4. sortir avec le code retour (sauf pour les modificateurs, line, focus, info et info_hashtable)
      5. effectuer l'action "post"

    Exemples (vous pouvez aussi regarder les triggers par défaut avec /trigger listdefault) :
      ajouter des attributs *gras*, _souligné_ et /italique/ (seulement dans les messages d'utilisateurs) :
        /trigger add effects modifier weechat_print "${tg_tag_nick}" "==\*([^ ]+)\*==*${color:bold}${re:1}${color:-bold}*== ==_([^ ]+)_==_${color:underline}${re:1}${color:-underline}_== ==/([^ ]+)/==/${color:italic}${re:1}${color:-italic}/"
      cacher la barre de pseudos sur les petits terminaux :
        /trigger add resize_small signal signal_sigwinch "${info:term_width} < 100" "" "/bar hide nicklist"
        /trigger add resize_big signal signal_sigwinch "${info:term_width} >= 100" "" "/bar show nicklist"
      sauver silencieusement la configuration chaque heure :
        /trigger add cfgsave timer 3600000;0;0 "" "" "/mute /save"
      sauver silencieusement la session WeeChat à minuit (voir /help upgrade) :
        /trigger add session_save signal day_changed "" "" "/mute /upgrade -save"
      ouvrir le tampon moniteur des triggers et afficher seulement les modificateurs et les triggers dont le nom commence par "resize" :
        /trigger monitor @modifier,resize*

### 14.11. オプション

trigger.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set trigger.look.*` | 外観
`color` | `/set trigger.color.*` | 色
`trigger` | `/trigger add /trigger set /set trigger.trigger.*` | トリガオプション

オプション:

- trigger.color.flag_command

  - description: couleur du texte pour le drapeau de la commande (dans /trigger list)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightgreen`

- trigger.color.flag_conditions

  - description: couleur du texte pour le drapeau des conditions (dans /trigger list)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- trigger.color.flag_post_action

  - description: couleur du texte pour le drapeau de l'action "post" (dans /trigger list)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightblue`

- trigger.color.flag_regex

  - description: couleur du texte pour le drapeaux de l'expression régulière (dans /trigger list)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightcyan`

- trigger.color.flag_return_code

  - description: couleur du texte pour le drapeau du code retour (dans /trigger list)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightmagenta`

- trigger.color.identifier

  - description: couleur du texte pour l'identifiant de contexte du trigger dans le tampon moniteur

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- trigger.color.regex

  - description: couleur du texte pour les expressions régulières

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- trigger.color.replace

  - description: couleur du texte pour le texte de remplacement (pour les expressions régulières)

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `cyan`

- trigger.look.enabled

  - description: activer le support des triggers

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- trigger.look.monitor_strip_colors

  - description: supprimer les couleurs dans la table de hachage affichée sur le tampon moniteur

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

## 15. Extending WeeChat

WeeChat has a modular design and can be extended with plugins and scripts.

プラグイン と スクリプト の違いを明らかにすることは重要です: プラグイン とは `/plugin` コマンドで読み込まれるコンパイル済みバイナリファイルです。これに対して、 スクリプト とは `/python` 等のコマンドで python 等のプラグインとともに読み込まれるテキストファイルです。

### 15.1. プラグイン

プラグインとは動的ライブラリのことで、C 言語で書かれてコンパイルされています。プラグインは WeeChat によって読み込まれます。GNU/Linux の場合、プラグインファイルは ".so" という拡張子を持ち、Windows の場合、".dll" です。

見つかったプラグインは WeeChat の起動時に自動的に読み込まれます。WeeChat の起動時にプラグインを読み込むか否かは選択可能です。

`/plugin` コマンドを使うことで、プラグインのロード/アンロード、ロード済みプラグインの表示を行うことができます。

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.

プラグインをロード、アンロード、ロード済みプラグインを表示する例:

    /plugin load irc
    /plugin unload irc
    /plugin list

デフォルトプラグインのリスト:

プラグイン | 説明
--- | ---
alias | コマンドの別名を定義
buflist | バッファリストを表示するためのバー要素
charset | バッファの文字コードに従ってデコード/エンコード
exec | WeeChat 内部から外部コマンドを実行
fifo | 外部から WeeChat にコマンドを送信するための FIFO パイプ
fset | WeeChat とプラグインのオプションを高速設定
irc | IRC チャットプロトコル
logger | バッファの内容をファイルに保存
relay | ネットワーク経由でデータを中継
script | スクリプトマネージャ
python | Python スクリプト API
perl | Perl スクリプト API
ruby | Ruby スクリプト API
lua | Lua スクリプト API
tcl | Tcl スクリプト API
guile | Guile (scheme) スクリプト API
javascript | JavaScript スクリプト API
php | PHP スクリプト API
spell | コマンドラインのスペルチェック
trigger | WeeChat およびプラグインが発生させたイベントに対するテキスト置換とコマンド実行
typing | Display users currently writing messages.
xfer | ファイル転送とダイレクトチャット

API を使ったプラグインやスクリプトの開発についてより詳しく学ぶには WeeChat プラグイン API リファレンス ↗または WeeChat スクリプト作成ガイド ↗を参照してください。

### 15.2. スクリプト

WeeChat は 8 種類のスクリプトプラグインを備えています: Python、Perl、Ruby、Lua、Tcl、Guile (scheme)、JavaScript、PHP。これらのプラグインでそれぞれの言語で書かれたスクリプトのロード、実行、アンロードができます。

スクリプトの書き方やスクリプト用の WeeChat API についての詳しい情報は WeeChat スクリプト作成ガイド ↗を参照してください。

#### Script manager

The script manager (command /script) is used to load/unload scripts of any language, and install/remove scripts of WeeChat scripts repository, which are visible on this page ↗.

For privacy considerations, the download of scripts is disabled by default.
To enable it, type this command:

    /set script.scripts.download_enabled on

Then you can download the list of scripts and display them in a new buffer with the /script command:

    ┌──────────────────────────────────────────────────────────────────────────────────────────────────────────────┐
    │1.weechat│368/368 scripts (filter: *) | Sort: i,p,n | Alt+key/input: i=install, r=remove, l=load, L=reload, u=│
    │2.scripts│*      autosort.py                 3.9     2020-10-11 | Automatically keep buffers grouped by server│
    │         │*      multiline.pl                0.6.3   2016-01-02 | Multi-line edit box, also supports editing o│
    │         │*      highmon.pl                  2.7     2020-06-21 | Adds a highlight monitor buffer.            │
    │         │*ia r  grep.py               0.8.5 0.8.5   2021-05-11 | Search regular expression in buffers or log │
    │         │*      autojoin.py                 0.3.1   2019-10-06 | Configure autojoin for all servers according│
    │         │*      colorize_nicks.py           28      2021-03-06 | Use the weechat nick colors in the chat area│
    │         │*ia r  go.py                 2.7   2.7     2021-05-26 | Quick jump to buffers.                      │
    │         │*      text_item.py                0.9     2019-05-25 | Add bar items with plain text.              │
    │         │       aesthetic.py                1.0.6   2020-10-25 | Make messages more A E S T H E T I C A L L Y│
    │         │       aformat.py                  0.2     2018-06-21 | Alternate text formatting, useful for relays│
    │         │       alternatetz.py              0.3     2018-11-11 | Add an alternate timezone item.             │
    │         │       amarok2.pl                  0.7     2012-05-08 | Amarok 2 control and now playing script.    │
    │         │       amqp_notify.rb              0.1     2011-01-12 | Send private messages and highlights to an A│
    │         │       announce_url_title.py       19      2021-06-05 | Announce URL title to user or to channel.   │
    │         │       anotify.py                  1.0.2   2020-05-16 | Notifications of private messages, highlight│
    │         │       anti_password.py            1.2.1   2021-03-13 | Prevent a password from being accidentally s│
    │         │       apply_corrections.py        1.3     2018-06-21 | Display corrected text when user sends s/typ│
    │         │       arespond.py                 0.1.1   2020-10-11 | Simple autoresponder.                       │
    │         │       atcomplete.pl               0.001   2016-10-29 | Tab complete nicks when prefixed with "@".  │
    │         │       audacious.pl                0.3     2009-05-03 | Display which song Audacious is currently pl│
    │         │       auth.rb                     0.3     2014-05-30 | Automatically authenticate with NickServ usi│
    │         │       auto_away.py                0.4     2018-11-11 | A simple auto-away script.                  │
    │         │       autoauth.py                 1.3     2021-11-07 | Permits to auto-authenticate when changing n│
    │         │       autobump.py                 0.1.0   2019-06-14 | Bump buffers upon activity.                 │
    │         │       autoconf.py                 0.4     2021-05-11 | Auto save/load changed options in a .weerc f│
    │         │       autoconnect.py              0.3.3   2019-10-06 | Reopen servers and channels opened last time│
    │         │[12:55] [2] [script] 2:scripts                                                                      │
    │         │█                                                                                                   │
    └──────────────────────────────────────────────────────────────────────────────────────────────────────────────┘

##### Script コマンド

- `script`: Gestionnaire de scripts WeeChat

    /script  list [-o|-ol|-i|-il]
             search <texte>
             show <script>
             load|unload|reload <script> [<script>...]
             autoload|noautoload|toggleautoload <script> [<script>...]
             install|remove|installremove|hold [-q] <script> [<script>...]
             upgrade
             update

              list : lister les scripts chargés (tous les langages)
                -o : envoyer la liste des scripts chargés au tampon (chaîne en anglais)
               -ol : envoyer la liste des scripts chargés au tampon (chaîne traduite)
                -i : copier la liste des scripts chargés dans la ligne de commande (pour envoi au tampon) (chaîne en anglais)
               -il : copier la liste des scripts chargés dans la ligne de commande (pour envoi au tampon) (chaîne traduite)
            search : chercher des scripts par étiquettes, langage (python, perl, ...), extension de fichier (py, pl, ...) ou texte ; le résultat est affiché sur le tampon des scripts
              show : afficher des infos détaillées sur le script
              load : charger un ou plusieurs scripts
            unload : décharger un ou plusieurs scripts
            reload : recharger un ou plusieurs scripts
          autoload : charger automatiquement un ou plusieurs scripts
        noautoload : ne pas charger automatiquement un ou plusieurs scripts
    toggleautoload : activer/désactiver le chargement automatique
           install : installer/mettre à jour un ou plusieurs scripts
            remove : supprimer un ou plusieurs scripts
     installremove : installer ou supprimer un ou plusieurs scripts, selon l'état courant
              hold : figer/défiger un ou plusieurs scripts (un script figé ne sera plus mis à jour et ne peut pas être supprimé)
                -q : mode silencieux : ne pas afficher de messages
           upgrade : mettre à jour les scripts obsolètes (avec nouvelle version disponible)
            update : mettre à jour le cache local des scripts

    Sans paramètre, cette commande ouvre un tampon avec la liste des scripts.

    Sur le tampon des scripts, les statuts pour chaque script sont :
      * i a H r N
      | | | | | |
      | | | | | obsolète (nouvelle version disponible)
      | | | | chargé
      | | | figé
      | | chargé auto
      | installé
      script populaire

    Dans la sortie de /script list, les statuts pour chaque script sont :
      * ? i a H N
      | | | | | |
      | | | | | obsolète (nouvelle version disponible)
      | | | | figé
      | | | chargé auto
      | | installé
      | script inconnu (ne peut pas être téléchargé/mis à jour)
      script populaire

    Les touches sur le tampon des scripts :
      alt+i  installer le script
      alt+r  supprimer le script
      alt+l  charger le script
      alt+L  recharger le script
      alt+u  décharger le script
      alt+A  chargement automatique du script
      alt+h  (dé)figer le script
      alt+v  voir le script

    Entrée autorisée sur le tampon des scripts :
      i/r/l/L/u/A/h/v  action sur le script (identique aux touches ci-dessus)
      q                fermer le tampon
      $                rafraîchir le tampon
      s:x,y            trier le tampon en utilisant les clés x et y (voir /help script.look.sort)
      s:               réinitialiser le tri (utiliser le tri par défaut)
      word(s)          filtrer les scripts : recherche du/des mot(s) dans les scripts (description, étiquettes, ...)
      *                supprimer le filtre

    Actions de la souris sur le tampon des scripts :
      roulette       faire défiler la liste
      bouton gauche  sélectionner le script
      bouton droit   installer/supprimer le script

    Exemples :
      /script search url
      /script install go.py urlserver.py
      /script remove go.py
      /script hold urlserver.py
      /script reload urlserver
      /script upgrade

##### スクリプトオプション

script.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set script.look.*` | 外観
`color` | `/set script.color.*` | 色
`scripts` | `/set script.scripts.*` | スクリプトのダウンロードに関するオプション

オプション:

- script.color.status_autoloaded

  - description: couleur du statut "chargé auto" ("a")

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `39`

- script.color.status_held

  - description: couleur du statut "figé" ("H")

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- script.color.status_installed

  - description: couleur du statut "installé" ("i")

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightcyan`

- script.color.status_obsolete

  - description: couleur du statut "obsolète" ("N")

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightmagenta`

- script.color.status_popular

  - description: couleur du statut "populaire" ("*")

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- script.color.status_running

  - description: couleur du statut "chargé" ("r")

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightgreen`

- script.color.status_unknown

  - description: couleur du statut "inconnu" ("?")

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `lightred`

- script.color.text

  - description: couleur du texte dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- script.color.text_bg

  - description: couleur du fond dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `default`

- script.color.text_bg_selected

  - description: couleur du fond pour la ligne sélectionnée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `24`

- script.color.text_date

  - description: couleur du texte pour les dates dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `65`

- script.color.text_date_selected

  - description: couleur du texte pour les dates de la ligne sélectionnée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `50`

- script.color.text_delimiters

  - description: couleur du texte pour les délimiteurs dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `240`

- script.color.text_description

  - description: couleur du texte pour la description dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `249`

- script.color.text_description_selected

  - description: couleur du texte pour la description de la ligne sélectionnée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- script.color.text_extension

  - description: couleur du texte pour l'extension dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `242`

- script.color.text_extension_selected

  - description: couleur du texte pour l'extension de la ligne sélectionnée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `248`

- script.color.text_name

  - description: couleur du texte pour le nom du script dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `73`

- script.color.text_name_selected

  - description: couleur du texte pour le nom du script de la ligne sélectionnée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `51`

- script.color.text_selected

  - description: couleur du texte pour la ligne sélectionnée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- script.color.text_tags

  - description: couleur du texte pour les étiquettes dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `brown`

- script.color.text_tags_selected

  - description: couleur du texte pour les étiquettes de la ligne sélectionnée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `yellow`

- script.color.text_version

  - description: couleur du texte pour la version dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `100`

- script.color.text_version_loaded

  - description: couleur du texte pour la version chargée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `246`

- script.color.text_version_loaded_selected

  - description: couleur du texte pour la version chargée de la ligne sélectionnée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `white`

- script.color.text_version_selected

  - description: couleur du texte pour la version de la ligne sélectionnée dans le tampon script

  - type: couleur

  - valeurs: un nom de couleur WeeChat (default, black, (dark)gray, white, (light)red, (light)green, brown, yellow, (light)blue, (light)magenta, (light)cyan), un numéro de couleur du terminal ou un alias ; des attributs sont autorisés avant la couleur (seulement pour la couleur du texte, pas le fond) : "%" pour le clignotement, "." pour "dim" (demi-intensité), "*" pour le gras, "!" pour la vidéo inverse, "/" pour l’italique, "_" pour le souligné

  - valeur par défaut: `228`

- script.look.columns

  - description: format des colonnes affichées dans le tampon des scripts : les identifiants de colonne suivants sont remplacés par leurs valeurs : %a=auteur, %d=description, %D=date d'ajout, %e=extension, %l=langage, %L=licence, %n=nom avec extension, %N=nom, %r=dépendances, %s=statuts, %t=étiquettes, %u=date de mise à jour, %v=version, %V=version chargée, %w=min_weechat, %W=max_weechat

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"%s %n %V %v %u | %d | %t"`

- script.look.diff_color

  - description: colorie la sortie du diff

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- script.look.diff_command

  - description: commande utilisée pour montrer les différences entre le script installé et la nouvelle version dans le dépôt ("auto" = détecter automatiquement la commande de diff (git ou diff), valeur vide = désactiver le diff, autre chaîne = nom de la commande, par exemple "diff")

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"auto"`

- script.look.display_source

  - description: afficher le code source du script sur le tampon avec le détail sur le script (le script est téléchargé dans un fichier temporaire lorsque le détail du script est affiché)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- script.look.quiet_actions

  - description: actions silencieuses sur le tampon script : ne pas afficher de messages sur le tampon "core" quand les scripts sont installés/supprimés/chargés/déchargés (seules les erreurs sont affichées)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- script.look.sort

  - description: tri par défaut des scripts : liste d'identifiants séparés par des virgules : a=auteur, A=chargé auto, d=date d'ajout, e=extension, i=installé, l=langage, n=nom, o=obsolète, p=populaire, r=chargé, u=date de mise à jour ; le caractère "-" peut être utilisé avant l'identifiant pour inverser l'ordre ; exemple : "i,u" : scripts installés en premier, triés par date de mise à jour

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"i,p,n"`

- script.look.translate_description

  - description: traduire la description des scripts (si une traduction est disponible dans votre langue, sinon la version anglaise est utilisée)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- script.look.use_keys

  - description: utiliser les touches alt+X sur le tampon script pour effectuer les actions sur les scripts (alt+i = installer, alt+r = supprimer, ...) ; si désactivé, seule l'entrée est autorisée : i, r, ...

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- script.scripts.autoload

  - description: charger automatiquement les scripts installés (faire un lien dans le répertoire "autoload" vers le script dans le répertoire parent)

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

- script.scripts.cache_expire

  - description: temps d'expiration du cache local, en minutes (-1 = n'expire jamais, 0 = expire toujours)

  - type: entier

  - valeurs: -1 .. 525600

  - valeur par défaut: `1440`

- script.scripts.download_enabled

  - description: activer le téléchargement des fichiers depuis le dépôt des scripts lorsque la commande /script est utilisée (liste des scripts et les scripts eux-mêmes) ; la liste des scripts est téléchargée depuis l'URL spécifiée dans l'option script.scripts.url ; WeeChat téléchargera parfois à nouveau la liste des scripts quand vous utilisez la commande /script, même si vous n'installez pas un script

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- script.scripts.download_timeout

  - description: délai d'attente maximum (en secondes) pour le téléchargement des scripts et de la liste des scripts

  - type: entier

  - valeurs: 1 .. 3600

  - valeur par défaut: `30`

- script.scripts.hold

  - description: scripts à "figer" : liste de scripts séparés par des virgules qui ne seront jamais mis à jour et ne peuvent pas être supprimés, par exemple : "go.py,urlserver.py"

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `""`

- script.scripts.path

  - description: répertoire du cache local pour les scripts (le chemin est évalué, voir la fonction string_eval_path_home dans la référence API extension)

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"${weechat_cache_dir}/script"`

- script.scripts.url

  - description: URL pour le fichier avec la liste des scripts

  - type: chaîne

  - valeurs: toute chaîne

  - valeur par défaut: `"https://weechat.org/files/plugins.xml.gz"`

#### Scripting plugins

##### Python コマンド

- `python`: lister/charger/décharger des scripts

    /python  list|listfull [<nom>]
             load [-q] <fichier>
             autoload
             reload|unload [-q] [<nom>]
             eval [-o|-oc] <code>
             version

        list : lister les scripts chargés
    listfull : lister les scripts chargés (verbeux)
        load : charger un script
    autoload : charger tous les scripts dans le répertoire "autoload"
      reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
      unload : décharger un script (si pas de nom donné, décharger tous les scripts)
     fichier : script (fichier) à charger
          -q : mode silencieux : ne pas afficher de messages
         nom : nom de script (nom utilisé dans l'appel à la fonction "register")
        eval : évaluer le code source et afficher le résultat sur le tampon courant
          -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
         -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
        code : le code source à évaluer
     version : afficher la version de l'interpréteur utilisé

    Sans paramètre, cette commande liste les scripts chargés.

##### Perl コマンド

- `perl`: lister/charger/décharger des scripts

    /perl  list|listfull [<nom>]
           load [-q] <fichier>
           autoload
           reload|unload [-q] [<nom>]
           eval [-o|-oc] <code>
           version

        list : lister les scripts chargés
    listfull : lister les scripts chargés (verbeux)
        load : charger un script
    autoload : charger tous les scripts dans le répertoire "autoload"
      reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
      unload : décharger un script (si pas de nom donné, décharger tous les scripts)
     fichier : script (fichier) à charger
          -q : mode silencieux : ne pas afficher de messages
         nom : nom de script (nom utilisé dans l'appel à la fonction "register")
        eval : évaluer le code source et afficher le résultat sur le tampon courant
          -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
         -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
        code : le code source à évaluer
     version : afficher la version de l'interpréteur utilisé

    Sans paramètre, cette commande liste les scripts chargés.

##### Ruby コマンド

- `ruby`: lister/charger/décharger des scripts

    /ruby  list|listfull [<nom>]
           load [-q] <fichier>
           autoload
           reload|unload [-q] [<nom>]
           eval [-o|-oc] <code>
           version

        list : lister les scripts chargés
    listfull : lister les scripts chargés (verbeux)
        load : charger un script
    autoload : charger tous les scripts dans le répertoire "autoload"
      reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
      unload : décharger un script (si pas de nom donné, décharger tous les scripts)
     fichier : script (fichier) à charger
          -q : mode silencieux : ne pas afficher de messages
         nom : nom de script (nom utilisé dans l'appel à la fonction "register")
        eval : évaluer le code source et afficher le résultat sur le tampon courant
          -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
         -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
        code : le code source à évaluer
     version : afficher la version de l'interpréteur utilisé

    Sans paramètre, cette commande liste les scripts chargés.

##### Lua コマンド

- `lua`: lister/charger/décharger des scripts

    /lua  list|listfull [<nom>]
          load [-q] <fichier>
          autoload
          reload|unload [-q] [<nom>]
          eval [-o|-oc] <code>
          version

        list : lister les scripts chargés
    listfull : lister les scripts chargés (verbeux)
        load : charger un script
    autoload : charger tous les scripts dans le répertoire "autoload"
      reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
      unload : décharger un script (si pas de nom donné, décharger tous les scripts)
     fichier : script (fichier) à charger
          -q : mode silencieux : ne pas afficher de messages
         nom : nom de script (nom utilisé dans l'appel à la fonction "register")
        eval : évaluer le code source et afficher le résultat sur le tampon courant
          -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
         -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
        code : le code source à évaluer
     version : afficher la version de l'interpréteur utilisé

    Sans paramètre, cette commande liste les scripts chargés.

##### Tcl コマンド

- `tcl`: lister/charger/décharger des scripts

    /tcl  list|listfull [<nom>]
          load [-q] <fichier>
          autoload
          reload|unload [-q] [<nom>]
          eval [-o|-oc] <code>
          version

        list : lister les scripts chargés
    listfull : lister les scripts chargés (verbeux)
        load : charger un script
    autoload : charger tous les scripts dans le répertoire "autoload"
      reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
      unload : décharger un script (si pas de nom donné, décharger tous les scripts)
     fichier : script (fichier) à charger
          -q : mode silencieux : ne pas afficher de messages
         nom : nom de script (nom utilisé dans l'appel à la fonction "register")
        eval : évaluer le code source et afficher le résultat sur le tampon courant
          -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
         -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
        code : le code source à évaluer
     version : afficher la version de l'interpréteur utilisé

    Sans paramètre, cette commande liste les scripts chargés.

##### Guile コマンド

- `guile`: lister/charger/décharger des scripts

    /guile  list|listfull [<nom>]
            load [-q] <fichier>
            autoload
            reload|unload [-q] [<nom>]
            eval [-o|-oc] <code>
            version

        list : lister les scripts chargés
    listfull : lister les scripts chargés (verbeux)
        load : charger un script
    autoload : charger tous les scripts dans le répertoire "autoload"
      reload : recharger un script (si pas de nom donné, décharger tous les scripts puis charger tous les scripts dans le répertoire "autoload")
      unload : décharger un script (si pas de nom donné, décharger tous les scripts)
     fichier : script (fichier) à charger
          -q : mode silencieux : ne pas afficher de messages
         nom : nom de script (nom utilisé dans l'appel à la fonction "register")
        eval : évaluer le code source et afficher le résultat sur le tampon courant
          -o : envoyer le résultat de l'évaluation au tampon sans exécuter les commandes
         -oc : envoyer le résultat de l'évaluation au tampon et exécuter les commandes
        code : le code source à évaluer
     version : afficher la version de l'interpréteur utilisé

    Sans paramètre, cette commande liste les scripts chargés.

##### PHP コマンド

##### Python オプション

python.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set python.look.*` | 外観

オプション:

- python.look.check_license

  - description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- python.look.eval_keep_context

  - description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

##### Perl オプション

perl.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set perl.look.*` | 外観

オプション:

- perl.look.check_license

  - description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- perl.look.eval_keep_context

  - description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

##### Ruby オプション

ruby.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set ruby.look.*` | 外観

オプション:

- ruby.look.check_license

  - description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- ruby.look.eval_keep_context

  - description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

##### Lua オプション

lua.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set lua.look.*` | 外観

オプション:

- lua.look.check_license

  - description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- lua.look.eval_keep_context

  - description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

##### Tcl オプション

tcl.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set tcl.look.*` | 外観

オプション:

- tcl.look.check_license

  - description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- tcl.look.eval_keep_context

  - description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

##### Guile オプション

guile.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set guile.look.*` | 外観

オプション:

- guile.look.check_license

  - description: vérifier la licence des scripts quand ils sont chargés : si la licence est différente de la licence de l'extension, un avertissement est affiché

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `off`

- guile.look.eval_keep_context

  - description: garder le contexte entre deux appels à l'évaluation de code source (option "eval" de la commande de script ou info "%s_eval") ; un script caché est utilisé pour évaluer le code du script ; si cette option est désactivée, ce script caché est déchargé après chaque eval ; cela utilise moins de mémoire, mais est plus lent

  - type: booléen

  - valeurs: on, off

  - valeur par défaut: `on`

##### PHP オプション

php.conf ファイル内のセクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set php.look.*` | 外観

オプション:

## 16. サポート

サポートを依頼する前に、必ず WeeChat に付属するドキュメントと FAQ を読んでください。

IRC を使ったサポート窓口は irc.libera.chat サーバにあります:

- 公式チャンネル (開発者もいます):

  - #weechat (英語)

  - #weechat-fr (フランス語)

- 非公式チャンネル:

  - #weechat-de (ドイツ語)

  - #weechat-fi (フィンランド語)

For other ways of support, see this page ↗.