Emacs 23でPDFを表示させる--新機能「DocView」を試す
海上忍
2010-03-26 20:48:06
Cocoa Emacsでは、PDFを読むことができる。M-x shellしてopenコマンドを使う方法も悪くはないが、DiredからPDFを開けるというのはなかなか便利だ。今回は、Emacs 23のPDFビューア機能「DocView」を紹介する。
Emacs 23の特筆すべき新機能の1つに「DocView」がある。使い方は簡単、いつもどおりM-x find-file(C-x C-f)、もしくはDiredからファイルを開けば、バッファ上にPDFやPostScript、DVIを表示できる。
内部的には「PDF/PS→PNG」または「DVI→PDF→PNG」というフローで進められるが、その処理系にはGhostscriptが利用されている。GhostscriptなしにはPDFを表示できないので、あらかじめインストールしておこう。なお、バイナリパッケージは熊本学園大学経済学部准教授の小川弘和氏が公開しているESP Ghostscript 7.07.1がお勧めだ。
このように、PDFからPNGの変換はGhostscriptに依存するため、開けないPDFも少なくない。たとえば、パスワードで保護されたPDFは表示できない。暗号化されたPDFも不可だ。日本語フォントを含むDVIもサポートされないため、LaTeXの統合環境としては“もう一声”な状況となっている。
とはいえ、基本的なキー操作さえ覚えておけば、気軽に使えるPDFビューアとなりうることは確か。/Applications/Emacs.app/Contents/Resources/lisp/doc-view.el.gzに定義されたキーバインドのうち、主要なものを下表に抜粋したので参考にしてほしい。
| キー | コマンド | 機能 |
|---|---|---|
| n | 'doc-view-next-page | 次のページ |
| p | 'doc-view-previous-page | 前のページ |
| C-n | 'doc-view-next-line-or-next-page | 1行下方へスクロール |
| C-p | 'doc-view-previous-line-or-previous-page | 1行上方へスクロール |
| SPACE | 'doc-view-scroll-up-or-next-page | 下方スクロールまたは次のページ |
| DEL | 'doc-view-scroll-down-or-previous-page | 上方スクロールまたは前のページ |
| k | 'doc-view-kill-proc-and-buffer | プロセスを終了しバッファを閉じる |
| g | 'revert-buffer | バッファを閉じる |
| + | 'doc-view-enlarge | 拡大 |
| - | 'doc-view-shrink | 縮小 |
| カーソルキー | - | 上下左右方向へスクロール |
- ホワイトペーパー




