muse-mode でプレゼン pdf を作る (1)
第 21 回関西 Debian 勉強会で uwabami さんが発表した muse-mode でプレゼン資料を作るネタ (id:sasakyh:20090127) を真似してみる試み。
muse-mode 自体は随分前に導入済みなので、設定を見直して、思惑通りに動いてくれるようにする。したい。
思惑
- 原稿は muse-mode でダラダラ書く
- publish:slides で発表用勉強会資料の tex ファイルを作成
- publish:lecture-notes で配布用勉強会資料の tex ファイルを作成
これらのファイルを勉強会資料のリポジトリにつっこんで、「後は include しておいてー」って出来れば嬉しいんだけど、チェックやら色々作りこんでいる都合でそれは無理っぽい。
tex ファイルはマージすることを考えると、単体ではコンパイルできないパーツにしておいて、手元で preview する時だけヘッダがつくようにすればいい?
試行錯誤
uwabami さんの設定と原稿ファイルをもとに、とりあえずまっとうな出力ができることを目標に、いろいろ試してみた。
;;;;;;;;;;;; ;; muse-mode (require 'muse) (require 'muse-colors) (require 'muse-mode) (require 'muse-html) (require 'muse-latex) (require 'muse-latex2png) (require 'muse-texinfo) (require 'muse-docbook) (require 'muse-wiki) (require 'muse-project) (setq muse-xhtml-charset-default "euc-jp" muse-html-encoding-default 'euc-jp muse-html-meta-content-encoding 'euc-jp muse-latexcjk-encoding-default (cdr (assoc 'euc-jp-unix muse-latexcjk-encoding-map)) muse-latex-pdf-browser "evince %s &" muse-latex-pdf-program "latexmk" muse-latex-pdf-cruft '(".aux" ".toc" ".out" ".log" ".aux.bak" ".snm" ".nav" ".dvi" ".fdb_latexmk") muse-footer-date-format "%Y-%m-%d" muse-file-extension nil muse-mode-auto-p t ; muse-latex-slides-header "~/.emacs.d/template/beamer-header.tex" muse-latex2png-scale-factor 1.25 muse-latex2png-img-dest "./img" muse-latex2png-use-xhtml t ) (muse-derive-style "slides-pdf" :strings :header "~/.emacs.d/template/beamer-header.tex") (add-hook 'find-file-hooks 'muse-mode-maybe) (rplacd (assoc "\\.howm$" auto-mode-alist) 'muse-mode) (define-key ctl-x-map "M" 'muse-project-find-file)
beamer-header.tex は、勉強会リポジトリから発表資料のヘッダを適当に流用したもの。これまでのところ、一番苦労したのは muse-latex-pdf-program で、最初はここに dvipdfmx と設定して迷走してしまった。
結局、muse が出力するのは *.tex で、dvipdfmx は dvi → pdf の変換をするので、tex → dvi のところが処理されていなかったのが原因だったようだ。muse デフォルトだとここは pdflatex になるので、日本語を使わないならこれで tex から pdf まで一気に変換してくれるらしい。
uwabami さんの設定では latexmk-pdf とされていたので、sid で aptitude install latexmk してみたけど、pdf にまつわる設定は特に見当たらなかった。多分自作のスクリプトか何かだろうなー、と思いながら本家の latexmk ページを見ると、どうも最新版では dvipdfmx に渡すオプションもあるようだ。debian のパッケージは暫く放置されているようだったので、apt-get source して無理矢理最新に追従させてみた。
これで、muse からは latexmk を呼ぶだけで、後は latexmk の設定で適当に pdf まで変換してくれるように出来た。日本語も問題なし。impressive での表示も可能。
課題
- beamer の書式がよくわかってない
- 勉強会リポジトリとの整合性はもうちょっと調整しないとダメ
- lecture-note には着手できず
感想
TeX 面倒。記事書いて渡すだけなら一定の書式覚えるだけの話だけどねぇ。