# WeeChat ユーザーズガイド

Sébastien Helleu
`<flashcode@flashtux.org>`
version 0.4.3, 2014-02-10

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

この文書の最新版は以下のページにあります: http://weechat.org/doc

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

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

### 1.1. 特徴

主な特徴:

- マルチプロトコル: IRC 及び Jabber (jabber.py スクリプトや bitlbee/minbif が必要)

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

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

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

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

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

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

WeeChat のホームページ: http://weechat.org/

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

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

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

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

- ncurses ライブラリ

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

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

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

- Debian (または Debian 互換ディストリビューション): `apt-get install weechat-curses`

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

- Gentoo: `emerge weechat`

- Arch Linux: `pacman -S weechat`

- Fedora Core: `yum install weechat`

- Sourcemage: `cast weechat`

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

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

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

WeeChat は cmake または autotools を使ってコンパイルできます (cmake を使うことが推奨されています)。

#### 2.2.1. 依存関係

以下の表は WeeChat のコンパイルに必須または任意で必要なパッケージのリストです。

パッケージ (1) | バージョン | 必須 | 機能
--- | --- | --- | ---
cmake |  | yes | ビルド (autotools でも可能ですが、cmake を推奨します)
libncursesw5-dev (2) |  | yes | ncurses インターフェイス
libcurl4-gnutls-dev |  | yes | URL 転送
zlib1g-dev |  | yes | relay プラグインでパケットを圧縮 (weechat プロトコル)、スクリプトプラグイン
libgcrypt11-dev |  | yes | 保護データ、IRC SASL 認証 (DH-BLOWFISH/DH-AES)、スクリプトプラグイン
libgnutls-dev | ≥ 2.2.0 |  | IRC サーバへの SSL 接続
gettext |  |  | 国際化 (メッセージの翻訳; ベース言語は英語です)
ca-certificates |  |  | SSL 接続に必要な証明書、relay プラグインで SSL サポート
libaspell-dev または libenchant-dev |  |  | aspell プラグイン
python-dev | ≥ 2.5 (3) |  | python プラグイン
libperl-dev |  |  | perl プラグイン
ruby1.9.1-dev | ≥ 1.8 |  | ruby プラグイン
liblua5.1-0-dev |  |  | lua プラグイン
tcl-dev | ≥ 8.5 |  | tcl プラグイン
guile-2.0-dev | ≥ 2.0 |  | guile (scheme) プラグイン
asciidoc | ≥ 8.5.0 |  | man ページと文書のビルド
source-highlight |  |  | 文書中のソースに対するシンタックスハイライト
xsltproc, docbook-xml, docbook-xsl |  |  | man ページのビルド

Note | (1) Debian GNU/Linux ディストリビューションにおけるパッケージ名です。 他のディストリビューションではバージョンとパッケージ名が異なるかもしれません。 (2) WeeChat は libncurses5-dev でもコンパイル可能ですが、これは推奨されません (ワイドキャラクタの表示にバグを生じるでしょう)。 (3) Python はバージョン 2.7 をお勧めします (全てのスクリプトはバージョン 2.7 で正しく動きますが、バージョン 2.6 以下または 3.0 以上では正しく動きません)。

#### 2.2.2. cmake によるコンパイル

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

    $ mkdir build
    $ cd build
    $ cmake ..
    $ make
    % make install    (as root)

- 任意のディレクトリにインストールする場合:

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

cmake に対するオプションを指定するには、以下のフォーマットを使ってください: "-DOPTION=VALUE".

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

オプション | 値 | デフォルト値 | 説明
--- | --- | --- | ---
`CMAKE_BUILD_TYPE` | `Debug`, `Release`, `RelWithDebInfo`, `MinSizeRel` | `` | ビルド形式: WeeChat の開発版を使っている場合は `Debug` (または `RelWithDebInfo`) を推奨します。
`PREFIX` | directory | `/usr/local` | WeeChat をインストールするディレクトリ。
`WEECHAT_HOME` | directory | `~/.weechat` | WeeChat 実行時のホームディレクトリ。
`CA_FILE` | file | `/etc/ssl/certs/ca-certificates.crt` | 認証局を含むファイル。これは weechat.network.gnutls_ca_file オプションのデフォルト値です。
`ENABLE_ALIAS` | `ON`, `OFF` | `ON` | Alias プラグインのコンパイル。
`ENABLE_ASPELL` | `ON`, `OFF` | `ON` | Aspell プラグインのコンパイル。
`ENABLE_CHARSET` | `ON`, `OFF` | `ON` | Charset プラグインのコンパイル。
`ENABLE_MAN` | `ON`, `OFF` | `OFF` | man ページのコンパイル。
`ENABLE_DOC` | `ON`, `OFF` | `OFF` | 文書のコンパイル (コンパイルには時間がかかります。文書を含めたバイナリパッケージをビルドする場合、オンラインで文書を見ることができない場合だけに推奨します)。
`ENABLE_ENCHANT` | `ON`, `OFF` | `OFF` | Enchant と含めた Aspell プラグインのコンパイル。
`ENABLE_FIFO` | `ON`, `OFF` | `ON` | Fifo プラグインのコンパイル。
`ENABLE_GNUTLS` | `ON`, `OFF` | `ON` | Gnutls の有効化 (SSL 用)。
`ENABLE_GUILE` | `ON`, `OFF` | `ON` | Guile プラグイン (Scheme) のコンパイル。
`ENABLE_IRC` | `ON`, `OFF` | `ON` | IRC プラグインのコンパイル
`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_PYTHON` | `ON`, `OFF` | `ON` | Python プラグインのコンパイル。
`ENABLE_PYTHON3` | `ON`, `OFF` | `OFF` | Python 3 を使った Python プラグインのコンパイル (多くのスクリプトは Python 3 と互換性がないため非推奨 です)。
`ENABLE_RELAY` | `ON`, `OFF` | `ON` | リレープラグインのコンパイル
`ENABLE_RMODIFIER` | `ON`, `OFF` | `ON` | Rmodifier プラグインのコンパイル
`ENABLE_RUBY` | `ON`, `OFF` | `ON` | Ruby プラグインのコンパイル
`ENABLE_SCRIPT` | `ON`, `OFF` | `ON` | スクリプトプラグインのコンパイル
`ENABLE_SCRIPTS` | `ON`, `OFF` | `ON` | すべてのスクリプトプラグイン (Python、Perl、Ruby、Lua、Tcl、Guile) のコンパイル
`ENABLE_TCL` | `ON`, `OFF` | `ON` | Tcl プラグインのコンパイル
`ENABLE_XFER` | `ON`, `OFF` | `ON` | Xfer プラグインのコンパイル

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

    $ cmake -LA

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

    $ ccmake ..

#### 2.2.3. autotools によるコンパイル

Warning | cmake 以外を用いた WeeChat のビルドは公式にサポートされません。cmake を利用できない場合のみ autotools を使ってください。 autotools を用いてビルドする場合、cmake よりも多くの依存パッケージとより長い時間が必要です。

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

    $ ./autogen.sh
    $ mkdir build
    $ cd build
    $ ../configure
    $ make
    % make install    (as root)

- 任意のディレクトリにインストールする場合:

    $ ./autogen.sh
    $ mkdir build
    $ cd build
    $ ../configure --prefix=/path/to/directory
    $ make
    $ make install

configure スクリプトに対してオプションを指定することができます、オプションを表示するには以下のコマンドを使ってください:

    $ ./configure --help

#### 2.2.4. Git ソース

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

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

    $ git clone git://git.sv.gnu.org/weechat.git

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

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

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

- デバッグを有効化してコンパイル (またはデバック情報を含んだバイナリパッケージをインストール)

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

- gdb のインストール

#### 2.2.6. デバッグ情報

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

    $ cmake .. -DCMAKE_BUILD_TYPE=Debug

autotools でコンパイルする場合は、デバックはデフォルトで有効化されています(`--with-debug=1`)。

バイナリパッケージをインストールする場合は、weechat-dbg パッケージをインストールしてください。

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

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

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

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

    gdb /usr/bin/weechat /home/xxx/core

Note | バイナリパッケージ weechat-dbg をインストールした場合 (例えば Debian で)、WeeChat バイナリへのパスは /usr/lib/debug/usr/bin/weechat のようになります。

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>

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

お手伝いに感謝します!

#### 2.2.9. 起動した WeeChat のデバッグ

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

    gdb /usr/bin/weechat 12345

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

    (gdb) bt full

## 3. 使い方

### 3.1. WeeChat の起動

コマンドライン引数:

-a, --no-connect

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

-c, --colors

  ターミナルにデフォルトカラーを表示

-d, --dir <path>

  WeeChat のホームディレクトリを path に設定 (設定ファイル、ログ、 ユーザプラグイン、スクリプトに利用される)、初期値は ~/.weechat 。 (注意: パスが存在しない場合は WeeChat がディレクトリを作成します)

-h, --help

  ヘルプを表示

-l, --license

  WeeChat ライセンスを表示

-p, --no-plugin

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

-r, --run-command <command>

  起動後にコマンドを実行 (複数のコマンドを指定するにはセミコロンで各コマンドを区切る)

-s, --no-script

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

--upgrade

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

-v, --version

  WeeChat のバージョンを表示

plugin:option

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

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

    $ weechat

初めて WeeChat を起動する場合、デフォルトのオプションで設定ファイルが作成されます。 このデフォルト設定ファイルは ~/.weechat/weechat.conf です。

WeeChat を設定するにはこのファイルを編集するか、 WeeChat 内で `/set` コマンドにパラメータを付けて設定します (WeeChat コマンドを参照)。

### 3.2. スクリーンレイアウト

WeeChat を起動したターミナルの例:

     ▼ "title" バー
    ┌───────────────────────────────────────────────────────────────────────────┐
    │Welcome to #test, this is a test channel                                   │
    │12:52:27   --> | Flashy (flashcode@weechat.org) has joined #test   │@Flashy│
    │12:52:27    -- | Nicks #test: [@Flashy @joe +weebot]               │@joe   │
    │12:52:27    -- | Channel #test: 4 nicks (2 ops, 1 voice, 1 normal) │+weebot│
    │12:52:27    -- | Channel created on Tue Jan 27 06:30:17 2009       │peter  │
    │12:54:15 peter | hey!                                              │       │
    │12:55:01  @joe | hello                                             │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │[12:55] [6] [irc/freenode] 3:#test(+n){4}* [H: 4:#abc(2,5), 6]             │
    │[@Flashy(i)] hi peter!█                                                    │
    └───────────────────────────────────────────────────────────────────────────┘
     ▲ "status" と "input" バー                               "nicklist" バー ▲

スクリーンは以下のエリアから成ります:

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

  - 時刻

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

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

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

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

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

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

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

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

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

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

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

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

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

バッファの例:

- コアバッファ (動時にy WeeChat が作成、閉じることはできない)

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

- irc チャンネル

- irc プライベート

window はバッファを表示するスクリーンエリアのことです。 スクリーンを複数のウィンドウに分割することができます。

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

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

                              ▼ ウィンドウ #2 (バッファ #4)
    ┌───────────────────────────────────────────────────────────────────────────┐
    │Welcome to #abc                                                            │
    │12:55:12     Max | hi                                              │@Flashy│
    │12:55:20 @Flashy | hi Max!                                         │Max    │
    │12:55:32     Max | how are you?                                    │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │[12:55] [6] [irc/freenode] 4:#abc(+n){2}                                   │
    │[@Flashy]                                                                  │
    │───────────────────────────────────────────────────────────────────────────│
    │Welcome to #test                                                           │
    │12:54:15 peter | hey!                                              │@Flashy│
    │12:55:01  @joe | hello                                             │@joe   │
    │                                                                   │+weebot│
    │                                                                   │peter  │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │                                                                   │       │
    │[12:55] [6] [irc/freenode] 3:#test(+n){4}                                  │
    │[@Flashy] hi peter!█                                                       │
    └───────────────────────────────────────────────────────────────────────────┘
                              ▲ ウィンドウ #1 (バッファ #3)

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

    ┌───────────────────────────────────────────────────────────────────────────┐
    │Welcome to #test                     │Welcome to #abc                      │
    │12:54:15 peter | hey!        │@Flashy│12:55:12     Max | hi        │@Flashy│
    │12:55:01  @joe | hello       │@joe   │12:55:20 @Flashy | hi Max!   │Max    │
    │                             │+weebot│                             │       │
    │                             │peter  │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │[12:55] [irc/oftc] 3:#test(+n){4}    │[12:55] [irc/oftc] 4:#abc(+n){2}     │
    │[@Flashy] hi peter!█                 │[@Flashy]                            │
    └───────────────────────────────────────────────────────────────────────────┘
          ▲ ウィンドウ #1 (バッファ #3)         ▲ ウィンドウ #2 (バッファ #4)

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

                                                ▼ ウィンドウ #3 (バッファ #5)
    ┌───────────────────────────────────────────────────────────────────────────┐
    │Welcome to #test                     │Welcome to #def                      │
    │12:54:15 peter | hey!        │@Flashy│12:55:42 @Flashy | hi        │@Flashy│
    │12:55:01  @joe | hello       │@joe   │12:55:56    alex | hi Flashy │alex   │
    │                             │+weebot│                             │       │
    │                             │peter  │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │[12:55] [irc/oftc] 5:#def(+n){2}     │
    │                             │       │[@Flashy]                            │
    │                             │       │─────────────────────────────────────│
    │                             │       │Welcome to #abc                      │
    │                             │       │12:55:12     Max | hi        │@Flashy│
    │                             │       │12:55:20 @Flashy | hi Max!   │Max    │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │                             │       │                             │       │
    │[12:55] [irc/oftc] 3:#test(+n){4}    │[12:55] [irc/oftc] 4:#abc(+n){2}     │
    │[@Flashy] hi peter!█                 │[@Flashy]                            │
    └───────────────────────────────────────────────────────────────────────────┘
          ▲ ウィンドウ #1 (バッファ #3)         ▲ ウィンドウ #2 (バッファ #4)

### 3.4. バー

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

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

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

オプション名 | 値 | 説明
--- | --- | ---
`type` | `root`、`window` | `root` 型のバーは画面に (全てのウィンドウの外に) 1 回だけ表示されます。デフォルトでは root バーはありませんが、buffers.pl スクリプトが作成する buffers バー (バッファのリストを含むサイドバー) が例の 1 つです。 `window` 型のバーは各ウィンドウに対して表示されます。例えば (`/window splith` や `/window splitv` で) 画面を 1 回分割する場合、それぞれのウィンドウにバーが 1 つ表示されます。4 つのデフォルトバー (title'、'status'、'input'、'nicklist) は `window` 型のバーです。
`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` | 文字列 | バーを表示する状態 (詳細は状態を参照)。

#### 3.4.1. アイテム

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

バーアイテムのリストは `/bar listitems` コマンドで表示されます。

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

アイテムを含むバーの例 "[time],buffer_number+:+buffer_plugin+.+buffer_name":

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

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

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

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

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

#### 3.4.2. フィリング

フィリングタイプには 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/freenode] 3:#test(+n){24}        │
    └──────────────────────────────────────────────────┘
                    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/freenode] 3:#test(+n){24}        │
    └──────────────────────────────────────────────────┘
            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 ▲

#### 3.4.3. 状態

conditions オプションはバーをウィンドウ内に表示するか否かを評価する文字列です (このオプションは window 型のバーだけに有効です)。

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

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

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

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

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

式に使える変数は以下:

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

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

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

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

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

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

ニックネームリストを持ち、ウィンドウ幅が 100 より大きい全てのバッファにニックネームリストバーを表示する例:

    /set weechat.bar.nicklist.conditions "${nicklist} && ${window.win_width} > 100"

上と同じだが、&bitlbee バッファでは常にニックネームリストを表示 (ウィンドウ幅が狭くても):

    /set weechat.bar.nicklist.conditions "${nicklist} && (${window.win_width} > 100 || ${buffer.full_name} == irc.bitlbee.&bitlbee)"

### 3.5. 通知レベル

バッファに表示された各メッセージには 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 サーバ "freenode" に含まれる全てのバッファに対して設定する場合:

    /set weechat.notify.irc.freenode message

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

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

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

    /buffer notify highlight

### 3.6. デフォルトのキー割り当て

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

キー | 説明 | コマンド
--- | --- | ---
← | コマンドラインで前の文字に移動 | `/input move_previous_char`
ctrl+b
→ | コマンドラインで次の文字に移動 | `/input move_next_char`
ctrl+f
ctrl+← | コマンドラインで前の単語に移動 | `/input move_previous_word`
alt+b
ctrl+→ | コマンドラインで次の単語に移動 | `/input move_next_word`
alt+f
Home | コマンドラインで行頭に移動 | `/input move_beginning_of_line`
ctrl+a
End | コマンドラインで行末に移動 | `/input move_end_of_line`
ctrl+e
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`
Del | コマンドラインで次の文字を削除 | `/input delete_next_char`
ctrl+d
Backsp. | コマンドラインで前の文字を削除 | `/input delete_previous_char`
ctrl+h
ctrl+k | コマンドラインでカーソルより後の文字列を削除 (削除された文字列はクリップボードに保存) | `/input delete_end_of_line`
ctrl+r | バッファ中の履歴からテキスト検索 (検索モード用のキーを参照) | `/input search_text`
ctrl+t | 文字の入れ替え | `/input transpose_chars`
ctrl+u | コマンドラインでカーソルより前の文字列を削除 (削除された文字列はクリップボードに保存) | `/input delete_beginning_of_line`
ctrl+w | コマンドラインで前の単語を削除 (削除された文字列はクリップボードに保存) | `/input delete_previous_word`
ctrl+y | クリップボードの内容を貼り付け | `/input clipboard_paste`
ctrl+_ | コマンドラインの最後の動作をやり直す | `/input undo`
alt+_ | コマンドラインの最後の動作を取り消す | `/input redo`
Tab | コマンドやニックネームを補完 (再度 Tab することで次の補完候補を表示) | `/input complete_next`
shift+Tab | 補完候補が無い場合: 部分補完を行う、補完候補が有る場合: 前の補完候補を表示 | `/input complete_previous`
Enter | コマンドを実行するか、メッセージを送信する (検索モードの場合: 検索の終了) | `/input return`
ctrl+j
ctrl+m
↑ | 前のコマンド/メッセージを呼び出す (検索モードの場合: 上方向に検索) | `/input history_previous`
↓ | 次のコマンド/メッセージを呼び出す (検索モードの場合: 下方向に検索) | `/input history_next`
ctrl+↑ | グローバル履歴から前のコマンド/メッセージを呼び出す (すべてのバッファに対して共通の履歴) | `/input history_global_previous`
ctrl+↓ | グローバル履歴から次のコマンド/メッセージを呼び出す (すべてのバッファに対して共通の履歴) | `/input history_global_next`
alt+d | コマンドラインで次の単語を削除 (削除された文字列はクリップボードに保存) | `/input delete_next_word`
alt+k | キー入力を奪って、コマンドラインにコード (キーが割り当てられていればコマンド) を入力 | `/input grab_key_command`
alt+r | コマンドラインへの入力をすべて削除 | `/input delete_line`
alt+s | aspell の有効無効を切り替え | `/mute aspell toggle`

#### 3.6.2. バッファ / ウィンドウ用のキー

キー | 説明 | コマンド
--- | --- | ---
ctrl+l (L) | 全ウィンドウを再描画 | `/window refresh`
ctrl+s, ctrl+u | すべてのバッファに未読マークをセット | `/input set_unread`
ctrl+x | 同じ番号を持つバッファにアタッチされていた場合、現在のバッファに移動 | `/input switch_active_buffer`
alt+x | マージされたバッファに再ズーム (alt+x: 全てのマージされたバッファを表示) | `/input zoom_merged_buffer`
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+← | 前のバッファに移動 | `/buffer -1`
alt+↑
ctrl+p
F5
alt+→ | 後のバッファに移動 | `/buffer +1`
alt+↓
ctrl+n
F6
F7 | ウィンドウを前に移動 | `/window -1`
F8 | ウィンドウを後に移動 | `/window +1`
F9 | バッファタイトルを左方向にスクロール | `/bar scroll title * -30%`
F10 | バッファタイトルを右方向にスクロール | `/bar scroll title * +30%`
F11 | ニックネームリストを上方向にスクロール | `/bar scroll nicklist * -100%`
F12 | ニックネームリストを下方向にスクロール | `/bar scroll nicklist * +100%`
alt+F11 | ニックネームリストを一番上にスクロール | `/bar scroll nicklist * b`
alt+F12 | ニックネームリストを一番下にスクロール | `/bar scroll nicklist * e`
alt+a | 変更のあった次のバッファに移動 (優先順位: ハイライト、新規メッセージ、その他) | `/input jump_smart`
alt+h | ホットリスト (他のバッファにあった変更通知リスト) を消去 | `/input hotlist_clear`
alt+j, alt+l (L) | 最後のバッファに移動 | `/input jump_last_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+m | マウスの有効無効を切り替え | `/mouse toggle`
alt+n | 次のハイライトまでスクロール | `/window scroll_next_highlight`
alt+p | 前のハイライトまでスクロール | `/window scroll_previous_highlight`
alt+u | バッファを最初の未読行までスクロール | `/window scroll_unread`
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`
alt+< | バッファ訪問履歴で前のバッファに移動 | `/input jump_previously_visited_buffer`
alt+> | バッファ訪問履歴で次のバッファに移動 | `/input jump_next_visited_buffer`
alt+/ | 最後に表示したバッファに移動 (バッファ移動前に表示していたウィンドウ) | `/input jump_last_buffer_displayed`
alt+= | フィルタの有効無効を切り替え | `/filter toggle`

#### 3.6.3. "検索" モード用のキー

以下のキーは "検索" モード (バッファ内のテキスト検索用に 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 | 検索を終了 | `/input search_stop`
ctrl+j
ctrl+m

#### 3.6.4. "カーソル" モード用のキー

以下のキーは "カーソル" モード (スクリーン上でカーソルを自由に動かせる状態) でのみ有効です。

キー | エリア | 説明 | コマンド
--- | --- | --- | ---
↑ | - | カーソルを上の行に移動 | `/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`
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 | - | カーソルモードを終了 | `/cursor stop`
ctrl+j
ctrl+m

#### 3.6.5. "マウス" モード用のキー

以下のキーは "マウス" モード (マウスイベントが発生したとき) でのみ有効です。

ボタン(1) | ジェスチャー | エリア | 説明 | コマンド
--- | --- | --- | --- | ---
◾◽◽ | - | チャット | ウィンドウに移動 | `/window ${_window_number}`
◾◽◽ | 左 | チャット | 前のバッファに移動 | `/window ${_window_number};/buffer +1`
◾◽◽ | 右 | チャット | 次のバッファに移動 | `/window ${_window_number};/buffer +1`
◾◽◽ | 左 (長く) | チャット | 最初のバッファに移動 | `/window ${_window_number};/buffer 1`
◾◽◽ | 右 (長く) | チャット | 最後のバッファに移動 | `/window ${_window_number};/input jump_last_buffer`
◾◽◽ | - | チャット (スクリプトバッファ) | スクリプトバッファで行選択 | `/script go ${_chat_line_y}`
◽◽◾ | - | チャット (スクリプトバッファ) | スクリプトのインストール `/ 削除 |
⇑ | - | チャット | バッファ履歴を上方向にスクロール | `/window scroll_up -window ${_window_number}`
⇓ | - | チャット | バッファ履歴を下方向にスクロール | `/window scroll_down -window ${_window_number}`
⇑ | - | チャット (スクリプトバッファ) | スクリプトバッファを 5 行上方向にスクロール | `/script up 5`
⇓ | - | チャット (スクリプトバッファ) | スクリプトバッファで 5 行下方向にスクロール | `/script down 5`
ctrl+⇑ | - | チャット | 水平左方向にスクロール | `/window scroll_horiz -window ${_window_number} -10%`
ctrl+⇓ | - | チャット | 水平右方向にスクロール | `/window scroll_horiz -window ${_window_number} +10%`
◾◽◽ | 上 | ニックネームリスト | ニックネームリストを 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}`

Note | (1) "⇑" と "⇓" はホイールの上方向回転と下方向回転に対応します。

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

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

#### 3.7.1. マウスの有効化

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

    /set weechat.look.mouse on

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

    /mouse enable

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

    /key bind meta-x /mouse toggle 10

WeeChat でマウスが有効化されている場合、shift 修飾キーで選択やクリックができます。これでマウスが無効化されている場合と同じ作業が行えます (iTerm 等の端末では shift の代わりに alt を使ってください)。

Note | マウスに関するトラブルがあれば WeeChat FAQ を参照してください。

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

WeeChat はデフォルトマウスイベントの多くを定義しています ("マウス" モード用のキーを参照)。

`/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`

- …

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

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

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

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

#### 3.8.1. 文法

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

    /set

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

    hello

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

    //set

### 3.9. 色コード

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, _

  テキストに下線を引く

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

ctrl+c, c 用の色コード:

コード | IRC | WeeChat (curses)
--- | --- | ---
`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` | 灰色 | gray
`15` | 明るい灰色 | white

例: "こんにちは皆さん!" の "こんにちは" を太字の明るい青、"皆さん" を下線付きの明るい赤に表示したい場合:

    ^Cc12^Cbこんにちは^Cb^Cc04^Cu皆さん^Cu^Cc!

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

### 3.10. 色

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

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

$TERM | 色 | ペア (1)
--- | --- | ---
"rxvt-unicode", "xterm", … | 88 | 256
"rxvt-256color", "xterm-256color", … | 256 | 32767
"screen" | 8 | 64
"screen-256color" | 256 | 32767

Note | (1) 端末が 256 ペア以上の表示をサポートしていても、WeeChat では ncurses の制限により 256 ペア以上の表示は行えません。

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

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

- screen の中: screen-256color

- screen の外: xterm-256color 、rxvt-256color 、putty-256color 、…

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

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

    term screen-256color

TERM 環境変数に間違った値が設定された状態で WeeChat を起動しても、あわてないでください! shell.py スクリプトを使えば WeeChat を再起動せずに環境変数の値を変更できます。

    /shell setenv TERM=screen-256color
    /upgrade

#### 3.10.1. 基本色

WeeChat における基本色とは:

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

#### 3.10.2. 拡張色

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

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

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

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

    /set weechat.color.chat_time 214

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

    /set weechat.bar.status.color_bg 22

#### 3.10.3. 別名

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

例:

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

#### 3.10.4. 属性

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

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

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

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

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

- `|` : 属性を保持: 色を変えた際に太字/反転/下線属性をリセットしない

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

    /set weechat.color.chat_nick_self _white

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

    /set weechat.color.status_time *_214

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

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

    /set weechat.color.status_time *99999

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

#### 3.11.1. 保護データのオプション (sec.conf)

セクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`crypt` | `/set sec.crypt.*` | 暗号化に関するオプション
`data` | `/secure` | 保護データ

オプション:

- sec.crypt.cipher

  - 説明: `データの暗号化を行う暗号鍵 (アルゴリズムの後ろに書かれた数は鍵のビット数)`

  - タイプ: 整数

  - 値: aes128, aes192, aes256 (デフォルト値: `aes256`)

- sec.crypt.hash_algo

  - 説明: `復号化データをチェックするハッシュアルゴリズム`

  - タイプ: 整数

  - 値: sha224, sha256, sha384, sha512 (デフォルト値: `sha256`)

- sec.crypt.passphrase_file

  - 説明: `保護データを暗号化/複合化するためのパスフレーズを保存したファイルパス; このオプションは sec.conf ファイルを読むときだけに利用されます; ファイルの 1 行目だけが利用されます; このファイルは環境変数 "WEECHAT_PASSPHRASE" が設定されていないときだけに利用されます (環境変数のほうが優先順位が高いです); セキュリティ上の注意: このファイルを自分だけが読み込める状態にし、WeeChat ホームの外 (例えば自分のホームディレクトリ) に保存しておくことを推奨します; 例: "~/.weechat-passphrase"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- sec.crypt.salt

  - 説明: `暗号化に利用する鍵を生成する場合は salt を利用してください (安全措置を厳重にするため); 有効化した場合、sec.conf ファイルに含まれる暗号化されたデータの内容はファイル書き込みの度に違うものになります; sec.conf ファイルをバージョン管理システムで管理している場合、常に同じ内容が書き込まれるようにこのオプションを無効化してください`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

#### 3.11.2. 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.*` | ネットワーク/SSL オプション
`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

  - 説明: `バーをスクロールする際の '+' のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightmagenta`)

- weechat.color.chat

  - 説明: `チャットのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.chat_bg

  - 説明: `チャットの背景色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.chat_buffer

  - 説明: `バッファ名のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- weechat.color.chat_channel

  - 説明: `チャンネル名のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- weechat.color.chat_day_change

  - 説明: `日付が変わった時に表示されるメッセージのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `cyan`)

- weechat.color.chat_delimiters

  - 説明: `区切りのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `green`)

- weechat.color.chat_highlight

  - 説明: `ハイライトされたプレフィックスのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- weechat.color.chat_highlight_bg

  - 説明: `ハイライトされたプレフィックスの背景色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `magenta`)

- weechat.color.chat_host

  - 説明: `ホスト名のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `cyan`)

- weechat.color.chat_inactive_buffer

  - 説明: `行へのフォーカスがなくなった場合の (バッファが他のバッファとマージされていて選択されていない場合の) のチャットのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.chat_inactive_window

  - 説明: `ウィンドウへのフォーカスがなくなった場合 (選択されていないウィンドウ) のチャットのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.chat_nick

  - 説明: `チャットウィンドウ内のニックネームのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightcyan`)

- weechat.color.chat_nick_colors

  - 説明: `ニックネームのテキスト色 (コンマ区切りの色リスト、背景色は以下のフォーマットで指定: "fg:bg"、例: "lightred:blue")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"cyan,magenta,green,brown,lightblue,default,lightcyan,lightmagenta,lightgreen,blue"`)

- weechat.color.chat_nick_offline

  - 説明: `オフラインのニックネームのテキスト色 (ニックネームリストにも表示されない)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.chat_nick_offline_highlight

  - 説明: `ハイライトされたオフラインのニックネームのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.chat_nick_offline_highlight_bg

  - 説明: `ハイライトされたオフラインのニックネームの背景色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `blue`)

- weechat.color.chat_nick_other

  - 説明: `プライベートバッファ内の他のニックネームのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `cyan`)

- weechat.color.chat_nick_prefix

  - 説明: `ニックネームプレフィックスの色 (プレフィックス中のニックネームの前に表示される文字列)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `green`)

- weechat.color.chat_nick_self

  - 説明: `チャットウィンドウ内のローカルニックネームのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- weechat.color.chat_nick_suffix

  - 説明: `ニックネームサフィックスの色 (プレフィックス中のニックネームの後に表示される文字列)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `green`)

- weechat.color.chat_prefix_action

  - 説明: `アクションプレフィックスのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- weechat.color.chat_prefix_buffer

  - 説明: `バッファ名のテキスト色 (多くのバッファが同じ番号を持つものにマージされている場合は、プレフィックスの前)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `brown`)

- weechat.color.chat_prefix_buffer_inactive_buffer

  - 説明: `非アクティブバッファ名のテキスト色 (多くのバッファが同じ番号を持つものにマージされ、バッファが選択されていない場合は、プレフィックスの前)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.chat_prefix_error

  - 説明: `エラープレフィックスのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- weechat.color.chat_prefix_join

  - 説明: `join プレフィックスのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightgreen`)

- weechat.color.chat_prefix_more

  - 説明: `プレフィックスが長すぎる場合の '+' のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightmagenta`)

- weechat.color.chat_prefix_network

  - 説明: `ネットワークプレフィックスのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `magenta`)

- weechat.color.chat_prefix_quit

  - 説明: `quit プレフィックスのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightred`)

- weechat.color.chat_prefix_suffix

  - 説明: `サフィックスのテキスト色 (プレフィックスの後ろ)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `green`)

- weechat.color.chat_read_marker

  - 説明: `未読データマーカーのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `magenta`)

- weechat.color.chat_read_marker_bg

  - 説明: `未読データマーカーの背景色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.chat_server

  - 説明: `サーバ名のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `brown`)

- weechat.color.chat_tags

  - 説明: `メッセージの後ろのタグのテキスト色 (/debug tags コマンドで表示)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `red`)

- weechat.color.chat_text_found

  - 説明: `テキスト検索にヒットした行のマーカーのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- weechat.color.chat_text_found_bg

  - 説明: `テキスト検索にヒットした行のマーカーの背景色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightmagenta`)

- weechat.color.chat_time

  - 説明: `チャットウィンドウ内の時間のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.chat_time_delimiters

  - 説明: `時間区切りのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `brown`)

- weechat.color.chat_value

  - 説明: `値のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `cyan`)

- weechat.color.emphasized

  - 説明: `強調テキストの色 (テキスト検索する際など); このオプションは weechat.look.emphasized_attributes オプションが空文字列 (デフォルト値) の場合のみ使われます`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- weechat.color.emphasized_bg

  - 説明: `強調テキストの背景色 (テキスト検索する際など); このオプションは weechat.look.emphasized_attributes オプションが空文字列 (デフォルト値) の場合のみ使われます`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `magenta`)

- weechat.color.input_actions

  - 説明: `入力がアクションの場合のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightgreen`)

- weechat.color.input_text_not_found

  - 説明: `入力行のテキスト検索に失敗した場合のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `red`)

- weechat.color.nicklist_away

  - 説明: `離席状態のニックネームのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `cyan`)

- weechat.color.nicklist_group

  - 説明: `ニックネームリスト内のグループのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `green`)

- weechat.color.nicklist_offline

  - 説明: `オフラインのニックネームのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `blue`)

- weechat.color.separator

  - 説明: `ウィンドウセパレータ (分割時) とバーセパレータ (ニックネームリスト等) の色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `blue`)

- weechat.color.status_count_highlight

  - 説明: `ホットリスト内のハイライトメッセージ数のテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `magenta`)

- weechat.color.status_count_msg

  - 説明: `ホットリスト内のメッセージ数のテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `brown`)

- weechat.color.status_count_other

  - 説明: `ホットリスト内のその他のメッセージ数のテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.status_count_private

  - 説明: `ホットリスト内のプライベートメッセージ数のテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `green`)

- weechat.color.status_data_highlight

  - 説明: `ハイライトメッセージを受け取ったバッファのテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightmagenta`)

- weechat.color.status_data_msg

  - 説明: `新しいメッセージを受け取ったバッファのテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- weechat.color.status_data_other

  - 説明: `新しいデータ (メッセージ以外) を受け取ったバッファのテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.color.status_data_private

  - 説明: `プライベートメッセージを受けとったバッファのテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightgreen`)

- weechat.color.status_filter

  - 説明: `ステータスバーのフィルタ表示のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `green`)

- weechat.color.status_more

  - 説明: `新しいデータを受け取ったバッファのテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- weechat.color.status_name

  - 説明: `ステータスバーの現在のバッファ名のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- weechat.color.status_name_ssl

  - 説明: `SSL などでセキュリティプロトコルを使っている場合のステータスバーの現在のバッファ名のテキスト色、`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightgreen`)

- weechat.color.status_number

  - 説明: `ステータスバーの現在のバッファ番号のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- weechat.color.status_time

  - 説明: `時間のテキスト色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- weechat.completion.base_word_until_cursor

  - 説明: `有効化された場合、補完する元単語はカーソル前の文字で終了; そうでなければ元単語はカーソル後の最初の文字で終了`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.completion.default_template

  - 説明: `デフォルトの補完テンプレート (テンプレートコードと値のドキュメントを参照: プラグイン API リファレンス、"weechat_hook_command" 関数)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%(nicks)|%(irc_channels)"`)

- weechat.completion.nick_add_space

  - 説明: `ニックネーム補完の後に空白を追加 (コマンドラインの最初がニックネームでない場合は)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.completion.nick_completer

  - 説明: `ニックネーム補完の後に追加する文字列 (ニックネームがコマンドラインの最初にある場合)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `":"`)

- weechat.completion.nick_first_only

  - 説明: `最初に見つかったニックネームだけを補完`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.completion.nick_ignore_chars

  - 説明: `ニックネーム補完で無視する文字`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"[]`_-^"`)

- weechat.completion.partial_completion_alert

  - 説明: `補完候補が複数あった場合にユーザに警告`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.completion.partial_completion_command

  - 説明: `コマンドでの部分補完 (同じ文字を含む多くのコマンドが見つかった場合は止める)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.completion.partial_completion_command_arg

  - 説明: `コマンド引数での部分補完 (同じプレフィックスを持つ多くの引数が見つかった場合は止める)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.completion.partial_completion_count

  - 説明: `バーアイテム内の部分補完数を表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.completion.partial_completion_other

  - 説明: `コマンド外での部分補完 (同じ文字を含む多くのコマンドが見つかった場合は止め)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.history.display_default

  - 説明: `履歴をリストアップする際にデフォルトで表示するコマンドの最大数 (0 = 制限無し)`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `5`)

- weechat.history.max_buffer_lines_minutes

  - 説明: `バッファ毎の履歴の保存時間 (分) (0 = 制限無し); 例: 1440 = 一日、10080 = 一週間、43200 = 一ヶ月、525600 = 一年間; weechat.history.max_buffer_lines_number オプションが 0 以外の場合には 0 を指定してください`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `0`)

- weechat.history.max_buffer_lines_number

  - 説明: `バッファ毎の履歴行数 (0 = 制限無し); weechat.history.max_buffer_lines_minutes オプションが 0 以外の場合には 0 を指定してください`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `4096`)

- weechat.history.max_commands

  - 説明: `履歴に保存するユーザコマンド数 (0 = 制限無し、メモリ使用量の制限が無くなるため非推奨)`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `100`)

- weechat.history.max_visited_buffers

  - 説明: `メモリに保存する観覧バッファの数`

  - タイプ: 整数

  - 値: 0 .. 1000 (デフォルト値: `50`)

- weechat.look.align_end_of_lines

  - 説明: `行末の調節 (2 行以上になる行): このデータ (time、buffer、prefix、suffix、message (デフォルト)) の下から始められる`

  - タイプ: 整数

  - 値: time, buffer, prefix, suffix, message (デフォルト値: `message`)

- weechat.look.bar_more_down

  - 説明: `バーを下方向にスクロール出来る場合に表示される文字列 (水平方向詰め以外の属性を持つバー)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"++"`)

- weechat.look.bar_more_left

  - 説明: `バーを左方向にスクロール出来る場合に表示される文字列 (水平方向詰めの属性を持つバー用)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"<<"`)

- weechat.look.bar_more_right

  - 説明: `バーを右方向にスクロール出来る場合に表示される文字列 (水平方向詰めの属性を持つバー用)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `">>"`)

- weechat.look.bar_more_up

  - 説明: `バーを上方向にスクロール出来る場合に表示される文字列 (水平方向詰め以外の属性を持つバー)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"--"`)

- weechat.look.buffer_auto_renumber

  - 説明: `自動的に番号を割り当てる場合、1 から始まる連番になります; 無効にした場合、バッファ番号に欠番が許され、最初のバッファに1より大きなバッファ番号を割り当てることが可能になります`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.buffer_notify_default

  - 説明: `バッファに対するデフォルトの通知レベル (メッセージの重要度に従い、バッファがホットリストに表示されるかどうかを WeeChat に教えるために使われる): all=全てのメッセージ (デフォルト)、message=メッセージとハイライト、highlight=ハイライトのみ、none=ホットリストに表示されない`

  - タイプ: 整数

  - 値: none, highlight, message, all (デフォルト値: `all`)

- weechat.look.buffer_position

  - 説明: `新しいバッファの位置: end = リストの最後 (番号 = 最後の番号 + 1) (デフォルト)、first_gap = リスト中に最初に現れる利用可能な番号 (どの番号も使えない場合、リストの最後); このオプションはレイアウト番号を持たないバッファの場合に利用されます`

  - タイプ: 整数

  - 値: end, first_gap (デフォルト値: `end`)

- weechat.look.buffer_search_case_sensitive

  - 説明: `デフォルトのバッファテキスト検索: 大文字小文字を区別するかしないか`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.buffer_search_force_default

  - 説明: `バッファテキスト検索のデフォルト値を強制する (バッファで最後に検索した値を使わない)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.buffer_search_regex

  - 説明: `デフォルトのバッファテキスト検索: 有効の場合は正規表現で検索、無効の場合は単純な文字列で検索`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.buffer_search_where

  - 説明: `デフォルトのバッファテキスト検索: メッセージ中、プレフィックス中、プレフィックスとメッセージ中`

  - タイプ: 整数

  - 値: prefix, message, prefix_message (デフォルト値: `message`)

- weechat.look.buffer_time_format

  - 説明: `バッファに表示される行に付く時間フォーマット (日付/時間の指定子は strftime の man を参照) (注意: 値は評価されるため "${color:xxx}" フォーマットで色を指定出来ます、/help eval を参照); 例えばグレースケールを使う時間の例 (256 色のサポートが必要): "${color:252}%H${color:245}%M${color:240}%S"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%H:%M:%S"`)

- weechat.look.color_basic_force_bold

  - 説明: `明るい色と標準的な色の "darkgray" には "太字" 属性を強制 (このオプションはデフォルトでは無効: 太字はターミナルが 16 色以下の表示能力しかない場合に利用される)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.color_inactive_buffer

  - 説明: `アクティブでないバッファでは行に異なる色を使用 (行が未選択のマージバッファからの場合)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.color_inactive_message

  - 説明: `アクティブでないメッセージに異なる色を使用 (ウィンドウにフォーカスが無いか、行が未選択のマージバッファからの場合)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.color_inactive_prefix

  - 説明: `アクティブでないプレフィックスに異なる色を使用 (ウィンドウにフォーカスが無いか、行が未選択のマージバッファからの場合)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.color_inactive_prefix_buffer

  - 説明: `アクティブでないバッファ名のプレフィックスに異なる色を使用 (ウィンドウにフォーカスが無いか、行が未選択のマージバッファからの場合)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.color_inactive_time

  - 説明: `アクティブでない時間は異なる色を使用 (ウィンドウにフォーカスが無いか、行が未選択のマージバッファからの場合)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.color_inactive_window

  - 説明: `アクティブでないウィンドウでは行に異なる色を使用 (ウィンドウにフォーカスが無い場合)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.color_nick_offline

  - 説明: `オフライン状態のニックネームに異なる色を使用 (ニックネームリストにも表示しない)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.color_pairs_auto_reset

  - 説明: `利用可能なペアの数がこの数以下になった場合、色ペアテーブルを自動的にリセット (-1 = 自動リセットを無効化、テーブルが一杯になったら手動で "/color reset")`

  - タイプ: 整数

  - 値: -1 .. 256 (デフォルト値: `5`)

- weechat.look.color_real_white

  - 説明: `セットされた場合、本当の白色が使われる、白色背景のターミナルではデフォルトで無効 (白色背景を絶対に使わないなら、ターミナルの前景色の代わりに本当の白色を表示するためにはこれを on にするべき)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.command_chars

  - 説明: `入力文字列がコマンドかどうかを決定する文字列: 入力はこれらの文字の内の一つから始まらなければいけない; スラッシュ ("/") は常にコマンドプレフィックスとして扱われる (例: ".$")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.confirm_quit

  - 説明: `セットされた場合、/quit コマンドは "-yes" 引数と共に使われなければいけない (help quit を参照)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.day_change

  - 説明: `日付が変わった際に特殊メッセージを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.day_change_message_1date

  - 説明: `日付が変わった時に表示される時間のフォーマット、1 つの日付を表示 (例えばバッファの最初に) (日付/時間指定子は strftime の man を参照) (注意: 値は評価されるため "${color:xxx}" フォーマットで色を指定出来ます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"-- %a, %d %b %Y --"`)

- weechat.look.day_change_message_2dates

  - 説明: `日付が変わった時に表示される時間のフォーマット、2 つの日付を表示 (2 つのメッセージの間に); 文字列に対して strftime は 2 回呼び出されるため、2 番目の日付指定子は 2 つの "%" で始めてください (日付/時間指定子は strftime の man を参照) (注意: 値は評価されるため "${color:xxx}" フォーマットで色を指定出来ます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"-- %%a, %%d %%b %%Y (%a, %d %b %Y) --"`)

- weechat.look.eat_newline_glitch

  - 説明: `セットされた場合、eat_newline_glitch は 0 になる; これは各行の末尾に新しい行を追加しないために使われ、WeeChat から別のアプリケーションにテキストをコピー/ペーストする際にテキストの改行を行わない (致命的な表示上の問題を引き起こすため、このオプションはデフォルトで無効化されている)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.emphasized_attributes

  - 説明: `強調テキストの属性: 1 つまたは複数の属性文字 ("*" は太字、"!" は反転、"/" はイタリック、"_" は下線); 文字列が空の場合、weechat.color.emphasized* の色が使われます`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.highlight

  - 説明: `コンマ区切りのハイライトされる単語リスト; 大文字小文字の区別無し (単語の最初に "(?-i)" をつければ区別有り)、部分マッチさせるには単語の最初か最後に "*" をつける; 例: "test,(?-i)*toto*,flash*"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.highlight_regex

  - 説明: `メッセージ中のハイライトの有無を判断する POSIX 拡張正規表現、マッチ部分は必ず区切り文字 (アルファベット、"-"、"_"、"|" 以外の文字) で囲まれていなければいけない、正規表現は大文字小文字を区別しない (最初に "(?-i)" がある場合は区別する)、例: "flashcode|flashy"、"(?-i)FlashCode|flashy"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.highlight_tags

  - 説明: `ハイライトするタグのコンマ区切りリスト; 大文字小文字の区別なし; 1 つ以上のタグにマッチさせるには各タグの最初と最後に "*" をつけてください; 論理積 "and" を取るにはタグ同士を "+" でつなげてください; 例: ニックネーム "FlashCode" からのメッセージは "nick_flashcode"、ニックネームが "toto" で始まるユーザからの notice メッセージは "irc_notice+nick_toto*"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.hotlist_add_buffer_if_away

  - 説明: `バッファにローカル変数 "away" がセットされていれば任意のバッファをホットリストに追加 (現在のバッファと目に見えるバッファを含む)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.hotlist_buffer_separator

  - 説明: `ホットリストにあるバッファの間に表示される文字列`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `", "`)

- weechat.look.hotlist_count_max

  - 説明: `任意のバッファに関するホットリストに表示されるメッセージ数の最大値 (0 = メッセージ数は非表示)`

  - タイプ: 整数

  - 値: 0 .. 4 (デフォルト値: `2`)

- weechat.look.hotlist_count_min_msg

  - 説明: `メッセージの数がこの値以上の場合にメッセージ数を表示`

  - タイプ: 整数

  - 値: 1 .. 100 (デフォルト値: `2`)

- weechat.look.hotlist_names_count

  - 説明: `ホットリストに載せるバッファ名の数の最大値 (0 = バッファ名は無し、番号のみ)`

  - タイプ: 整数

  - 値: 0 .. 10000 (デフォルト値: `3`)

- weechat.look.hotlist_names_length

  - 説明: `ホットリストに載せるバッファ名の長さの最大値 (0 = 制限無し)`

  - タイプ: 整数

  - 値: 0 .. 32 (デフォルト値: `0`)

- weechat.look.hotlist_names_level

  - 説明: `ホットリストに載せる名前のレベル (次の組み合わせ: 1=join/part、2=メッセージ、4=プライベートメッセージ、8=ハイライト、例: 12=プライベートメッセージとハイライト)`

  - タイプ: 整数

  - 値: 1 .. 15 (デフォルト値: `12`)

- weechat.look.hotlist_names_merged_buffers

  - 説明: `セットされた場合、マージバッファに対してホットリストにバッファ名を載せることを強制`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.hotlist_prefix

  - 説明: `ホットリストの最初に表示されるテキスト`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"H: "`)

- weechat.look.hotlist_short_names

  - 説明: `セットされた場合、ホットリストではバッファ名に短い名前を使う (名前に含まれる最初の '.' 以降)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.hotlist_sort

  - 説明: `ホットリストのソートタイプ (group_time_asc (デフォルト)、group_time_desc、group_number_asc、group_number_desc、number_asc、number_desc)`

  - タイプ: 整数

  - 値: group_time_asc, group_time_desc, group_number_asc, group_number_desc, number_asc, number_desc (デフォルト値: `group_time_asc`)

- weechat.look.hotlist_suffix

  - 説明: `ホットリストの最後に表示されるテキスト`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.hotlist_unique_numbers

  - 説明: `ホットリストには一意の番号だけを保持 (これは番号の後ろに名前が表示されていないホットリストアイテムだけに適用されます)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.input_cursor_scroll

  - 説明: `行の最後までスクロールする際に入力行の最後に続けて表示される文字の数`

  - タイプ: 整数

  - 値: 0 .. 100 (デフォルト値: `20`)

- weechat.look.input_share

  - 説明: `全てのバッファでコマンド、テキスト、または両方の入力を共有 (バッファごとのローカル履歴に影響無し)`

  - タイプ: 整数

  - 値: none, commands, text, all (デフォルト値: `none`)

- weechat.look.input_share_overwrite

  - 説明: `セットされ、入力が共有された場合、ターゲットバッファの入力は常に上書きされます`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.input_undo_max

  - 説明: `バッファごとのコマンドラインの "undo" 回数の上限値 (0 = アンドゥは無効)`

  - タイプ: 整数

  - 値: 0 .. 65535 (デフォルト値: `32`)

- weechat.look.item_buffer_filter

  - 説明: `現在のバッファで何行かがフィルタされたことを示す文字列 (バーアイテム "buffer_filter")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"*"`)

- weechat.look.item_buffer_zoom

  - 説明: `マージされたバッファでズームされたことを示す文字列 (バーアイテム "buffer_zoom")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"!"`)

- weechat.look.item_time_format

  - 説明: `"time" バーアイテムの時間フォーマット (日付/時間指定子は strftime の man を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%H:%M"`)

- weechat.look.jump_current_to_previous_buffer

  - 説明: `他のバッファへの移動と現在のバッファに戻ることを簡単にするために、/buffer *N (N はバッファ番号) で現在のバッファ番号に移動した場合は、表示上の一つ前のバッファに移動する`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.jump_previous_buffer_when_closing

  - 説明: `バッファを閉じた場合は一つ前に訪れていたバッファに移動 (無効にされた場合は、バッファ番号の一つ少ないものに移動)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.jump_smart_back_to_buffer

  - 説明: `ホットリストの最後に到達したら最初のバッファに移動する`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.key_bind_safe

  - 説明: `"危険な" キー (ctrl または meta コードで始まらないキー) の割り当てを禁止`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.mouse

  - 説明: `マウスサポートの有効化`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.mouse_timer_delay

  - 説明: `マウスイベントを横取りするための遅延 (ミリ秒): WeeChat はイベント処理前にこの遅延時間だけ待つ`

  - タイプ: 整数

  - 値: 1 .. 10000 (デフォルト値: `100`)

- weechat.look.nick_prefix

  - 説明: `メッセージプレフィックス中のニックネームの前に表示するテキスト、例: "<"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.nick_suffix

  - 説明: `メッセージプレフィックス中のニックネームの後に表示するテキスト、例: ">"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.paste_bracketed

  - 説明: `端末の「括弧付きペーストモード」を有効化 (一部の端末/マルチプレクサで利用可能): このモードでは、ペーストされたテキストはコントロールシーケンスで括られます。これにより WeeChat はペーストされたテキストとタイプされたテキストを区別する ("ESC[200~" 、ペーストされたテキスト、"ESC[201~")`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.paste_bracketed_timer_delay

  - 説明: `括弧付きペーストの終了を示すコントロールシーケンス ("ESC[201~") が入力されなかった場合に、括弧付きペーストを強制終了させるまでの待ち時間 (秒単位)`

  - タイプ: 整数

  - 値: 1 .. 60 (デフォルト値: `10`)

- weechat.look.paste_max_lines

  - 説明: `ユーザへの確認無しにペーストする行数の最大値 (-1 = この機能を無効化)`

  - タイプ: 整数

  - 値: -1 .. 2147483647 (デフォルト値: `1`)

- weechat.look.prefix_action

  - 説明: `アクションメッセージのプレフィックス (注意: 値は評価されるため、"${color:xxx}" フォーマットを使えば色を指定することも出来ます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `" *"`)

- weechat.look.prefix_align

  - 説明: `プレフィックスの調節 (none、left、right (デフォルト))`

  - タイプ: 整数

  - 値: none, left, right (デフォルト値: `right`)

- weechat.look.prefix_align_max

  - 説明: `プレフィックスのサイズの最大値 (0 = 最大値の指定無し)`

  - タイプ: 整数

  - 値: 0 .. 128 (デフォルト値: `0`)

- weechat.look.prefix_align_min

  - 説明: `プレフィックスサイズの最小値`

  - タイプ: 整数

  - 値: 0 .. 128 (デフォルト値: `0`)

- weechat.look.prefix_align_more

  - 説明: `プレフィックスが切り詰められた場合に表示する文字 (スクリーン上のちょうど 1 文字)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"+"`)

- weechat.look.prefix_align_more_after

  - 説明: `テキストの後ろに切り捨て文字 (デフォルトでは "+") を表示 (この場所に表示されるべき空白を置換する); 無効化した場合、テキストの最後の文字が切り捨て文字になります`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.prefix_buffer_align

  - 説明: `多くのバッファが同じ番号を持つようにマージされた場合に、バッファ名のプレフィックスを調節 (none, left, right (デフォルト))`

  - タイプ: 整数

  - 値: none, left, right (デフォルト値: `right`)

- weechat.look.prefix_buffer_align_max

  - 説明: `多くのバッファが同じ番号を持つようにマージされた場合の、バッファ名のサイズの最大値 (0 = 最大値の指定無し)`

  - タイプ: 整数

  - 値: 0 .. 128 (デフォルト値: `0`)

- weechat.look.prefix_buffer_align_more

  - 説明: `バッファ名が切り詰められた場合に表示する文字 (多くのバッファが同じ番号を持つようにマージされた場合) (スクリーン上のちょうど1文字)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"+"`)

- weechat.look.prefix_buffer_align_more_after

  - 説明: `テキストの後ろに切り捨て文字 (デフォルトでは "+") を表示 (この場所に表示されるべき空白を置換する); 無効化した場合、テキストの最後の文字が切り捨て文字になります`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.prefix_error

  - 説明: `エラーメッセージのプレフィックス (注意: 値は評価されるため、"${color:xxx}" フォーマットを使えば色を指定することも出来ます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"=!="`)

- weechat.look.prefix_join

  - 説明: `参加メッセージのプレフィックス (注意: 値は評価されるため、"${color:xxx}" フォーマットを使えば色を指定することも出来ます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"-->"`)

- weechat.look.prefix_network

  - 説明: `ネットワークメッセージのプレフィックス (注意: 値は評価されるため、"${color:xxx}" フォーマットを使えば色を指定することも出来ます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"--"`)

- weechat.look.prefix_quit

  - 説明: `終了メッセージのプレフィックス (注意: 値は評価されるため、"${color:xxx}" フォーマットを使えば色を指定することも出来ます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"<--"`)

- weechat.look.prefix_same_nick

  - 説明: `同じニックネームからの連続したメッセージに前置するプレフィックス: 空白文字 " " の場合はプレフィックスを隠す、これ以外の文字列の場合はそれをプレフィックスとして用いる、空文字の場合はプレフィックス表示機能を使わない`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.prefix_suffix

  - 説明: `プレフィックスの後ろに表示される文字列`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"|"`)

- weechat.look.read_marker

  - 説明: `最初の未読行を表示するマーカー (line か char) をバッファ内で使用`

  - タイプ: 整数

  - 値: none, line, char (デフォルト値: `line`)

- weechat.look.read_marker_always_show

  - 説明: `バッファの最終行であっても、常にリードマーカーを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.read_marker_string

  - 説明: `リードマーカー行の表示に使われる文字列 (行末まで文字列が繰り返される)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"- "`)

- weechat.look.save_config_on_exit

  - 説明: `終了時に設定ファイルを保存`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.save_layout_on_exit

  - 説明: `終了時にレイアウトを保存 (バッファ、ウィンドウ、両方)`

  - タイプ: 整数

  - 値: none, buffers, windows, all (デフォルト値: `none`)

- weechat.look.scroll_amount

  - 説明: `scroll_up と scroll_down でスクロールする行数`

  - タイプ: 整数

  - 値: 1 .. 2147483647 (デフォルト値: `3`)

- weechat.look.scroll_bottom_after_switch

  - 説明: `別のバッファに移動した後にウィンドウの最後までスクロール (ウィンドウのスクロール位置を記憶しない); 自動スクロールはフォーマット済みバッファだけで有効 (フリー内容バッファでは無効)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.scroll_page_percent

  - 説明: `1 ページ上方向か下方向にスクロールする場合のスクロールの割合 (例えば 100 は 1 ページ、50 は半ページ)`

  - タイプ: 整数

  - 値: 1 .. 100 (デフォルト値: `100`)

- weechat.look.search_text_not_found_alert

  - 説明: `バッファ内に検索テキストが見つからなかった場合はユーザに警告`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.separator_horizontal

  - 説明: `バーとウィンドウ周囲の水平セパレータ文字 (空の場合は ncurses で線を描画するが、一部のターミナルでは URL 選択の際にバグを生ずる可能性がある); 必ずスクリーン上に描画した時の文字幅が 1 の文字を指定してください`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"-"`)

- weechat.look.separator_vertical

  - 説明: `バーとウィンドウ周囲の垂直セパレータ文字 (空の場合は ncurses で線を描画するが、いくつかのターミナルでは URL 選択の際にバグを生ずる可能性がある); 必ずスクリーン上に描画した時の文字幅が 1 の文字を指定してください`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.look.tab_width

  - 説明: `メッセージに含まれるタブ文字を表示する際に使う空白文字の数`

  - タイプ: 整数

  - 値: 1 .. 64 (デフォルト値: `1`)

- weechat.look.time_format

  - 説明: `文字列へ変換されてメッセージ中に表示される日付の時間フォーマット (日付/時間指定子は strftime の man を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%a, %d %b %Y %T"`)

- weechat.look.window_auto_zoom

  - 説明: `ターミナルのサイズがすべてのウィンドウを表示するには小さすぎる場合、自動的に現在のウィンドウにズームする (ターミナルのサイズが十分に大きい場合は、alt-z を使ってウィンドウのズームを戻してください)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.look.window_separator_horizontal

  - 説明: `ウィンドウ間に水平セパレータを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.window_separator_vertical

  - 説明: `ウィンドウ間に垂直セパレータを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.look.window_title

  - 説明: `起動時に設定するウィンドウタイトル (Curses GUI 端末タイトル); 空文字列の場合、タイトルは変更されません (注意: 値は評価されます、/help eval を参照してください)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"WeeChat ${info:version}"`)

- weechat.network.connection_timeout

  - 説明: `リモートホストへの接続タイムアウト時間 (秒単位) (子プロセスが行う)`

  - タイプ: 整数

  - 値: 1 .. 2147483647 (デフォルト値: `60`)

- weechat.network.gnutls_ca_file

  - 説明: `認証局を含むファイル ("%h" は WeeChat ホームに置換される、デフォルトでは "~/.weechat")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"/etc/ssl/certs/ca-certificates.crt"`)

- weechat.network.gnutls_handshake_timeout

  - 説明: `gnutls ハンドシェイクのタイムアウト (秒単位)`

  - タイプ: 整数

  - 値: 1 .. 2147483647 (デフォルト値: `30`)

- weechat.network.proxy_curl

  - 説明: `Curl を利用した URL のダウンロード時に利用するプロキシの名前 (スクリプトのリストをダウンロードする際および hook_process 関数から呼び出されるスクリプト内で利用); プロキシを定義するには /proxy コマンドを利用してください`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.plugin.autoload

  - 説明: `スタートアップ時にロードするプラグインのコンマ区切りリスト、"*" は見つかった全てのプラグイン、"!" から始まる名前はロードしないプラグイン、"*" から始まるか終わるかした場合はマッチする複数のプラグイン (例: "*" または "*,!lua,!tcl")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"*"`)

- weechat.plugin.debug

  - 説明: `全てのプラグインに対してデバッグメッセージを有効化 (デフォルトでは無効、無効を推奨)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- weechat.plugin.extension

  - 説明: `プラグインのファイル拡張子のコンマ区切りリスト`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `".so,.dll"`)

- weechat.plugin.path

  - 説明: `プラグイン検索パス ("%h" は WeeChat ホームに置換される、デフォルトでは "~/.weechat")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%h/plugins"`)

- weechat.plugin.save_config_on_unload

  - 説明: `プラグインをアンロードする際に設定ファイルをセーブ`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.startup.command_after_plugins

  - 説明: `WeeChat が実行され、プラグインのロード後に実行されるコマンド (注意: 値は評価されます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.startup.command_before_plugins

  - 説明: `WeeChat が実行され、プラグインのロード前に実行されるコマンド (注意: 値は評価されます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- weechat.startup.display_logo

  - 説明: `WeeChat ロゴを開始時に表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.startup.display_version

  - 説明: `WeeChat バージョンを開始時に表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- weechat.startup.sys_rlimit

  - 説明: `WeeChat プロセスのリソースを制限する、フォーマット: "res1:limit1,res2:limit2"; リソース名は定数 (RLIMIT_XXX) の最後の語を小文字で (値は man setrlimit を参照) 記述; 値の -1 は "無制限" の意; 例: core ファイルのサイズ制限を無制限に仮想メモリを 1GB に制限: "core:-1,as:1000000000"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

#### 3.11.3. WeeChat コマンド

`away` 離席状態の切り替え

    /away  [-all] [<message>]

       -all: 全ての接続済みサーバに対して離席状態を切り替え
    message: 離席メッセージ (メッセージが無い場合は、離席状態を解除)

`bar` バーの管理

    /bar  list|listfull|listitems
          add <name> <type>[,<condition>] <position> <size> <separator> <item1>[,<item2>...]
          default [input|title|status|nicklist]
          del <name>|-all
          set <name> <option> <value>
          hide|show|toggle <name>
          scroll <name> <window> <scroll_value>

             list: 全てのバーをリストアップ
         listfull: 全てのバーをリストアップ (詳細)
        listitems: 全てのバーアイテムをリストアップ
              add: 新しいバーを追加
             name: バーの名称 (ユニークな)
             type:   root: 外側のウィンドウ、
                   window: 内側のウィンドウ、任意の状態を取れる (以下を参照)
        condition: バーの表示状態 (タイプが "window" のバー以外は無効):
                     active: アクティブウィンドウに表示
                   inactive: 非アクティブウィンドウに表示
                   nicklist: ニックネームリストを持つウィンドウに表示
                   その他の状態: /help weechat.bar.xxx.conditions と /help eval を参照してください
                   表示状態の指定が無ければ、バーは常に表示されます。
         position: bottom、top、left、right
             size: バーのサイズ (文字数で指定)
        separator: 1 はセパレータ (線) を使用、0 または指定無しはセパレータ無し
        item1,...: バーのアイテム (アイテムはコンマ (アイテム間にスペース) または "+" (アイテム間にスペース無し) で区切ります)
          default: デフォルトバーを作成 (バーの名前が無ければ全てのデフォルトバーが作成されます)
              del: バーを削除 (-all を付ければ全てのバーを削除)
              set: バー属性に値を設定
           option: 変更するオプション (オプション一覧は /set weechat.bar.<barname>.* を参照)
            value: オプションの新しい値
             hide: バーを隠す
             show: 隠されたバーを表示
           toggle: バーの非表示/表示を切り替え
           scroll: バーをスクロール
           window: ウィンドウ番号 (現在のウィンドウかルートバーを指定するには '*' を使う)
     scroll_value: スクロールする量: 'x' または 'y' (任意)の後に、'+' か '-' か 'b' (最初) か 'e' (最後)の後に、値 (+/- を付けて)、任意で % (スクロールする幅/高さの割合、% が無ければ値は文字数と解釈されます)

    例:
      時間、バー番号 + 名前、補完候補からなるバーを作成:
        /bar add mybar root bottom 1 0 [time],buffer_number+:+buffer_name,completion
      バーを隠す:
        /bar hide mybar
      現在のバッファに対応したニックネームリストを 10 行分、下方向にスクロール:
        /bar scroll nicklist * y+10
      現在のバッファに対応したニックネームリストを最後までスクロール:
        /bar scroll nicklist * ye

`buffer` バッファの管理

    /buffer  list
             clear [<number>|<name>|-merged|-all]
             move|merge <number>
             swap <number1>|<name1> [<number2>|<name2>]
             unmerge [<number>|-all]
             renumber [<number1> [<number2> [<start>]]]
             close [<n1>[-<n2>]|<name>]
             notify <level>
             localvar
             set <property> <value>
             get <property>
             <number>|<name>

        list: バッファをリストアップ (引数無しの場合、このリストが表示されます)
       clear: バッファの内容を削除 (number はバッファ番号、マージバッファに対しては -merged、全てのバッファに対しては -all、何も無ければ現在のバッファ)
        move: リストにバッファを移動 (相対指定も可能、例えば -1)
        swap: 2 つのバッファを入れ替え (現在のバッファと引数で与えた番号/名称で指定されるバッファを入れ替える)
       merge: 現在のバッファを他のバッファにマージ (2 つのバッファのチャットエリアが一緒になります)
              (デフォルトでは ctrl-x でマージバッファの切り替え)
     unmerge: 同じ番号を持つ他のバッファとのマージを解除
    renumber: バッファを記憶 (weechat.look.buffer_auto_renumber オプションがオフの場合にのみ有効)
       close: バッファを閉じる (番号/範囲または名前は任意)
      notify: 現在のバッファの通知レベルを設定: このレベルでバッファがホットリストに追加されるかどうかを定義します:
                   none: 通知しない
              highlight: ハイライトがあった場合のみ通知
                message: ユーザからのメッセージとハイライトがあった場合に通知
                    all: 全てのメッセージを通知
                  reset: デフォルトの値 (all) にリセット
    localvar: 現在のバッファのローカル変数を表示
         set: 現在のバッファのプロパティを設定
         get: 現在のバッファのプロパティを表示
      number: 番号でバッファ移動、可能なプレフィックス:
              '+': 相対移動、現在の番号に数を足す
              '-': 相対移動、現在の番号から数を引く
              '*': 番号に移動、オプション "weechat.look.jump_current_to_previous_buffer" が使われる
        name: バッファ名 (一部) でバッファに移動

    例:
      現在のバッファの内容を消去:
        /buffer clear
      バッファを 5 番に移動:
        /buffer move 5
      バッファ 1 番と 3 番を入れ替え:
        /buffer swap 1 3
      現在のバッファと #weechat バッファを入れ替え:
        /buffer swap #weechat
      コアバッファとマージ:
        /buffer merge 1
      バッファマージの解除:
        /buffer unmerge
      現在のバッファを閉じる:
        /buffer close
      バッファ番号 5 から 7 を閉じる:
        /buffer close 5-7
      #weechat バッファに移動:
        /buffer #weechat
      次のバッファに移動:
        /buffer +1

`color` 色の別名の定義と、カラーパレットの表示

    /color  alias <color> <name>
            unalias <color>
            reset
            -o

      alias: ある色に別名を追加
    unalias: 別名の削除
      color: カラー番号 (0 以上、最大値はターミナル依存、多くの場合 63 か 255)
       name: カラーの別名 (例えば: "orange")
      reset: 全てのカラーペアをリセット (自動的なリセットが無効化されており、これ以上のカラーペアが利用できない場合に必要、オプション weechat.look.color_pairs_auto_reset を参照)
         -o: 端末/色情報を現在の入力としてバッファに送る

    引数無しの場合、コマンドは新しいバッファに色を表示します。

    例:
      色番号 214 に対応する別名 "orange" を追加:
        /color alias 214 orange
      色番号 214 を削除:
        /color unalias 214

`command` WeeChat かプラグインのコマンドを起動

    /command  <plugin> <command>

     plugin: プラグインの名前 ('weechat' は WeeChat の内部コマンドを意味します)
    command: 実行するコマンド (コマンドの最初に '/' が無い場合、'/' が自動的に追加されます)

`cursor` カーソルを移動してアクションを実行するエリアを指定

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

      go: チャットエリア、バー (バーの名前を使った場合)、座標 "x,y" にカーソルを移動
    move: 方向を指定してカーソルを移動
    stop: カーソルモードを終了

    引数が無ければ、カーソルモードを切り替えます。

    マウスが有効化されていた場合 (/help mouse を参照)、現在のところデフォルトではセンタークリックでカーソルモードが開始されます。

    例:
      ニックネームリストに移動:
        /cursor go nicklist
      x=10、y=5 の位置に移動:
        /cursor go 10,5

`debug` core やプラグインのデバッグ管理

    /debug  list
            set <plugin> <level>
            dump [<plugin>]
            buffer|color|infolists|memory|tags|term|windows
            mouse|cursor [verbose]
            hdata [free]

         list: デバッグレベルの設定されたプラグインをリストアップ
          set: プラグインのデバッグレベルを設定
       plugin: プラグインの名前 ("core" は WeeChat コアを意味する)
        level: プラグインのデバッグレベル (0 はデバッグの無効化)
         dump: WeeChat ログファイルにメモリダンプを保存 (WeeChat がクラッシュした場合と同じダンプが書き込まれます)
       buffer: ログファイルに 16 進値でバッファの内容をダンプ
        color: 現在の色ペアに関する情報を表示
       cursor: カーソルモードのデバッグを切り替え
         dirs: ディレクトリを表示
        hdata: hdata に関する情報を表示 (free を付ければ: メモリから全ての hdata を削除)
        hooks: フックに関する情報を表示
    infolists: infolist に関する情報を表示
         libs: 使用中の外部ライブラリに関する情報を表示
       memory: メモリ使用量に関する情報を表示
        mouse: マウスのデバックを切り替え
         tags: 行のタグを表示
         term: ターミナルに関する情報を表示
      windows: ウィンドウツリーの情報を表示

`eval` 式を評価して結果をバッファに送信

    /eval  [-n] <expression>
           [-n] -c <expression1> <operator> <expression2>

            -n: 結果をバッファに送信せずに表示 (デバッグモード)
            -c: 条件として評価: 演算子と括弧をを使い、ブール値 ("0" または "1") を返します
    expression: 評価する式、フォーマット、${variable} 型のフォーマットの変数は置換されます (以下を参照)
      operator: 論理演算子や比較演算子:
                - 論理演算子:
                    &&  ブール演算の "and"
                    ||  ブール演算の "or"
                - 比較演算子:
                    ==  等しい
                    !=  等しくない
                    <=  以下
                    <   より少ない
                    >=  以上
                    >   より大きい
                    =~  正規表現にマッチ
                    !~  正規表現にマッチしない

    式が NULL でない場合、空でない場合、"0" でない場合、式は "真" と評価されます。
    両方の式が有効な整数である場合、比較は整数を使って行われます。
    文字列比較を強制するには、それぞれの式をダブルクォートで囲みます、例えば:
      50 > 100      ==> 0
      "50" > "100"  ==> 1

    式中の ${variable} 型のフォーマットの変数は置換さます。変数は以下の優先順位に従います。
      1. 色 (フォーマット: "color:xxx")
      2. 情報 (フォーマット: "info:name,arguments"、arguments は任意)
      3. オプション (フォーマット: "file.section.option")
      4. バッファのローカル変数
      5. hdata の名前/変数 (値は自動的に文字列に変換されます)、デフォルトでは "window" と "buffer" は現在のウィンドウ/バッファを指します。
    hdata のフォーマットは以下の 1 つです:
      hdata.var1.var2...: hdata (ポインタは既知) で始まり、1 個ずつ変数を続ける (他の hdata を続けることも可能)
      hdata(list).var1.var2...: リストを使って hdata を始める、例:
        ${buffer[gui_buffers].full_name}: バッファリストにリンクされた最初のバッファのフルネーム
        ${plugin[weechat_plugins].name}: プラグインリストにリンクされた最初のプラグインの名前
    hdata と変数の名前については、"プラグイン API リファレンス" の "weechat_hdata_get" 関数を参照してください。

    例:
      /eval -n ${info:version}                 ==> 0.4.3
      /eval -n ${weechat.look.scroll_amount}   ==> 3
      /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 -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

`filter` タグか正規表現に基づくバッファメッセージの非表示/表示

    /filter  list
             enable|disable|toggle [<name>]
             add <name> <buffer>[,<buffer>...] <tags> <regex>
             del <name>|-all

       list: 全てのフィルタをリストアップ
     enable: フィルタを有効化 (フィルタはデフォルトで有効になっています)
    disable: フィルタを無効化
     toggle: フィルタの有効無効を切り替え
       name: フィルタの名前
        add: フィルタを追加
        del: フィルタを削除
       -all: 全てのフィルタを削除
     buffer: フィルタが有効化されているバッファのコンマ区切りリスト:
             - これはプラグイン名を含む完全な名前です (例えば: "irc.freenode.#weechat")
             - "*" は全てのバッファを意味します
             - 名前が '!' から始まるものは除外されます
             - 多くのバッファにマッチさせるためには名前を '*' から始めるか終わらせてください
       tags: タグのコンマ区切りリスト、例えば "irc_join,irc_part,irc_quit"
             - 論理積 "and": タグ同士を "+" でつなげる (例えば: "nick_toto+irc_action")
             - タグの最初と最後には '*' を使うことができます
      regex: 行単位検索の正規表現
             - '\t' を使うと、プレフィックスをメッセージから分離できます。'|' 等の特別な文字は '\|' のようにエスケープしなければいけません
             - 正規表現の最初に '!' が含まれる場合は、マッチ結果が反転されます (最初の '!' にマッチさせたければ、'\!' を使ってください)
             - 2 種類の正規表現があります: 一方はプレフィックス用、他方はメッセージ用
             - 正規表現は大文字小文字を区別しません、"(?-i)" から始まる場合は区別します

    デフォルトではキー alt+'=' でフィルタリングの on/off を切り替えられます。

    よく使われるタグ:
      no_filter, no_highlight, no_log, log0..log9 (log level),
      notify_none, notify_message, notify_private, notify_highlight,
      nick_xxx (xxx はメッセージのニックネーム), prefix_nick_ccc (ccc はニックネームの色)
      irc_xxx (xxx はコマンド名又は番号、/server raw または /debug tags で確認),
      irc_numeric, irc_error, irc_action, irc_ctcp, irc_ctcp_reply, irc_smart_filter, away_info.
    バッファ内でタグを見るには: /debug tags

    例:
      全てのバッファで IRC スマートフィルタを使用:
        /filter add irc_smart * irc_smart_filter *
      名前に "#weechat" を含むバッファを除いた全てのバッファで IRC スマートフィルタを使用:
        /filter add irc_smart *,!*#weechat* irc_smart_filter *
      全ての IRC join/part/quit メッセージをフィルタ:
        /filter add joinquit * irc_join,irc_part,irc_quit *
      チャンネルに入った時や /names で表示されるニックネームをフィルタ:
        /filter add nicks * irc_366 *
      IRC チャンネル #weechat で "toto" を含むニックネームをフィルタ:
        /filter add toto irc.freenode.#weechat nick_toto *
      ニックネーム "toto" からの IRC の参加/アクションメッセージをフィルタ:
        /filter add toto * nick_toto+irc_join,nick_toto+irc_action *
      IRC チャンネル #weechat で "weechat sucks" を含む行をフィルタ:
        /filter add sucks irc.freenode.#weechat * weechat sucks

`help` コマンドとオプションに関するヘルプを表示

    /help  -list|-listfull [<plugin> [<plugin>...]]
           <command>
           <option>

        -list: プラグイン毎にコマンドをリストアップ (引数が無ければ、このリストを表示)
    -listfull: プラグイン毎に説明付きでコマンドをリストアップ
       plugin: このプラグインに関するコマンドをリストアップ
      command: コマンドの名前
       option: オプションの名前 (リストを見るには /set を使用)

`history` バッファコマンド履歴を表示

    /history  clear
              <value>

    clear: 履歴の削除
    value: 表示する履歴エントリの数

`input` コマンドライン関数

    /input  <action> [<arguments>]

    アクションリスト:
      return: "enter" キーをシミュレート
      complete_next: 次の補完候補で単語を補完
      complete_previous: 一つ前の補完候補で単語を補完
      search_text: バッファ内のテキストを検索
      search_switch_case: 完全一致検索に変更
      search_switch_regex: 検索タイプの切り替え: 文字列/正規表現
      search_switch_where: 検索範囲の切り替え: メッセージ/プレフィックス
      search_previous: 一つ前の行を検索
      search_next: 次の行を検索
      search_stop: 検索を終了
      delete_previous_char: 一つ前の文字を削除
      delete_next_char: 次の文字を削除
      delete_previous_word: 一つ前の単語を削除
      delete_next_word: 次の単語を削除
      delete_beginning_of_line: 行の最初からカーソル位置までを削除
      delete_end_of_line: カーソルから行の最後までを削除
      delete_line: 行を削除
      clipboard_paste: クリップボードから貼り付け
      transpose_chars: 2 つの文字を入れ替え
      undo: 最新のコマンドラインアクションまで元に戻す
      redo: 最新のコマンドラインアクションまでやり直す
      move_beginning_of_line: カーソルを行頭に移動
      move_end_of_line: カーソルを行末まで移動
      move_previous_char: カーソルを一つ前の文字に移動
      move_next_char: カーソルを次の文字に移動
      move_previous_word: カーソルを一つ前の単語に移動
      move_next_word: カーソルを次の単語に移動
      history_previous: 現在のバッファ履歴のひとつ前のコマンドを再呼び出し
      history_next: 現在のバッファ履歴の次のコマンドを再呼び出し
      history_global_previous: グローバル履歴の一つ前のコマンドを再呼び出し
      history_global_next: グローバル履歴の次のコマンドを再呼び出し
      jump_smart: 次のアクティブバッファに飛ぶ
      jump_last_buffer: 最後のバッファに移動
      jump_last_buffer_displayed: 表示されている最後のバッファに移動 (最新のバッファ移動の一つ前に表示されていたバッファ)
      jump_previously_visited_buffer: 一つ前に訪れたバッファに移動
      jump_next_visited_buffer: 次に訪れたバッファに移動
      hotlist_clear: ホットリストを消去
      grab_key: キーを横取り (任意引数: 最後の横取りからの遅延時間、デフォルトは 500 ミリ秒)
      grab_key_command: あるコマンドに関連してキーを横取り (任意引数: 最後の横取りからの遅延時間、デフォルトは 500 ミリ秒)
      grab_mouse: grab マウスイベントコードを横取り
      grab_mouse_area: 範囲指定のマウスイベントコードを横取り
      set_unread: 全てのバッファに対して未読マーカーを設定
      set_unread_current_buffer: 現在のバッファに対して未読マーカーを設定
      switch_active_buffer: 次のマージされたバッファに移動
      switch_active_buffer_previous: 一つ前のマージされたバッファに移動
      zoom_merged_buffer: マージされたバッファにズーム
      insert: コマンドラインにテキストを挿入 (エスケープ文字も可、/help print を参照)
      paste_start: ペーストの開始 (括弧付きペーストモード)
      paste_stop: ペーストの終了 (括弧付きペーストモード)

    これらのコマンドはキーバインドかプラグインで利用できます。

`key` キーの割り当てと割り当て解除

    /key  list|listdefault|listdiff [<context>]
          bind <key> [<command> [<args>]]
          bindctxt <context> <key> [<command> [<args>]]
          unbind <key>
          unbindctxt <context> <key>
          reset <key>
          resetctxt <context> <key>
          resetall -yes [<context>]
          missing [<context>]

           list: 現在のキーをリストアップ (引数無しの場合、このリストが表示されます)
    listdefault: デフォルトキーをリストアップ
       listdiff: デフォルトと現在のキーの違いをリストアップ (追加、再定義、削除されたキー)
        context: コンテキストの名前 ("default" または "search")
           bind: キーにコマンドを割り当てるか、キーに割り当てられたコマンドを表示 ("default" コンテキストに対する)
       bindctxt: キーにコマンドを割り当てるか、キーに割り当てられたコマンドを表示 (指定されたコンテキストに対する)
        command: コマンド (複数のコマンドはセミコロンで分けて書く)
         unbind: キーバインドを削除 ("default" コンテキストに対する)
     unbindctxt: キーバインドを削除 (指定されたコンテキストに対する)
          reset: キーをデフォルトの割り当てにリセットする ("default" コンテキストに対する)
      resetctxt: キーをデフォルトの割り当てにリセットする (指定されたコンテキストに対する)
       resetall: デフォルトの割り当てにリストアし、全ての個人的な設定を削除 (注意して使用!)
        missing: 未割り当てのキーを追加 (デフォルトの割り当てに無い)、新しい WeeChat バージョンをインストールした後に便利

    キーにコマンドを割り当てる場合、alt+k (または Esc の後に k) した後に、割り当てたいキーを押すことをお勧めします: これはコマンドラインにキーコードを入力することになります。

    "mouse" コンテント ("cursor" コンテキストの一部) に対しては、キーは以下のフォーマット: "@area:key" または "@area1>area2:key"。 ここで、area は以下の値を取れます:
              *: スクリーン上の任意のエリア
           chat: チャットエリア (任意のバッファ)
      chat(xxx): 名前 "xxx" を持つチャットエリア (プラグイン含む完全な名前)
         bar(*): 任意のバー
       bar(xxx): バー "xxx"
        item(*): 任意のバーアイテム
      item(xxx): バーアイテム "xxx"
    多くのマウスイベントにマッチさせるには '*' で開始または終了するキーを使います。
    "hsignal:name" というフォーマットのコマンドに対する特別な値はマウスコンテキストに使えます、これはフォーカスハッシュテーブルを引数にして hsignal "name" を送ります。
    その他の特別な値 "-" はキーを無効化するために利用されます。(これはキーの探索時には無視されます)

    例:
      alt-x キーをニックネームリストバーに割り当てる:
        /key bind meta-x /bar toggle nicklist
      alt-r キーを #weechat IRC チャンネルへの移動に割り当てる:
        /key bind meta-r /buffer #weechat
      alt-r キーの割り当てをデフォルトに戻す:
        /key reset meta-r
      "tab" キーをバッファ検索の終了に割り当てる:
        /key bindctxt search ctrl-I /input search_stop
      ニック上でのマウスのセンターボタンをニックネームの情報取得に割り当てる:
        /key bindctxt mouse @item(buffer_nicklist):button3 /msg nickserv info ${nick}

`layout` バッファ/ウィンドウレイアウトの管理

    /layout  store [<name>] [buffers|windows]
             apply [<name>] [buffers|windows]
             leave
             del [<name>] [buffers|windows]
             rename <name> <new_name>

      store: レイアウトに現在のバッファ/ウィンドウを保存
      apply: 保存されたレイアウトを適用
      leave: 現在のレイアウトを保持する (レイアウトを更新しない)
        del: レイアウトとして保存されているバッファとウィンドウを削除
             (名前の後に "バッファ" や "ウィンドウ" を指定しない場合、レイアウトを削除)
     rename: レイアウトのリネーム
       name: 保存されたレイアウトの名前 (初期状態は "default")
    buffers: バッファのみに対してレイアウトを保存/適用 (バッファの順番)
    windows: ウィンドウのみに対してレイアウトを保存/適用 (それぞれのウィンドウに表示されるバッファ)

    引数無しでは、保存されたレイアウトを表示します。

`mouse` マウス操作

    /mouse  enable|disable|toggle [<delay>]

     enable: マウスの有効化
    disable: マウスの無効化
     toggle: マウスの有効無効の切り替え
      delay: 初期マウス状態がリストアされてからの遅延時間 (秒単位) (一時的にマウスを無効化するときに便利)

    マウス状態はオプション "weechat.look.mouse" に保存されます。

    例:
      マウスの有効化:
        /mouse enable
      5 秒間マウスの有効無効を切り替え:
        /mouse toggle 5

`mute` 静かにコマンドを実行

    /mute  [-current | -buffer <name> | -all] <command>

    -current: 現在のバッファへの出力を禁止
     -buffer: 指定したバッファへの出力を禁止
        name: 完全なバッファの名前 (例: "irc.server.freenode"、"irc.freenode.#weechat")
        -all: 全てのバッファへの出力を禁止
     command: 静かに実行するコマンド (最初に '/' が無い場合は自動的に追加されます)

    ターゲット (-current、-buffer、-all) が指定されなかった場合、デフォルトでは WeeChat コアバッファへの出力のみが抑制されます。

    例:
      save を行う:
        /mute save
      現在の IRC チャンネルへのメッセージ:
        /mute -current msg * hi!
      #weechat チャンネルへのメッセージ:
        /mute -buffer irc.freenode.#weechat msg #weechat hi!

`plugin` プラグインの表示/ロード/アンロード

    /plugin  list|listfull [<name>]
             load <filename> [<arguments>]
             autoload [<arguments>]
             reload [<name> [<arguments>]]
             unload [<name>]

         list: ロードされたプラグインをリストアップ
     listfull: ロードされたプラグインをリストアップ (詳細)
         load: プラグインをロード
     autoload: システムかユーザディレクトリ指定の自動ロードプラグインをロード
       reload: プラグインを再ロード (名前が指定されない場合は、全てのプラグインをアンロードし、プラグインを自動ロード)
       unload: プラグインのアンロード (名前が指定されない場合は、全てのプラグインをアンロード)
     filename: ロードするプラグイン (ファイル)
         name: プラグイン名
    arguments: ロードするプラグインに与える引数

    引数無しでは、ロードされたプラグインをリストアップ。

`print` バッファ内にテキストを表示

    /print  [-buffer <number>|<name>] [-core] [-escape] [-date <date>] [-tags <tags>] [-action|-error|-join|-network|-quit] <text>
            -stdout|-stderr <text>

    -buffer: テキストを表示するバッファ (デフォルト: 現在のバッファ)
      -core: "-buffer core.weechat" のエイリアス
    -escape: エスケープ文字を解釈 (例えば \a、\07、\x07)
      -date: メッセージの日付、フォーマット:
               -n: 今から 'n' 秒前
               +n: 今から 'n' 秒後
                n: エポックから 'n' 秒目 (man time を参照)
               日付/時間 (ISO 8601): yyyy-mm-ddThh:mm:ss、例: 2014-01-19T04:32:55
               時間: hh:mm:ss (example: 04:32:55)
      -tags: タグのコンマ区切りリスト (よく使うタグのリストは /help filter を参照)
       text: 表示するテキスト (プレフィックスとメッセージは必ず \t で区切ってください)
    -stdout: 標準出力にテキストを表示 (エスケープ文字を解釈)
    -stderr: 標準エラー出力にテキストを表示 (エスケープ文字を解釈)

    オプション -action ... -quit をつけた場合、プレフィックスは "weechat.look.prefix_*" で定義されているものになります。

    以下のエスケープ文字を使うことができます:
      \" \\ \a \b \e \f \n \r \t \v \0ooo \xhh \uhhhh \Uhhhhhhhh

    例:
      コアバッファにハイライトを付けてリマインダを表示:
        /print -core -tags notify_highlight Reminder: buy milk
      コアバッファにエラーを表示:
        /print -core -error Some error here
      コアバッファにプレフィックス "abc" を付けてメッセージを表示:
        /print -core abc    The message
      チャンネル #weechat にメッセージを表示:
        /print -buffer irc.freenode.#weechat Message on #weechat
      雪だるまを表示 (U+2603):
        /print -escape \u2603
      警告を送信 (BEL):
        /print -stderr \a

`proxy` プロキシの管理

    /proxy  list
            add <name> <type> <address> <port> [<username> [<password>]]
            del <name>|-all
            set <name> <option> <value>

        list: 全てのプロキシをリストアップ
         add: 新しいプロキシを追加
        name: プロキシの名前 (一意的な)
        type: http、socks4、socks5
     address: IP アドレスまたはホスト名
        port: ポート
    username: ユーザ名 (任意)
    password: パスワード (任意)
         del: プロキシの削除 (-all を付ければ全てのプロキシを削除)
         set: プロキシのプロパティを設定
      option: 変更するオプション (オプションリストを見るには、/set weechat.proxy.<proxyname>.*)
       value: オプションに設定する新しい値

    例:
      ローカルホストの 8888 番ポートで動いている http プロキシを作成:
        /proxy add local http 127.0.0.1 8888
      IPv6 プロトコルを使う http プロキシを作成:
        /proxy add local http ::1 8888
        /proxy set local ipv6 on
      ユーザ名とパスワードが必要な socks5 プロキシを作成:
        /proxy add myproxy socks5 sample.host.org 3128 myuser mypass
      プロキシを削除:
        /proxy del myproxy

`quit` WeeChat の終了

    /quit  [-yes] [<arguments>]

         -yes: weechat.look.confirm_quit オプションが有効な場合に必要
    arguments: "quit" シグナルと共に送られるテキスト
               (例えば irc プラグインはサーバに quit メッセージを送る際にこのテキストを使います)

`reload` ディスクから設定ファイルを再読み込み

    /reload  [<file> [<file>...]]

    file: 再読み込みする設定ファイル (拡張子 ".conf" は不要)

    引数無しでは、全てのファイル (WeeChat とプラグイン) が再読み込みされます。

`repeat` 複数回コマンドを実行

    /repeat  [-interval <delay>] <count> <command>

      delay: コマンドの実行間隔 (ミリ秒単位)
      count: コマンドの実行回数
    command: 実行するコマンド (最初に '/' が無い場合は自動的に追加されます)

    全てのコマンドはこのコマンドが発行されたバッファで実行されます。

    例:
      2 ページ分上方向にスクロール:
        /repeat 2 /window page_up

`save` 設定をファイルに保存

    /save  [<file> [<file>...]]

    file: 保存する設定ファイル (拡張子 ".conf" は不要)

    引数無しでは、全てのファイル (WeeChat とプラグイン) が保存されます。

`secure` 保護データを管理します (パスワードやプライベートデータは暗号化されて sec.conf ファイルに保存)

    /secure  passphrase <passphrase>|-delete
             decrypt <passphrase>|-discard
             set <name> <value>
             del <name>

    passphrase: パスフレーズを変更 (パスフレーズがない場合、sec.conf ファイルに平文でデータを保存します)
       -delete: パスフレーズを削除
       decrypt: 暗号化されているデータを復号化 (起動時にパスフレーズが設定されていない場合に起きます)
      -discard: 全ての暗号化データを破棄
           set: 保護データを追加または変更
           del: 保護データを削除

    引数がない場合、新しいバッファに保護データを表示します。

    パスフレーズを利用する場合 (データが暗号化されている場合)、WeeChat は起動時にパスフレーズを尋ねます。
    環境変数 "WEECHAT_PASSPHRASE" を利用すれば入力を回避できます (WeeChat は /upgrade の時に同じ変数を利用します)。

    ${sec.data.xxx} の形でフォーマットされた保護データは以下の様に利用できます:
      - コマンドライン引数 "--run-command"
      - weechat.startup.command_{before|after}_plugins オプション
      - プロキシオプション: username、password
      - irc サーバオプション: autojoin、command、password、sasl_{username|password}
      - relay.network.password オプション
      - /eval コマンド。

    例:
      パスフレーズを設定:
        /secure passphrase this is my passphrase
      freenode の SASL パスワードを暗号化:
        /secure set freenode mypassword
        /set irc.server.freenode.sasl_password "${sec.data.freenode}"
      oftc の nickserv 用パスワードを暗号化:
        /secure set oftc mypassword
        /set irc.server.oftc.command "/msg nickserv identify ${sec.data.oftc}"
      ニックネーム "mynick" を取り戻すためのエイリアス ghost を設定
        /alias ghost /eval /msg -server freenode nickserv ghost mynick ${sec.data.freenode}

`set` オプションの設定

    /set  [<option> [<value>]]
          diff [<option> [<option>...]]

    option: オプションの名前 (多くのオプションをリストアップするには、'*' で始めるか終わるかしてください)
     value: オプションに対する新しい値
      diff: 変更されたオプションのみを表示

    新しいオプションは以下の変数型に従います:
      boolean: on、off、toggle
      integer: 番号、++番号、--番号
       string: 任意の文字列 (空文字列は "")
        color: 色の名前、++色番号、--色番号

    どんな型であっても、オプションの値を削除する (未定義値にする) には null が使えます。これはいくつかの特別なプラグイン変数でのみ有効です。

    例:
      ハイライトに関するオプションを表示:
        /set *highlight*
      highlight に単語を追加:
        /set weechat.look.highlight "word"
      変更されたオプションを表示:
        /set diff
      irc プラグインのオプションの内、変更されたオプションを表示
        /set diff irc.*

`unset` オプションのアンセット/リセット

    /unset  <option>

    option: オプションの名前 ("*" で始めるか終わるかすれば大量のオプションをリセットできます、注意して使用!)

    オプションの種類によって (一般的なオプションを) リセットまたは (サーバなどの任意な設定を) 削除が行われます。

    例:
      オプションのリセット:
        /unset weechat.look.item_time_format
      全ての色関連オプションをリセット:
        /unset weechat.color.*

`upgrade` サーバとの接続を維持して WeeChat をアップグレード

    /upgrade  [<path_to_binary>|-quit]

    path_to_binary: WeeChat バイナリへのパス (デフォルトは現在のバイナリ)
            -dummy: 何もしない (補完された "-quit" オプションを不用意に使わないためのオプション)
             -quit: *すべての*接続を閉じ、セッションを保存して WeeChat を終了。遅延復帰 (詳しくは後述) が可能になります。

    このコマンドは起動中の WeeChat セッションのアップグレードと再読み込みを行います。このコマンドを実行する前に、新しい WeeChat バイナリをコンパイルするか、パッケージマネージャでインストールしなければいけません。

    注意: SSL 接続はアップグレード中に破棄されます、これは今のところ GnuTLS では SSL セッションのリロードができないからです。アップグレードの後に自動的に再接続されます。

    アップグレードは 4 つの手順を踏みます:
      1. コアとプラグイン (バッファ、履歴、...) のセッションをファイルに保存
      2. 全てのプラグインをアンロード (設定ファイル (*.conf) はディスクに書き込まれます)
      3. WeeChat 設定を保存 (weechat.conf)
      4. 新しい WeeChat バイナリを実行してセッションをリロード。<

    オプション "-quit" を使うと、上の挙動が少し変わります:
      1. *すべての*接続を閉じる (irc、xfer、relay、...)
      2. すべてのセッションをファイルに保存 (*.upgrade)
      3. すべてのプラグインをアンロード
      4. WeeChat 設定を保存
      5. WeeChat を終了
    この後、セッションを回復させるには weechat --upgrade を使ってください。
    重要: 完全に同一の設定で (*.conf ファイルで) セッションを回復させてください。
    "~/.weechat" ディレクトリの内容をコピーすれば異なるマシンで WeeChat のセッションを回復することも可能です。

`uptime` WeeChat 連続稼働時間の表示

    /uptime  [-o | -ol]

     -o: 連続稼働時間を現在のバッファの入力に送る (英語で)
    -ol: 連続稼働時間を現在のバッファの入力に送る (翻訳済み)

`version` WeeChat のバージョンとコンパイル日時を表示

    /version  [-o | -ol]

     -o: バージョンを現在のバッファの入力に送る (英語で)
    -ol: バージョンを現在のバッファの入力に送る (翻訳済み)

`wait` コマンドの実行を予約

    /wait  <number>[<unit>] <command>

     number: 遅延時間 (整数)
       unit: 任意、値は:
               ms: ミリ秒
                s: 秒 (デフォルト)
                m: 分
                h: 時
    command: 実行するコマンド (コマンドが '/' で始まらない場合はバッファに送信するテキスト)

    注意: コマンドは /wait が実行されたバッファで実行されます (バッファが見つからない場合 (例えばコマンド実行前にバッファが閉じられた場合) は、コマンドは WeeChat コアバッファで実行されます)。

    例:
      10 秒後にチャンネルに入る:
        /wait 10 /join #test
      15 分後に離席状態に変更:
        /wait 15m /away -all I'm away
      2 分後に 'hello' と発言:
        /wait 2m hello

`window` ウィンドウの操作

    /window  list
             -1|+1|b#|up|down|left|right [-window <number>]
             <number>
             splith|splitv [-window <number>] [<pct>]
             resize [-window <number>] [+/-]<pct>
             balance
             merge [-window <number>] [all]
             page_up|page_down [-window <number>]
             refresh
             scroll [-window <number>] [+/-]<value>[s|m|h|d|M|y]
             scroll_horiz [-window <number>] [+/-]<value>[%]
             scroll_up|scroll_down|scroll_top|scroll_bottom|scroll_beyond_end|scroll_previous_highlight|scroll_next_highlight|scroll_unread [-window <number>]
             swap [-window <number>] [up|down|left|right]
             zoom[-window <number>]

             list: 開けられたウィンドウのリストアップ (引数無しの場合、このリストが表示されます)
               -1: 前のウィンドウに移動
               +1: 次のウィンドウに移動
               b#: バッファ番号 # のウィンドウに移動
               up: 現在のウィンドウの上のウィンドウに移動
             down: 現在のウィンドウの下のウィンドウに移動
             left: 左のウィンドウに移動
            right: 右のウィンドウに移動
           number: ウィンドウ番号 (/window list を参照)
           splith: 現在のウィンドウを水平分割
           splitv: 現在のウィンドウを垂直分割
           resize: ウィンドウサイズの変更、新しいサイズは親ウィンドウの <pct> パーセントで指定
          balance: 全てのウィンドウのサイズを均等にする
            merge: ウィンドウを他のものをマージする (all = 一つのウィンドウにまとめる)
          page_up: 1 ページ分上方向にスクロール
        page_down: 1 ページ分下方向にスクロール
          refresh: スクリーンのリフレッシュ
           scroll: 指定行数 (+/-N) か指定期間 (s=秒、m=分、h=時間、d=日、M=月、y=年) スクロール
     scroll_horiz: 指定列数 (+/-N) かウィンドウサイズの割合で水平方向にスクロール (フリーコンテンツを含むバッファ以外は無効)
        scroll_up: 数行分上方向にスクロール
      scroll_down: 数行分下方向にスクロール
       scroll_top: バッファの一番上にスクロール
    scroll_bottom: バッファの一番下にスクロール
    scroll_beyond_end: バッファの末尾を越えてスクロール
    scroll_previous_highlight: 一つ前のハイライトにスクロール
    scroll_next_highlight: 次のハイライトにスクロール
    scroll_unread: 未読マーカにスクロール
             swap: 2 つのウィンドウのバッファを入れ替え (ターゲットウィンドウの方向を任意指定)
             zoom: ウィンドウを拡大

    splith と splitv に関しては、pct は新しいウィンドウのパーセンテージで、現在のウィンドウサイズに対する割合で計算されます。例えば、25 は size = current_size / 4 の新しいウィンドウを作成します。

    例:
      バッファ #1 を表示しているウィンドウに移動:
        /window b1
      2 行分上方向にスクロール:
        /window scroll -2
      2 日分上方向にスクロール:
        /window scroll -2d
      今日の最初にスクロール:
        /window scroll -d
      ウィンドウ #2 を拡大:
        /window zoom -window 2

## 4. プラグイン

プラグインとは動的ライブラリのことで、C 言語で書かれてコンパイルされています。 プラグインは WeeChat によって読み込まれます。 GNU/Linux の場合、プラグインファイルは ".so" という拡張子を持ち、Windows の場合、".dll" です。

見つかったプラグインは WeeChat の起動時に自動的に読み込まれます。WeeChat の起動時にプラグインを読み込むか否かは選択可能です。

プラグイン と スクリプト の違いを明らかにすることは重要です: プラグイン とは `/plugin` コマンドで読み込まれるコンパイル済みバイナリファイルです。これに対して、 スクリプト とは `/python` 等のコマンドで python 等のプラグインとともに読み込まれるテキストファイルです。

`/plugin` コマンドを使うことで、プラグインのロード/アンロード、 ロード済みプラグインの表示を行うことができます。 あるプラグインをアンロードした場合、 アンロードしたプラグインが作成したバッファはすべて自動的に閉じられます。

プラグインをロード、アンロード、ロード済みプラグインを表示する例:

    /plugin load irc
    /plugin unload irc
    /plugin list

デフォルトプラグインのリスト:

プラグイン | 説明
--- | ---
alias | コマンドの別名を定義
aspell | コマンドラインのスペルチェック
charset | バッファの文字コードに従ってデコード/エンコード
fifo | 外部から WeeChat にコマンドを送信するための FIFO パイプ
irc | IRC チャットプロトコル
logger | バッファの内容をファイルに保存
relay | ネットワーク経由でデータを中継
rmodifier | 正規表現を用いた文字列の置換
script | スクリプトマネージャ
python | Python スクリプト API
perl | Perl スクリプト API
ruby | Ruby スクリプト API
lua | Lua スクリプト API
tcl | Tcl スクリプト API
guile | Guile (scheme) スクリプト API
xfer | ファイル転送とダイレクトチャット

API を使ったプラグインやスクリプトの開発についてより詳しく学ぶには、WeeChat プラグイン API リファレンス 又は WeeChat スクリプト製作ガイド を参照してください。

### 4.1. Alias プラグイン

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

#### 4.1.1. コマンド

`alias` コマンドの別名を作成

    /alias  [-completion <completion>] <alias> [<command> [;<command>...]]

    completion: 別名の補完 (任意、デフォルトではターゲットコマンドを伴って補完される)
                注意: %%command で存在するコマンドの補完を利用可能
         alias: 別名の名前 ("*" で始めるか終われば別名をリストアップ)
       command: 引数を含めたコマンド名 (セミコロンで分割すれば複数のコマンドを指定できる)

    引数無しでは、定義済み別名をリストアップ。

    注意: command の中では、特殊変数の置換が行われる:
            $n: 'n' 番目の引数 (1 から 9)
           $-m: 1 から 'm' 番目の引数
           $n-: 'n' 番目から最後の引数
          $n-m: 'n' から 'm' 番目の引数
            $*: 全ての引数
            $~: 最後の引数
          $var: ここで "var" とはバッファの局所変数 (/buffer localvar を参照)
                例: $nick、$channel、$server、$plugin、$name

    別名を削除するには /unalias コマンドを使ってください:

    例:
      /split をウィンドウを水平方向に分割する別名と定義:
        /alias split /window splith
      /hello を #weechat を除く全てのチャンネルで "hello" と発言する別名と定義:
        /alias hello /allchan -exclude=#weechat msg * hello
      /forcejoin を /sajoin の補完候補を使い IRC コマンド "forcejoin" を送信する別名と定義:
        /alias -completion %%sajoin forcejoin /quote forcejoin

### 4.2. Aspell プラグイン

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

#### 4.2.1. オプション (aspell.conf)

セクション:

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

オプション:

- aspell.check.commands

  - 説明: `スペルチェックを有効化するコマンドのコンマ区切りリスト (これ以外のコマンドではスペルチェックは無効)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"`)

- aspell.check.default_dict

  - 説明: `バッファに辞書が定義されていない場合に使用されるデフォルト辞書 (又は辞書のコンマ区切りリスト) (空のままであれば明示的に有効化されたバッファを除いて aspell を利用しない)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- aspell.check.during_search

  - 説明: `バッファ内のテキスト検索中に単語チェックを行う`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- aspell.check.enabled

  - 説明: `コマンドラインで aspell を利用する`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- aspell.check.real_time

  - 説明: `単語のリアルタイムスペルチェック (遅い、デフォルトでは無効: 単語は区切りの後にだけチェックされる)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- aspell.check.suggestions

  - 説明: `バッファ内の各辞書セットに対してバーアイテム "aspell_suggest" に表示する提案の数 (-1 = サジェスト機能を無効、0 = 全ての言語を使って全てのサジェスト結果を表示)`

  - タイプ: 整数

  - 値: -1 .. 2147483647 (デフォルト値: `-1`)

- aspell.check.word_min_length

  - 説明: `スペルチェックを行う単語長の最小値 (0 の場合は全ての単語をチェック)`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `2`)

- aspell.color.misspelled

  - 説明: `スペルミスのある単語に付ける色 (入力バー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightred`)

- aspell.color.suggestions

  - 説明: `スペルミスのある単語に対する修正候補に付ける色 (ステータスバー)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

#### 4.2.2. コマンド

`aspell` aspell プラグイン設定

    /aspell  enable|disable|toggle
             listdict
             setdict <dict>[,<dict>...]
             deldict
             addword [<dict>] <word>

      enable: aspell の有効化
     disable: aspell の無効化
      toggle: aspell の有効無効を切り替え
    listdict: インストール済み辞書を表示
     setdict: 現在のバッファ用の辞書を設定 (コンマで区切れば複数の辞書を指定可能)
     deldict: 現在のバッファ用の辞書を削除
     addword: aspell の個人辞書に単語を追加

    いくつかのコマンドを除いて '/' で始まる入力行はチェックされません (/set aspell.check.commands を参照)。

    全てのバッファで aspell を有効化するには、"default_dict" オプションを設定した後に、aspell を有効化してください。例えば:
      /set aspell.check.default_dict "en"
      /aspell enable

    aspell の有効無効を切り替えるデフォルトのキーは alt-s です。

#### 4.2.3. Speller オプション

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

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

    $ aspell config

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

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

#### 4.2.4. 修正候補

"aspell_suggest" バーアイテム内に修正候補が表示されます。修正候補の数は aspell.check.suggestions オプションで設定します。

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

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

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

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

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

### 4.3. Charset プラグイン

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

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

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

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

    /charset

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

    /plugin load charset

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

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

例:

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

#### 4.3.1. オプション (charset.conf)

セクション:

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

オプション:

- charset.default.decode

  - 説明: `グローバルデコード文字セット: 受信メッセージをデコードする文字セット (デコードに失敗した場合、UTF-8 でデコードされます。UTF-8 は WeeChat の内部文字セットです)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"iso-8859-1"`)

- charset.default.encode

  - 説明: `グローバルエンコード文字セット: 送信メッセージをエンコードする文字セット (空の場合、UTF-8 でエンコードされます。UTF-8 は WeeChat の内部文字セットです)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

#### 4.3.2. コマンド

`charset` 現在のバッファの文字集合を変更

    /charset  decode|encode <charset>
              reset

     decode: デコード文字集合を変更
     encode: エンコード文字集合を変更
    charset: 現在のバッファの新しい文字集合
      reset: 現在のバッファの文字集合をリセット

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

グローバルデコード文字コードとエンコード文字コードを設定するには、`/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 チャンネル (またはプライベートメッセージ) の文字コードを設定するには、 サーバの文字コード設定と同様のコマンドをチャンネル (またはプライベートメッセージ) バッファで使ってください。

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

    /set charset.*

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

文字コードに関する問題があれば、WeeChat FAQ を参照してください。

### 4.4. Fifo プラグイン

外部から WeeChat を操作するには、FIFO パイプにコマンドやテキストを書き込んでください ("plugins.var.fifo.fifo" オプションが有効化されている必要がありますが、デフォルトで有効化されているはずです)。

FIFO パイプは ~/.weechat/ の下にあり、weechat_fifo_xxxx のような名前になっています (xxxx は実行中の WeeChat のプロセス ID (PID) です)。

FIFO パイプに書き込むコマンド/テキストの文法は以下の例の一つです:

      plugin.buffer *テキストまたはコマンド
      *テキストまたはコマンド

例:

- IRC サーバ freenode のニックネームを "newnick" に変更する:

    $ echo 'irc.server.freenode */nick newnick' >~/.weechat/weechat_fifo_12345

- IRC の #weechat チャンネルに対してテキストを送信:

    $ echo 'irc.freenode.#weechat *hello!' >~/.weechat/weechat_fifo_12345

- 現在のバッファに対してテキストを送信:

    $ echo '*hello!' >~/.weechat/weechat_fifo_12345

- Python スクリプトのアンロードとロードを行う 2 つのコマンドを送信 (複数のコマンドは "\n" で分割してください):

    $ echo -e '*/python unload\n*/python autoload' >~/.weechat/weechat_fifo_12345

実行中の WeeChat すべてに対してコマンドを送信するスクリプトは以下のように書けます。例えば:

    #!/bin/sh
    if [ $# -eq 1 ]; then
        for fifo in ~/.weechat/weechat_fifo_*
        do
            echo -e "$1" >$fifo
        done
    fi

このスクリプトを "auto_weechat_command" というファイル名で保存した場合、以下のように実行できます:

    $ ./auto_weechat_command 'irc.freenode.#weechat *hello'

### 4.5. IRC プラグイン

IRC プラグインは IRC プロトコルに従って他の人と会話を行うために設計されています。

マルチサーバに対応し、DCC チャットとファイル転送 (xfer プラグインを使います。 Xfer プラグイン を参照) を含む全ての IRC コマンドをサポートしています。

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

以下のように 1 つ以上の IRC サーバに対応する URL を引数として与えることができます:

    irc[6][s]://[nick[:password]@]irc.example.org[:port][/channel][,channel[...]]

nono というニックネームを使って irc.freenode.net ホストのデフォルトポート (6667) で稼働中の IRC サーバ上の #weechat と #toto チャンネルに参加する例:

    $ weechat irc://nono@irc.freenode.net/#weechat,#toto

#### 4.5.2. オプション (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

  - 説明: `インプットバーのニックネームに使う色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightcyan`)

- irc.color.item_away

  - 説明: `離席アイテムに使う色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- irc.color.item_channel_modes

  - 説明: `チャンネル名付近のチャンネルモードに使う色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- irc.color.item_lag_counting

  - 説明: `カウント中の遅延インジケータの色 (pong がサーバから返らない場合、遅延は増加する)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- irc.color.item_lag_finished

  - 説明: `pong がサーバから返った場合の、遅延インジケータの色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- irc.color.message_join

  - 説明: `参加メッセージの色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `green`)

- irc.color.message_quit

  - 説明: `退出/終了 メッセージの色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `red`)

- irc.color.mirc_remap

  - 説明: `メッセージに含まれる mirc カラーのマッピングをハッシュテーブルで変更: キーは "fg,bg" で -1(指定無し) から 15 までの整数、 値は WeeChat 色名か色番号 (フォーマットは: "1,-1:color1;2,7:color2")、例: "1,-1:darkgray;1,2:white,blue" はテキスト色が黒のものを "darkgray" に、背景色が青でテキスト色が黒のものを "white,blue" に変更; IRC コードに対するデフォルトの WeeChat 色は、0:白、1:黒、2:青、3:緑、4:ライトレッド、5:赤、6:赤紫、7:茶色、8:黄色、9:ライトグリーン、10:シアン、11:ライトシアン、12:ライトブルー、13:ライトマゼンタ、14:灰色、15:白`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"1,-1:darkgray"`)

- irc.color.nick_prefixes

  - 説明: `モード文字を用いたニックネームプレフィックスの色 (o=オペレータ、h=halfop、v=発言、..)、フォーマット: "o:color1;h:color2;v:color3" (モードが見つからない場合、WeeChat はサーバから受け取ったモードの次のものを試す ("PREFIX"); モードが見つからなかった場合は、特殊なモード "*" がデフォルト色として使えます)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"q:lightred;a:lightcyan;o:lightgreen;h:lightmagenta;v:yellow;*:lightblue"`)

- irc.color.notice

  - 説明: `notices に含まれるテキスト "Notice" の色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `green`)

- irc.color.reason_quit

  - 説明: `退出/終了メッセージに含まれる理由の色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- irc.color.topic_new

  - 説明: `新しいチャンネルトピックの色 (トピックが変更されたとき)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- irc.color.topic_old

  - 説明: `古いチャンネルトピックの色 (トピックが変更されたとき)`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- irc.look.buffer_switch_autojoin

  - 説明: `自動で参加した場合に、自動的にチャンネルバッファを移動 (サーバオプション "autojoin" と共に使用)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.buffer_switch_join

  - 説明: `手動で参加した場合に、自動的にチャンネルバッファを移動 (/join コマンドを実行したとき)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.color_nicks_in_names

  - 説明: `/names の出力にニックネーム色を使用 (又はチャンネル参加時に表示されるニックネームのリスト)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.look.color_nicks_in_nicklist

  - 説明: `ニックネームリストでニックネーム色を利用`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.look.color_nicks_in_server_messages

  - 説明: `サーバからのメッセージにニックネーム色を利用`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.color_pv_nick_like_channel

  - 説明: `チャンネルとプライベートバッファで同じニックネーム色を利用`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.ctcp_time_format

  - 説明: `CTCP TIME メッセージに対する応答に利用される時間フォーマット (日付/時間指定子は strftime の man を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%a, %d %b %Y %T %z"`)

- irc.look.display_away

  - 説明: `離席状態が変更されたらメッセージを表示 (off: 何も表示/送信しない、local: ローカルに表示、channel: チャンネルにアクションを送信)`

  - タイプ: 整数

  - 値: off, local, channel (デフォルト値: `local`)

- irc.look.display_ctcp_blocked

  - 説明: `ブロックした場合でも CTCP メッセージを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.display_ctcp_reply

  - 説明: `WeeChat が返信した CTCP メッセージを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.display_ctcp_unknown

  - 説明: `解釈できない CTCP の場合も CTCP メッセージを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.display_host_join

  - 説明: `参加メッセージにホスト名を表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.display_host_join_local

  - 説明: `ローカルクライアントからの参加メッセージにホスト名を表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.display_host_quit

  - 説明: `退出/終了 メッセージにホスト名を表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.display_join_message

  - 説明: `チャンネルに参加した後に表示するメッセージのコンマ区切りリスト: 329 = チャンネル作成日、332 = トピック、333 = トピックを作成したニックネームおよび日付、353 = チャンネル参加者リスト、366 = 参加人数`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"329,332,333,366"`)

- irc.look.display_old_topic

  - 説明: `チャンネルトピックが変更された場合に、古いトピックを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.display_pv_away_once

  - 説明: `プライベートでは離席状態の変更を 1 回以上表示しない`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.display_pv_back

  - 説明: `ユーザが戻ったら、プライベートウィンドウにメッセージを表示 (サーバとの切断を挟んで)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.highlight_channel

  - 説明: `現在のバッファでハイライトする単語のコンマ区切りリスト (大文字小文字を区別しない、"(?-i)" を単語の最初につければ大文字小文字を区別する; 特殊変数 $nick、$channel、$server はそれぞれの値に置換される)、これらの単語は、バッファの作成時にバッファプロパティ "highlight_words" に追加される (既存のバッファには影響なし)、空文字列はニックネームに関するデフォルトのハイライトを無効にする、例: "$nick", "(?-i)$nick"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"$nick"`)

- irc.look.highlight_pv

  - 説明: `プライベートバッファでハイライトする単語のコンマ区切りリスト (大文字小文字を区別しない、"(?-i)" を単語の最初につければ大文字小文字を区別する; 特殊変数 $nick、$channel、$server はそれぞれの値に置換される)、これらの単語は、バッファの作成時にバッファプロパティ "highlight_words" に追加される (既存のバッファには影響なし)、空文字列はニックネームに関するデフォルトのハイライトを無効にする、例: "$nick", "(?-i)$nick"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"$nick"`)

- irc.look.highlight_server

  - 説明: `サーババッファでハイライトする単語のコンマ区切りリスト (大文字小文字を区別しない、"(?-i)" を単語の最初につければ大文字小文字を区別する; 特殊変数 $nick、$channel、$server はそれぞれの値に置換される)、これらの単語は、バッファの作成時にバッファプロパティ "highlight_words" に追加される (既存のバッファには影響なし)、空文字列はニックネームに関するデフォルトのハイライトを無効にする、例: "$nick", "(?-i)$nick"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"$nick"`)

- irc.look.highlight_tags_restrict

  - 説明: `irc バッファでハイライトを禁止するタグ (ユーザメッセージをハイライトして、サーバメッセージをハイライトしない); タグの区切り文字はコンマ、論理積を取る場合には "+" 使ってください; 1 つ以上のタグにマッチさせるには各タグの最初と最後に "*" をつけてください; 任意のタグをハイライトさせるには空値を指定してください`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"irc_privmsg,irc_notice"`)

- irc.look.item_away_message

  - 説明: `サーバの離席メッセージを離席バーアイテムに表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.item_channel_modes_hide_key

  - 説明: `チャンネルモードに含まれるチャンネルキーを隠す (チャンネルにモード +k が設定されていた場合、全てのチャンネルモード引数を隠す)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.look.item_display_server

  - 説明: `IRC サーバが表示されるバーアイテムの名前 (ステータスバー用)`

  - タイプ: 整数

  - 値: buffer_plugin, buffer_name (デフォルト値: `buffer_plugin`)

- irc.look.item_nick_modes

  - 説明: `"input_prompt" バーアイテムではニックネームモードを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.item_nick_prefix

  - 説明: `"input_prompt" バーアイテムではニックネームプレフィックスを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.msgbuffer_fallback

  - 説明: `ターゲットがプライベートでプライベートバッファが見つからない場合の msgbuffer オプション用のデフォルトのターゲットバッファ`

  - タイプ: 整数

  - 値: current, server (デフォルト値: `current`)

- irc.look.new_channel_position

  - 説明: `バッファリスト内で新しいチャンネルの位置を固定 (none = デフォルトの位置 (一番後ろのバッファ)、next = 現在のバッファ番号 + 1、near_server = サーバの一番後ろのチャンネル/プライベートバッファ)`

  - タイプ: 整数

  - 値: none, next, near_server (デフォルト値: `none`)

- irc.look.new_pv_position

  - 説明: `バッファリスト内で新しいプライベートバッファの位置を固定 (none = デフォルトの位置 (一番後ろのバッファ)、next = 現在のバッファ番号 + 1、near_server = サーバの一番後ろのチャンネル/プライベートバッファ)`

  - タイプ: 整数

  - 値: none, next, near_server (デフォルト値: `none`)

- irc.look.nick_color_force

  - 説明: `一部のニックネームでニックネーム色を強制する: ニックネームから計算されるハッシュを元にした色を利用しない (フォーマット: "nick1:color1;nick2:color2"); ニックネームの検索はまず大文字小文字が区別された状態で行われ、そのあとに小文字で行われます。このため、このオプションのニックネーム部分を小文字だけで書く事もできます`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.look.nick_color_hash

  - 説明: `ニックネームに対する色を見つけるハッシュアルゴリズム: djb2 = djb2 (文字の位置が重要: ニックネームに同じ色が使われにくくなる) の亜種、sum = 文字の総和`

  - タイプ: 整数

  - 値: djb2, sum (デフォルト値: `sum`)

- irc.look.nick_color_stop_chars

  - 説明: `ニックネーム内の色計算に使用する部分を制限する文字 (このリストに含まれない文字が、このリストの文字の前に少なくとも一つ以上含まれなければいけない) (例: "|" を設定した場合、"|nick|away" はニックネーム "|nick" と同じ色になる)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"_|["`)

- irc.look.nick_completion_smart

  - 説明: `ニックネームのスマート補完 (発言日時の新しいものから順にニックネームを補完): speakers = すべてのニックネーム (ハイライトされたニックネームを含む)、speakers_highlights = ハイライトされたニックネームのみ`

  - タイプ: 整数

  - 値: off, speakers, speakers_highlights (デフォルト値: `speakers`)

- irc.look.nick_mode

  - 説明: `ニックネームの前にニックネームモード (オペレータ、voice 権) を表示する (none = 表示しない、prefix = プレフィックスだけに表示 (デフォルト)、action = アクションメッセージだけに表示、both = プレフィックスとアクションメッセージの両方に表示)`

  - タイプ: 整数

  - 値: none, prefix, action, both (デフォルト値: `prefix`)

- irc.look.nick_mode_empty

  - 説明: `ニックネームモードが有効でニックネームモードを持っていない (オペレータでない、voice 権がない) 場合にはこれを空白で表示する`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.look.nicks_hide_password

  - 説明: `メッセージを送信する際にパスワードを隠すニックネームのコンマ区切りリスト、例えば "/msg nickserv identify password" で表示されるメッセージに含まれるパスワードを隠すために使います、例: "nickserv,nickbot"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"nickserv"`)

- irc.look.notice_as_pv

  - 説明: `notice をプライベートメッセージとして表示 (auto の場合、プライベートバッファが見つかればそれを使用する)`

  - タイプ: 整数

  - 値: auto, never, always (デフォルト値: `auto`)

- irc.look.notice_welcome_redirect

  - 説明: `ようこそ通知メッセージは対象となるバッファに自動リダイレクト; ようこそ通知の通知先はニックネームとなっていますが、通知メッセージの最初チャンネル名が含まれています、freenode サーバが送信する通知メッセージの例: "[#channel] Welcome to this channel..."`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.notice_welcome_tags

  - 説明: `ようこそ通知に使われ、チャンネルに転送するタグのコンマ区切りリスト、例えば: "notify_private"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.look.notify_tags_ison

  - 説明: `あるニックネームが参加またはサーバから切断した際の (ison または monitor コマンドの結果) notify が表示するメッセージで使うタグのコンマ区切りリスト、例えば: "notify_message"、"notify_highlight"、"notify_private"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"notify_message"`)

- irc.look.notify_tags_whois

  - 説明: `ニックネームの離席状態に変化があった場合の (whois コマンドの結果)、notify によって表示されたメッセージに使われたタグのコンマ区切りリスト、例えば: "notify_message"、"notify_private"、"notify_highlight"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"notify_message"`)

- irc.look.part_closes_buffer

  - 説明: `/part を実行した場合にバッファを閉じる`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.look.pv_buffer

  - 説明: `プライベートバッファをマージ`

  - タイプ: 整数

  - 値: independent, merge_by_server, merge_all (デフォルト値: `independent`)

- irc.look.pv_tags

  - 説明: `プライベートメッセージに使われたタグのコンマ区切りリスト、例えば: "notify_message"、"notify_private"、"notify_highlight"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"notify_private"`)

- irc.look.raw_messages

  - 説明: `生データバッファが閉じられた時にメモリに保存する生メッセージの数 (生データバッファを開いたときに表示されるメッセージ)`

  - タイプ: 整数

  - 値: 0 .. 65535 (デフォルト値: `256`)

- irc.look.server_buffer

  - 説明: `サーババッファをマージ`

  - タイプ: 整数

  - 値: merge_with_core, merge_without_core, independent (デフォルト値: `merge_with_core`)

- irc.look.smart_filter

  - 説明: `チャンネルで何分か会話のないニックネームの参加/退出/終了/ニックネームメッセージをフィルタする ("irc_smart_filter" タグのフィルタを作らなければいけません)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.smart_filter_delay

  - 説明: `参加/退出/終了メッセージをフィルタするまでの遅延時間 (分単位): ニックネームが N 分以上発言しなかった場合、参加/退出/終了メッセージをフィルタする`

  - タイプ: 整数

  - 値: 1 .. 10080 (デフォルト値: `5`)

- irc.look.smart_filter_join

  - 説明: `"join" メッセージのスマートフィルタを有効化`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.smart_filter_join_unmask

  - 説明: `"irc_smart_filter" タグでフィルタリングされる参加メッセージのマスクを外すまでの遅延時間 (分単位): 最長 N 分前にニックネーム jas があるチャンネルに参加し、そこで何か喋るか (メッセージ、通知、トピックのアップデートなど) 参加後にニックネームを変更したら、参加メッセージのマスクが外れます (0 = 無効: 参加メッセージは必ずマスクされます)`

  - タイプ: 整数

  - 値: 0 .. 10080 (デフォルト値: `30`)

- irc.look.smart_filter_mode

  - 説明: `"mode" 変更メッセージに対するスマートフィルタを有効化する: すべてのモード変更メッセージをフィルタするには "*"、x/y/z モードの変更メッセージをフィルタするには "xyz"、x/y/z モード以外のモード変更メッセージをフィルタするには "-xyz"; 例: "ovh": o/v/h モードの変更メッセージをフィルタする、"-bkl": b/k/l モード以外のモード変更メッセージをフィルタ`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"ovh"`)

- irc.look.smart_filter_nick

  - 説明: `"nick" メッセージに対するスマートフィルタを有効化 (ニックネームの変更通知)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.smart_filter_quit

  - 説明: `"part" と "quit" メッセージのスマートフィルタを有効化`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.look.topic_strip_colors

  - 説明: `トピックにつけられた色を無効化 (バッファタイルに表示される場合のみ利用)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.network.alternate_nick

  - 説明: `サーバでニックネームが既に利用されている場合、他のニックネームを生成します: 利用されていないニックネームが見つかるまで、ニックネームの長さが 9 以下なら数個の "_" を追加、その後最後の 1 文字 (または最後の 2 文字) を 1 から 99 で置き換えます`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.network.autoreconnect_delay_growing

  - 説明: `サーバに自動再接続する際の遅延間隔に関する増加係数 (1 = 遅延間隔は常に同じ, 2 = リトライごとに遅延間隔を 2 倍、..)`

  - タイプ: 整数

  - 値: 1 .. 100 (デフォルト値: `2`)

- irc.network.autoreconnect_delay_max

  - 説明: `サーバへの自動接続の遅延時間の最大値 (秒単位、0 = 制限無し)`

  - タイプ: 整数

  - 値: 0 .. 86400 (デフォルト値: `1800`)

- irc.network.ban_mask_default

  - 説明: `/ban、/unban、/kickban コマンドが使うデフォルトの禁止マスク; 変数 $nick、$user、$host はそれぞれの値に置換 ("nick!user@host" から展開) されます; このデフォルトマスクはニックネームのホスト名がわかる場合のみ利用されます`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"*!$user@$host"`)

- irc.network.colors_receive

  - 説明: `オフの場合、到着メッセージに含まれる色コードを無視`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.network.colors_send

  - 説明: `特別なコードを使ってユーザが色を送信することを許可 (ctrl-c + 色コードと任意の色: b=太字、cxx=テキスト色、cxx,yy=テキスト色+背景色、i=イタリック、o=色や属性の無効化、r=反転、u=下線)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.network.lag_check

  - 説明: `遅延の確認間のインターバル (秒単位、0 = 確認しない)`

  - タイプ: 整数

  - 値: 0 .. 604800 (デフォルト値: `60`)

- irc.network.lag_max

  - 説明: `遅延時間の最大値 (秒単位): 遅延時間がこの値よりも大きくなった場合、WeeChat はサーバからの応答 (pong) が到着しないと考え、遅延時間の計測を中止します (0 = 遅延時間の計測を中止しない)`

  - タイプ: 整数

  - 値: 0 .. 604800 (デフォルト値: `1800`)

- irc.network.lag_min_show

  - 説明: `表示する最短の遅延 (ミリ秒単位)`

  - タイプ: 整数

  - 値: 0 .. 86400000 (デフォルト値: `500`)

- irc.network.lag_reconnect

  - 説明: `遅延時間がこの値以上に長くなった場合は再接続 (秒単位、0 = 再接続しない); この値は必ず irc.network.lag_max 以下にしてください`

  - タイプ: 整数

  - 値: 0 .. 604800 (デフォルト値: `0`)

- irc.network.lag_refresh_interval

  - 説明: `遅延時間が増加する場合、遅延アイテムの 2 回のリフレッシュの間のインターバル (秒単位)`

  - タイプ: 整数

  - 値: 1 .. 3600 (デフォルト値: `1`)

- irc.network.notify_check_ison

  - 説明: `IRC コマンド "ison" による通知の 2 回のチェックの間のインターバル (分単位)`

  - タイプ: 整数

  - 値: 1 .. 10080 (デフォルト値: `1`)

- irc.network.notify_check_whois

  - 説明: `IRC コマンド "whois" による通知の 2 回のチェックの間のインターバル (分単位)`

  - タイプ: 整数

  - 値: 1 .. 10080 (デフォルト値: `5`)

- irc.network.send_unknown_commands

  - 説明: `未定義のコマンドをサーバに送信`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.network.whois_double_nick

  - 説明: `/whois コマンドの引数に 2 重のニックネームを付ける (ニックネームが 1 つだけ指定された場合)、これによりアイドル時間が返されます; 例: "/whois nick" で "whois nick nick" が送信されます`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.server_default.addresses

  - 説明: `サーバのホスト名/ポート番号又は IP アドレス/ポート番号のリスト (コンマ区切り)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.anti_flood_prio_high

  - 説明: `高優先度キュー用のアンチフロード: ユーザメッセージかコマンドを IRC サーバに送信する場合の遅延秒 (0 = アンチフロード無効)`

  - タイプ: 整数

  - 値: 0 .. 60 (デフォルト値: `2`)

- irc.server_default.anti_flood_prio_low

  - 説明: `低優先度キュー用のアンチフロード: ユーザメッセージかコマンドを IRC サーバに送信する場合の遅延秒 (自動 CTCP 応答等のメッセージ) (0 = アンチフロード無効)`

  - タイプ: 整数

  - 値: 0 .. 60 (デフォルト値: `2`)

- irc.server_default.autoconnect

  - 説明: `WeeChat の起動時に自動的にサーバに接続`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.server_default.autojoin

  - 説明: `サーバに接続した後 (設定されていればさらにコマンドを実行し、遅延時間待った後) に参加するチャンネルのコンマ区切りリスト;鍵が必要なチャンネルはリストの最初に指定し、すべての鍵はチャンネルの後に指定してください (チャンネルと鍵の区切りは空白) (例: "#channel1,#channel2,#channel3 key1,key2" この場合 #channel1 と #channel2 への参加に必要な鍵はそれぞれ key1 と key2) (注意: 値は評価されます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.autoreconnect

  - 説明: `接続が切れたときに自動的に再接続`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.server_default.autoreconnect_delay

  - 説明: `サーバへの再接続の際の遅延 (秒単位) 時間`

  - タイプ: 整数

  - 値: 1 .. 65535 (デフォルト値: `10`)

- irc.server_default.autorejoin

  - 説明: `キックされた後のチャンネルへの最参加を自動的に行う; あるチャンネルに対して設定を上書きするにはバッファローカル変数を定義してください (変数の名前: "autorejoin"、値: "on" 又は "off")`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.server_default.autorejoin_delay

  - 説明: `自動再参加前の遅延時間 (秒単位) (キック後)`

  - タイプ: 整数

  - 値: 0 .. 86400 (デフォルト値: `30`)

- irc.server_default.away_check

  - 説明: `2 つの away チェック間のインターバル (分、0 = チェックしない)`

  - タイプ: 整数

  - 値: 0 .. 10080 (デフォルト値: `0`)

- irc.server_default.away_check_max_nicks

  - 説明: `大きなニックネーム番号を持つニックネームに対しては、away 確認を行わない (0 = 制限無し)`

  - タイプ: 整数

  - 値: 0 .. 1000000 (デフォルト値: `25`)

- irc.server_default.capabilities

  - 説明: `サーバで利用可能ならば有効化する "client capabilities" のコンマ区切りリスト; WeeChat で利用できる機能: multi-prefix、userhost-in-names (例: "multi-prefix,userhost-in-names")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.command

  - 説明: `サーバに接続した後、チャンネルに自動参加する前に実行するコマンド (";" で分けて 複数のコマンドを列挙できます、セミコロンは "\;" のように使ってください、特殊変数 $nick、$channel、$server はそれぞれの値に置換されます) (注意: 値は評価されます、/help eval を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.command_delay

  - 説明: `コマンドを実行して、チャンネルに自動参加するまでの遅延時間 (秒単位) (例: 認証に時間がかかる場合にチャンネル参加前に少し時間を空ける)`

  - タイプ: 整数

  - 値: 0 .. 3600 (デフォルト値: `0`)

- irc.server_default.connection_timeout

  - 説明: `サーバとの TCP 接続と 001 メッセージ受信間のタイムアウト (秒単位)、001 メッセージ受信前にタイムアウト時間を経過した場合は、WeeChat はサーバとの接続を切断`

  - タイプ: 整数

  - 値: 1 .. 3600 (デフォルト値: `60`)

- irc.server_default.default_msg_kick

  - 説明: `"/kick" と "/kickban" コマンドが使うデフォルトのキックメッセージ (特殊変数 $nick、$channel、$server はそれぞれの値に置換されます)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.default_msg_part

  - 説明: `デフォルトの退出メッセージ (チャンネルから出る際の) ("%v" は WeeChat バージョンで置換)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"WeeChat %v"`)

- irc.server_default.default_msg_quit

  - 説明: `デフォルトの終了メッセージ (サーバとの接続を切る際の) ("%v" は WeeChat バージョンで置換)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"WeeChat %v"`)

- irc.server_default.ipv6

  - 説明: `サーバ接続に IPv6 プロトコルを利用 (IPv6 の利用に失敗したら IPv4 を利用); 無効の場合には IPv4 を利用`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.server_default.local_hostname

  - 説明: `サーバで使用するカスタムホスト名/IP アドレス (任意、空の場合はローカルホスト名が使われる)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.nicks

  - 説明: `サーバで使用するニックネーム (コンマ区切り)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.notify

  - 説明: `サーバの通知リスト (これを変更する場合は、/notify コマンドを使うこと)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.password

  - 説明: `サーバのパスワード (注意: 値は評価されます、/help eval を参照してください)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.proxy

  - 説明: `このサーバで利用するプロキシ名 (任意、プロキシは /proxy コマンドで確認してください)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.realname

  - 説明: `サーバで使用するリアルネーム`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.sasl_mechanism

  - 説明: `SASL 認証メカニズム: "plain" は平文パスワード、"dh-blowfish" は blowfish 暗号化パスワード、"dh-aes" は AES 暗号化パスワード、"external" はクライアント側の SSL 証明書を利用した認証`

  - タイプ: 整数

  - 値: plain, dh-blowfish, dh-aes, external (デフォルト値: `plain`)

- irc.server_default.sasl_password

  - 説明: `SASL 認証のパスワード (注意: 値は評価されます、/help eval を参照してください)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.sasl_timeout

  - 説明: `SASL 認証を諦める前のタイムアウト (秒単位)`

  - タイプ: 整数

  - 値: 1 .. 3600 (デフォルト値: `15`)

- irc.server_default.sasl_username

  - 説明: `SASL 認証のユーザ名 (注意: 値は評価されます、/help eval を参照してください)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.ssl

  - 説明: `サーバとの通信に SSL を利用`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- irc.server_default.ssl_cert

  - 説明: `自動的にニックネームの身元確認を行うために使われる SSL 証明書ファイル ("%h" は WeeChat ホームで置換、デフォルトは "~/.weechat")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.ssl_dhkey_size

  - 説明: `Diffie-Hellman 鍵交換で使われる鍵長`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `2048`)

- irc.server_default.ssl_fingerprint

  - 説明: `信頼でき、通信を認めるサーバ証明書の SHA1 指紋 (指紋は必ず空白を含まない 40 桁の 16 進数です); このオプションを設定した場合、証明書に対する他の妥当性確認は行われません (オプション "ssl_verify")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- irc.server_default.ssl_priorities

  - 説明: `gnutls の優先度を示した文字列 (構文は、gnutls マニュアルの gnutls_priority_init 関数のドキュメントを参照、通例: "PERFORMANCE", "NORMAL", "SECURE128", "SECURE256", "EXPORT", "NONE")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"NORMAL"`)

- irc.server_default.ssl_verify

  - 説明: `SSL 接続が完全に信頼できることを確認`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- irc.server_default.username

  - 説明: `サーバで使用するユーザ名`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

#### 4.5.3. コマンド

`admin` サーバ管理者に関する情報を探す

    /admin  [<target>]

    target: server

`allchan` 全てのサーバ、全てのチャンネルに対してコマンドを実行

    /allchan  [-current] [-exclude=<channel>[,<channel>...]] <command> [<arguments>]

     -current: 現在のサーバ上のチャンネルに対してコマンドを実行
     -exclude: いくつかのチャンネルを除外 (複数のチャンネルを除外するには '*' をチャンネル名の最初と最後につける)
      command: 実行するコマンド
    arguments: コマンドの引数 (特殊変数 $nick、$channel、$server はそれぞれの値に置き換えられます)

    例:
      全てのチャンネルに対して '/me is testing' を実行:
        /allchan me is testing
      #weechat 以外の全てのチャンネルで 'hello' と発言:
        /allchan -exclude=#weechat msg * hello
      #weechat と #linux で始まるチャンネルを除いが全てのチャンネルで 'hello' と発言:
        /allchan -exclude=#weechat,#linux* msg * hello

`allserv` 全ての接続済みサーバでコマンドを実行

    /allserv  [-exclude=<server>[,<server>...]] <command> [<arguments>]

     -exclude: いくつかのサーバを除外 (複数のサーバを除外するには '*' をサーバ名の最初と最後につける)
      command: 実行するコマンド
    arguments: コマンドの引数 (特殊変数 $nick、$channel、$server はそれぞれの値に置き換えられます)

    例:
      全てのサーバでニックネーム変更:
        /allserv nick newnick
      全てのサーバで離席状態を変更:
        /allserv away I'm away
      すべてのサーバで自分のニックネームに対して whois を実行:
        /allserv whois $nick

`ban` ニックネームかホスト名を指定してバン

    /ban  [<channel>] [<nick> [<nick>...]]

    channel: バン対象チャンネル
       nick: バンするユーザ名かホスト名

    引数無しの場合は、現在のチャンネルのバンリストを表示。

`connect` IRC サーバに接続

    /connect  <server> [<server>...] [-<option>[=<value>]] [-no<option>] [-nojoin] [-switch]
              -all|-auto|-open [-nojoin] [-switch]

        server: サーバ名、これは:
                - 内部サーバ名 (/server add で作成されたもの、利用推奨)
                - ホスト名/ポート番号、又は IP アドレス/ポート番号 (これは一時的サーバを作る)、デフォルトのポート番号は 6667
                - 次のフォーマットに従う URL: irc[6][s]://[nickname[:password]@]irc.example.org[:port][/#channel1][,#channel2[...]]
        option: サーバに関するオプション (ブール型オプションでは、value は無視される)
      nooption: ブール型オプションを 'off' にする (例: -nossl)
          -all: 設定された全てのサーバに接続
         -auto: 自動接続を有効化してサーバに接続
         -open: 現在接続されていないがオープンされているサーバに接続
       -nojoin: チャンネルに入らない (autojoin が有効化されていても)
       -switch: 次のサーバアドレスに移動

    サーバとの接続を切断するか、接続試行を中止するには /disconnect コマンドを使ってください。

    例:
      /connect freenode
      /connect irc.oftc.net/6667
      /connect irc6.oftc.net/6667 -ipv6
      /connect irc6.oftc.net/6697 -ipv6 -ssl
      /connect my.server.org/6697 -ssl -password=test
      /connect irc://nick@irc.oftc.net/#channel
      /connect -switch

`ctcp` CTCP メッセージの送信 (Client-To-Client Protocol)

    /ctcp  <target> <type> [<arguments>]

     target: CTCP を送信するニックネーム又はチャンネル名
       type: CTCP タイプ (例: "version"、"ping"、..)
    arguments: CTCP の引数

`cycle` チャンネルから退出し再参加

    /cycle  [<channel>[,<channel>...]] [<message>]

    channel: チャンネル名
    message: 退出メッセージ (他のユーザに対する)

`dcc` DCC の開始 (ファイル転送かダイレクトチャット)

    /dcc  chat <nick>
          send <nick> <file>

    nick: チャットかファイル転送をするニックネーム
    file: ファイルネーム (ローカルホスト上の)

    例:
      "toto" とチャット:
        /dcc chat toto
      ファイル "/home/foo/bar.txt" を ニックネーム "toto" に送信:
        /dcc send toto /home/foo/bar.txt

`dehalfop` ニックネームから half-operator 権を剥奪

    /dehalfop  <nick> [<nick>...]

    nick: ニックネームまたはマスク (ワイルドカード "*" を最初と最後につけることが可能)
       *: 自分以外のチャンネル参加者からチャンネルの half-operator 権を剥奪

`deop` ニックネームからチャンネルオペレータ権を剥奪

    /deop  <nick> [<nick>...]
           * -yes

    nick: ニックネームまたはマスク (ワイルドカード "*" を最初と最後につけることが可能)
       *: 自分以外のチャンネル参加者からチャンネルオペレータ権を剥奪

`devoice` ニックネームから発言権を剥奪

    /devoice  <nick> [<nick>...]
              * -yes

    nick: ニックネームまたはマスク (ワイルドカード "*" を最初と最後につけることが可能)
       *: チャンネル参加者全員から voice 状態を剥奪

`die` サーバのシャットダウン

    /die  [<target>]

    target: サーバ名

`disconnect` 特定のまたは全ての IRC サーバとの接続を切断

    /disconnect  [<server>|-all|-pending [<reason>]]

      server: 接続を切断するサーバ名
        -all: 全てのサーバとの接続を切る
    -pending: 現在再接続試行中のサーバに対する自動再接続を止める
      reason: 終了の理由

`halfop` 指定したニックネームに half-operator 権を付与

    /halfop  <nick> [<nick>...]
             * -yes

    nick: ニックネームまたはマスク (ワイルドカード "*" を最初と最後につけることが可能)
       *: チャンネル参加者全員に half-operator 権を付与

`ignore` あるサーバかチャンネルで、指定したニックネーム/ホスト名を無視

    /ignore  list
             add [re:]<nick> [<server> [<channel>]]
             del <number>|-all

         list: 無視エントリをリストアップ
          add: 無視エントリを追加
         nick: ニックネーム又はホスト名 ("re:" を付けることで POSIX 拡張正規表現を使えます、"*" は 1 つ以上の文字にマッチします)
          del: 無視エントリの削除
       number: 削除する無視エントリ番号 (番号はリストを参照)
         -all: 全ての無視エントリを削除
       server: 無視設定を有効にする内部サーバ名
      channel: 無視設定を有効にするチャンネル名

    注意: 正規表現で大文字小文字を区別するには "(?-i)" を最初につけてください。

    例:
      全てのサーバ上のニックネーム "toto" を無視:
        /ignore add toto
      freenode サーバ上のホスト名 "toto@domain.com" を無視:
        /ignore add toto@domain.com freenode
      freenode サーバの #weechat チャンネル上のホスト名 "toto*@*.domain.com" を無視:
        /ignore add toto*@*.domain.com freenode #weechat

`info` サーバに関する情報を入手

    /info  [<target>]

    target: サーバ名

`invite` チャンネルにニックネームを招待

    /invite  <nick> [<nick>...] [<channel>]

       nick: 招待するニックネーム
    channel: 招待先のチャンネル

`ison` ニックネームが IRC 上にいるか確認

    /ison  <nick> [<nick>...]

    nick: nick

`join` チャンネルに参加

    /join  [-noswitch] [-server <server>] [<channel1>[,<channel2>...]] [<key1>[,<key2>...]]

    -noswitch: 新しいバッファに移動しない
       server: 送信先サーバ (内部サーバ名)
      channel: 参加するチャンネルの名前
          key: チャンネルに参加するためのキー (キーが必要なチャンネルは最初に置くこと)

    例:
      /join #weechat
      /join #protectedchan,#weechat key
      /join -server freenode #weechat
      /join -noswitch #weechat

`kick` チャンネルからユーザを強制的に削除

    /kick  [<channel>] <nick> [<reason>]

    channel: ユーザの居るチャンネル
       nick: キックするニックネーム
     reason: キック理由 (特殊変数 $nick、$channel、$server はそれぞれの値に置換されます)

`kickban` チャンネルからニックネームをキックして参加を禁止

    /kickban  [<channel>] <nick> [<reason>]

    channel: ユーザの居るチャンネル
       nick: キックと参加禁止にするニックネーム
     reason: キック理由 (特殊変数 $nick、$channel、$server はそれぞれの値に置換されます)

    キックと参加禁止にマスクを使える場合、"*" のマスク展開後にマッチするニックネームがこれらの対象になる。

    例:
      "*!*@host.com" を参加禁止して "toto" をキック:
        /kickban toto!*@host.com

`kill` クライアント - サーバの接続を閉じる

    /kill  <nick> <reason>

      nick: kill するニックネーム
    reason: kill の理由

`links` このクエリに応答するサーバが知っている全てのサーバ名をリストアップ

    /links  [[<server>] <server_mask>]

         server: このクエリに応答するべきサーバ
    server_mask: このマスクにマッチするサーバのリスト

`list` チャンネルとトピックをリストアップ

    /list  [<channel>[,<channel>...]] [<server>] [-re <regex>]

    channel: リストアップするチャンネル名
     server: サーバ名
      regex: 結果をフィルタする POSIX 拡張正規表現 (大文字小文字は区別しない、"(?-i)" で始めれば区別する)

    例:
      サーバ上の全てのチャンネルをリストアップ (大きなネットワークでは非常に遅い):
        /list
      #weechat チャンネルをリストアップ:
        /list #weechat
      "#weechat" で始まる全てのチャンネルをリストアップ (大きなネットワークでは非常に遅い):
        /list -re #weechat.*

`lusers` IRC ネットワークのサイズに関する統計を入手

    /lusers  [<mask> [<target>]]

      mask: このマスクにマッチするサーバ
    target: リクエストを送信するサーバ

`map` IRC ネットワークのグラフィカルマップを表示

`me` 現在のチャンネルに CTCP action を送信

    /me  <message>

    message: 送信メッセージ

`mode` チャンネルかユーザのモードを変更

    /mode  [<channel>] [+|-]o|p|s|i|t|n|m|l|b|e|v|k [<arguments>]
           <nick> [+|-]i|s|w|o

    チャンネルモード:
      channel: 変更するチャンネル名 (デフォルトは現在のチャンネル)
      o: チャンネルオペレータ権の付与/剥奪
      p: プライベートチャンネルフラグ
      s: 秘密チャンネルフラグ
      i: 招待専用チャンネルフラグ
      t: チャンネルトピックの変更をオペレータだけに許可するフラグ
      n: チャンネルに参加していないクライアントからのメッセージの送信を禁止
      m: 司会付きチャンネル
      l: クライアント数の制限値を設定
      b: ユーザの入室禁止マスクを設定
      e: 入室禁止の除外マスクを設定
      v: 司会付きチャンネルで発言権を付与/剥奪
      k: チャンネルキーを設定 (パスワード)
    ユーザモード:
      nick: 変更するユーザ名
      i: ユーザを不可視状態にする
      s: ユーザがサーバ notices を受け取る状態にする
      w: ユーザが wallops を受け取る状態にする
      o: オペレータフラグ

    上のモードのリストは完全なものではない、設定可能なモードを確認するために、サーバに関するドキュメントを読むこと。

    例:
      #weechat チャンネルのトピックを保護:
        /mode #weechat +t
      サーバ上で不可視にする:
        /mode nick +i

`motd` "今日のメッセージ" を取得

    /motd  [<target>]

    target: サーバ名

`msg` ニックネームかチャンネルにメッセージを送る

    /msg  [-server <server>] <target>[,<target>...] <text>

    server: このサーバに送信 (内部サーバ名)
    target: ニックネーム又はチャンネル名 (マスクを使えるかもしれない、'*' = 現在のチャンネル)
      text: 送信するテキスト

`names` チャンネルに参加しているニックネームをリストアップ

    /names  [<channel>[,<channel>...]]

    channel: チャンネル名

`nick` 現在のニックネームを変更

    /nick  [-all] <nick>

    -all: 全ての接続済みサーバで新しいニックネームを設定
    nick: 新しいニックネーム

`notice` ユーザに notice メッセージを送信

    /notice  [-server <server>] <target> <text>

    server: このサーバに送信 (内部サーバ名)
    target: ニックネーム又はチャンネル
      text: 送信するテキスト

`notify` サーバ上のニックネームに対して接続か離席状態の通知を追加する

    /notify  add <nick> [<server> [-away]]
             del <nick>|-all [<server>]

       add: 通知の追加
      nick: ニックネーム
    server: 内部サーバ名 (デフォルトでは現在のサーバ)
     -away: 離席メッセージが変更されたときに通知 (ニックネームの whois を行う)
       del: 通知を削除
      -all: 全ての通知を削除

    引数無しの場合は、現在のサーバに関する通知設定を表示します (コアバッファで実行された場合は全てのサーバに関する設定)。

    例:
      "toto" が現在のサーバに接続/切断した場合に通知:
        /notify add toto
      "toto" が freenode サーバに接続/切断した場合に通知:
        /notify add toto freenode
      "toto" が freenode サーバに戻るか離席状態になった場合に通知:
        /notify add toto freenode -away

`op` ニックネームにオペレータ権を付与

    /op  <nick> [<nick>...]
         * -yes

    nick: ニックネームまたはマスク (ワイルドカード "*" を最初と最後につけることが可能)
       *: チャンネル参加者全員にチャンネルオペレータ権を付与

`oper` オペレータ権を入手

    /oper  <user> <password>

        user: ユーザ
    password: パスワード

`part` チャンネルから退出

    /part  [<channel>[,<channel>...]] [<message>]

    channel: 退出するチャンネル名
    message: 退出メッセージ (他のユーザに対して)

`ping` サーバにピンを送信

    /ping  <server1> [<server2>]

    server1: サーバ
    server2: このサーバにピンを転送

`pong` ピンメッセージに応答

    /pong  <daemon> [<daemon2>]

     daemon: ピンメッセージに応答したデーモン
    daemon2: メッセージをデーモンに転送

`query` ニックネーム宛にプライベートメッセージを送信

    /query  [-server <server>] <nick>[,<nick>...] [<text>]

    server: 送信先サーバ (内部サーバ名)
      nick: プライベート会話を行うニックネーム
      text: 送信テキスト

`quiet` ニックネームかホストを発言禁止に

    /quiet  [<channel>] [<nick> [<nick>...]]

    channel: 発言禁止にするチャンネル
       nick: 発言禁止にするユーザ名かホスト名

    引数無しの場合は、現在のチャンネルの発言禁止リストを表示。

`quote` パースせずにサーバ宛に生データを送信

    /quote  [-server <server>] <data>

    server: 送信先サーバ (内部サーバ名)
      data: 送信する生データ

`reconnect` サーバに再接続

    /reconnect  <server> [<server>...] [-nojoin] [-switch]
                -all [-nojoin] [-switch]

     server: 再接続するサーバ名
       -all: 全てのサーバに再接続
    -nojoin: チャンネルに参加しない (autojoin がサーバで有効化されていても)
    -switch: 次のサーバアドレスに移動

`rehash` サーバに設定ファイルの読み込みを指示

    /rehash  [<option>]

    option: 追加オプション、いくつかのサーバ用

`restart` サーバに再起動を指示

    /restart  [<target>]

    target: サーバ名

`sajoin` ユーザがチャンネルへ参加することを強制

    /sajoin  <nick> <channel>[,<channel>...]

       nick: ニックネーム
    channel: チャンネル名

`samode` チャンネルモードを変更、オペレータ権無しに

    /samode  <channel> <mode>

    channel: チャンネル名
       mode: チャンネルモード

`sanick` 強制的にユーザのニックネームを変更

    /sanick  <nick> <new_nick>

        nick: ニックネーム
    new_nick: 新しいニックネーム

`sapart` 強制的にユーザをチャンネルから退出

    /sapart  <nick> <channel>[,<channel>...]

       nick: ニックネーム
    channel: チャンネル名

`saquit` ある理由で強制的にユーザをサーバから切断

    /saquit  <nick> <reason>

      nick: ニックネーム
    reason: 理由

`server` IRC サーバのリストアップ、追加、削除

    /server  list|listfull [<server>]
             add <server> <hostname>[/<port>] [-temp] [-<option>[=<value>]] [-no<option>]
             copy|rename <server> <new_name>
             del|keep <server>
             deloutq|jump|raw

        list: サーバをリストアップ (引数無しでは、リストが表示される)
    listfull: 詳細情報を含めてサーバをリストアップ
         add: 新しいサーバを作成
      server: サーバ名、内部的な利用と表示に利用
    hostname: サーバのホスト名か IP アドレス、ポート番号は任意 (デフォルト: 6667)、複数のアドレスはコンマで区切る
        temp: 一時的なサーバを作成 (保存されない)
      option: サーバのオプションを設定 (ブールオプションでは値が無視される)
    nooption: ブールオプションを 'off' に設定 (例えば: -nossl)
        copy: サーバを複製
      rename: サーバをリネーム
        keep: 設定ファイルにサーバを保存 (一時的なサーバ用)
         del: サーバを削除
     deloutq: 全てのサーバにメッセージの削除を要求 (WeeChat が送信している全てのメッセージ)
        jump: サーババッファに移動
         raw: 生 IRC データを表示するバッファを開く

    例:
      /server listfull
      /server add oftc irc.oftc.net/6697 -ssl -autoconnect
      /server add oftc6 irc6.oftc.net/6697 -ipv6 -ssl
      /server add freenode2 chat.eu.freenode.net/6667,chat.us.freenode.net/6667
      /server add freenode3 irc.freenode.net -password=mypass
      /server copy oftc oftcbis
      /server rename oftc newoftc
      /server del freenode
      /server deloutq

`service` 新しいサービスを登録

    /service  <nick> <reserved> <distribution> <type> <reserved> <info>

    distribution: サービスの可視性
            type: 将来のために予約

`servlist` 現在ネットワークに接続されたサービスをリストアップ

    /servlist  [<mask> [<type>]]

    mask: マスクにマッチするサービスだけをリストアップ
    type: タイプにマッチするサービスだけをリストアップ

`squery` サービスにメッセージを配送

    /squery  <service> <text>

    service: サービス名
       text: 送信テキスト

`squit` サーバリンクを切断

    /squit  <server> <comment>

     server: サーバ名
    comment: 切断コメント

`stats` サーバに関するクエリ統計

    /stats  [<query> [<server>]]

     query: c/h/i/k/l/m/o/y/u (RFC1459 を参照)
    server: サーバ名

`summon` IRC サーバを実行中のホストにいるユーザ宛てに、IRC に参加することを要請するメッセージを送信

    /summon  <user> [<target> [<channel>]]

       user: ユーザ名
     target: サーバ名
    channel: チャンネル名

`time` サーバのローカル時間を要求

    /time  [<target>]

    target: 時間を要求するサーバを指定

`topic` チャンネルトピックの取得/設定

    /topic  [<channel>] [<topic>|-delete]

    channel: チャンネル名
      topic: チャンネルに設定する新しいトピック
    -delete: チャンネルトピックを削除

`trace` 指定されたサーバへのルートを探す

    /trace  [<target>]

    target: server

`unban` ニックネームかホストの禁止設定を解除

    /unban  [<channel>] <nick> [<nick>...]

    channel: 禁止設定を解除するチャンネル
       nick: 禁止設定を解除するユーザかホスト

`userhost` ニックネームに関する情報のリストを返す

    /userhost  <nick> [<nick>...]

    nick: nick

`users` サーバにログインしているユーザのリスト

    /users  [<target>]

    target: server

`version` ニックネームかサーバのバージョン情報を取得 (現在のサーバか指定したサーバ)

    /version  [<server>|<nick>]

    server: サーバ名
      nick: ニックネーム

`voice` ニックネームに発言権を付与

    /voice  <nick> [<nick>...]

    nick: ニックネームまたはマスク (ワイルドカード "*" を最初と最後につけることが可能)
       *: チャンネル参加者全員に voice 権を付与

`wallchops` チャンネルオペレータに notice を送信

    /wallchops  [<channel>] <text>

    channel: チャンネル名
       text: 送信テキスト

`wallops` ユーザモードに w を設定した全ての接続済みユーザ宛てにメッセージを送信

    /wallops  <text>

    text: 送信テキスト

`who` 情報のリストを返すクエリを生成

    /who  [<mask> [o]]

    mask: マスクにマッチする情報
       o: マスクにマッチするオペレータだけを返す

`whois` ユーザに関する情報を要求

    /whois  [<server>] [<nick>[,<nick>...]]

    server: サーバ名
      nick: ニックネーム (マスクも可)

    引数が無い場合、このコマンドは以下のユーザに対する whois を行います:
    - バッファがサーバ/チャンネルの場合、自分自身のニックネーム
    - バッファがプライベートの場合、相手のニックネーム。

`whowas` 既に存在しないニックネームに関する情報を要求

    /whowas  <nick>[,<nick>...] [<count> [<target>]]

      nick: 検索するニックネーム
     count: リプライの個数 (負の値で完全な検索)
    target: マスクに一致するものだけを返す

#### 4.5.4. SSL 証明書

SSL を使って IRC サーバに接続する場合、WeeChat はデフォルトで接続が完全に信頼できるものかどうかを確認します。

以下のオプションで SSL 接続を設定します:

weechat.network.gnutls_ca_file

  認証局ファイルへのパス (デフォルト: "%h/ssl/CAs.pem")

irc.server.xxx.ssl_cert

  自動的にニックネームを確認するために利用される SSL 証明書ファイル (例えば oftc サーバにおける CertFP の場合、以下を確認してください)

irc.server.xxx.ssl_dhkey_size

  Diffie-Hellman キー交換の際に利用される鍵サイズ (デフォルト: 2048)

irc.server.xxx.ssl_verify

  SSL 接続が完全に信頼できることの確認を行う (デフォルトで有効)

Note | "ssl_verify" オプションはデフォルトで有効です、したがって厳密な確認が行われ、0.3.1 より前のバージョンでは信頼性の確認に成功していたものが失敗する場合もあります。

##### 最初の例: oftc に接続して、証明書を確認

- シェルを使って証明書をインポート:

    $ mkdir -p ~/.weechat/ssl
    $ wget -O ~/.weechat/ssl/CAs.pem http://www.spi-inc.org/ca/spi-cacert.crt

注意: CAs.pem ファイル中で複数の証明書を連結することもできます。

- WeeChat で "oftc" サーバがすでに設定済みであれば:

    /connect oftc

##### 2 番目の例: CertFP を使って oftc に接続

- シェルで証明書を作成:

    $ mkdir -p ~/.weechat/ssl
    $ cd ~/.weechat/ssl
    $ openssl req -nodes -newkey rsa:2048 -keyout nick.pem -x509 -days 365 -out nick.pem

- WeeChat で "oftc" サーバがすでに設定済みであれば:

    /set irc.server.oftc.ssl_cert "%h/ssl/nick.pem"
    /connect oftc
    /msg nickserv cert add

より詳しい情報は http://www.oftc.net/oftc/NickServ/CertFP を確認してください。

#### 4.5.5. SASL 認証

WeeChat は SASL 認証をサポートします、以下の認証メカニズムを利用できます:

- plain: 平文パスワード

- dh-blowfish: blowfish 暗号パスワード

- dh-aes: AES 暗号パスワード

- external: クライアント側 SSL 証明書

サーバオプション:

- sasl_mechanism: 利用する認証メカニズム (上記参照)

- sasl_timeout: 認証時のタイムアウト (秒単位)

- sasl_username: ユーザ名 (ニックネーム)

- sasl_password: パスワード

"dh-blowfish" メカニズムをデフォルトで全てのサーバに対して利用する場合:

    /set irc.server_default.sasl_mechanism dh-blowfish

Note | "dh-blowfish" メカニズムを利用する場合、"gcrypt" ライブラリが WeeChat のコンパイル時に必要です (依存関係 を参照)。

#### 4.5.6. TOR/SASL を使って Freenode に接続する場合

SSL に加えて、Freenode サーバは TOR (https://www.torproject.org/) 経由の接続をサポートしています。TOR とはバーチャルトンネルのネットワークで、 これを使うことで個人やグループがインターネット利用に伴うプライバシーとセキュリティを向上させることができます。

最初に、WeeChat が libgcrypt11-dev を有効化してコンパイルされていることを確認してください (ソースからビルドしている場合); これは必須ではありませんが、SASL を "plain" 認証メカニズムで利用するよりも "dh-blowfish" のほうが強固なセキュリティになります。

最初に、TOR をインストールしてください。Debian (とその派生ディストリビューション) の場合:

    $ sudo apt-get install tor

WeeChat で TOR サービスを使った socks5 プロキシを作成してください (ホスト名/IP アドレス、ポート番号は TOR の設定に依存します):

    /proxy add tor socks5 127.0.0.1 9050

次に新しいサーバを作成してください。例えば:

    /server add freenode-tor p4fsi4ockecnea7l.onion

TOR プロキシを設定:

    /set irc.server.freenode-tor.proxy "tor"

SASL 認証を設定:

    /set irc.server.freenode-tor.sasl_mechanism dh-blowfish
    /set irc.server.freenode-tor.sasl_username "your_nickname"
    /set irc.server.freenode-tor.sasl_password "your_password"

最後に、サーバに接続してください:

    /connect freenode-tor

Freenode と TOR に関するより詳しい情報: http://freenode.net/irc_servers.shtml#tor

#### 4.5.7. 参加/退出/終了メッセージに対するスマートフィルタ

チャンネル内での発言が過去 X 分間なかった場合に参加/退出/終了メッセージをフィルタリングするスマートフィルタが利用できます。

スマートフィルタはデフォルトで有効化されていますが、 バッファ内のメッセージを隠すにはフィルタを追加する必要があります。例えば:

    /filter add irc_smart * irc_smart_filter *

特定のチャンネルのみ、またはある名前で始まるチャンネルに対してフィルタを作成することもできます。 (`/help filter` を参照):

    /filter add irc_smart_weechat irc.freenode.#weechat irc_smart_filter *
    /filter add irc_smart_weechats irc.freenode.#weechat* irc_smart_filter *

以下のコマンドで参加メッセージだけ、又は退出/終了メッセージだけを隠すこともできます:

    /set irc.look.smart_filter_join on
    /set irc.look.smart_filter_quit on

遅延時間 (分単位) を設定することもできます:

    /set irc.look.smart_filter_delay 5

過去 5 分間あるニックネームからの発言が無かった場合、 このニックネームに対する参加または退出/終了メッセージがチャンネルから隠されます。

#### 4.5.8. CTCP 応答

CTCP 応答をカスタマイズしたり、いくつかの CTCP 要求をブロック (無応答) することができます。

例えば、CTCP "VERSION" 要求に対する応答をカスタマイズするには、以下のコマンドを使ってください:

    /set irc.ctcp.version "I'm running WeeChat $version, it rocks!"

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.freenode.version "WeeChat $version (for freenode)"

標準の 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 ウェブサイト | `http://www.weechat.org/`
     $download
| WeeChat ウェブサイトのダウンロードページ | `http://www.weechat.org/download`
     $time
| 現在の日時 | `Sun, 16 Dec 2012 10:40:48 +0100`
     $username
| IRC サーバのユーザネーム | `ログイン名`
     $realname
| IRC サーバのリアルネーム | `John Doe`

Note | (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` | `http://www.weechat.org/download`
TIME | `$time` | `Sun, 16 Dec 2012 10:40:48 +0100`
USERINFO | `$username ($realname)` | `ログイン名 (John Doe)`
VERSION | `WeeChat $versiongit ($compilation)` | `WeeChat 0.4.0-dev (git: v0.3.9-104-g7eb5cc4) (Dec 16 2012)`

#### 4.5.9. 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` | `` | 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 (モード)
`432` | `` | erroneous ニックネーム
`433` | `` | ニックネームが使用されています
`438` | `` | ニックネームを変更する権限がありません
`671` | `whois` | whois (セキュアな接続)
`728` | `quietlist` | 発言禁止リスト
`729` | `quietlist` | 発言禁止リストの終了
`732` | `monitor` | 監視中のニックネームのリスト
`733` | `monitor` | 監視中のニックネームのリスト (終了)
`901` | `` | ログインに成功

その他の数値コマンドも同様にカスタマイズできます。

サーバ名を前につけることで、特定のサーバに対して設定することができます (例: `freenode.whois`)。

例:

- `/whois` の結果をプライベートバッファに表示:

    /set irc.msgbuffer.whois private

- whois に対する設定をデフォルトに戻す (サーババッファに表示):

    /unset irc.msgbuffer.whois

- "freenode" サーバの場合、招待メッセージを現在のバッファに表示:

    /set irc.msgbuffer.freenode.invite current

- "303" (ison) メッセージを WeeChat "core" バッファに表示:

    /set irc.msgbuffer.303 weechat

### 4.6. Logger プラグイン

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

#### 4.6.1. オプション (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

  - 説明: `バックログの最終行の色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- logger.color.backlog_line

  - 説明: `バックログ行の色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- logger.file.auto_log

  - 説明: `バッファの内容をファイルに自動的に保存 (バッファのログ保存が無効化されていない限り)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- logger.file.flush_delay

  - 説明: `ログファイルをフラッシュする間隔の秒数 (0 = 行が表示されたらすぐにログファイルに書き込み)`

  - タイプ: 整数

  - 値: 0 .. 3600 (デフォルト値: `120`)

- logger.file.info_lines

  - 説明: `バッファのログ保存の開始時と終了時にログファイルへ情報行を書き込む`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- logger.file.mask

  - 説明: `ログファイルのデフォルトファイル名マスク (フォーマットは "directory/to/file" または "file"、最初に "/" が無ければ "path" オプションがファイルへの完全なパスを作るために使われる); ローカルバッファ変数が使える; 日付指定子を使える (strftime の man を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"$plugin.$name.weechatlog"`)

- logger.file.name_lower_case

  - 説明: `ログファイル名に小文字だけを使う`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- logger.file.nick_prefix

  - 説明: `ニックネームの前に書くテキスト (メッセージプレフィックス)、例: "<"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- logger.file.nick_suffix

  - 説明: `ニックネームの後に書くテキスト (メッセージプレフィックス)、例: ">"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- logger.file.path

  - 説明: `WeeChat ログファイルのパス; 文字列最初の "%h" は WeeChat ホーム (デフォルトでは "~/.weechat") に置換; 日付指定子を使える (strftime の man を参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%h/logs/"`)

- logger.file.replacement_char

  - 説明: `マスクと一緒に使われたときのファイル名に含まれる特殊文字に対応する置換文字 (ディレクトリ区切りのようなもの)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"_"`)

- logger.file.time_format

  - 説明: `ログファイルで使用するタイムスタンプ (日付/時間指定子は strftime の man 参照)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%Y-%m-%d %H:%M:%S"`)

- logger.look.backlog

  - 説明: `新規バッファの作成時にログファイルから表示する行の最大数 (0 = バックログ無し)`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `20`)

#### 4.6.2. コマンド

`logger` logger プラグイン設定

    /logger  list
             set <level>
             flush
             disable

       list: オープンされたバッファのログ保存設定を表示
        set: 現在のバッファのログ保存レベルを設定
      level: ログ保存されるメッセージのレベル (0 = ログ保存しない、1 = いくつかのメッセージ (最も重要) .. 9 = 全てのメッセージ)
      flush: 全てのログファイルに今すぐ書き込む
    disable: 現在のバッファのログ保存を無効化 (レベルを 0 に設定)

    オプション "logger.level.*" と "logger.mask.*" は任意のバッファに対するログレベルとログ保存先の設定を意味します。

    IRC プラグインで使われるログレベル:
      1: ユーザメッセージ、通知、プライベート
      2: ニックネームの変更
      3: サーバメッセージ
      4: 参加/退出/終了
      9: その他の全てのメッセージ

    例:
      現在のバッファのレベルを 5 に設定:
        /logger set 5
      現在のバッファのログ保存を無効化:
        /logger disable
      全ての IRC バッファのレベルを 3 に設定:
        /set logger.level.irc 3
      メインの WeeChat バッファのログ保存を無効化:
        /set logger.level.core.weechat 0
      IRC サーバごとのディレクトリ、チャンネルごとのファイルを使う:
        /set logger.mask.irc "$server/$channel.weechatlog"

#### 4.6.3. ログレベル

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

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

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

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

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

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

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

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

例:

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

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

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

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

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

    /set logger.level.irc.freenode 3

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

    /set logger.level.irc 2

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

バッファに対し個別にファイル名マスクを設定することができます、 ファイル名にはローカルバッファ変数が利用されます。現在のバッファに設定されたローカル変数を確認するには:

    /buffer localvar

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

    logger.mask.irc.freenode.#weechat
    logger.mask.irc.freenode
    logger.mask.irc
    logger.file.mask

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

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

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

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

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

    ~/.weechat/
        |--- logs/
            |--- 2010/
                |--- 11/
                |       irc.server.freenode.weechatlog
                |       irc.freenode.#weechat.weechatlog
            |--- 2010/
                |--- 12/
                |       irc.server.freenode.weechatlog
                |       irc.freenode.#weechat.weechatlog

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

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

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

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

    ~/.weechat/
        |--- logs/
            |--- irc/
                |--- freenode/
                |       freenode.weechatlog
                |       #weechat.weechatlog
                |       #mychan.weechatlog
                |--- oftc/
                |       oftc.weechatlog
                |       #chan1.weechatlog
                |       #chan2.weechatlog

### 4.7. Relay プラグイン

Relay プラグインはネットワークを介して異なるプロトコルを用いてデータを中継するために利用します:

- irc: IRC プロキシ: IRC サーバに対する接続を、単一または複数の IRC クライアントで共有するために用います。

- weechat: WeeChat の表示にリモートインターフェイス (例えば QWeeChat) を使う場合に利用されるプロトコル

#### 4.7.1. オプション (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

  - 説明: `クライアント説明用のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `cyan`)

- relay.color.status_active

  - 説明: `"接続済み" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightblue`)

- relay.color.status_auth_failed

  - 説明: `"認証失敗" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightred`)

- relay.color.status_connecting

  - 説明: `"接続中" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- relay.color.status_disconnected

  - 説明: `"接続切断" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightred`)

- relay.color.status_waiting_auth

  - 説明: `"認証待ち" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `brown`)

- relay.color.text

  - 説明: `リレーバッファ内のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- relay.color.text_bg

  - 説明: `リレーバッファ内の背景色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- relay.color.text_selected

  - 説明: `リレーバッファ内の選択行のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- relay.irc.backlog_max_minutes

  - 説明: `IRC チャンネルごとのバックログの最大時間 (分) (0 = 制限無し、例: 1440 = 1 日、10080 = 1 週間、43200 = 1 ヶ月、525600 = 1 年間)`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `1440`)

- relay.irc.backlog_max_number

  - 説明: `IRC チャンネルごとのバックログの最大行数 (0 = 制限無し)`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `256`)

- relay.irc.backlog_since_last_disconnect

  - 説明: `最後にクライアントを切断した以降のバックログを表示`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- relay.irc.backlog_tags

  - 説明: `IRC チャンネルごとのバックログに表示するメッセージのタグ (利用可能なタグ: "irc_join"、"irc_part"、"irc_quit"、"irc_nick"、"irc_privmsg")、"*" = 利用可能な全てのタグ`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"irc_privmsg"`)

- relay.irc.backlog_time_format

  - 説明: `バックログメッセージの時間フォーマット (フォーマットは man strftime を参照) (メッセージの irc タグ内に時間の情報が含まれるため、クライアントがサーバの "server-time" 機能を利用可能にした場合、これは利用されません); 空文字列 = バックログメッセージで時間を表示しない`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"[%H:%M] "`)

- relay.look.auto_open_buffer

  - 説明: `新しいクライアントが接続したらリレーバッファを自動的に開く`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- relay.look.raw_messages

  - 説明: `生データバッファが閉じられた時にメモリに保存する生メッセージの数 (生データバッファを開いたときに表示されるメッセージ)`

  - タイプ: 整数

  - 値: 0 .. 65535 (デフォルト値: `256`)

- relay.network.allowed_ips

  - 説明: `リレーの利用をを許可する IP アドレスの POSIX 拡張正規表現 (大文字小文字の区別無し、最初に "(?-i)" をつければ区別有り); IPv6 が有効で IPv4 を使って接続している場合、IPv6 アドレスを IPv4 にマッピングしたもの (例: "::ffff:127.0.0.1") が使われます、例: "^((::ffff:)?123.45.67.89|192.160.*)$"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- relay.network.bind_address

  - 説明: `割り当てるアドレス (空の場合、全てのインターフェイスからの接続を受け付ける、"127.0.0.1" を使えばローカルマシンからの接続のみ許可)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- relay.network.compression_level

  - 説明: `WeeChat プロトコルでクライアントに送信するパケットの圧縮レベル (0 = 圧縮しない、1 = 低圧縮 ... 9 = 高圧縮)`

  - タイプ: 整数

  - 値: 0 .. 9 (デフォルト値: `6`)

- relay.network.ipv6

  - 説明: `デフォルトで IPv6 ソケットをリッスン (デフォルトの IPv4 に加えて); 特定のプロトコル (/help relay を参照) でプロトコルに IPv4 と IPv6 (個別または両方) を強制`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- relay.network.max_clients

  - 説明: `ポートに接続するクライアントの最大数`

  - タイプ: 整数

  - 値: 1 .. 1024 (デフォルト値: `5`)

- relay.network.password

  - 説明: `このリレーを利用するためにクライアントが必要なパスワード (空の場合パスワードなし) (注意: 値は評価されます、/help eval を参照してください)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- relay.network.ssl_cert_key

  - 説明: `SSL 証明書と秘密鍵のファイル (SSL 接続を利用するクライアント用)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%h/ssl/relay.pem"`)

- relay.network.websocket_allowed_origins

  - 説明: `ウェブソケットに使うことを許可する origin の "POSIX 拡張正規表現 (大文字小文字を区別しない、"(?-i)" を先頭に置くと大文字小文字を区別する)、例: "^http://(www\.)?example\.(com|org)"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

#### 4.7.2. コマンド

`relay` リレー管理

    /relay  list|listfull|listrelay
            add [ipv4.][ipv6.][ssl.]<protocol.name> <port>
            del [ipv4.][ipv6.][ssl.]<protocol.name>
            raw
            sslcertkey

             list: リレーするクライアントをリストアップ (アクティブなもののみ)
         listfull: リレーするクライアントをリストアップ (詳細、全てのリレー)
        listrelay: リレーをリストアップ (名前とポート番号)
              add: プロトコル + 名前のリレーを追加
              del: プロトコル + 名前のリレーを削除
             ipv4: IPv4 を強制的に利用
             ipv6: IPv6 を強制的に利用
              ssl: SSL を有効化
    protocol.name: リレーするプロトコルと名前:
                     - protocol "irc": name は共有するサーバ名 (任意指定、指定しない場合、サーバ名は "PASS" コマンドでクライアントが送信するものと同じでなければいけません、"PASS" コマンドのフォーマットは "PASS server:password")
                     - protocol "weechat" (name は使われません)
             port: リレーに使うポート番号
              raw: 生 Relay データバッファを開く
       sslcertkey: オプション relay.network.ssl_cert_key のパスを使って SSL 証明書/鍵を設定

    引数無しの場合、リレークライアントのリストを含むバッファを開く

    例:
      サーバ "freenode" に対する irc プロキシを設定:
        /relay add irc.freenode 8000
      サーバ "freenode" に対する SSL を有効化した irc プロキシを設定:
        /relay add ssl.irc.freenode 8001
      SSL を有効化してすべてのサーバに対する irc プロキシを設定 (クライアントがサーバを選ぶ):
        /relay add ssl.irc 8002
      weechat プロトコル:
        /relay add weechat 9000
      SSL を有効化した weechat プロトコル:
        /relay add ssl.weechat 9001
      SSL を有効にした weechat プロトコル、IPv4 だけを利用:
        /relay add ipv4.ssl.weechat 9001
      SSL を有効にした weechat プロトコル、IPv6 だけを利用:
        /relay add ipv6.ssl.weechat 9001
      SSL を有効にした weechat プロトコル、IPv4 と IPv6 を利用:
        /relay add ipv4.ipv6.ssl.weechat 9001

#### 4.7.3. パスワード

以下のコマンドを利用して、リレー用のパスワードを設定することを強くお勧めします:

    /set relay.network.password "mypass"

このパスワードは irc と weechat プロトコルで利用されます。

#### 4.7.4. SSL

証明書と秘密鍵を作り、プロトコル名の最初に "ssl." を付けることで SSL 経由でリレーを利用することができます。

証明書/秘密鍵ファイルへのデフォルトパスは ~/.weechat/ssl/relay.pem です (option relay.network.ssl_cert_key)。

以下のコマンドを使って証明書と秘密鍵ファイルを作成します:

    $ mkdir -p ~/.weechat/ssl
    $ cd ~/.weechat/ssl
    $ openssl req -nodes -newkey rsa:2048 -keyout relay.pem -x509 -days 365 -out relay.pem

WeeChat が既に起動している場合、 以下のコマンドで証明書と秘密鍵を再読み込みできます:

    /relay sslcertkey

#### 4.7.5. IRC プロキシ

Relay プラグインは IRC プロキシとしても使えます: Relay プラグインは IRC サーバのふりをして、他の IRC クライアント (WeeChat 自身も) は WeeChat に接続できます。

IRC サーバごとに異なるポート、もしくは全てのサーバに対して共通のポートを定義することができます。

すべてのサーバに対して共通のポートを定義した場合には、クライアントからサーバの内部名を IRC の "PASS" コマンドに含めて送信するようにしてください、以下のフォーマットを使ってください:

    PASS server:mypass

例: SSL を使い、全てのサーバに対して共通の IRC プロキシを設定 (サーバはクライアントが選択):

    /relay add ssl.irc 8000

例: SSL を使わず、内部名 "freenode" のサーバに対して IRC プロキシを設定:

    /relay add irc.freenode 8000

任意の IRC クライアントからサーバパスワード "mypass" (全てのサーバに対して共通の IRC プロキシを設定した場合には "freenode:mypass") で 8000 番ポートに接続出来ます。

#### 4.7.6. WeeChat プロトコル

Relay プラグインは WeeChat プロトコルを使ってリモートインターフェイスに対してデータを送信できます。

リモートインターフェイスを使って接続できます、ダウンロードページのリストを御覧ください: http://weechat.org/download

Important | このプロトコルを使った場合 WeeChat から他の WeeChat に接続することはできません。

例:

    /relay add weechat 9000

この後、リモートインターフェイスを使って 9000 番ポートに対して、パスワード "mypass" で接続することができます。

#### 4.7.7. 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 プロトコルの場合)。

### 4.8. Rmodifier プラグイン

Rmodifier プラグインは正規表現を使って文字列を置換します。 パスワードの入力時やに入力文字列を隠すことや WeeChat がパスワードを保存しないようにすることが典型的な利用ケースです。 例えば、パスワード文字列を `*` で置き換えることができます。

#### 4.8.1. オプション (rmodifier.conf)

セクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set rmodifier.look.*` | 外観
`modifier` | `/rmodifier add /set rmodifier.modifier.*` | rmodifier

オプション:

- rmodifier.look.hide_char

  - 説明: `文字列の一部を隠すための文字`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"*"`)

#### 4.8.2. コマンド

`rmodifier` 正規表現で modifier 文字列を変更

    /rmodifier  list|listdefault
                add <name> <modifiers> <groups> <regex>
                del <name>|-all [<name>...]
                missing
                default -yes

           list: 全ての rmodifier をリストアップ
    listdefault: デフォルトの rmodifier をリストアップ
            add: rmodifier を追加
           name: rmodifier の名前
      modifiers: rmodifier のコンマ区切りリスト
         groups: 正規表現にマッチするグループに対するアクション (括弧内): グループ (1 から 9) のコンマ区切りリスト、グループを隠すには番号の後ろに任意で "*" をつける
          regex: POSIX 拡張正規表現 (大文字小文字の区別無し、"(?-i)" で始めれば区別有り)
            del: rmodifier を削除
           -all: 全ての rmodifier を削除
        missing: 見つからない rmodifier を追加
        default: デフォルトの rmodifier に戻す

    例:
      コマンド /password に続く入力は全て隠す:
        /rmodifier add password input_text_display 1,2* ^(/password +)(.*)
      rmodifier "password" を削除:
        /rmodifier del password
      全ての rmodifiers を削除:
        /rmodifier del -all

#### 4.8.3. Rmodifier の作成

rmodifier は 3 つの要素からなります:

1. 1 つ以上の "修飾子"

2. 文字列のマッチングと "グループ" 分けを行う正規表現

3. "グループ" 化された文字列に対するアクションを指定する文字列

WeeChat またはプラグインが利用する修飾子の完全なリストは WeeChat プラグイン API リファレンス の weechat_hook_modifier 関数を参照してください。

グループ化されたそれぞれの文字列に対して、以下のアクションが可能です:

- 文字列に変更を加えない (グループ番号を指定)

- 文字列を隠すために全ての文字を置換する (グループ番号 + `*` で指定)

- 文字列を削除 (グループ番号を指定しない場合)

`/oper` コマンドに対するデフォルト rmodifier の例:

- 修飾子: `history_add,input_text_display`

  - `history_add`: WeeChat がコマンドを履歴に保存する際に呼び出される

  - `input_text_display`: コマンドラインを変更する際に呼び出される (入力テキストが表示されたときにのみ適用、コマンドラインの内容には適用されない)

- 正規表現: `^(/oper +\S+ +)(.*)`

- グループに対するアクション: `1,2*`

修飾子 "history_add" や "input_text_display" が呼び出されるたびに、 正規表現が確認されます。文字列にマッチした場合、 文字列はグループに対して定義されたアクションを使って置換されます。

この例では、グループ番号 1 はそのまま、グループ番号 2 に含まれる全ての文字を設定済みの文字 (オプション rmodifier.look.hide_char) で置換します。

コマンドラインに `/oper nick password` のような文字列が含まれる場合、 `/oper nick ********` のように表示されます。

### 4.9. スクリプトプラグイン

WeeChat は 6 種類のスクリプトプラグインを備えています: Python、Perl、Ruby、Lua、Tcl、Guile (scheme)。 これらのプラグインでそれぞれの言語で書かれたスクリプトのロード、実行、アンロードができます。

"スクリプト" と呼ばれるほかのプラグインはスクリプトマネージャで、任意の言語で書かれたスクリプトをロード / アンロードしたり、WeeChat スクリプトリポジトリ (http://weechat.org/scripts から参照可能) のスクリプトをインストール / 削除するために利用します。

スクリプトの書き方やスクリプト用の WeeChat API についての詳しい情報は、 WeeChat スクリプト製作ガイド を参照してください。

#### 4.9.1. スクリプトオプション (script.conf)

セクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set script.look.*` | 外観
`color` | `/set script.color.*` | 色
`scripts` | `/set script.scripts.*` | スクリプトのダウンロードに関するオプション

オプション:

- script.color.status_autoloaded

  - 説明: `"自動ロード" 状態 ("a") に対応する色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `cyan`)

- script.color.status_held

  - 説明: `"ホールド" 状態 ("H") に対応する色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- script.color.status_installed

  - 説明: `"インストール済み" 状態 ("i") に対応する色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightcyan`)

- script.color.status_obsolete

  - 説明: `"アップデートが必要" 状態 ("N") に対応する色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightmagenta`)

- script.color.status_popular

  - 説明: `"人気" 状態 ("*") に対応する色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- script.color.status_running

  - 説明: `"実行中" 状態 ("r") に対応する色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightgreen`)

- script.color.status_unknown

  - 説明: `"未定義" 状態 ("?") に対応する色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightred`)

- script.color.text

  - 説明: `スクリプトバッファのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- script.color.text_bg

  - 説明: `スクリプトバッファ内の背景色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- script.color.text_bg_selected

  - 説明: `スクリプトバッファ内の選択行の背景色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `red`)

- script.color.text_date

  - 説明: `スクリプトバッファ内の日付のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- script.color.text_date_selected

  - 説明: `スクリプトバッファ内の日付が選択された場合のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- script.color.text_delimiters

  - 説明: `スクリプトバッファ内の区切り文字のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- script.color.text_description

  - 説明: `スクリプトバッファ内の説明のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- script.color.text_description_selected

  - 説明: `スクリプトバッファ内の説明が選択された場合のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- script.color.text_extension

  - 説明: `スクリプトバッファ内の拡張子のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- script.color.text_extension_selected

  - 説明: `スクリプトバッファ内の拡張子が選択された場合のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- script.color.text_name

  - 説明: `スクリプトバッファ内のスクリプト名のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `cyan`)

- script.color.text_name_selected

  - 説明: `スクリプトバッファ内のスクリプト名が選択された場合のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightcyan`)

- script.color.text_selected

  - 説明: `スクリプトバッファ内の選択行のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- script.color.text_tags

  - 説明: `スクリプトバッファ内のタグのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `brown`)

- script.color.text_tags_selected

  - 説明: `スクリプトバッファ内のタグが選択された場合のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- script.color.text_version

  - 説明: `スクリプトバッファ内のバージョンのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `magenta`)

- script.color.text_version_loaded

  - 説明: `スクリプトバッファ内のロード済みバージョンのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- script.color.text_version_loaded_selected

  - 説明: `スクリプトバッファ内のロード済みバージョンが選択された場合のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- script.color.text_version_selected

  - 説明: `スクリプトバッファ内のバージョンが選択された場合のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightmagenta`)

- script.look.columns

  - 説明: `スクリプトバッファでの表示列のフォーマット: 以下の列識別子がそれぞれの値で置き換えられます: %a=作者、%d=説明、%D=追加日、%e=拡張子、%l=言語、%L=ライセンス、%n=拡張子を含む名前、%N=名前、%r=依存、%s=状態、%t=タグ、%u=アップデート日、%v=バージョン、%V=ロード済みバージョン、%w=min_weechat、%W=max_weechat)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%s %n %V %v %u | %d | %t"`)

- script.look.diff_color

  - 説明: `比較の結果を色付けする`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- script.look.diff_command

  - 説明: `インストール済みのスクリプトとリポジトリにあるものの違いを表示するコマンド ("auto" = 比較コマンドの自動検出 (git または diff)、空文字列 = 比較を無効化、その他の文字列 = コマンド名、例えば "diff")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"auto"`)

- script.look.display_source

  - 説明: `スクリプトの詳細と併せてバッファにスクリプトのソースコードを表示 (スクリプトの詳細が表示された場合、スクリプトは一時的にダウンロードされます)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- script.look.quiet_actions

  - 説明: `スクリプトバッファ内での操作に対する出力を抑制する: スクリプトがインストール / 削除 / ロード / アンロードされた場合にコアバッファにメッセージを表示しない (エラーは表示される)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- script.look.sort

  - 説明: `デフォルトのスクリプト表示ソートキー: 識別子のコンマ区切りリスト: a=作者、A=自動ロード、d=追加日、e=拡張子、i=インストール済み、l=言語、n=名前、o=アップデートが必要、p=人気、r=実行中、u=アップデート日; 識別子直前の文字 "-" は逆順でソートを意味; 例: "i,u": インストール済みが最初に来て、アップデート日の順にソート`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"p,n"`)

- script.look.translate_description

  - 説明: `スクリプトの翻訳済み説明文 (翻訳が利用できない場合は、英語で表示)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- script.look.use_keys

  - 説明: `スクリプトに対して何かアクションを行うにはスクリプトバッファで alt+X キーを使ってください (alt+i = インストール、alt+r = 削除、...); これができない場合、単一のキーを試してください: i、r、...`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- script.scripts.autoload

  - 説明: `インストール済みの自動ロードスクリプト ("autoload" ディレクトリ中に親ディレクトリにあるスクリプトのリンクを作成)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- script.scripts.cache_expire

  - 説明: `ローカルキャッシュが無効になる時間、分単位 (-1 = 再取得しない、0 = 常に再取得)`

  - タイプ: 整数

  - 値: -1 .. 525600 (デフォルト値: `60`)

- script.scripts.dir

  - 説明: `スクリプトのローカルキャッシュディレクトリ`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%h/script"`)

- script.scripts.hold

  - 説明: `"ホールド" するスクリプト: コンマ区切りのスクリプトリスト、このリストに含まれるスクリプトはアップグレードされませんし、削除もされません、例: "buffers.pl,iset.pl"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- script.scripts.url

  - 説明: `ファイルの URL とスクリプトのリスト`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"http://www.weechat.org/files/plugins.xml.gz"`)

#### 4.9.2. Script コマンド

`script` WeeChat スクリプトマネージャ

    /script  list [-o|-i]
             search <text>
             show <script>
             load|unload|reload <script> [<script>...]
             autoload|noautoload|toggleautoload <script> [<script>...]
             install|remove|installremove|hold [-q] <script> [<script>...]
             upgrade
             update

              list: ロード済みスクリプトの表示 (すべての言語)
                -o: バッファにロード済みスクリプトのリストを表示
                -i: コマンドラインにロード済みスクリプトのリストをコピー (バッファ送信用)
            search: タグまたはテキストでスクリプトを検索し、スクリプトバッファに結果を表示
              show: スクリプトに関する詳細を表示
              load: スクリプトのロード (複数可)
            unload: スクリプトのアンロード (複数可)
            reload: スクリプトのリロード (複数可)
          autoload: スクリプトを自動ロード
        noautoload: スクリプトを自動ロードしない
    toggleautoload: 自動ロードの切り替え
           install: スクリプトのインストール/アップグレード (複数可)
            remove: スクリプトの削除 (複数可)
     installremove: スクリプトのインストール又は削除 (複数可)、スクリプトの状態に依存
              hold: スクリプトのホールド/アンホールド (複数可) (ホールドされたスクリプトはアップグレードされず、削除もできなくなる)
                -q: 出力を抑制するモード: メッセージを表示しない
           upgrade: 全ての古いインストール済みスクリプトをアップグレード (新バージョンが利用可能な場合)
            update: ローカルスクリプトキャッシュのアップデート

    引数がない場合、スクリプト表示用にバッファを開く

    スクリプトバッファでは、以下の状態識別子が利用できます:
      * i a H r N
      | | | | | |
      | | | | | アップデートが必要 (新バージョンが利用可能)
      | | | | 起動済み (ロード済み)
      | | | ホールド状態
      | | 自動ロード
      | インストール済み
      人気のあるスクリプト

    スクリプトバッファで利用可能なキーの組み合わせ:
      alt+i  スクリプトのインストール
      alt+r  スクリプトの削除
      alt+l  スクリプトのロード
      alt+L  スクリプトのリロード
      alt+u  スクリプトのアンロード
      alt+A  スクリプトの自動ロード
      alt+h  スクリプトの(アン)ホールド
      alt+v  スクリプトの表示

    スクリプトバッファで利用可能な入力:
      i/r/l/L/u/h  スクリプトに対するアクション (上記キーと同じ)
      q            バッファを閉じる
      $            バッファのリフレッシュ
      s:x,y        x と y をキーにしてバッファをソート (/help script.look.sort 参照)
      s:           ソート解除 (デフォルトのソート順)
      word(s)      スクリプトのフィルタ: スクリプトを単語で検索 (複数可) (説明、タグ、...)
      *            フィルタの解除

    スクリプトバッファにおけるマウス操作:
      ホイール      リストのスクロール
      左ボタン      スクリプトの選択
      右ボタン      スクリプトのインストール / 削除

    例:
      /script search url
      /script install iset.pl buffers.pl
      /script remove iset.pl
      /script hold urlserver.py
      /script reload urlserver
      /script upgrade

#### 4.9.3. Python コマンド

`python` スクリプトをリストアップ/ロード/アンロード

    /python  list|listfull [<name>]
             load [-q] <filename>
             autoload
             reload|unload [-q] [<name>]

        list: ロード済みスクリプトをリストアップ
    listfull: ロード済みスクリプトをリストアップ (詳細)
        load: スクリプトをロード
    autoload: "autoload" ディレクトリに含まれる全てのスクリプトをロード
      reload: スクリプトのリロード (名前を指定しなかった場合、全てのスクリプトをアンロードし、"autoload" ディレクトリに含まれる全てのスクリプトをロード)
      unload: スクリプトのアンロード (名前を指定しなかった場合、全てのスクリプトをアンロード)
    filename: ロードするスクリプト (ファイル)
        name: スクリプト名 (名前は "register" 関数を呼び出すために使われる)
          -q: 出力抑制モード: メッセージを表示しない

    引数無しの場合、全てのロード済みスクリプトをリストアップします。

#### 4.9.4. Perl コマンド

`perl` スクリプトをリストアップ/ロード/アンロード

    /perl  list|listfull [<name>]
           load [-q] <filename>
           autoload
           reload|unload [-q] [<name>]

        list: ロード済みスクリプトをリストアップ
    listfull: ロード済みスクリプトをリストアップ (詳細)
        load: スクリプトをロード
    autoload: "autoload" ディレクトリに含まれる全てのスクリプトをロード
      reload: スクリプトのリロード (名前を指定しなかった場合、全てのスクリプトをアンロードし、"autoload" ディレクトリに含まれる全てのスクリプトをロード)
      unload: スクリプトのアンロード (名前を指定しなかった場合、全てのスクリプトをアンロード)
    filename: ロードするスクリプト (ファイル)
        name: スクリプト名 (名前は "register" 関数を呼び出すために使われる)
          -q: 出力抑制モード: メッセージを表示しない

    引数無しの場合、全てのロード済みスクリプトをリストアップします。

#### 4.9.5. Ruby コマンド

`ruby` スクリプトをリストアップ/ロード/アンロード

    /ruby  list|listfull [<name>]
           load [-q] <filename>
           autoload
           reload|unload [-q] [<name>]

        list: ロード済みスクリプトをリストアップ
    listfull: ロード済みスクリプトをリストアップ (詳細)
        load: スクリプトをロード
    autoload: "autoload" ディレクトリに含まれる全てのスクリプトをロード
      reload: スクリプトのリロード (名前を指定しなかった場合、全てのスクリプトをアンロードし、"autoload" ディレクトリに含まれる全てのスクリプトをロード)
      unload: スクリプトのアンロード (名前を指定しなかった場合、全てのスクリプトをアンロード)
    filename: ロードするスクリプト (ファイル)
        name: スクリプト名 (名前は "register" 関数を呼び出すために使われる)
          -q: 出力抑制モード: メッセージを表示しない

    引数無しの場合、全てのロード済みスクリプトをリストアップします。

#### 4.9.6. Lua コマンド

`lua` スクリプトをリストアップ/ロード/アンロード

    /lua  list|listfull [<name>]
          load [-q] <filename>
          autoload
          reload|unload [-q] [<name>]

        list: ロード済みスクリプトをリストアップ
    listfull: ロード済みスクリプトをリストアップ (詳細)
        load: スクリプトをロード
    autoload: "autoload" ディレクトリに含まれる全てのスクリプトをロード
      reload: スクリプトのリロード (名前を指定しなかった場合、全てのスクリプトをアンロードし、"autoload" ディレクトリに含まれる全てのスクリプトをロード)
      unload: スクリプトのアンロード (名前を指定しなかった場合、全てのスクリプトをアンロード)
    filename: ロードするスクリプト (ファイル)
        name: スクリプト名 (名前は "register" 関数を呼び出すために使われる)
          -q: 出力抑制モード: メッセージを表示しない

    引数無しの場合、全てのロード済みスクリプトをリストアップします。

#### 4.9.7. Tcl コマンド

`tcl` スクリプトをリストアップ/ロード/アンロード

    /tcl  list|listfull [<name>]
          load [-q] <filename>
          autoload
          reload|unload [-q] [<name>]

        list: ロード済みスクリプトをリストアップ
    listfull: ロード済みスクリプトをリストアップ (詳細)
        load: スクリプトをロード
    autoload: "autoload" ディレクトリに含まれる全てのスクリプトをロード
      reload: スクリプトのリロード (名前を指定しなかった場合、全てのスクリプトをアンロードし、"autoload" ディレクトリに含まれる全てのスクリプトをロード)
      unload: スクリプトのアンロード (名前を指定しなかった場合、全てのスクリプトをアンロード)
    filename: ロードするスクリプト (ファイル)
        name: スクリプト名 (名前は "register" 関数を呼び出すために使われる)
          -q: 出力抑制モード: メッセージを表示しない

    引数無しの場合、全てのロード済みスクリプトをリストアップします。

#### 4.9.8. Guile コマンド

`guile` スクリプトをリストアップ/ロード/アンロード

    /guile  list|listfull [<name>]
            load [-q] <filename>
            autoload
            reload|unload [-q] [<name>]

        list: ロード済みスクリプトをリストアップ
    listfull: ロード済みスクリプトをリストアップ (詳細)
        load: スクリプトをロード
    autoload: "autoload" ディレクトリに含まれる全てのスクリプトをロード
      reload: スクリプトのリロード (名前を指定しなかった場合、全てのスクリプトをアンロードし、"autoload" ディレクトリに含まれる全てのスクリプトをロード)
      unload: スクリプトのアンロード (名前を指定しなかった場合、全てのスクリプトをアンロード)
    filename: ロードするスクリプト (ファイル)
        name: スクリプト名 (名前は "register" 関数を呼び出すために使われる)
          -q: 出力抑制モード: メッセージを表示しない

    引数無しの場合、全てのロード済みスクリプトをリストアップします。

### 4.10. Xfer プラグイン

Xfer プラグインの機能:

- ダイレクトチャット (サーバ不要の 2 ホスト間直接接続): 例えば IRC プラグイン経由の "DCC チャット"

- ファイル転送、例えば IRC プラグイン経由の "DCC"

#### 4.10.1. オプション (xfer.conf)

セクション:

セクション | 操作コマンド | 説明
--- | --- | ---
`look` | `/set xfer.look.*` | 外観
`color` | `/set xfer.color.*` | 色
`network` | `/set xfer.network.*` | ネットワークオプション
`file` | `/set xfer.file.*` | ファイルの送信/受信に関するオプション

オプション:

- xfer.color.status_aborted

  - 説明: `"中止" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightred`)

- xfer.color.status_active

  - 説明: `"アクティブ" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightblue`)

- xfer.color.status_connecting

  - 説明: `"接続中" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `yellow`)

- xfer.color.status_done

  - 説明: `"終了" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightgreen`)

- xfer.color.status_failed

  - 説明: `"失敗" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightred`)

- xfer.color.status_waiting

  - 説明: `"接続待ち" 状態のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `lightcyan`)

- xfer.color.text

  - 説明: `xfer バッファのテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- xfer.color.text_bg

  - 説明: `xfer バッファの背景色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `default`)

- xfer.color.text_selected

  - 説明: `xfer バッファで選択された行のテキスト色`

  - タイプ: 色

  - 値: WeeChat の色名 (default、black、(dark)gray、white、(light)red、(light)green、brown、yellow、(light)blue、(light)magenta、(light)cyan) 、ターミナル色番号またはその別名; 色の前に属性を置くことができます (テキスト前景色のみ、背景色は出来ません): 太字は "*"、反転は "!"、イタリックは "/"、下線は "_" (デフォルト値: `white`)

- xfer.file.auto_accept_chats

  - 説明: `チャット要求を自動的に許可 (注意して使用!)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- xfer.file.auto_accept_files

  - 説明: `ファイルを自動的に受信 (注意して使用!)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- xfer.file.auto_accept_nicks

  - 説明: `ファイルやチャットの受け入れを自動的に許可するニックネームのコンマ区切りリスト; フォーマットは "server.nick" (サーバを特定する場合) または "nick" (すべてのサーバ); 例: "freenode.FlashCode,andrew"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- xfer.file.auto_check_crc32

  - 説明: `ファイル名に CRC32 ファイルチェックサム (8 桁の 16 進数) が含まれている場合、自動的に CRC32 ファイルチェックサムを確認`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `off`)

- xfer.file.auto_rename

  - 説明: `既に存在する場合、受信ファイルをリネームする (".1"、".2"、...を追加)`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- xfer.file.auto_resume

  - 説明: `リモートホストとの接続が切れた場合、自動的にファイル転送をリジュームする`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- xfer.file.convert_spaces

  - 説明: `ファイルの送信時にスペースをアンダースコアに変換`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- xfer.file.download_path

  - 説明: `受信ファイルを書き込むパス ("%h" は WeeChat ホームに置換される、デフォルトは "~/.weechat")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"%h/xfer"`)

- xfer.file.upload_path

  - 説明: `ファイル送信の際に読み込むファイルのパス (ユーザがパスを指定しなかった場合) ("%h" は WeeChat ホームに置換される、デフォルトは "~/.weechat")`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"~"`)

- xfer.file.use_nick_in_filename

  - 説明: `ファイルを受信する際にローカルファイル名のプレフィックスとしてリモートニックネームを使用`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- xfer.look.auto_open_buffer

  - 説明: `新しい xfer がリストに追加されたら xfer バッファを自動的に開く`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- xfer.look.progress_bar_size

  - 説明: `プログレスバーのサイズ、文字数単位 (0 の場合、プログレスバーを使わない)`

  - タイプ: 整数

  - 値: 0 .. 256 (デフォルト値: `20`)

- xfer.look.pv_tags

  - 説明: `プライベートメッセージに使われたタグのコンマ区切りリスト、例えば: "notify_message"、"notify_private"、"notify_highlight"`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `"notify_private"`)

- xfer.network.blocksize

  - 説明: `送信パケットのブロックサイズ、バイト単位`

  - タイプ: 整数

  - 値: 1024 .. 102400 (デフォルト値: `65536`)

- xfer.network.fast_send

  - 説明: `ファイル送信時に肯定応答を待たない`

  - タイプ: ブール

  - 値: on, off (デフォルト値: `on`)

- xfer.network.own_ip

  - 説明: `ファイル/チャットの送信に使う IP か DNS アドレス (空の場合、ローカルインターフェイス IP を使う)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- xfer.network.port_range

  - 説明: `ファイル/チャットを送信する際に、与えられた範囲のポートを使う (NAT で便利) ことを強制 (構文: 単一のポートを指定する場合は 5000 等、ポート範囲の場合は 5000-5015 等、空は任意のポートを意味する、1024 以下のポート番号は root 以外使えないため、1024 以上のポート番号を使うことを推奨)`

  - タイプ: 文字列

  - 値: 未制約文字列 (デフォルト値: `""`)

- xfer.network.speed_limit

  - 説明: `ファイル送信の速度制限、1 秒あたりのキロバイトで指定 (0 は制限無し)`

  - タイプ: 整数

  - 値: 0 .. 2147483647 (デフォルト値: `0`)

- xfer.network.timeout

  - 説明: `xfer 要求のタイムアウト (秒単位)`

  - タイプ: 整数

  - 値: 5 .. 2147483647 (デフォルト値: `300`)

#### 4.10.2. コマンド

`me` CTCP action をリモートホストに送信

    /me  <message>

    message: 送信メッセージ

`xfer` xfer 管理

    /xfer  [list|listfull]

        list: xfer をリストアップ
    listfull: xfer をリストアップ (詳細)

    引数無しでは、xfer リストを含むバッファを開きます。

## 5. サポート

サポートを依頼する前に、WeeChat に付属するドキュメントと FAQ を読んでください。 (ドキュメントとはこの文書のことで、ここまでの全ての内容を読んでいないのであれば、 読み直してください!)。

サポートを得る方法:

- IRC: サーバ irc.freenode.net 、チャンネル #weechat (英語) と #weechat-fr (フランス語)

- メーリングリスト:

  - 購読: http://mail.nongnu.org/mailman/listinfo/weechat-support

  - weechat-support@nongnu.org 宛にメールを送信

  - アーカイブ: http://mail.nongnu.org/archive/html/weechat-support