仕事で契約書を作成する必要が出てきたが契約書の元データ自体はOrg-modeで記述したい。そこで今回はOrg-modeのファイルをLaTeXを経由してPDFに生成する。
MacTeXをインストールする
macOSでTeXを使えるようにするためにMacTeXをインストールする。 GUIツールは不要なためmactex-no-guiというHomebrewのFomulaを指定してインストールする。
brew install --cask mactex-no-gui
インストールにはそこそこ時間がかかる。インストールが終ったらパスを通しておく。
Bashの場合は次のように設定する。
Emacsから使う場合は次のように設定する。パスはそれぞれの環境でことなる。
TeXファイルを生成する
orgファイルをEmacsで開き M-x org-latex-export-to-latex
を実行する。
成功すると.texという拡張子のファイルが生成されている。
TeXファイルをDVIファイルに変換する
platexコマンドを使ってTeXファイルをDVIファイルに変換する。 以下の例ではtesting.texというTeXファイルを変換する。
platex testing.tex
成功するとtesting.dviというファイルが生成される。
DVIファイルをPDFファイルに変換する
dvipdfmxコマンドを使ってDVIファイルをPDFファイルに変換する。以下の例ではtesting.dviというTeXファイルを変換する。
dvipdfmx testing.dvi
成功するとtesting.pdfというファイルが生成される。
PDF生成までをEmacsで行う
org-latex-export-to-pdfが定義されているが、文字コード関連で動作しなかった。 そのためコマンドを直接起動する形で独自に実装した。 https://github.com/TakesxiSximada/emacs.d/commit/9cf402c7729136e8dde9f9ae14b12750163ac3b1
環境
OS | macOS Big Sur |
Homebrew | 3.3.8-53-gb0d3644 |
Homebrew/homebrew-core | (git revision 2bea919d87e; last commit 2021-12-04) |
Homebrew/homebrew-cask | (git revision 1ded80af36; last commit 2021-12-17) |