はじめに
前にWord でレポートを書いていたけど、目に見えない機能というか挙動にイライラしてた。。Markdown だったら全て明示的にマークアップできるので思い通りに書けるのではないかと思いやってみた。
事前準備
下記ツールのインストールする。僕は以下のバージョンで試した。
- rake, version 10.0.3
- ImageMagick 6.6.9-7
- pandoc 1.9.1.1
テンプレート
github にテンプレートをアップした。
https://github.com/takuyaohashi/report_template
Rakefile の部分だけ抜粋すると、以下のようになる。
枠組みだけ、report.tex で作って、その中の section を Markdown で記述して、PDF 化している。
画像も PNG から EPS ファイルに変換して挿入している。
##
## Rakefile for Building Report from Rakefile
##
require 'rake/clean'
REPORT_FILE = "report.pdf"
MD_FILES = FileList["src/*.md"].exclude("README.md")
TEX_FILES = MD_FILES.ext(".tex")
CLOBBER.include("*.pdf")
CLEAN.include(TEX_FILES)
CLEAN.include("*.dvi", "*.log", "*.aux")
task :default => [:dvi2pdf]
task :dvi2pdf => [:tex2dvi] do
sh "dvipdfmx", REPORT_FILE.ext(".dvi")
end
task :tex2dvi => [:md2tex] do
sh "platex", REPORT_FILE.ext(".tex")
sh "platex", REPORT_FILE.ext(".tex")
end
task :md2tex => TEX_FILES
# *.md -> *.tex 変換ルール
rule ".tex" => ".md" do |t|
sh "pandoc", "-o", t.name, t.source
end
良かったこと
文章の記述に集中できる
Word だといろいろ装飾が邪魔してイライラしていたけど、Markdown なら簡単にマークアップしていくだけで見やすく、構造の変更がしやすい。
デザインと文章が分かれているので、後からでもデザインが変更できる。
思い通りに行かなかったこと
画像の挿入
下記の記述方法で画像が挿入できるけど、これ以上の細かい指定ができず、右詰めとかサイズ変更ができない。
![hoge](hoge.eps)
\begin{figure}[htbp]
\centering
\includegraphics{hoge.eps}
\caption{hoge}
\end{figure}
画像へのリンク
tex では、label と ref でリンクが張れるが、Markdown にそのような記述がないからリンクが張れない。
文章中で画像を参照したいときに Markdown 内で完結しない。変換後の tex を修正するしかない。
テーブルの作成
テーブルを使おうと思ったが、うまくtexがコンパイルできなかった。下のページを参考にしてみたが、うまくいかなかった。
仕方なく tex をそのまま書いた。
pandocでmarkdownをtexに変換するとtableがおかしくなる件
おわりに
Word よりイライラは少ないが、画像周りの処理がうまくもっと行けば快適にレポートがかけると思う。
もし記事内で僕ができなかったことで、やり方を知っている人は教えてください・・・