pandoc(1)からの続き
とりあえず,markdown ファイルから pdf ファイルが生成できるようになった。tex ファイルや html ファイルも生成できるので,その手順をまとめてみる。
(1) tex ファイルの場合
pandoc -s test.md -o test.tex
このtexファイルに対して,ドキュメントクラスを日本語対応に変更する。すなわち,\documentclass[]{article} → \documentclass[]{ltjarticle}として,コマンドラインから,lualatex test.tex とすれば,test.pdf が得られる。
置き換えを perl のワンライナーで実行すれば,シェルスクリプトに落とし込むことができる。
perl -pi -e 's/{article}/{ltjarticle}/' test.tex
(2) htmlファイルの場合
pandoc -s test.md -o test.html --mathml
pandoc -s test.md -o test.html --mathjax
どちらでもよいのだが,数式のまわりのhtmlは,mathjaxの方が少しだけスッキリしているかもしれない。
そこで,これらを zsh のスクリプトとしてまとめたものが次である。md.sh input option とすればよい。optionには{pdf, tex, html}のいずれかが入る。入力ファイルは input.md であり,拡張子より前の部分を引数に取ればよい。以下は md.sh の内容である。
#! /bin/zsh
case \$2 in
"pdf")
echo "pdf";
iconv -f UTF-8-MAC -t UTF-8 \$1.md | pandoc -f markdown -o \$1.pdf -V documentclass=ltjarticle --pdf-engine=lualatex
;;
"tex")
echo "tex";
pandoc -s \$1.md -o \$1.tex;
perl -pi -e 's/{article}/{ltjarticle}/' \$1.tex
;;
"html")
echo "html";
pandoc -s \$1.md -o \$1.html --mathjax
;;
*)
echo "undefined"
;;
esac
0 件のコメント:
コメントを投稿