Pandocを使いmarkdownファイルからpdfを作成したいと考えております。
図や参考文献の多い資料ですので、pandoc-crossrefや--citeprocオプション、bibファイルの使用は欠かせません。
これらを使用してpdfを吐くとき、コマンド
pandoc -F pandoc-crossref -s note.md -o note.pdf --pdf-engine=lualatex --citeproc -V documentclass=ltjsarticle -V classoption=twocolumn -N
を用いて直接.mdから.pdfにしようとすると
Error producing PDF. ! Missing } inserted. <inserted text> } l.512 \end{CSLReferences}
となってしまいます。英語ふくめ調べたところ、解決策として
- doiの頭に
doi:
をつける \usepackage{url}
などを入れたテンプレートtexファイルを用意する
がありましたがうまく行かず、さらには引用タグを除いた.bib
の中身をすべて削除した状態でも結果は同じでした。
他に、
texファイルに変換してからpdfにした場合
参考文献まわりはうまくいきますがpandoc-crossrefの図表まわりの組版が壊れてしまいます。また2段組等にはなりません。
docsからpdfにした場合
pandoc-crossref、--citeprocはうまくいっていますが数式が汚い、スタイルが異様にダサいという感じになってしまいます。また2段組等にはなりません。
htmlからpdfにした場合
pandoc-crossref、--citeprocはうまくいっていますが数式が汚い、スタイルが異様にダサいにくわえ、数式がレンダリングできません。また2段組等にはなりません。
.bibを使わない場合
すべてうまくいきますが、(当然)bibが使えません。
と、代替手段もそれぞれ少しずつ問題がでてしまったため、解決策をご教授くださる方を求めて質問させていただきます。
また、(htmlやdocx出力、図周りの出力はうまくいっているため関係ないとは思いつつ)関連した問題点として、毎度
WARNING: pandoc-crossref was compiled with pandoc 2.16.2 but is being run through 2.12. This is not supported. Strange things may (and likely will) happen silently.
と言われるのですが、cabal new-update
してもUp to date, cabal install pandoc-2.16.2 --overwrite-policy=always
してビルド後にpandoc -v
してもバージョンが変わっていない、という状況で完全に手詰まりとなってしまいました。
何卒お助けいただけませんでしょうか。よろしくお願いいたします。
追記
どうも本文に日本語が含まれない場合、素直に変換してうまくいくようです。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。