Irssi-otr
irssi-otr モジュールは irssi に Off-the-Record Messaging を追加します。
インストール
irssi-otr モジュールをインストールしてください。開発版は irssi-otr-gitAUR パッケージでインストールできます。
使用方法
README を見てください。
起動時にモジュールをロード
~/.irssi/startup
に以下を記述することで /LOAD otr
と入力しなくてもよくなります:
LOAD otr
HTML の除去
BitlBee で irssi-otr を使用するとクライアントから送信されるメッセージが HTML なのに気づくでしょう。通常 BitlBee は自動的に HTML を除去しますが、メッセージが暗号化されると除去が機能しなくなります。Trigger スクリプト を使って正規表現によって同じように HTML を除去できます。otr モジュールの前にスクリプトをロードしてください。手動でロードするか ~/.irssi/startup
を以下のように設定してください:
SCRIPT LOAD trigger.pl LOAD otr
trigger.pl
は ~/.irssi/scripts/autorun
に配置してはいけません。このディレクトリのファイルは ~/.irssi/startup
の後にロードされるからです。
正規表現で HTML のコードに完全にマッチさせることは不可能なのでコンサバな方法を取ります。BitlBee ネットワークの PRIVMSGS から明示的に指定した HTML タグだけを除去します。
/TRIGGER add
で以下を実行するか以下の行を ~/.irssi/triggers
にコピーしてください:
-privmsgs -nocase -tags 'BitlBee' -regexp '</?(a|b|body|div|em|font|i|s|u)( +\w+=".*?")*>' -replace ''
HTML を改行して複数のメッセージのようにすることもできます:
-privmsgs -nocase -tags 'BitlBee' -regexp '(\s*<br>\s*)+' -replace '\n�8/<�g�</$N�8/>�g �e'
�
は制御文字の ^D
です。vim では挿入モードで Ctrl-v Ctrl-d
を押すことで入力できます。デフォルト以外のテーマを使っている場合は置き換える文字列を適当に調整してください。
最後にエスケープされた HTML 文字列を変換します:
-privmsgs -nocase -tags 'BitlBee' -regexp '&' -replace '&' -privmsgs -nocase -tags 'BitlBee' -regexp '>' -replace '>' -privmsgs -nocase -tags 'BitlBee' -regexp '<' -replace '<' -privmsgs -nocase -tags 'BitlBee' -regexp '"' -replace '"'
上記はあくまで基本的な例です。必要に応じて拡張してください。