ChangeLog の URL を Emacs-w3m で読み込みたい

最近 ChangeLogEmacs-w3m をほぼ同時に使い始めたので、ChangeLog にメモした url タグから Emacs-w3m が起動できたら便利じゃないかなと思っていた。
参考:emacs-w3m をインストールした - 英語とプログラミング気まぐれ日記


そこで、調べてみると url タグ上で C-c RET とすればデフォルトブラウザで開けることが分かったんだけど、実際にやってみると何もおきなかった。


ただ、*Messages* バッファに「Loading browse-url...done」というコマンドを実行した履歴が残されていたので、こいつも調べてみると、これは Emacs から外部ブラウザーを起動するコマンドらしい。このコマンドが実行されているってことは、デフォルトブラウザの設定が悪かったのかな…ということで、デフォルトブラウザを設定してみる。


デフォルトブラウザを設定するには.emacs に以下設定を追加するだけ。

(setq browse-url-browser-function 'w3m-browse-url)


これで、ChangeLog を開いて、url タグの上で C-c RET でその URL のページが(Emacs-w3mで)開ける。


ちなみに、ポイント(カーソル)の下にある URL をブラウザで開く関数(browse-url-at-point)も用意されているみたい。

;;;C-c u でブラウザー起動
(global-set-key "\C-cu" 'browse-url-at-point)

追記(2007年10月12日(金))

ChangeLog に限定しなくても、Emacs のバッファ内だったらどこでも URL にジャンプできたみたい。以下を .emacs に追加しとけば、C-c RET で ポイント(カーソル)の下にある URL にジャンプできる。

(setq browse-url-browser-function 'w3m-browse-url)
(global-set-key "\C-xm" 'browse-url-at-point)