有料ではありますがTeXPadはMac利用者にとってはとても便利なソフトウェアだと思います. 日本語を利用する際には,デフォルトではplatex->dvipdfmxであればコンパイルすることが可能です.一方で,uplatexなどを用いてコンパイルしたい場合には,独自のBuild Scriptを作成する必要があります.uplatexとupbibtexを用いてコンパイルするBuild Scriptを作っても良いのですが,latexmkを用いてコンパイルできるようにすれば,カスタマイズが容易になり非常に便利です.
TeXPad用Build Script (latexmk.tpbuild)
元々TeXPadにはlatexmk用のBuild Scriptがありますが,日本語対応ではありません.そこでlatexmk用のBuild Scriptを作成しました.コンパイルする際にbackupファイルを作成することとと,コンパイルの際に大量に出てくる中間ファイルを.texpadtmpフォルダに移動する仕組みを実装しています.中間ファイルを移動する仕組みは,一度すべてのファイルを.texpadtmpフォルダに移動した後にtexファイルだけ戻してくる方法をとっています.
#!/bin/bash # texのbackup(.bk)を作成 cp "$TEXPAD_ROOTFILE" "$TEXPAD_ROOTFILE_NO_EXT".bk # texのコンパイル latexmk -gg -pdfdvi "$TEXPAD_ROOTFILE" # 中間ファイルを.texpadtmpに作成 mkdir .texpadtmp 2>/dev/null mv -f "$TEXPAD_ROOTFILE_NO_EXT".* .texpadtmp/ 2>/dev/null fname=$(basename "$TEXPAD_ROOTFILE_NO_EXT") 2>/dev/null mv -f ./.texpadtmp/"$fname".{tex,bib} ./ 2>/dev/null
latexmkの設定ファイル (.latexmkrc)
latexmkの設定ファイルは,ホームディレクトリに.latexmkrcとして保存するのが1つの方法です.僕はuplatex, upbibitexもしくはbiberを用いる設定ファイルとして,以下のものを用いています.PDFはSkim.appを利用してプレビューするように設定していますが,TeXPadではTeXPadのviewerを使いたいので,その点はlatexmkを実行する際に生成されたPDFを表示しない用にして対応しています.
#!/usr/bin/env perl $latex = 'uplatex %O -synctex=1 -halt-on-error %S'; $latex_silent = 'uplatex %O -synctex=1 -halt-on-error -interaction=batchmode %S'; $biber = 'biber %O --bblencoding=utf8 -u -U --output_safechars %B'; $bibtex = 'upbibtex %O %B'; $makeindex = 'upmendex %O -o %D %S'; $dvipdf = 'dvipdfmx %O -o %D %S'; $pdf_mode = 3; $pvc_view_file_via_temporary = 0; $pdf_previewer = 'open -ga /Applications/Skim.app';