问题标签 [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 投票
2 回答
1791 浏览

python - 有关如何为 Pygments 编写词法分析器的大量文档?

我有一本Stata关键字字典和 Stata 语法的合理知识。我想花几个小时把它变成Pygments的 Stata 词法分析器。

但是,我找不到足够的有关词法分析器语法的文档,并且发现自己无法开始编写词法分析器。有人可以指出一个为 Pygments 编写新词法分析器的好教程吗?

我知道Pygments APIlexer development page,但老实说,对于像我这样对 Python 知识非常有限的人来说,这些还不够。

到目前为止,我的策略是寻找例子。我找到了很多,例如PuppetSassScalaAda。他们只帮了这么多。欢迎任何有关如何从我的 Stata 关键字开始的帮助。

0 投票
2 回答
1415 浏览

ruby - Middleman & Haml 与 Github 风格的围栏代码块

我开始将Middleman用于静态网页和博客目的。我将它与基于 ZURB Fondation 的模板Middleman-Foundation一起使用。它使用Haml,我确实倾向于使用 Haml,偶尔会使用 Markdown 文件。

我正在使用 redcarpet 进行降价,也可以使用 Github 风格的围栏代码块来突出显示源代码。但我不知道如何在 Haml 中为 Markdown 设置它。

我检查了适用于但不适用于. 我试图从Glorify中弄清楚但失败了。我已经检查过这个这个了。.html.md.html.haml

在 Haml Markdown 中实现工作隔离代码块以生成突出显示的源代码的基本步骤是什么。

从一开始就有一套步骤,从gem install middleman克隆/使用中间人基金会开始,这将是很棒的,但欢迎任何简短的、实际的答案。

编辑

我能够通过以下方式在 Haml 中实现 pygmentized 代码块(遗憾的是,似乎无法为此使用带有围栏代码块的 markdown ......):

但是有一个持久的问题,这就是我得到的:

无法放置标题换行符

可以看出第一行没有正确缩进,这是因为前面的代码片段没有产生标题换行符:

我不知道如何在第一行之前换行<span>,在开头<pre>之后,以便代码像其他行一样正确缩进。

期望:

0 投票
2 回答
1221 浏览

jekyll - 突出显示多行

我正在使用 pygments 进行语法突出显示,并希望突出显示代码中的某些行。这适用于突出显示一行,但我将如何突出显示多行?我试过逗号和空格分隔的列表无济于事。

0 投票
1 回答
717 浏览

markdown - how does pygments guess lexer?

I'm using middleman-syntax to highlight code in my blog

I'm writing my templates in markdown... and was wondering, how does pygments guess lexer?

Is there a list of how pygments guess it?

0 投票
2 回答
189 浏览

php - PHP exec() 与 Pygments for PHP

我目前正在使用位于此处的 Pygments for PHP 插件:http: //derek.simkowiak.net/pygments-for-php/

从该代码中实际调用 Pygments 的行是传递的 exec() :

为命令。这一切都很好,我得到了输出并由插件格式化。

我希望同时发生的是让 Pygments 创建它的图像,所以我通过 exec() 一个类似的命令:

是我遇到问题的地方。该图像永远不会出现在预期的文件夹中。

但是,如果我在它var_dump()之前使用那个命令字符串exec()并直接从命令行运行它,它就可以正常工作。

我尝试回显 exec('whoami') 告诉我 PHP 用户是 www-data。我已经尝试授予 www-data 权限并将所有权更改为我存储图像的文件夹上的 www-data 。我还尝试将权限更改为 777 只是为了看看会发生什么,答案是什么都没有。

有什么我想念的吗?我已经没有想法可以尝试了。谢谢!

编辑:我检查的另一件事是 exec 命令的输出和返回值。它输出一个空数组,并返回 1 作为返回值。

编辑 2:在看到该目录应该对 PHP 用户可写/可读后,pygments 是否可能无权将其作为特定用户写入?我不确定这是否有意义,因为当我自己运行它时它工作正常,事实上,当 PHP 使用 HTML 词法分析器运行它时,它能够运行。我在 Python 方面不是很有经验,所以我不知道这是否是一个潜在的问题。

0 投票
0 回答
436 浏览

jekyll - 如何在 Jekyll 中配置 Pygments 的 HTML 格式化程序

我想将 Jekyll 用于 Github 页面,但我在使用 pygments 时遇到了一些困难。Jekyll 似乎不允许我配置任何与 pygments 相关的内容。

我想要(需要)改变两件事:

  1. 使用linenos=table可以轻松复制代码。{% highlight c linenos=table %}不起作用。此外,全局定义 this 会更方便,而不是在每个{% highlight ...

  2. 当我使用{% highlight c %}(注意C词法分析器)时,pygments 会生成类似:<div class="highlight"><code class="c">...</code></div>. 因此,在突出显示的源代码中,类c与用于s的类c<code>冲突。如何告诉 pygments 使用classprefix<span>

两者都是此处记录的选项:http: //pygments.org/docs/formatters

0 投票
1 回答
402 浏览

ruby-on-rails - Pygments 代码块格式化程序为 Markdown 代码块添加了奇怪的空格

如下图所示:

在此处输入图像描述

为了明确指出我在说什么,我的意思是每个. , + , ] , | , 和=。以及可能出现在其他地方的其他标点符号。

我正在使用 pygments.rb 和 Redcarpet gem 来格式化要添加到降价的代码块。每个代码块都包含在一个 .codebox div 中,该 div 使用此 SASS 样式(在实际文件中右击):

然后,当然,markdown ` 反引号。如果相关,这是我的 pygments 配置设置:

application_helper.rb

0 投票
4 回答
3974 浏览

syntax-highlighting - 如何使用 Jekyll 和 Pygments 获得内联代码?

我正在使用带有 Liquid 标签的 Markdown 来标记 Jekyll 生成的网站的一些代码,并希望包含一些内联(在段落中)和具有彩色语法(使用 Pygments)的代码,但它没有似乎工作。

标记

结果是

我非常希望突出显示的文本不包含在 中<div class='highlight'>,或者至少是<span class='highlight'>.

正如其他地方所建议的那样,使用{% highlight javascript nowrap %}不起作用。(也许这是我的设置的问题——Ruby 2.0、Jekyll 0.12.1、pygments.rb 0.3.7?)

我想在 GitHub 上托管这个页面,这意味着我不能依赖插件。无赖,对吧?

附录:行号(即{% highlight javascript linenos %})似乎也不起作用。男人。

0 投票
1 回答
914 浏览

ruby-on-rails - 为什么 Pygment.rb 不突出显示 tags within
 properly -i.e. Google Prettify friendly tags?

0 投票
1 回答
3487 浏览

ruby - 语法类似于 GitHub Flavored Markdown 的 Ruby markdown 解释器?

我使用Jekyll运行博客,并认为我会使用Redcarpet markdown 解释器,因为它是由 GitHub 开发和使用的

好吧,我只是碰巧遇到了一个错误,去检查问题,发现了这个

维护者说:“你可能已经注意到了 (har har har har) 我没有时间再维护 Redcarpet。这对我来说不是优先事项(我觉得 Markdown 非常无聊)也不是 GitHub 的优先事项,因为我们没有在生产中使用更长的时间。

所以...

  1. 是否有一个可以与 Jekyll (& pygments) 一起使用的好的 Ruby markdown 解释器(即积极开发,语法健全)?

  2. 更好的是,语法类似于(或至少接近)GitHub Flavored Markdown 的 Markdown 解释器?