如何使用 MiKTeX 在 TeXnicCenter 中运行 minted 包

Posted

技术标签:

【中文标题】如何使用 MiKTeX 在 TeXnicCenter 中运行 minted 包【英文标题】:How to run minted package in TeXnicCenter using MiKTeX 【发布时间】:2011-04-11 08:14:23 【问题描述】:

我正在使用已安装 MiKTeX 2.8 的 TeXnicCenter 2.0 Alpha 3 (build 1118) 在 Vista 上使用 LaTeX。我想为 Objective-C 和 read here 使用代码突出显示 minted package 很棒。 我按照minted documentation 中的说明安装了Python 2.7 和pygmentize。我还在 TeXnicCenter 中设置了编译器选项 -shell-escape。编译器找到了pygmentize脚本但是出现如下错误。

文件“C:\Python27\Scripts\pygmentize.exe”,第 1 行 SyntaxError: Non-ASCII character '\x90' in file C:\Python27\Scripts\pygmentize.exe on line 1,但未声明编码;详情见http://www.python.org/peps/pep-0263.html! LaTeX 错误:找不到文件“Test.out.pyg”。键入 X 退出或继续,或输入新名称。 (默认扩展名:out.pyg)输入文件名:!紧急停止。

我不知道如何解决这个问题。我尝试将 tex 文件保存为 ANSI 或 UTF-8。 我对 tex 文件所做的唯一添加是包包括

\usepackage铸造

还有这个来自铸造文档的简单示例。

\mintpython|导入这个|

【问题讨论】:

这听起来好像错误直接在pygmentize.exe 中。您可以尝试直接从命令行运行应用程序吗?如果这会产生类似的错误,那么很可能是 Pygments 的一个错误。 您的建议听起来不错。当我在任何目录中从 Windows cmd 运行命令 pygmentize 时,它​​已经声明了相同的错误。我猜我创建的 pygmentize.cmd 脚本有问题。 > @echo off set PYTHONPATH=C:\Python27 %PYTHONPATH%\python.exe %PYTHONPATH%\Scripts\pygmentize.exe %* 【参考方案1】:

minted 文档已过时:较新版本的 Pygments 显然包含一个 Windows 可执行文件 pygmentize.exe(不幸的是,他们的 Trac 目前处于离线状态,因此我无法查找相关的修订版本)。

这意味着文档中提到的修复应该是多余的。因此,请尝试以下步骤:

    完全删除pygmentize.cmd 脚本(最好不要删除它——只需重命名它)。试试minted 现在是否有效。

    如果这不起作用,请将以下内容放入pygmentize.cmd

    @echo off
    set PYTHONPATH=C:\Python27
    %PYTHONPATH%\Scripts\pygmentize.exe %*
    

    即不要通过 Python 解释器调用 *.exe 文件。

很遗憾,我现在无法对此进行测试,因为我这里没有 Windows。但是其中一个选项应该可以工作。

【讨论】:

我喜欢它!康拉德,你让我开心。当我将 pygmentize.cmd 文件放在 C:\Program Files\MiKTeX 2.8\miktex\bin 中时它可以工作,因为 MiKTex 以某种方式无法实现 C:\Python27\Scripts 尽管它包含在 PATH 变量中。非常感谢。 康拉德很棒的解决方案!我在 Windows 7 64 位上运行,您只需检查 Windows 的 PATH 变量中是否包含 C:\Python27,然后将 pygmentize.cmd 与 python.exe 一起使用。

以上是关于如何使用 MiKTeX 在 TeXnicCenter 中运行 minted 包的主要内容,如果未能解决你的问题,请参考以下文章

如何手动安装Miktex宏包

Latex安装和基本使用(Mac+MikTex+TexStudio)

安装 MikTex、pandoc 和 nbconvert 后将 Jupyter Notebook 转换为 PDF 时出错

论文排版工具——LaTeX的安装及使用(MiKTeX+TexStudio+Windows)

Windows + Jupyter notebook + miktex + pandoc 输出 pdf

Latex+MikTeX+SumatraPDF环境搭建