Pygments 常见问题¶
Pygments 是什么?¶
Pygments 是一个用 Python 编写的语法高亮引擎。这意味着,它将接受支持的语言的源代码(或其他标记),并输出一个包含语法高亮标记的处理过的版本(不同的格式)。
它的特点包括:
支持多种常见的 语言和标记格式
很容易添加新的语言和格式
有多种输出格式可供选择,包括:
HTML
ANSI 序列 (console 输出)
LaTeX
RTF
它可以作为一个命令行工具和一个库使用
解析和格式化的速度很快
Pygments 是在 BSD 许可证下授权的。
Pygments 这个名字是怎么来的?¶
Py 当然是指 Python,而 pigments 是用来给颜料上色的,在这里是指源代码!
系统需求是什么?¶
Pygments 只需要安装一个标准的 Python,2.7 或更高的版本,或者 Python 3 的 3.5 版或更高版本。不需要额外的库。
我怎样才能使用Pygments?¶
Pygments 可以作为一个命令行工具,也可以作为一个库使用。
从命令行看,用法是这样的(假设 pygmentize 脚本已正确安装) ::”
pygmentize -f html /path/to/file.py
这将把 /path/to/file.py 的 HTML 高亮版本打印到标准输出。
要获得完整的帮助,请运行 pygmentize -h
。
作为一个库的用法在文档部分得到了彻底的展示。
我如何制作一个新的风格?¶
如何报告一个错误或建议一个功能?¶
请在 GitHub 的跟踪器中报告错误和功能愿望。
你也可以给作者发电子邮件,见联系方式。
我想要这种语言的支持!¶
与其等待别人加入语言支持,为什么不自己写呢?你所要知道的是 在 docs 中列出的。
我可以使用 Pygments 进行编程语言处理吗?¶
Pygments 的词法机制相当强大,可以用来为基本上所有的语言建立词法器。然而,对它们进行解析是不可能的,尽管有些词法在这个方向上采取了一些措施,以便例如以不同的方式突出显示函数名称。
另外,错误报告不是 Pygments 的范围。它的重点是正确地突出语法上有效的文件,而不是发现和弥补错误”
谁在使用 Pygments?¶
这是一个(不完整的)已知使用 Pygments 高亮的项目和网站的列表。
BitBucket, a Mercurial and Git hosting site
The Sphinx documentation builder, for embedded source examples
rst2pdf, a reStructuredText to PDF converter
Codecov, a code coverage CI service
Trac, the universal project management tool
AsciiDoc, a text-based documentation generator
ActiveState Code, the Python Cookbook successor
ViewVC, a web-based version control repository browser
BzrFruit, a Bazaar branch viewer
QBzr, a cross-platform Qt-based GUI front end for Bazaar
Review Board, a collaborative code reviewing tool
Diamanda, a Django powered wiki system with support for Pygments
Progopedia (English), an encyclopedia of programming languages
Bruce, a reStructuredText presentation tool
PIDA, a universal IDE written in Python
BPython, a curses-based intelligent Python shell
PuDB, a console Python debugger
XWiki, a wiki-based development framework in Java, using Jython
roux, a script for running R scripts and creating beautiful output including graphs
hurl, a web service for making HTTP requests
wxHTMLPygmentizer is a GUI utility, used to make code-colorization easier
Postmarkup, a BBCode to XHTML generator
WpPygments, and WPygments, highlighter plugins for WordPress
Siafoo, a tool for sharing and storing useful code and programming experience
D source, a community for the D programming language
dpaste.com, another Django pastebin
Django snippets, a pastebin for Django code
Fayaa, a Chinese pastebin
Incollo.com, a free collaborative debugging tool
PasteBox, a pastebin focused on privacy
hilite.me, a site to highlight code snippets
patx.me, a pastebin
Fluidic, an experiment in integrating shells with a GUI
pygments.rb, a pygments wrapper for Ruby
Clygments, a pygments wrapper for Clojure
PHPygments, a pygments wrapper for PHP
Spyder, the Scientific Python Development Environment, uses pygments for the multi-language syntax highlighting in its editor.
snippet.host, minimal text and code snippet hosting
sourcehut, the hacker’s forge
如果你有一个使用 Pygments 的项目或网站,打开一个问题或 PR,我们将在这里添加一行。