次: , 前: Advanced usage, 上: Top



5 Tips

この章では、よく聞かれる質問に対する答えと便利な設定例を紹介します。

5.1 直前に選択していたチャンネルに移動したい

以下の行を ~/.riece/init に追加することで、C-c g で履歴を辿 りつつ移動できます。riece-guess アドオンは、チャンネル選択の履歴 や未読メッセージの有無などから次に選択するチャンネルを推測してくれるアド オンで、標準で組み込まれています。

     (add-hook 'riece-guess-channel-try-functions
               'riece-guess-channel-from-history)

5.2 発言があるとバッファがスクロールするのを止めたい

C-c C-t f です。toggle freeze と覚えると良いでしょう。

5.3 装飾を抑制したい

riece-addons から装飾のためのアドオンを除外します。 通常有効になっている装飾のためのアドオンは次の通りです。

たとえば色付けをやめたいのであれば、以下の行を ~/.riece/init に追 加します:

     (setq riece-addons (delq 'riece-highlight riece-addons))

5.4 特定の文字列を受信したら音を鳴らしたい

以下の設定を ~/.riece/init に加えます。riece-keywords アド オンを使うと特定の文字列を受信した際の動作を指定できます。

     (setq riece-keywords '("ほげ" "ふが"))
     (add-hook 'riece-keyword-notify-functions
               (lambda (keyword message) (ding)))

5.5 SKK を使っていて、変換中の印 (▽) を送信してしまうことがある

以下の行を ~/.riece/init に追加します。

     (add-to-list 'riece-addons 'riece-skk-kakutei)

5.6 チャンネル一覧の並び順を固定したい

以下の行を ~/.riece/init に追加します。

     (setq riece-default-channel-binding
          '("#Riece" "#emacsen" nil "#debianjp"))

この設定例では、チャンネル一覧の並び順は次のようになります。

  1. #Riece
  2. #emacsen
  3. なし
  4. #debianjp

3 番目のチャンネルが空席となっていることにご注意ください。新たなチャンネ ルに参加した場合、そのチャンネルが 3 番目の位置に割当てられます。

5.7 起動時に自動的にチャンネルに参加したい

変数 riece-startup-channel-list を設定します。

     (setq riece-startup-channel-list
          '("#Riece" "#public"))

この設定例は、#Riece#public に参加することを意味してい ます。チャンネルに参加する際にパスワードが必要な場合には次のように設定し ます。

     (setq riece-startup-channel-list
          '("#Riece" "#public" ("#private" "password")))

起動時に、複数の IRC サーバのチャンネルに参加する場合には、 変数 riece-startup-server-list も同時に設定する必要があります。

5.8 起動時に自動的に複数の IRC サーバに接続したい

変数 riece-startup-server-list を設定します。

     (setq riece-server "ircnet"
           riece-server-alist '(("ircnet" :host "irc.tokyo.wide.ad.jp")
                                ("freenode" :host "irc.ipv6.freenode.net")))

この設定例では、起動時に "ircnet" に接続します。 riece-startup-server-list を以下のように設定すると、 "freenode" にも接続するようになります。

     (setq riece-startup-server-list '("freenode"))

起動時に、複数の IRC サーバのチャンネルに参加する場合には、 変数 riece-startup-channel-list も同時に設定する必要があります。

5.9 HTTP プロキシを介して IRC サーバに接続したい

relay.elconnect.c を使うと、 HTTP プロキシを介して IRC サーバに接続することができます。

relay.el
http://www.taiyo.co.jp/~gotoh/lisp/relay.el
connect.c
http://www.taiyo.co.jp/~gotoh/ssh/connect.html

たとえば、proxy.example.com:8080 経由で irc.tokyo.wide.ad.jp に接続する場合には、以下の行を ~/.riece/init に追加します。

     (require 'relay)
     (setq relay-command-alist (cons '("^irc\.tokyo\.wide\.ad\.jp$"
                                       "connect" "-H" "proxy.example.com:8080"
                                       host service)
                                     relay-command-alist)
           riece-server-alist (cons '("proxy-tokyo" :host "irc.tokyo.wide.ad.jp"
                                      :function relay-open-network-stream)
                                    riece-server-alist))

5.10 会話のログをファイルに保存したい

riece-log アドオンを使うと、会話のログをファイルに保存し、再起動 時に参照できます。riece-log アドオンは標準で組み込まれています。

通常は ~/.riece/log の下に IRC サーバの名前、チャンネル名のディレ クリが作成され、その中に日にち毎に分別されて保存されます。

ディレクトリ名が文字化けする場合には、 file-name-coding-system の値を適切に設定するか、あるいは riece-log-directory-map を使ってチャンネル名を US-ASCII 文字列に 変換する必要があります。

     (setq riece-log-directory-map '(("#りーす" . "riece")))

5.11 ウィンドウ間を自由に移動したい

GNU Emacs に附属の windmove.el を使うと便利です。詳細は windmove.el のコメントを参照ください。windmove.el は 作者のページ (http://hovav.net/elisp/) からも取得できます。