【问题标题】:Pandoc filter tikz.py returns "not a valid json value"Pandoc 过滤器 tikz.py 返回“不是有效的 json 值”
【发布时间】:2017-06-06 13:10:43
【问题描述】:

我正在使用 tikz.py pandocfilter 将 markdown 文件中的乳胶 tikz 代码转换为输出 html 文件中的图像。我正在运行 pandoc 版本 1.17.0.2、python 2.7.10 和 ImageMagick 6.9.6-4。我的 pandoc 命令是:

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.md --filter tikz.py -o tik.html

这是 pdfTeX,版本 3.14159265-2.6-1.40.16(TeX Live 2015) (preloaded format=pdflatex) 限制 \write18 已启用。

进入扩展模式

(./tikz.tex

LaTeX2e

通天塔...

.....

[1] (./tikz.aux) )

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

tikz.log 上写的成绩单。

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

pandoc:$ 中的错误:读取失败:不是有效的 json 值

我使用的是未更改的 tikz.py,因此我不清楚问题的根源可能在哪里。有什么想法吗?

【问题讨论】:

    标签: json python-2.7 markdown pandoc tikz


    【解决方案1】:

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-07-02
      • 2020-03-14
      • 2017-12-15
      • 1970-01-01
      • 1970-01-01
      • 2019-04-08
      • 1970-01-01
      • 2023-03-17
      相关资源
      最近更新 更多