yatex+MacTeX
前まではTeXには小川さんのパッケージ
JIS X0212 for pTeX
を使っていて、
そのおかげでXtexshopというコマンド(シェルスクリプト)で一発でplatexからdvipdfmxまでされていたのだけど、
MacTeXにはどうやらそのようなものはないみたい。
つまり前はC-t-j -> C-t-pにすればpdfが見られたのだけど、
MacTeXを導入することによってdviからpdfに変換する手間が入って
C-t-j -> C-t-l -> C-t-p
といちいちしなければならなくなって少しめんどくさかった。
というわけで小川さんのXtexshopの中を参照に、
platex2pdf.sh
#!/bin/sh TEX=$* DVI=`/usr/bin/basename "$TEX" ".tex"` THECODE=`nkf -g "$TEX"` case $THECODE in UTF-8) KANJI="-kanji=utf8";; EUC-JP) KANJI="-kanji=euc";; Shift-JIS) KANJI="kanji=sjis";; ISO-2022-JP) KANJI="-kanji=jis";; esac PLATEX="platex" CLASS=`sed -n '/documentclass/p' $* | sed '/%.*documentclass/d' | sed -n '1p'` case $CLASS in *{u*) PLATEX="uplatex";; esac $PLATEX $KANJI $TEX dvipdfmx $DVI
なるシェルスクリプトを作って.emacs.d/においた。
init.elをこんな感じで書き換えて、これまで通りC-t-jでpdfまで作られるようになった。
(setq auto-mode-alist (cons (cons "\\.tex$" 'yatex-mode) auto-mode-alist)) (autoload 'yatex-mode "yatex" "Yet Another LaTeX mode" t) ;;(setq tex-command "platex") ;;(setq dviprint-command-format "dvipdfmx %s") (setq tex-command "~/.emacs.d/platex2pdf.sh") (setq dvi2-command "open -a Preview") (add-hook 'yatex-mode-hook '(lambda () (setq auto-fill-function nil)))
ちなみにデフォルトだとnkfは入ってなかったから
brew install nkf
でインストールした。スクリプトの中のCLASS=ってところは何をしているかよくわかってない。