Emacs の mode-info でリファレンスを読もう
こんな事が良くある。
- 「fwrite の引数の順序忘れた」
- 「assq の引数の順序忘れた」
man/info を使えば良いが少し面倒。
そんなときは Emacs の mode-info を使えば楽。
下のように libc や Gauche の info が簡単に Emacs で見られる。
というわけで mode-info --- Improved describe-function and describe-variable の設定手順。
mode-info
% mkdir -p ~/info/index % cd ~/src % wget http://www.namazu.org/~tsuchiya/elisp/mode-info-0.8.5.tar.gz % tar zvxf mode-info-0.8.5.tar.gz % cd mode-info-0.8.5 % ./configure && make % sudo make install
.emacs
;;; mode-info (add-to-list 'load-path "/usr/share/emacs/site-lisp/mode-info/") (require 'mi-config) (setq mode-info-index-directory "~/info/index") (add-to-list 'Info-directory-list (expand-file-name "~/info")) (add-to-list 'Info-directory-list (expand-file-name "~/info/glibc-2.3.2")) (add-to-list 'Info-directory-list (expand-file-name "~/info/Gauche-0.8.13")) (define-key global-map "\C-chf" 'mode-info-describe-function) (define-key global-map "\C-chv" 'mode-info-describe-variable) (define-key global-map "\M-." 'mode-info-find-tag) (require 'mi-fontify) (setq mode-info-class-alist '((elisp emacs-lisp-mode lisp-interaction-mode) (libc c-mode c++-mode) (make makefile-mode) (perl perl-mode cperl-mode eperl-mode) (ruby ruby-mode) (gauche scheme-mode scheme-interaction-mode inferior-scheme-mode)))
info のセットアップ
glibc
% wget http://ftp.gnu.org/gnu/glibc/glibc-2.3.2.tar.bz2 % tar jvxf glibc-2.3.2.tar.bz2 % cd glibc-2.3.2/manual % mkdir -p ~/info/glibc-2.3.2 % cp *\.info* ~/info/glibc-2.3.2
インデックスファイル作成
Emacs を起動して M-x mode-info-make-all-indices。
これで ~/info/index に
--rw-r--r-- 1 taro taro 213798 2008-08-28 22:40 mi-gauche.idx --rw-r--r-- 1 taro taro 123151 2008-08-28 22:40 mi-libc.idx
とインデックスファイルが出来る。
動作確認
C-c h f (または M-x mode-info-describe-function) で動作確認。
疑問
mode-info が開いた info バッファを閉じるにはどうしたらよいのだろう。
カーソルは編集中のソースのバッファにあるので q で閉じることも出来ない