【发布时间】:2019-12-06 22:43:43
【问题描述】:
我正在尝试使用 python 脚本并准备将其用于带有语法突出显示和行号的纸张打印。我使用了以下命令行指令:
pygmentize -f html -O style=colored,linenos=1 -l python -o <file>.html <file>.py
这条指令运行没有错误,但无论我如何指示样式和词法分析器,输出的 HTML 根本没有语法高亮。它使用正确的缩进和行号进行了适当的格式化,但我无法让它与使用 pygments demo 或任何颜色时显示的彩色语法突出显示相匹配。
我也尝试过python的不同别名(如py、python3和py3)和不同的样式,但是HTML总是一样的。值得一提的是,我在 Windows 10 上使用 PowerShell 来运行指令,并使用 Google Chrome 来查看输出 HTML(尽管我也使用 Edge 进行了检查,但没有发现任何区别)。
【问题讨论】:
-
我也想要这个问题的答案。我在 Linux 上运行它,所以也许这是一个 pygmentize 问题?使用 python 模块而不是 pygmentize CLI 确实有用(所以它可能是 CLI 中的一个错误?): pygments.highlight( open(fpath, 'r').read(), lexer=pygments.lexers. get_lexer_by_name('python'),formatter=pygments.formatters.html.HtmlFormatter(noclasses=True, style=pygments.styles.get_style_by_name('default')))
标签: python syntax-highlighting command-line-tool pygments