问题标签 [pygments]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
4 回答
3223 浏览

python - 如何自定义 pygments 的输出?

如果我通过 pygments 运行 python 源文件,它会输出 html 代码,其元素类属于 pygments 正在使用的某些 CSS 文件。样式属性是否可以包含在输出的 html 中,这样我就不必提供 CSS 文件了?

0 投票
3 回答
1197 浏览

python - 用于打印输出的明智的 python 源代码行换行

我正在编写一个需要排版大量 python 源代码的乳胶文档。我正在使用pygments(python 模块,而不是在线演示)将这个 python 封装在乳胶中,除了长的单独行的情况下效果很好 - 它只是继续离开页面。我可以手动包装这些行,除了这对我来说似乎不是一个优雅的解决方案,而且我更喜欢花时间对疯狂的自动化解决方案感到困惑,而不是重复性任务。

我想要的是某种处理 python 源代码的方法,以将行包装到某个最大字符长度,同时保留功能。我玩过一些python,最接近的是\\\n在最大行长之前插入最后一个空格-但是当然,如​​果这最终出现在字符串和注释中,事情就会出错。坦率地说,我不确定如何解决这个问题。

那么,是否有人知道可以处理源代码的模块或工具,这样任何行都不会超过一定的长度——或者至少是开始编写类似代码的好方法?

0 投票
2 回答
2965 浏览

django - 在 Django 中使用 Markdown 和 Pygments 突出显示语法

我一直在尝试使用 Markdown (2.0.1) 和 Pygments (1.0) 在我的简单 Django (1.1) 测试应用程序中实现语法高亮。这个想法是从用户输入中生成降价格式的 HTML,并将两者都存储在数据库中,这样我就不必在获取期间进行降价到 html 的翻译。

到目前为止,我的降价处理工作正常,但我似乎无法让语法突出显示工作。我的 models.py 看起来像这样:

到目前为止,测试只是降价语法有效,但如果我尝试以下类似的操作,我在输出或输出源中看不到任何语法突出显示:

我希望在输出源中至少看到一组代码元素。

0 投票
1 回答
2906 浏览

python - 用于语法高亮的 Python 库

哪个用于语法高亮的 Python 库是最好的?我对支持的语言、易用性、pythonic 设计、依赖项、开发状态等感兴趣。

0 投票
1 回答
581 浏览

python - Django 语法高亮导致字符转义问题

我一直在写我自己的基于 django 的博客(就像我认识的每个人一样)来提高我的 python,我认为添加一些语法高亮会非常棒。我查看了那里的一些片段,并决定结合一些片段并使用 Beautiful Soup 和 Pygments 编写我自己的语法高亮模板过滤器。它看起来像这样:

它会寻找这样的代码块,并突出显示和广告相关样式:

这一切都很好,直到我包含的一段代码中有一些 html。现在,我知道我需要的所有 html,所以我直接在其中写我的博客文章,并在渲染到模板时,只需将文章正文标记为安全:

这种方法导致代码块中的任何 html 都只是呈现为 html(即,不显示)。我一直在尝试在过滤器从正文中提取的代码上使用 django 转义函数,但我似乎永远无法做到正确。我认为我对内容转义的理解还不够完整。我也尝试在帖子正文中编写转义版本(例如<),但它只是以文本形式出现。

标记要显示的 html 的最佳方法是什么?我对这一切都错了吗?

谢谢。

0 投票
2 回答
888 浏览

latex - Texments 包在 Ubuntu 上不起作用

我正在尝试使用 Ubuntu 上的 Texments Latex 包来进行语法高亮显示。Texments 是 Pygments 的包装器。我安装了 Texments 并按照步骤将样式文件添加到路径中。但是当我尝试编译 .tex 文件时,我得到了错误。

!未定义的控制序列

然后它打印出一堆奇怪的字符并放置?迅速的。有人遇到这个错误吗?分辨率是多少?

如果有任何其他更好的方法来提供源代码的语法突出显示,我很乐意接受它。

我知道有一种叫做“列表”的东西,但坦率地说,我没有发现它的颜色那么好。

谢谢,

0 投票
3 回答
100345 浏览

latex - LaTeX 中的源代码高亮显示

我需要在 LaTeX 中突出显示源代码。该软件包listings似乎是大多数用例的最佳选择,对我来说,直到现在。

但是,现在我需要更多的灵活性。一般来说,我正在寻找的是一个真正的词法分析器。特别是,我需要(对于自己的语言定义)定义(并突出显示!)自己的数字样式。listings不允许在代码中突出显示数字。但是,我需要制作这样的东西:

所需结果

listings也无法处理字符串的任意分隔符。考虑以下有效的 Ruby 代码:

在这里,!几乎可以用任何分隔符代替。

listings不能处理 Unicode 也很麻烦,但这是另一个问题。)

理想情况下,我正在寻找listings允许我提供更复杂的词法规则的扩展。但除此之外,我也在寻找可行的替代方案。

其他线程建议使用可以产生 LaTeX 输出的Pygments 。甚至还有一个包 – texments– 来简化过渡。

但是,这非常缺乏功能。特别是,我对listings-style 行编号、源代码行引用以及在源代码中嵌入 LaTeX 的可能性(选项texclmathescapein listings)感兴趣。

例如,这是一个源代码排版,listings其中显示了替换还应提供的一些内容:

LaTeX 列表示例:横向添加 [从Bit Twiddling Hacks修改的“横向加法”]

0 投票
3 回答
27519 浏览

syntax - Latex:使用 Minted 包 - 我如何让它包裹文本(换行符 = true)

我用它Pygments做很多事情,我也想在我的乳胶报告中使用它。我找到了Minted与 Pygments 交互的包,但是一些注释和一些代码溢出了右边距。我过去使用过 lstlistings' breaklines=true,但我没有看到使用 Minted 包获得该功能的方法,有什么想法吗?

0 投票
2 回答
8853 浏览

latex - 如何使用 LaTeX minted 减少与其他文本的分离?

我想使用 minted 包来突出显示语法,但它的间距超过一厘米。

环境:

根本没有帮助。有什么办法可以减少与其余文本的间距?

0 投票
2 回答
2505 浏览

python - Sphinx/Pygments 中是否有一种方法可以强调文字包含中的一行或多行代码?

在我正在编写的一些 sphinx 文档中,我包含了来自辅助文件的代码示例,如下所示:

这个特定的文档是一个教程,其中的类是逐步建立的。我想做的是包括整个类或单个方法,并且只强调该部分感兴趣的行。这样可以保留上下文,但有趣的部分一目了然。现在我只使用了文本中的行号,这还可以,但远非理想。

查看 sphinx 和 pygments 的文档和代码,我没有找到明显的方法来做到这一点。我不反对修补它们或做一些棘手的事情conf.py,但我想知道是否有人解决了这个问题。