Pygments 常见问题¶
什么是 Pygments ?¶
pygments是一个用python编写的突出显示引擎的语法。这意味着,它将采用受支持语言的源代码(或其他标记),并输出包含突出显示标记的语法的已处理版本(以不同格式)。
其特点包括:
广泛的共同点 languages and markup formats 支持
新的语言和格式很容易添加
有多种输出格式可用,包括:
HTML
ANSI序列(控制台输出)
LaTeX
RTF
它可用作命令行工具和库
解析和格式化速度很快
Pygments根据BSD许可证获得许可。
Pygments 这个名字是从哪里来的?¶
Py 当然,代表 Python,而 pigments 用于油漆着色,在这里是指源代码!
系统要求是什么?¶
Pygments只需要安装标准的Python 3.6版或更高版本。不需要额外的库。
我如何使用比 Pygments?¶
Pygments is usable as a command-line tool as well as a library.
在命令行中,用法如下(假设正确安装了pygmentize脚本)::
pygmentize -f html /path/to/file.py
这将打印一个HTML突出显示的/path/to/file.py到标准输出的版本。
要获得完整的帮助,请运行 pygmentize -h
.
作为一个库的使用在文档部分得到了充分的演示。
我该怎么做一种新样式?¶
如何报告错误或建议功能?¶
请在GitHub的tracker中报告缺陷和功能需求。
你也可以给作者发电子邮件,查看联系方式。
我想要这种语言的支持!¶
与其等待别人提供语言支持,为什么不自己写呢?你只需要知道 outlined in the docs .
我可以使用Pygments进行编程语言处理吗?¶
Pygments的词法处理机制非常强大,可以用来构建基本上所有语言的词法处理程序。然而,解析它们是不可能的,尽管一些lexer朝着这个方向执行了一些步骤,例如,以不同的方式突出显示函数名。
此外,错误报告不属于复制的范围。它着重于正确地突出显示语法有效的文档,而不是查找和补偿错误。
谁用 Pygments ?¶
这是一个(不完整的)项目列表和使用 Pygments 语法高亮的网站。
BitBucket <https://bitbucket.org/> _,一个Mercurial和Git托管站点
The Sphinx documentation builder <https://sphinx-doc.org/> _,对于嵌入式源代码示例
rst2pdf <https://github.com/ralsina/rst2pdf> _,一个可重构文本到PDF的转换器
Codecov <https://codecov.io/> _,代码覆盖CI服务
Trac <https://trac.edgewall.org/> _,通用项目管理工具
AsciiDoc <https://www.methods.co.nz/asciidoc/> _,一个基于文本的文档生成器
ActiveState Code <https://code.activestate.com/> _ Python 食谱的继承者
ViewVC , a web-based version control repository browser
BzrFruit <https://repo.or.cz/w/bzrfruit.git> _,一个集市分支观察家
QBzr ,一个跨平台的基于qt的用于Bazaar的GUI前端
Review Board <https://www.reviewboard.org/> _,一个协作的代码评审工具
Diamanda <https://code.google.com/archive/p/diamanda/> _,一个Django支持的wiki系统,支持Pygments
Progopedia ( English )编程语言百科全书
Bruce <https://sites.google.com/site/r1chardj0n3s/bruce> _,一个重新构造的文本表示工具
PIDA ,用python编写的通用IDE
BPython <https://bpython-interpreter.org/> _,一个基于诅咒的智能Python shell
PuDB <https://pypi.org/project/pudb/> _Python调试器
XWiki <https://www.xwiki.org/> _,一个基于wiki的Java开发框架,使用Jython
roux ,用于运行r脚本和创建包括图形在内的漂亮输出的脚本
hurl ,用于发出HTTP请求的Web服务
wxHTMLPygmentizer 是一个GUI实用程序,用于使代码着色更容易
Postmarkup <https://code.google.com/archive/p/postmarkup/> _,XHTML生成器的BBCode
WpPygments 和 WPygments ,用于WordPress的语法高亮插件
Siafoo ,一个用于共享和存储有用代码和编程经验的工具
D source ,D编程语言社区
dpaste.com ,另一个Django Pastebin
Django snippets <https://djangosnippets.org/> _,Django代码的pastebin
Fayaa 一个中国粉饼
Incollo.com ,一个免费的协作调试工具
PasteBox <https://p.boxnet.eu/> _一个注重隐私的垃圾箱
hilite.me ,用于突出显示代码段的网站
patx.me pastebin
Fluidic ,一个将shell与GUI集成的实验
pygments.rb <https://github.com/pygments/pygments.rb> _,Ruby的侏儒包装器
Clygments ,Clojure的包装纸
PHPygments ,PHP的Pygments包装
Spyder <https://www.spyder-ide.org/> _科学的Python开发环境使用pygments来突出显示its中的多语言语法 editor .
snippet.host <https://snippet.host> _,最少的文本和代码段托管
sourcehut <https://sourcehut.org> _,黑客的伪造
如果您有一个使用Pygments的项目或网站, open an issue or PR 我们在这里加一行。