如果我通过 pygments 运行 python 源文件,它会输出 html 代码,其元素类属于 pygments 正在使用的某些 CSS 文件。样式属性是否可以包含在输出的 html 中,这样我就不必提供 CSS 文件了?
Geo
问问题
3223 次
4 回答
5
通过将noclasses属性设置为True,只会生成内联样式。这是一个可以很好地完成工作的片段:
formatter = HtmlFormatter(style=MyStyle)
formatter.noclasses = True
print highlight(content,PythonLexer(),formatter)
于 2009-03-08T23:22:37.400 回答
1
将 full=True 传递给 HtmlFormatter 构造函数。
于 2009-03-09T01:29:47.500 回答
1
@Ignacio:恰恰相反:
from pygments import highlight
from pygments.lexers import PythonLexer
from pygments.formatters import HtmlFormatter
code = 'print "Hello World"'
print highlight(code, PythonLexer(), HtmlFormatter(noclasses=True))
[参考:http://pygments.org/docs/formatters/,见 HtmlFormatter]
(基本上和Tempus的回答一样,我只是觉得完整的代码片段可能会节省几秒钟))
PS。那些认为原始问题不合适的人可能会想象将突出显示的代码粘贴到由第三方服务托管的博客条目中的任务。
于 2012-05-02T07:51:03.527 回答
-2
通常,您的代码只是网页上众多内容之一。您经常希望代码看起来与其他内容不同。通常,您希望将代码的样式控制为整体页面样式的一部分。CSS 是您的首选,最好的选择。
但是,如果这看起来更好,您可以将样式嵌入 HTML 中。这是一个显示<style>
标签中<head>
标签的示例。
于 2009-03-08T22:43:01.863 回答