2016-03-23 6 views
1

私はpandocマークダウン文書でラテックスgraphvisパッケージを使用しようとしています。しかし、それはラテックスに-shell-escapeフラグを渡す必要があるようです。 pandocで-shell-escapeを有効にするにはどうすればよいですか?pandocでシェルエスケープを有効にする

\digraph[scale=0.5]{MyGraph}{ 
Business -- Job; 
Job -- Task; 
Job -- User; 
Job -- PayRate; 
Task -- WorkSession; 
User -- WorkSession; 
PayRate -- WorkSession; 
} 

http://mark.aufflick.com/blog/2007/03/25/embedding-graphviz-in-latex-documents

+0

ラテックス変換前のgraphvizのコードを変換することができpandocフィルタがあります:https://raw.githubusercontent.com/jgm/pandocfilters /master/examples/graphviz.py;ラテックスだけでなく、すべての出力フォーマットで簡単に動作します – scoa

答えて

2

あなたは乳液を生成するpandocを伝え、その後、あなたは出力にやりたいことができます。

pandoc -o mydocument.tex mydocument.md 
pdflatex -shell-escape mydocument.tex 

Pandocは違っのLaTeXを実行するように指示する--latex-engineオプションを持っているが、これは唯一のpdflatexlualatexまたはxelatexと呼ばれるプログラムへのパスを指定できます。何らかの理由でpandocを直接呼び出してMarkdownからPDFを生成できるようにしたい場合は、ラッパースクリプトを使用できます。

pandoc --latex-engine=/path/to/pdflatex -o mydocument.pdf mydocument.md 
/path/to/pdflatexが実行可能であり、含ま

(Unixライクなシステムを想定)

#!/bin/sh 
exec pdflatex -shell-escape "[email protected]" 
1

pandocは今--latex-engine-optフラグ介しLaTeXのエンジンに直接引数を渡すことができます。例として、あなたができるxelatexから-shell-escapeフラグを渡すために:

pandoc myfile.md -s -o myfile.pdf --latex-engine=xelatex --latex-engine-opt=-shell-escape 
関連する問題