この文書は WeeChat バージョン 0.3.0 以上向けに書かれたものですが、 最新安定版の WeeChat に対しても利用できます。

翻訳者:

目次

1. 一般

1.1. "WeeChat" という名前の由来は何ですか?

"Wee" は再帰的頭字語で、"Wee Enhanced Environment" の略です。そのため、完全な名前は "Wee Enhanced Environment for Chat" です。

"Wee" はまた「とても小さい」を意味します。(もちろん、その他の意味もありますが、それは WeeChat とは関係ありませんよ!)。

1.2. WeeChat を選ぶ理由は何ですか? X-Chat や Irssi は最高なのに…​

WeeChat は非常に軽く、革新的な機能を備えているからです。

こののページに関するより詳しい情報: https://weechat.org/about/features

2. コンパイル / インストール

2.1. WeeChat には多くの GUI があると聞きました。コンパイル/利用方法を教えてください。

いくつかのリモート GUI が利用可能です、機能のページに載っているリンクを参照してください: https://weechat.org/about/features

2.2. git リポジトリをクローンした後に WeeChat をコンパイルできません。

WeeChat をコンパイルするには cmake を使うことが推奨されています。

autotools を使って (cmake を使わずに) コンパイルする場合、最新の autoconf と automake を使ってください。

他には「開発パッケージ」をインストール方法があります。この場合、インストールするのに必要なパッケージの数が減ります。このパッケージは git リポジトリからほぼ毎日ビルドされます。このパッケージは厳密には git ベースではなく、アップデートをインストールする場合には git をクローンする方法よりも不便であることに注意してください。

2.3. どうすれば OS X に WeeChat をインストールできますか?

Homebrew を使うことをお勧めします、ヘルプを見るには:

brew info weechat

以下のコマンドで WeeChat をインストールします:

brew install weechat --with-aspell --with-curl --with-python --with-perl --with-ruby --with-lua --with-guile

2.4. WeeChat を起動しました。でも何をすればいいかわかりません。

ヘルプを見るには、/help と入力してください。コマンドに関するヘルプを見るには、/help command と入力してください。キーとコマンドはドキュメント内にリストアップされています。

新しいユーザはクイックスタートガイドを読むことをお勧めします

3. 表示

3.1. いくつかの文字が見えません。どうすれば良いですか。

これは良くある問題です。以下の内容をよく読んで、全ての 解決策をチェックしてください:

  • weechat が libncursesw にリンクされていることの確認 (警告: 全てではありませんが、ほとんどのディストリビューションで必要です): ldd /path/to/weechat

  • /plugin コマンドで "charset" プラグインがロード済みであることの確認 (ロードされていない場合、"weechat-plugins" パッケージが必要かもしれません)。

  • /charset コマンドの出力を確認 (core バッファ上で)。端末の文字セットとして ISO-XXXXXX または UTF-8 があるはずです。その他の値がある場合は、ロケールが間違っている可能性があります。
    ロケールを修正するには、locale -a を使ってインストール済みのロケールを確認し、$LANG に適切な値を設定してください。これを行うには export LANG=en_US.UTF-8 のようにします。

  • グローバルデコードを設定、例えば: /set charset.default.decode "ISO-8859-15"

  • UTF-8 ロケールを使っている場合は:

    • 端末で UTF-8 が使えることを確認 (UTF-8 対応の端末としては rxvt-unicode を推奨)

    • screen を使っている場合は、UTF-8 モードで起動されていることを確認 (~/.screenrc に “defutf8 on” の記述があるかまたは screen -U のようにして起動)。

  • weechat.look.eat_newline_glitch オプションが off であることを確認してください (このオプションは表示上のバグを引き起こす可能性があります)

WeeChat は UTF-8 ロケールを推奨します。ISO またはその他のロケールを使う場合、全ての 設定 (端末、screen、..) が ISO であり、UTF-8 でない ことを確認してください。

3.2. 端末で表示されるユニコード文字が WeeChat では表示されない場合があります。なぜでしょうか。

この問題は libc の wcwidth 関数のバグによって引き起こされている可能性があります。これは glibc 2.22 で修正されているはずです (使用中のディストリビューションではまだ提供されていないかもしれません)

次の回避方法を使えば、修正済みの wcwidth 関数を使う事が可能です: https://blog.nytsoi.net/2015/05/04/emoji-support-for-weechat

より詳しい情報を得るにはバグ報告を参照してください: https://github.com/weechat/weechat/issues/79

3.3. タイトルやステータスバー等の背景色が行末ではなくテキストの最後で終わってしまいます。

シェルの TERM 変数に間違った値が設定されている可能性があります (端末で echo $TERM の出力を確認してください)。

WeeChat を起動した場所に依存しますが、以下の値を持つはずです:

  • WeeChat を screen および tmux を使わずにローカルまたはリモートマシンで実行している場合、使用中の端末に依存します: xtermxterm-256colorrxvt-unicoderxvt-256color、…​

  • WeeChat を screen 内で実行している場合、screen または screen-256color です、

  • WeeChat を tmux 内で実行している場合、tmuxtmux-256colorscreenscreen-256color です。

もし必要であれば、TERM 変数を修正してください: export TERM="xxx"

3.4. weechat を screen/tmux の中で使っている場合、おかしなランダム文字列が表示されます。どうすれば直りますか。

シェルの TERM 変数に間違った値が設定されている可能性があります (端末、screen/tmux の外echo $TERM の出力を確認してください)。

例えば、xterm-color の場合、おかしな文字列が表示される可能性があります。xterm と設定すればこのようなことは起こらないので (その他多くの値でも問題は起きません)、これを使ってください。

もし必要であれば、TERM 変数を修正してください: export TERM="xxx"

3.5. OS X 上で WeeChat をコンパイルした場合、"(null)" という文字列が至る所に表示されます。

ncursesw を自分でコンパイルした場合は、標準の (システムに元から存在する) ncurses を使ってみてください。

さらに OS X では、Homebrew パッケージマネージャを使って WeeChat をインストールすることをお勧めします。

3.6. 「バッファ」と「ウィンドウ」の違いは何ですか。

バッファ とは番号、名前、表示行 (とその他のデータ) からなります。

ウィンドウ とはバッファを表示する画面エリアです。画面を複数のウィンドウに分割出来ます。

それぞれのウィンドウは 1 つのバッファの内容を表示します。バッファを隠す (ウィンドウで表示させない) ことや 1 つ以上のウィンドウに表示させることも出来ます。

3.7. どうすれば左側にバッファリストを表示できますか。

WeeChat バージョン 1.8 以上の場合、"buflist" プラグインがロードされ、デフォルトで有効化されます。

バージョン 1.8 よりも古い WeeChat をお使いなら、以下の方法で buffers.pl スクリプトをインストールしてください:

/script install buffers.pl

バッファリストバーのサイズを制限するには以下の方法を使ってください (buffers.pl スクリプトを使っているなら、"buflist" を "buffers" に置き換えてください):

/set weechat.bar.buflist.size_max 15

バッファリストバーの位置を下に移動するには以下の方法を使ってください:

/set weechat.bar.buflist.position bottom

buflist バーをスクロールする方法: マウスを有効化しているならば (キー: Alt+m)、マウスホイールでバッファリストバーをスクロールできます。

buflist バーをスクロールするデフォルトキーは F1F2Alt+F1Alt+F2 です。

buffers.pl スクリプトをお使いの場合、ニックネームリストをスクロールするキーと似たキーを割り当てることも可能です。
例えば、F1F2Alt+F1Alt+F2 を割り当てるには以下の方法を使います:

/key bind meta-OP /bar scroll buffers * -100%
/key bind meta-OQ /bar scroll buffers * +100%
/key bind meta-meta-OP /bar scroll buffers * b
/key bind meta-meta-OQ /bar scroll buffers * e
"meta-OP" と "meta-OQ" キーは端末によって異なります。キーコードを見つけるには Alt+k の後にキーを押してください。

3.8. どうすればチャットエリア内のニックネームの最大長さを短く、またはニックネーム整列機能を無効化できますか。

チャットエリアのニックネームの最大長を短くするには:

/set weechat.look.prefix_align_max 15

ニックネーム整列を抑制するには:

/set weechat.look.prefix_align none

3.9. ステータスバーに表示される [H: 3(1,8), 2(4)] の意味を教えてください。

これは「ホットリスト」と呼ばれ、ここにはバッファ番号およびそのバッファの未読メッセージカウンタが表示されます。未読メッセージカウンタの表示順はハイライト、プライベートメッセージ、一般メッセージ、その他のメッセージ (参加/退出メッセージなど) の順です。
バッファの「未読メッセージ」とは、最後にそのバッファにフォーカスが移された以降に表示されたり受信した新しいメッセージを意味します。

上記の例 [H: 3(1,8), 2(4)] の場合:

  • バッファ 3 番にハイライトが 1 通、未読が 8 通あり、

  • バッファ 2 番に未読が 4 通あることを意味します。

バッファおよびカウンタのテキスト色はメッセージの種類を意味します。色のデフォルト設定は以下です:

  • ハイライト: lightmagenta および magenta

  • プライベートメッセージ: lightgreen および green

  • 一般メッセージ: yellow および brown

  • その他のメッセージ: default および default (端末のテキスト色)

これらの色を変えるには、weechat.color.status_data_* オプション (バッファ) および weechat.color.status_count_* オプション (カウンタ) を設定します。
その他のホットリスト関連オプションは weechat.look.hotlist_* オプションを使って変更します。

ホットリストに関する詳しい情報はユーザーズガイド / 画面レイアウトを参照してください

3.10. コマンドラインの行数を増やすにはどうすればいいですか。

インプットバーの size オプションには 1 (サイズ固定、デフォルト値) 以上の値または動的なサイズの意味で 0 を設定できます。size_max オプションではサイズの最大値を設定できます (0 = 制限なし)。

動的サイズを設定する例:

/set weechat.bar.input.size 0

サイズの最大値を 2 に設定:

/set weechat.bar.input.size_max 2

3.11. 全てのウィンドウに対して入力バーの数を 1 つだけにすることができますか (画面分割されている場合)。

できます。"root" 型のバー (あなたのいるウィンドウを区別するための要素を持つ) を作成し、現在の入力バーを削除してください。

例えば:

/bar add rootinput root bottom 1 0 [buffer_name]+[input_prompt]+(away),[input_search],[input_paste],input_text
/bar del input

これに満足できない場合は、新しいバーを削除してください。全てのバーに "input_text" 要素が設定されていない場合は WeeChat は自動的にデフォルトバー "input" を作成します:

/bar del rootinput

3.12. どうすればニックネームリストを選択せずにテキストだけをコピー/ペーストできますか。

WeeChat バージョン 1.0 以上の場合、最小限表示を使うことができます (デフォルトキー: Alt+l)。

矩形選択のできる端末を使ってください (rxvt-unicode、konsole、gnome-terminal、…​)。通常、キーは Ctrl + Alt + マウス選択です。

別の解決策はニックネームリストを上か下かに移動することです、例えば:

/set weechat.bar.nicklist.position top

3.13. どうすれば長い (一行以上に渡る) URL をクリックできますか。

WeeChat バージョン 1.0 以上の場合、最小限表示を使うことができます (デフォルトキー: Alt+l)。

URL を簡単にクリックできるようにするには、以下を試してみてください:

  • ニックネームリストを上方に移動します:

/set weechat.bar.nicklist.position top
  • 複数行に渡る単語の整列を無効化します (WeeChat バージョン 1.7 以上の場合):

/set weechat.look.align_multiline_words off
  • もしくは、すべての折り返された行について整列を無効化します:

/set weechat.look.align_end_of_lines time

WeeChat バージョン 0.3.6 以上の場合、"eat_newline_glitch" オプションを有効化できます。これを有効化すると、表示行の行末に改行文字が入らなくなります (url 選択を邪魔しません)。

/set weechat.look.eat_newline_glitch on
このオプションには表示上の問題を引き起こす可能性があります。表示上の問題が起きた場合はこのオプションを無効化してください。

別の解決策として、スクリプトを利用することもできます:

/script search url

3.14. WeeChat が出力するメッセージの言語を、再起動せずに変更したいです。このようなことは可能ですか。

WeeChat バージョン 1.0 以上の場合、再起動せずに変更できます:

/set env LANG ja_JP.UTF-8
/upgrade

古い WeeChat をお使いの場合は:

/script install shell.py
/shell setenv LANG=ja_JP.UTF-8
/upgrade

3.15. どうすれば WeeChat で 256 色が使えますか。

WeeChat バージョン 0.3.4 以上の場合、256 色がサポートされます。

最初に TERM 環境変数が正しいことを確認してください、お勧めの値は:

  • screen 内の場合: screen-256color

  • tmux 内の場合: screen-256color または tmux-256color

  • screen および tmux の外の場合: xterm-256colorrxvt-256colorputty-256color、…​

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

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

term screen-256color

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

/set env TERM screen-256color
/upgrade

WeeChat バージョン 0.3.4 の場合、新しい色を追加するには /color コマンドを使ってください。

WeeChat バージョン 0.3.5 以上の場合、任意の色番号を利用できます (オプション: 色の別名を追加するには /color コマンドを使ってください)。

色管理に関するより詳しい情報はユーザーズガイド / 色を参照してください

3.16. どうすればバッファ内の文字列を検索できますか (irssi の /lastlog の様に)。

デフォルトのキーは Ctrl+r です (コマンドは: /input search_text_here)。 ハイライト部分へのジャンプは: Alt+p / Alt+n

この機能に関するより詳しい情報はユーザーズガイド / デフォルトのキー割り当てを参照してください

3.17. どうすれば端末にフォーカスが合った時や外れた時にコマンドを実行できますか。

端末に特殊コードを送信してフォーカスイベントを必ず有効化してください。

重要:

  • 現時点では、xterm を除いてこの機能をサポートする端末は 存在しない ようです。

  • screen および tmux ではこの機能を 使うことができません

WeeChat の開始時にコードを送信するには:

/set weechat.startup.command_after_plugins "/print -stdout \033[?1004h\n"

さらに端末から送信される 2 種類の特殊キーシーケンスに対してコマンドを割り当ててください (例に挙げた /print コマンドは適当なコマンドに書き換えてください):

/key bind meta2-I /print -core focus
/key bind meta2-O /print -core unfocus

3.18. WeeChat を screen の内部で実行している場合、別の screen ウィンドウ内にペーストされるテキストの周りに ~0 と ~1 が追加されます。なぜでしょうか。

scrreen がデフォルトで有効化されている括弧付きペーストオプションの挙動を別のウィンドウ内で適切に処理できないことが原因です。

括弧付きペーストモードを無効化するには以下のコマンドを使います:

/set weechat.look.paste_bracketed off

4. キー割り当て

4.1. いくつかのメタキーが (alt + key) が動きません。

xterm や uxterm 等の端末を利用している場合、いくつかのメタキーはデフォルトでは利用できません。以下の行を ~/.Xresources に追加してください:

  • xterm の場合:

XTerm*metaSendsEscape: true
  • uxterm の場合:

UXTerm*metaSendsEscape: true

このファイルをリロードするか (xrdb -override ~/.Xresources) または X を再起動してください。

4.2. どうすればキー割り当てをカスタマイズできますか。

キー割り当ては /key コマンドでカスタマイズできます。

デフォルトキー Alt+k でキーコードを取り込み、これをコマンドラインに入力できます。

4.3. バッファ 11 番 (またはそれ以上の番号) にジャンプするキーは何ですか。

キー Alt+j の後に 2 桁の数字を入力します、例えば Alt+j その後に 11 でバッファ 11 番にジャンプします。

これにキーを割り当てることが出来ます、例えば:

/key bind meta-q /buffer *11

デフォルトキー割り当てのリストはユーザーズガイド / デフォルトのキー割り当てを参照してください

4.4. どうすればグローバルヒストリを (バッファヒストリの代わりに) 上下矢印キーで使えますか。

上下矢印キーをグローバルヒストリに割り当ててください (グローバルヒストリに対するデフォルトのキーは Ctrl+Ctrl+ です。

例:

/key bind meta2-A /input history_global_previous
/key bind meta2-B /input history_global_next
"meta2-A" と "meta2-B" キーは端末によって異なります。キーコードを見つけるには Alt+k の後にキー を押してください。

5. マウス

5.1. マウスが少しも動きません。どうすれば良いですか。

マウスのサポートは WeeChat 0.3.6 以上からです。

最初にマウスを有効化してください:

/mouse enable

これでマウスが動かない場合は、シェルの TERM 変数を確認してください (端末内で echo $TERM の出力を見てください)。端末の種類によってはマウスがサポートされていない可能性があります。

マウスサポートを端末から確認するには:

$ printf '\033[?1002h'

端末の最初の文字 (左上) をクリックしてください。" !!#!!" と見えるはずです。

端末のマウスサポートを無効化するには:

$ printf '\033[?1002l'

5.2. マウスの位置座標 X または Y が 94 (または 222) よりも大きい場合にマウス機能が正しく動きません。

一部の端末ではマウスの位置座標を指定するために ISO 文字だけを使います、 このため X/Y が 94 (または 222) よりも大きい場合は正しく動きません。

マウスの位置座標を指定するのに UTF-8 座標をサポートしている端末を使ってください、 例えば rxvt-unicode 等です。

5.3. WeeChat でマウスが利用可能な場合、端末のテキストを選択したり、ペーストするにはどうすれば良いですか。

WeeChat でマウスが利用可能な場合、Shift キーを押しながら端末をクリックして選択してください、マウスが無効化されます (例えば iTerm 等の場合、Shift の代わりに Alt を使ってください)。

6. IRC

6.1. SSL を使うサーバへの接続中に問題が発生しました。どうすればいいですか。

Mac OS X をお使いの場合、必ず Homebrew から openssl をインストールしてください。こうすることでシステムの鍵束に含まれる証明書を使いつつ、CA ファイルを起動時に読み込ませることが可能になります。その後、WeeChat で証明書へのパスを設定してください:

/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"

gnutls ハンドシェイクに関するエラーの場合、Diffie-Hellman キー (デフォルトは 2048) のサイズを小さくすることを試してみてください:

/set irc.server.example.ssl_dhkey_size 1024

証明書に関するエラーの場合、"ssl_verify" を無効化してください (接続の機密保護がより甘くなることに注意):

/set irc.server.example.ssl_verify off

サーバが不正な証明書を持っており、正常な証明書がどのようなものであるかわかっている場合、証明書の指紋を設定しておくことが可能です (SHA-512、SHA-256、SHA-1):

/set irc.server.example.ssl_fingerprint 0c06e399d3c3597511dc8550848bfd2a502f0ce19883b728b73f6b7e8604243b

6.2. SSL を使うサーバへの接続中に、"TLS handshake failed" というエラーだけが表示されます。どうすれば良いですか。

異なる優先順位文字列を試してみてください (WeeChat 0.3.5 以上)、"xxx" はサーバ名に書き換えてください。

/set irc.server.xxx.ssl_priorities "NORMAL:-VERS-TLS-ALL:+VERS-TLS1.0:+VERS-SSL3.0:%COMPAT"

6.3. どうすれば SSL を使って freenode サーバに接続できますか。

オプション weechat.network.gnutls_ca_file に証明書ファイルへのパスを設定してください。

/set weechat.network.gnutls_ca_file "/etc/ssl/certs/ca-certificates.crt"

注意: OS X 上で homebrew を使って openssl をインストールした場合には、以下のコマンドを実行してください:

/set weechat.network.gnutls_ca_file "/usr/local/etc/openssl/cert.pem"
設定したファイルが自分のシステムに存在することを確認してください (一般に "ca-certificates" パッケージで提供されます)。

サーバポート、SSL を設定の後に接続してください:

/set irc.server.freenode.addresses "chat.freenode.net/7000"
/set irc.server.freenode.ssl on
/connect freenode

6.4. どうすれば "oauth" が必要なサーバに接続出来ますか?

twitch などの一部のサーバは接続するために oauth が必要です。

oauth を使うにはパスワードを "oauth:XXXX" のように指定してください。

以下のコマンドを使って、この種のサーバを追加し接続することが可能です (サーバ名とアドレスは適切な値を使ってください):

/server add name irc.server.org -password=oauth:XXXX
/connect name

6.5. どうすればチャンネル参加前にニックネーム認証を行うことができますか。

サーバで SASL を利用可能なら、nickserv 認証のコマンドを送信するよりも SASL を利用する方が良いです。例えば:

/set irc.server.freenode.sasl_username "mynick"
/set irc.server.freenode.sasl_password "xxxxxxx"

If server does not support SASL, you can add a delay (between command and join of channels):

/set irc.server.freenode.command_delay 5

6.6. /ignore と /filter コマンドの違いは何ですか。

/ignore コマンドは IRC コマンドです、このため IRC バッファ (サーバとチャンネル) にのみ有効です。これを使うことでニックネームやホスト名を基準にして、あるサーバやチャンネルにいる一部のユーザを無視できます (表示済みメッセージに対しては適用されません)。マッチするメッセージは IRC プラグインによって表示される前に削除されます (削除されたメッセージは見えません)。

/filter コマンドは core コマンドです、このため任意のバッファに対してこれを有効化できます。バッファ内の行のプレフィックスと内容に対して付けられたタグや正規表現にマッチする行をフィルタできます。フィルタされた行は隠されているだけで、削除はされていません、フィルタを無効化すれば見えるようになります (デフォルトでは Alt+= でフィルタの有効無効の切り替えが出来ます)。

6.7. どうすれば IRC チャンネルへの参加/退出/終了メッセージをフィルタできますか。

スマートフィルタを使う場合 (最近発言したユーザの参加/退出/終了メッセージは表示):

/set irc.look.smart_filter on
/filter add irc_smart * irc_smart_filter *

グローバルフィルタを使う場合 (全ての 参加/退出/終了メッセージを隠す):

/filter add joinquit * irc_join,irc_part,irc_quit *
ヘルプを見るには: /help filter/help irc.look.smart_filter

6.8. どうすれば IRC チャンネルに参加した際に表示される一部のメッセージをフィルタできますか。

WeeChat バージョン 0.4.1 以上の場合、irc.look.display_join_message オプションを使って、チャンネル参加時に表示するメッセージの種類を選択できます (より詳しい情報は /help irc.look.display_join_message を参照)。

メッセージを隠す (ただしバッファに残す) には、タグを使ってメッセージをフィルタしてください (たとえばチャンネル作成日時を隠すには irc_329 タグを使ってください)。フィルタの書き方に関する情報は /help filter を参照してください。

6.9. どうすれば voice メッセージをフィルタできますか (例えば Bitlbee サーバ上で)。

voice メッセージをフィルタするのは簡単ではありません、なぜなら voice モードの設定は同じ IRC メッセージの中で他のモード設定と同時に行われる可能性があるからです。

Bitlbee は離席ユーザを表示するために voice を利用します。このため、voice メッセージでチャットエリアが溢れてしまいます。おそらくこれをフィルタしたいのではないでしょうか。この様な場合には、Bitlbee が離席状態を通知することを禁止し、WeeChat にニックネームリスト中に含まれる離席中のニックネームに対して特別な色を使わせることができます。

Bitlbee 3 以上の場合、以下のコマンドをチャンネル &bitlbee で入力:

channel set show_users online,away

Bitlbee の古いバージョンでは、以下のコマンドを &bitlbee で入力:

set away_devoice false

WeeChat で離席中のニックネームをチェックするには、離席状態のニックネームに関する質問を参照してください。

もし本当に voice メッセージをフィルタしたい場合は、以下のコマンドを使ってください、ただしこれは完璧なものではありません (voice モードの変更が最初に指定されている場合のみ有効)。

/filter add hidevoices * irc_mode (\+|\-)v

6.10. どうすればニックネームリストから離席中のニックネームを確認できますか。

オプション irc.server_default.away_check に正の値を設定してください (離席状態確認のインターバルを分単位で)。

オプション irc.server_default.away_check_max_nicks を設定することで離席状態確認を小さなチャンネルのみに制限できます。

例えば、5 分間隔で離席状態確認を行い、25 人より多いチャンネルではこれを行わないようにするには:

/set irc.server_default.away_check 5
/set irc.server_default.away_check_max_nicks 25
WeeChat 0.3.3 以下では、オプション名が irc.network.away_checkirc.network.away_check_max_nicks になっています。

6.11. どうすればあるチャンネルで自分が呼ばれたら警告できますか。

WeeChat バージョン 1.0 以上の場合、デフォルトトリガ "beep" が設定されています。これはハイライトまたはプライベートメッセージを受け取った際に BEL を端末に送信します。このため、端末 (または screen/tmux などのマルチプレクサ) を設定して、BEL が発生した際にコマンドを実行させたり音を再生させることができます。

もしくは "beep" トリガにコマンドを追加することもできます:

/set trigger.trigger.beep.command "/print -beep;/exec -bg /path/to/command arguments"

古い WeeChat をお使いの場合、beep.pllauncher.pl 等のスクリプトを使ってください。

launcher.pl の場合、コマンドの設定が必要です:

/set plugins.var.perl.launcher.signal.weechat_highlight "/path/to/command arguments"

この問題に対するその他のスクリプトは:

/script search notify

6.12. どうすればマージされたバッファ内であるコマンドを発行するターゲットバッファを変更できますか。

デフォルトのキーは Ctrl+x です (コマンドは: /input switch_active_buffer)。

7. プラグイン / スクリプト

7.1. OpenBSD と WeeChat を使っている場合、プラグインが 1 つもロードされません。

OpenBSD では、プラグインファイル名の末尾が ".so.0.0" です (Linux では ".so")。

以下の様に設定してください:

/set weechat.plugin.extension ".so.0.0"
/plugin autoload

7.2. どうすればスクリプトをインストールできますか。スクリプトは他の IRC クライアントと互換性がありますか。

スクリプトをインストールしたり管理するにはコマンド /script を使ってください (ヘルプは /help script で見ることができます)。

スクリプトは他の IRC クライアントのものと互換性がありません。

8. 設定

8.1. 手作業で設定ファイル (*.conf) を編集することは可能ですか。

可能ですが、非推奨 です。

その代わり WeeChat 内でコマンド /set を使うことを推奨します。その理由は:

  • Tab キーで値を補完できるからです

  • 設定しようとした値は検証され、値に問題があった場合にはメッセージが表示されるからです

  • 設定した値はすぐに反映され、再起動の必要もないからです

それでもなお手作業で設定ファイルを編集したいなら、以下の点に注意してください:

  • あるオプションに対して不正な値を設定した場合、WeeChat は設定ファイルのロード時にエラーを表示し、その値を破棄します (そのオプションのデフォルト値が使われます)

  • WeeChat が実行中の場合には、必ずコマンド /reload を実行してください。設定が変更されその変更をコマンド /save で保存していなかった場合、これらの設定の変更内容は破棄されます

8.2. どうすれば WeeChat のメモリ使用量を節約できますか。

メモリ使用量を減らすには以下のヒントを試してください:

  • 最新の安定版を使う (古いバージョンよりもメモリリークの可能性が減ると思われます)

  • 使わないプラグインのロードを禁止する、例えば: aspell、buflist、fifo、logger、perl、python、ruby、lua、tcl、guile、javascript、php、xfer (DCC で使用)

  • 本当に必要なスクリプトだけをロード

  • SSL を 使わない なら、証明書を読み込まないでください: オプション weechat.network.gnutls_ca_file に空文字列を設定してください。

  • weechat.history.max_buffer_lines_number オプションの値を減らすか、weechat.history.max_buffer_lines_minutes オプションに値を設定してください。

  • weechat.history.max_commands オプションの値を減らしてください。

8.3. どうすれば WeeChat の CPU 負荷を低減できますか?

以下に挙げる memory に関するヒントに従ってください:

  • "nicklist" バーを非表示にする: /bar hide nicklist

  • ステータスバー時間に秒の表示を止める: /set weechat.look.item_time_format "%H:%M" (これはデフォルト値です)

  • コマンドライン内の単語スペルミスのリアルタイムチェックを無効にする (有効にしていた場合): /set aspell.check.real_time off

  • TZ 変数を設定する (例: export TZ="Europe/Paris")、こうすることで /etc/localtime ファイルへ頻繁にアクセスしないようになります。

8.4. セキュリティを気にしています。セキュリティを高めるためにはどの設定を変更すればよいですか?

IRC の退出および終了メッセージを無効化します:

/set irc.server_default.msg_part ""
/set irc.server_default.msg_quit ""

すべての CTCP クエリに対する応答を無効化します:

/set irc.ctcp.clientinfo ""
/set irc.ctcp.finger ""
/set irc.ctcp.source ""
/set irc.ctcp.time ""
/set irc.ctcp.userinfo ""
/set irc.ctcp.version ""
/set irc.ctcp.ping ""

"xfer" プラグイン (これは IRC DCC 機能を使うためのものです) をアンロードして自動ロードを無効化します:

/plugin unload xfer
/set weechat.plugin.autoload "*,!xfer"

パスフレーズを定義してパスワードなどの保護したいデータの使用時は常にセキュアデータを使います: /help secure およびセキュアデータを使用したいオプションの /help を参照してください (セキュアデータを使うことが可能なオプションのヘルプにはこの点が明記されています)。

例:

/secure passphrase xxxxxxxxxx
/secure set freenode_username username
/secure set freenode_password xxxxxxxx
/set irc.server.freenode.sasl_username "${sec.data.freenode_username}"
/set irc.server.freenode.sasl_password "${sec.data.freenode_password}"

9. 開発

9.1. どのようにバグ報告、新機能のリクエスト、パッチ送信すればよいですか。

以下のページを参照してください: https://weechat.org/dev/support

9.2. gdb で WeeChat を実行する場合、スレッドに関するエラーが発生します。

gdb で WeeChat を実行する場合、以下のエラーが出るかもしれません:

$ gdb /path/to/weechat
(gdb) run
[Thread debugging using libthread_db enabled]
Cannot find new threads: generic error

これを修正するには、以下のコマンドを使って gdb を実行してください (システム上の libpthread と WeeChat へのパスを変更):

$ LD_PRELOAD=/lib/libpthread.so.0 gdb /path/to/weechat
(gdb) run

9.3. WeeChat をサポートするプラットフォームのリストを教えてください。他のオペレーティングシステムへの移植予定はありますか。

完全なリストはこのページにあります: https://weechat.org/download

我々は可能な限り多くのプラットフォームに移植することに最善を尽くしています。我々が持っていない OS で WeeChat をテストすることを歓迎します。

9.4. どうすれば WeeChat 開発者を手伝えますか。

多くの課題があります (テスト、コード、ドキュメント作成、…​)。

IRC かメールで連絡を取り、サポートページを確認してください: https://weechat.org/dev/support

開発補助のためお金を贈ることができます。詳しいことは https://weechat.org/about/donate に載っています。