【问题标题】:Texments package not working on UbuntuTexments 包在 Ubuntu 上不起作用
【发布时间】:2010-12-27 21:50:05
【问题描述】:

我正在尝试使用 Ubuntu 上的 Texments Latex 包来进行语法高亮。 Texments 是 Pygments 的包装器。 我安装了 Texments 并按照步骤将样式文件添加到路径中。 但是当我尝试编译 .tex 文件时,我得到了错误。

!未定义的控制序列

然后它会打印出一堆奇怪的字符并放置 ?迅速的。 有人遇到这个错误吗?分辨率是多少?

如果有任何其他更好的方法来提供源代码的语法突出显示,我很乐意接受。

我知道有一种叫做“listings”的东西,但坦率地说,我发现里面的颜色不太好。

谢谢,

【问题讨论】:

    标签: latex pygments


    【解决方案1】:

    Texments 使用 pdftex 的特殊控制序列来允许 shell 转义,需要调用 pygmentize 二进制文件。您需要使用pdflatex 调用它,并且需要将pdflatex 传递给-shell-escape 开关。参照。 the texments documentation.

    【讨论】:

    • 你指的是 pdftex 还是 pdflatex 命令?我做了“pdflatex -shell-escape ants.clj”这是错的吗?这是我从文档中了解到的。
    • pdflatex:我已经编辑了我的答案。 pdflatex 应该在 .tex 文件上运行:如果你有外部代码,你应该使用 \includecode{filename.ext} 来引用代码。然后 pdflatex 将在这个文件上运行 pygmentize -,创建一个临时的乳胶文件,然后它将 \input。您不应该在任何 *.clj 文件上运行 pdflatex。
    • 哦..那是我的错字...我只在 .tex 文件上做了 pdflatex -shell-escape 。这给了我这个错误。
    • 看起来你有一个调试任务。我将首先查看由 pdflatex 调用时 pygmentize 创建(或应该这样做!)的 *.out.pyg 文件。对于一个疯狂的猜测,奇怪的字符听起来像 -f latex 选项可能由于某种原因被忽略了,所以你将垃圾传递到 pdftex 的温和消化系统......祝你好运!
    【解决方案2】:

    也许你可以试试minted ......它与texments 基本相同,但功能更多,面对错误时更健壮。

    此外,作为minted 的维护者,我总是很高兴收到错误报告。 ;-)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-06-08
      • 2013-12-28
      • 2014-06-05
      • 2012-10-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多