Pygments 命令行不语法突出显示 HTML 输出

Jac*_*son 4 python syntax-highlighting command-line-tool pygments

我正在尝试使用 python 脚本并准备使用语法突出显示和行编号进行纸张打印。我使用了以下命令行指令:

pygmentize -f html -O style=colored,linenos=1 -l python -o <file>.html <file>.py
Run Code Online (Sandbox Code Playgroud)

该指令运行时没有错误,但无论我如何指示样式和词法分析器,输出的 HTML 都不会出现语法突出显示。它的格式正确,具有正确的缩进和行号,但我无法让它与使用pygments demo或任何颜色时显示的彩色语法突出显示相匹配。

我还尝试了不同的 python 别名(例如pypython3py3)和不同的样式,但 HTML 始终是相同的。无论如何,我在 Windows 10 上使用 PowerShell 来运行指令,并使用 Google Chrome 来查看输出 HTML(尽管我也使用 Edge 检查过,没有发现任何差异)。

Ero*_*mic 6

在写上面的评论时,我实际上找到了解决方案。我深入研究了 javascript 代码,找到了实际的 python 调用,以使 python 实现正常工作。请注意,如何使用 noclasses=True 作为格式化程序选项。

我不知道 noclasses 的作用,但如果将它作为格式化程序选项添加到 CLI,那么输出的颜色将正确:

pygmentize -l python -f html -O style=default -O noclasses=True -o <file>.html <file>.py
Run Code Online (Sandbox Code Playgroud)