2016-11-11 51 views
1

我正在使用tikz.py pandocfilter将标记文件中的乳胶tikz代码转换为输出html文件中的图像。我正在运行pandoc版本1.17.0.2,python 2.7.10和ImageMagick 6.9.6-4。我pandoc命令是:Pandoc过滤器tikz.py返回“不是有效的json值”

pandoc -s -c --mathjax -i- t slidy tik.md --filter tikz.py -o tik.html 

(但我试过简单的命令,而无需slidy或mathjax,他们给了同样的问题)

凡tik.md包含一个简单的tikz环境:

\begin{tikzpicture} 
\draw (0,0) -- (4,0) -- (4,4) -- (0,4) -- (0,0); 
\end{tikzpicture} 

tikz.py运行良好,它似乎成功地生成图像:

$ pandoc -s -c --mathjax -i -t slidy tik.m d --filter tikz.py -o tik.html

这是pdfTeX版本3.14159265-2.6-1.40.16(TeX Live 2015) (预加载格式= pdflatex)受限\ write18启用。

进入扩展模式

(./tikz.tex

LaTeX2e的< 2015年1月1日>

巴贝尔...

.....

[1](./tikz.aux))

输出写在tikz.pdf(1页,1077字节)。

抄写在tikz.log上的脚本。

创建图像tikz图像/ 53200b26dfa2c05d2b92647ef74211f7a2ce0c0e.png

pandoc:错误$:无法阅读:不

我使用的是不变tikz.py所以它是不明确有效的JSON值对我来说,问题的根源可能在哪里。有什么想法吗?

回答

0

我刚刚在Ruby过滤器中遇到了同样的情况,最后发现这是因为我试图将调试输出写入标准输出。由于过滤器必须读取标准输入并写入标准输出,因此标准输出上的任何调试输出都会造成问题。

在我的Ruby过滤器中,我必须将puts 'debug stuff'更改为STDERR.puts 'debug stuff'