Hatena::ブログ(Diary)

mooz deceives you

(about 'mooz) ; => "See http://mooz.github.com/index-ja.html"

 | 

December 07 (Tue), 2010

そうだ Info 読もう

Emacs Advent Calendar 2010

Emacs Advent Calendar 2010, 7 日目です. 今日は Info の設定をご紹介します.

経緯

先日, ネットワークに繋がらない状態で手持ち無沙汰となってしまい, はてどうしたものかと困ってしまうことがありました. あいにくその日は本などを持ち合わせていなかったため, 仕方なくノート PC を開くことに. いつもの癖でEmacs を立ち上げた僕は, そこでこう思ったのでした.

「そうだ Info 読もう」

電子書籍 Info

世は電子書籍黎明期で, やれ KindleiPad だと連日賑やかですが, そんなものは飾りです. 偉い人にはそれが分からないのです.

我々には「元祖」電子書籍であるところの Info と電子書籍リーダであるところの Emacs があるのですから, これを使わない手はありません.

Info on Emacs

Emacs で Info を読むには, M-x として info コマンドを実行します. これは <f1> i や C-h i に割り当てられているので, そちらから実行しても良いでしょう.

使用可能なキーバインドを見るためには <f1> b とします. 最も, 僕の場合はキーバインドを覚える作業を断念し, 次に示すようなオレオレ設定を行ってしまっているのですが.

ブラウザ風設定

デフォルトの設定ではどうしても小指に負担がかかり, また新たなキーバインドを覚えるのが面倒なので, 僕は less/w3m/keysnail のようなキーバインドを設定しています.

(add-hook 'Info-mode-hook
	  (lambda ()
            ;; 上下カーソル移動
            (local-set-key "j" 'next-line)
            (local-set-key "k" 'previous-line)
            (local-set-key " " 'Info-scroll-up)
            (local-set-key "b" 'Info-scroll-down)
            (local-set-key "g" 'beginning-of-buffer)
            (local-set-key "G" 'end-of-buffer)
            ;; 上下スクロール (カーソル固定)
            (local-set-key "J" (lambda () (interactive) (scroll-up 1)))
            (local-set-key "K" (lambda () (interactive) (scroll-down 1)))
            ;; 左右カーソル移動
            (local-set-key "l" 'forward-word)
            (local-set-key "h" 'backward-word)
            ;; 戻る・進む
            (local-set-key "B" 'Info-history-back)
            (local-set-key "F" 'Info-history-forward)
            ;; リンクを開く
            (local-set-key "o" 'Info-follow-nearest-node)
            ;; 次・前のリンクへカーソル移動
            (local-set-key "n" 'Info-next-reference)
            (local-set-key "p" 'Info-prev-reference)
            ))

慣れ親しんだブラウザのキーバインドで Info を閲覧することができ, 非常に快適です.

最後に

と, ここまでが前置きで, 本来は Info を読んで得た Emacs の Tips を紹介する予定だったのですが, いかんせん数が多いために断念. またの機会に, 少しずつ紹介していければと考えています.

 |