LaTeXの便利な周辺ツール

1 min read読了の目安(約1600字

案外知られていない、LaTeXの便利な周辺ツールを紹介します。この記事は下のシリーズの一部です。

https://zenn.dev/hirospark/scraps/549a0863ca408d

Make

.texファイルをコンパイルするのに、コマンドを何回も打つのは面倒です。そこでMakeを使って簡単にPDFにコンパイルできるようにします。Makeを使うには、以下の形で書かれたMakefileをMakeを使いたいディレクトリに配置します。

  • <生成したいファイル><ファイル>のタイムスタンプ(最終更新時刻)より古い、もしくは存在しない場合に<処理>が実行されます
  • <処理>は必ずインデントする必要があります
  • <処理>は上の行から行われます
  • インデントはtabのみしか受け付けません
<生成したいファイル>: <ファイル>
	<処理>

そしてコマンドラインでmakeと打ち込んで実行すれば、Makefileに書いた処理を実行してくれます。例えば以下のように書くと、test.pdfのタイムスタンプがtest.textest.styよりも古い時に、ptex2pdf -l test.texopen test.pdfがコマンドラインで実行されます。

test.pdf: test.tex test.sty
	ptex2pdf -l test.tex
	open test.pdf

他にもMakeは様々なことができるので調べてみてください。

Pandoc

Pandocは、ドキュメント変換ツールです。LaTeX, Markdown, HTML, Word... とかなり沢山のファイル形式の変換に対応しています。詳しくは公式のドキュメントなどを読んで欲しいのですが、MarkdownからLaTeXやPDFへの変換が便利なので紹介します。

例えば以下のように書くと、<元のファイル>から<生成するファイル>が生成されます。変換は生成するファイルのファイル形式に依存します。

$ pandoc <元のファイル> -o <生成するファイル>

例えば、以下のように書くと、test.mdからtest.texが生成されます。

$ pandoc test.md -o test.tex

面白い使い方として、以下のように書くと、<元のファイル>から<生成されるファイル(PDF)>が作られます。その時のコンパイルがltjsarticlelualatexを使ったものになります。

$ pandoc <元のファイル> -o <生成するファイル(PDF)> -V documentclass=ltjsarticle --pdf-engine=lualatex

参考資料


2021/03/03 公開