pandoc

by

in

 第三弾は文書ファイルの変換ツール pandoc です。接頭辞「pan」は「全て、総、汎」を意味します。大袈裟ではありません。変換元のファイルフォーマットは 44 種類、変換先のそれは 62 種類となっています。変わり種としては Microsoft Word(.docx)も対応しています。
 インストールはこちらから。ライセンスは最も自由度が高い GNU GPLv2
 このところ文書は専ら Markdown(拡張子 .md)で書いています。例えば、この記事も .md を wordpress のエディタにコピペしています。
 で、他の方に見て頂く場合は、先方のWeb ブラウザに Markdown Viewer をアドインして貰うか、html に変換したものをお渡ししています。
 後者の場合はサーチパス上に配置した次のバッチファイルでどこからでも html への変換を行えるようにしてあります。

@echo off
setlocal

where pandoc > nul
if not %ERRORLEVEL% equ 0 (
    echo pandoc not found.
    goto :eof
)
if "%1" == "" (
    echo transrate markdown to html.
    echo   usage : %~n0 [src]
    goto :eof
)
set src=%~n1.md
if not exist %src% (
    echo not found %src%.
    goto :eof
)
set dst=%~n1.html

pandoc ^
    -f markdown ^
    -t html ^
    --standalone ^
    --mathjax ^
    --template=easy_template ^
    %src% -o %dst%
    @REM --self-contained ^

 --template=easy_template%APPDATA%/pandoc/templates に登録してある easy_template.html をテンプレートとして用いることを指します。これが無くても支障なく動作しますが、出力がオシャレになります。md2html.html を当てると Github のスタイルに近い出力が得られます。
 --self-contained を付けると、画像ファイルが .html に埋め込まれます。画像が .svg など軽量なものであればアリです。
 --mathjax で TeX も扱えます。私にとってはマスト。
 ところで、電子納品の REPORT/ORG の内容物が .html や .md だったら受け取ってもらえるのだろうか? 特定のベンダーやソフトウエアのバージョンに依存しないフォーマットの方が健全なんだけどなぁ~。