//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_weechat_away]]
* `+away+`: 離席状態の切り替え

----
/away  [-all] [<message>]

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

[[command_weechat_bar]]
* `+bar+`: バーの管理

----
/bar  list|listfull|listitems
      add <name> <type>[,<conditions>] <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: 内側のウィンドウ、任意の状態を取れる (以下を参照してください)
   conditions: バーを表示する条件:
                 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
----

[[command_weechat_buffer]]
* `+buffer+`: バッファの管理

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

    list: list buffers (without argument, this list is displayed)
     add: add a new buffer (it can be closed with "/buffer close" or input "q")
   clear: clear buffer content (number for a buffer, -merged for merged buffers, -all for all buffers, or nothing for current buffer)
    move: move buffer in the list (may be relative, for example -1); "-" = move to first buffer number, "+" = move to last buffer number + 1
    swap: swap two buffers (swap with current buffer if only one number/name given)
   cycle: jump loop between a list of buffers
   merge: merge current buffer to another buffer (chat area will be mix of both buffers)
          (by default ctrl-x switches between merged buffers)
 unmerge: unmerge buffer from other buffers which have same number
    hide: hide the buffer
  unhide: unhide the buffer
renumber: renumber buffers (works only if option weechat.look.buffer_auto_renumber is off)
   close: close buffer (number/range or name is optional)
  notify: set notify level for current buffer: this level determines whether buffer will be added to hotlist or not:
               none: never
          highlight: for highlights only
            message: for messages from users + highlights
                all: all messages
              reset: reset to default value (all)
localvar: display local variables for the buffer
     set: set a property for current buffer
     get: display a property of current buffer
  number: jump to buffer by number, possible prefix:
          '+': relative jump, add number to current
          '-': relative jump, sub number to current
          '*': jump to number, using option "weechat.look.jump_current_to_previous_buffer"
       -: jump to first buffer number
       +: jump to last buffer number
    name: jump to buffer by (partial) name

Examples:
  clear current buffer:
    /buffer clear
  move buffer to number 5:
    /buffer move 5
  swap buffer 1 with 3:
    /buffer swap 1 3
  swap buffer #weechat with current buffer:
    /buffer swap #weechat
  jump on #chan1, #chan2, #chan3 and loop:
    /buffer cycle #chan1 #chan2 #chan3
  merge with core buffer:
    /buffer merge 1
  merge with #weechat buffer:
    /buffer merge #weechat
  unmerge buffer:
    /buffer unmerge
  close current buffer:
    /buffer close
  close buffers 5 to 7:
    /buffer close 5-7
  jump to #weechat:
    /buffer #weechat
  jump to next buffer:
    /buffer +1
  jump to last buffer number:
    /buffer +
----

[[command_weechat_color]]
* `+color+`: 色の別名の定義と、色パレットの表示

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

   alias: ある色に別名を追加
 unalias: 別名の削除
   color: 色番号 (0 以上、最大値は端末依存、多くの場合 63 か 255)
    name: 色の別名 (例: "orange")
   reset: 全ての色ペアをリセット (自動的なリセットが無効化されており、これ以上の色ペアが利用できない場合に必要、オプション "weechat.look.color_pairs_auto_reset" を参照してください)
term2rgb: 端末色 (0-255) を RGB 色に変換
rgb2term: RGB 色を端末色 (0-255) に変換
   limit: 端末テーブル内で使う色の数 (0 から始まる); デフォルトは 256
     -o: 端末/色情報を現在の入力としてバッファに送る

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

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

[[command_weechat_command]]
* `+command+`: WeeChat かプラグインのコマンドを起動

----
/command  [-buffer <name>] <plugin> <command>

-buffer: このバッファでコマンドを実行
 plugin: このプラグインからコマンドを実行; 'core' は WeeChat コマンド、'*' は自動的にプラグインを選択 (このコマンドを実行したバッファに依存)
command: 実行するコマンド (コマンドの最初に '/' が無い場合はこれを自動的に追加します)
----

[[command_weechat_cursor]]
* `+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 を参照してください)、現在のところデフォルトではセンタークリックでカーソルモードが開始されます。

カーソルモードにおけるチャットメッセージに対するデフォルトキー:
  m  メッセージの引用
  q  プレフィックスとメッセージを引用
  Q  時間、プレフィックス、メッセージを引用

カーソルモードにおけるニックネームリストに対するデフォルトキー:
  b  ニックネームを参加禁止にする (/ban)
  k  ニックネームをキックする (/kick)
  K  ニックネームを参加禁止にしてキックする (/kickban)
  q  ニックネームに送信するクエリを開く (/query)
  w  ユーザ情報を要求 (/whois)

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

[[command_weechat_debug]]
* `+debug+`: デバッグ関数

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

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

[[command_weechat_eval]]
* `+eval+`: 式を評価

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

        -n: display result without sending it to buffer (debug mode)
        -s: split expression before evaluating it (many commands can be separated by semicolons)
        -c: evaluate as condition: use operators and parentheses, return a boolean value ("0" or "1")
expression: expression to evaluate, variables with format ${variable} are replaced (see below); many commands can be separated by semicolons
  operator: a logical or comparison operator:
            - logical operators:
                &&  boolean "and"
                ||  boolean "or"
            - comparison operators:
                ==  equal
                !=  not equal
                <=  less or equal
                <   less
                >=  greater or equal
                >   greater
                =~  is matching POSIX extended regex
                !~  is NOT matching POSIX extended regex
                =*  is matching mask (wildcard "*" is allowed)
                !*  is NOT matching mask (wildcard "*" is allowed)

An expression is considered as "true" if it is not NULL, not empty, and different from "0".
The comparison is made using floating point numbers if the two expressions are valid numbers, with one of the following formats:
  - integer (examples: 5, -7)
  - floating point number (examples: 5.2, -7.5, 2.83e-2)
  - hexadecimal number (examples: 0xA3, -0xA3)
To force a string comparison, you can add double quotes around each expression, for example:
  50 > 100      ==> 0
  "50" > "100"  ==> 1

Some variables are replaced in expression, using the format ${variable}, variable can be, by order of priority:
  1. an evaluated sub-string (format: "eval:xxx")
  2. a string with escaped chars (format: "esc:xxx" or "\xxx")
  3. a string with chars to hide (format: "hide:char,string")
  4. a string with max chars (format: "cut:max,suffix,string" or "cut:+max,suffix,string")
     or max chars displayed on screen (format: "cutscr:max,suffix,string" or "cutscr:+max,suffix,string")
  5. a reversed string (format: "rev:xxx")
  6. a repeated string (format: "repeat:count,string")
  7. a color (format: "color:xxx", see "Plugin API reference", function "color")
  8. an info (format: "info:name,arguments", arguments are optional)
  9. current date/time (format: "date" or "date:format")
  10. an environment variable (format: "env:XXX")
  11. a ternary operator (format: "if:condition?value_if_true:value_if_false")
  12. an option (format: "file.section.option")
  13. a local variable in buffer
  14. a hdata name/variable (the value is automatically converted to string), by default "window" and "buffer" point to current window/buffer.
Format for hdata can be one of following:
  hdata.var1.var2...: start with a hdata (pointer must be known), and ask variables one after one (other hdata can be followed)
  hdata[list].var1.var2...: start with a hdata using a list, for example:
    ${buffer[gui_buffers].full_name}: full name of first buffer in linked list of buffers
    ${plugin[weechat_plugins].name}: name of first plugin in linked list of plugins
  hdata[pointer].var1.var2...: start with a hdata using a pointer, for example:
    ${buffer[0x1234abcd].full_name}: full name of the buffer with this pointer (can be used in triggers)
For name of hdata and variables, please look at "Plugin API reference", function "weechat_hdata_get".

Examples (simple strings):
  /eval -n ${info:version}                       ==> 0.4.3
  /eval -n ${env:HOME}                           ==> /home/user
  /eval -n ${weechat.look.scroll_amount}         ==> 3
  /eval -n ${sec.data.freenode_password}         ==> secret
  /eval -n ${window}                             ==> 0x2549aa0
  /eval -n ${window.buffer}                      ==> 0x2549320
  /eval -n ${window.buffer.full_name}            ==> core.weechat
  /eval -n ${window.buffer.number}               ==> 1
  /eval -n ${\t}                                 ==> <tab>
  /eval -n ${hide:-,${relay.network.password}}   ==> --------
  /eval -n ${cut:3,+,test}                       ==> tes+
  /eval -n ${cut:+3,+,test}                      ==> te+
  /eval -n ${date:%H:%M:%S}                      ==> 07:46:40
  /eval -n ${if:${info:term_width}>80?big:small} ==> big
  /eval -n ${rev:Hello}                          ==> olleH
  /eval -n ${repeat:5,-}                         ==> -----

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

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

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

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

デフォルトではキー alt+'=' ですべてのバッファについてフィルタリングの on/off を切り替えられます。現在のバッファに限りフィルタリングを切り替えるには alt+'-' を使います。

よく使われるタグ:
  no_filter、no_highlight、no_log、log0..log9 (ログレベル)、
  notify_none、notify_message、notify_private、notify_highlight、
  self_msg、nick_xxx (xxx はメッセージのニックネーム部分)、prefix_nick_ccc (ccc はニックネームの色)、
  host_xxx (xxx はメッセージのユーザ名 + ホスト名部分)、
  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
  すべてのバッファで "WeeChat sucks" と完全に一致する行をフィルタ:
    /filter add sucks2 * * (?-i)^WeeChat sucks$
----

[[command_weechat_help]]
* `+help+`: コマンドとオプションに関するヘルプを表示

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

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

[[command_weechat_history]]
* `+history+`: バッファコマンド履歴を表示

----
/history  clear
          <value>

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

[[command_weechat_input]]
* `+input+`: コマンドライン関数

----
/input  <action> [<arguments>]

アクションリスト:
  return: "enter" キーをシミュレート
  complete_next: 次の補完候補で単語を補完
  complete_previous: 一つ前の補完候補で単語を補完
  search_text_here: 現在の位置でテキストを検索
  search_text: バッファ内のテキストを検索
  search_switch_case: 完全一致検索に変更
  search_switch_regex: 検索タイプの切り替え: 文字列/正規表現
  search_switch_where: 検索範囲の切り替え: メッセージ/プレフィックス
  search_previous: 一つ前の行を検索
  search_next: 次の行を検索
  search_stop_here: 現在の位置で検索を終了
  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: WeeChat 専用の内部クリップボードの内容をペースト
  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_displayed: 表示されている最後のバッファに移動 (最新のバッファ移動の一つ前に表示されていたバッファ)
  jump_previously_visited_buffer: 一つ前に訪れたバッファに移動
  jump_next_visited_buffer: 次に訪れたバッファに移動
  hotlist_clear: ホットリストを消去 (オプション引数: "lowest" はホットリスト内の最も低いレベルだけを消去。"highest" はホットリスト内の最も高いレベルだけを消去。レベルマスクは 1 (参加/退出)、2 (メッセージ)、4 (プライベートメッセージ)、8 (ハイライト) を合計した整数値で指定したレベルを消去)
  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 を参照してください)
  send: バッファにテキストを送信
  paste_start: ペーストの開始 (括弧付きペーストモード)
  paste_stop: ペーストの終了 (括弧付きペーストモード)

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

[[command_weechat_key]]
* `+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-t キーをニックネームリストバーに割り当てる:
    /key bind meta-t /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}
----

[[command_weechat_layout]]
* `+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: ウィンドウのみに対してレイアウトを保存/適用 (それぞれのウィンドウに表示されるバッファ)

引数を指定しなかった場合、保存されたレイアウトを表示します。

"weechat.look.save_layout_on_exit" オプションを使えば、現在のレイアウトを /quit コマンドの実行時に保存することが可能です。
----

[[command_weechat_mouse]]
* `+mouse+`: マウス操作

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

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

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

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

[[command_weechat_mute]]
* `+mute+`: 静かにコマンドを実行

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

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

ターゲット (-core、-current、-buffer) が指定されなかった場合、デフォルトでは全ての出力を抑制します。

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

[[command_weechat_plugin]]
* `+plugin+`: プラグインの表示/ロード/アンロード

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

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

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

[[command_weechat_print]]
* `+print+`: バッファ内にテキストを表示

----
/print  [-buffer <number>|<name>] [-newbuffer <name>] [-free] [-switch] [-core|-current] [-y <line>] [-escape] [-date <date>] [-tags <tags>] [-action|-error|-join|-network|-quit] [<text>]
        -stdout|-stderr [<text>]
        -beep

   -buffer: 指定したバッファにテキストを表示 (デフォルト: コマンドを実行したバッファ)
-newbuffer: 新しいバッファの作成、そのバッファ内にテキストの表示
     -free: 自由内容バッファの作成 (-newbuffer と共に使用)
   -switch: 指定したバッファに切り替え
     -core: "-buffer core.weechat" のエイリアス
  -current: 現在のバッファにテキストを表示
        -y: 指定した行番号に表示 (自由内容バッファ専用)
      line: 自由内容バッファの行番号 (1 行目は 0、負数は最後の行から数えた行: -1 = 最終行から数えて 1 行目、-2 = 最終行から数えて 2 行目、...)
   -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: 標準エラー出力にテキストを表示 (エスケープ文字を解釈)
     -beep: "-stderr \a" の別名

オプション -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\tThe message
  チャンネル #weechat にメッセージを表示:
    /print -buffer irc.freenode.#weechat Message on #weechat
  雪だるまを表示 (U+2603):
    /print -escape \u2603
  警告を送信 (BEL):
    /print -beep
----

[[command_weechat_proxy]]
* `+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
----

[[command_weechat_quit]]
* `+quit+`: WeeChat の終了

----
/quit  [-yes] [<arguments>]

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

デフォルト設定では、終了時に設定ファイルを保存します (オプション "weechat.look.save_config_on_exit" 参照)。また、終了時に現在のレイアウトを保存することも可能です (オプション "weechat.look.save_layout_on_exit" 参照)。
----

[[command_weechat_reload]]
* `+reload+`: ディスクから設定ファイルをリロード

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

file: リロードする設定ファイル (拡張子 ".conf" は不要)

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

[[command_weechat_repeat]]
* `+repeat+`: 複数回コマンドを実行

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

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

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

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

[[command_weechat_save]]
* `+save+`: 設定をファイルに保存

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

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

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

デフォルト設定では、/quit コマンドの実行時にすべての設定ファイルがディスクに保存されます (オプション "weechat.look.save_config_on_exit" 参照)。
----

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

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

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

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

保護バッファ内で利用可能なキー:
  alt+v  値を切り替えます

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

${sec.data.xxx} の形で書かれた保護データは以下の様に利用できます:
  - /eval コマンド
  - コマンドライン引数 "--run-command"
  - weechat.startup.command_{before|after}_plugins オプション
  - パスワードや機密データを含むと思われるその他のオプション (例えば、プロキシ、irc サーバ、リレー); 保護データが評価されるかを確認するには各オプションの /help を参照してください。

例:
  パスフレーズを設定:
    /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 add ghost /eval /msg -server freenode nickserv ghost mynick ${sec.data.freenode}
----

[[command_weechat_set]]
* `+set+`: 設定オプションと環境変数を設定

----
/set  [<option> [<value>]]
      diff [<option> [<option>...]]
      env [<variable> [<value>]]

option: オプションの名前 (value を指定せずにワイルドカード "*" を使えばオプションをリストアップできます)
 value: オプションに対する新しい値、以下の型に従う:
          boolean: on、off、toggle
          integer: 番号、++番号、--番号
           string: 任意の文字列 (空文字列は "")
            color: 色の名前、++色番号、--色番号
        注意: どんな型であっても、オプションの値を削除する (未定義値にする) には null が使えます。これはいくつかの特別なプラグイン変数でのみ有効です。
  diff: 変更されたオプションのみを表示
   env: 環境変数を表示または設定 (変数の値を削除するには値に "" を入れてください)

例:
  ハイライトに関するオプションを表示:
    /set *highlight*
  highlight に単語を追加:
    /set weechat.look.highlight "word"
  変更されたオプションを表示:
    /set diff
  irc プラグインのオプションの内、変更されたオプションを表示:
    /set diff irc.*
  環境変数 LANG の値を表示:
    /set env LANG
  環境変数 LANG を設定し、これを使う:
    /set env LANG fr_FR.UTF-8
    /upgrade
  環境変数 ABC の値を削除する:
    /set env ABC ""
----

[[command_weechat_unset]]
* `+unset+`: オプションのアンセット/リセット

----
/unset  <option>
        -mask <option>

option: オプションの名前
 -mask: オプション内でマスクを使う (大量のオプションをリセットするにはワイルドカード "*" を使ってください、使用に注意!)

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

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

[[command_weechat_upgrade]]
* `+upgrade+`: サーバとの接続を維持して WeeChat 実行バイナリを再読込

----
/upgrade  [-yes] [<path_to_binary>|-quit]

          -yes: "weechat.look.confirm_upgrade" オプションが有効化されていた場合、このオプションは必須です。
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 のセッションを回復することも可能です。
----

[[command_weechat_uptime]]
* `+uptime+`: WeeChat 連続稼働時間の表示

----
/uptime  [-o | -ol]

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

[[command_weechat_version]]
* `+version+`: WeeChat のバージョンとコンパイル日時を表示

----
/version  [-o | -ol]

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

任意のバッファでこのコマンドを実行するにはデフォルトエイリアス /v を使ってください (irc バッファでこのコマンドを実行した場合、irc コマンド /version の意味になります)。
----

[[command_weechat_wait]]
* `+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
----

[[command_weechat_window]]
* `+window+`: ウィンドウの操作

----
/window  list
         -1|+1|b#|up|down|left|right [-window <number>]
         <number>
         splith|splitv [-window <number>] [<pct>]
         resize [-window <number>] [h|v][+|-]<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>]
         bare [<delay>]

         list: 開けられたウィンドウのリストアップ (引数無しの場合、このリストが表示されます)
           -1: 前のウィンドウに移動
           +1: 次のウィンドウに移動
           b#: バッファ番号 # のウィンドウに移動
           up: 現在のウィンドウの上のウィンドウに移動
         down: 現在のウィンドウの下のウィンドウに移動
         left: 左のウィンドウに移動
        right: 右のウィンドウに移動
       number: ウィンドウ番号 (/window list を参照してください)
       splith: 現在のウィンドウを水平分割 (/window merge で元に戻る)
       splitv: 現在のウィンドウを垂直分割 (/window merge で元に戻る)
       resize: ウィンドウサイズの変更、新しいサイズは親ウィンドウの <pct> パーセントで指定
               "h" または "v" を指定した場合、最近接の親ウィンドウの横幅または縦幅を変更
      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: ウィンドウを拡大
         bare: 最小限表示を切り替える (自動的に標準表示モードに戻るまでの時間を秒単位で任意指定)

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
  ウィンドウを水平分割 (上側ウィンドウの縦幅は現在のウィンドウの縦幅の 30%):
    /window splith 30
  ウィンドウサイズを親ウィンドウサイズの 75% に変更:
    /window resize 75
  ウィンドウサイズの横幅を 10% 増やす:
    /window resize v+10
  分割を元に戻す:
    /window merge
  最小限表示を 2 秒間有効にする:
    /window bare 2
----
