Pygmentize:找不到名称“javascript”的格式化程序

Posted

技术标签:

【中文标题】Pygmentize:找不到名称“javascript”的格式化程序【英文标题】:Pygmentize: No formatter found for name 'javascript' 【发布时间】:2012-04-06 15:24:32 【问题描述】:

我正在尝试使用 Pygments 生成一个为 javascript 格式化的 CSS 文件。我可以使用以下方法对 html 做的很好:

pygmentize -S default -f html

但是,当我尝试使用 JavaScript 时:

pygmentize -S default -f javascript

我收到以下错误:

No formatter found for name 'javascript'

如何让 Pygments 为 JavaScript 生成 CSS 文件?谢谢。


编辑:我的目标是生成样式化 Pygments 格式的 code 块所需的 CSS。例如,当我在启用 Pygments 的情况下运行 Jekyll 时,它将格式化我的 code 块将各种 CSS 类。但是,没有 CSS 文件来设置这些类的样式。也许我误解了如何使用 Pygments。

【问题讨论】:

你到底想做什么,看来是对'formater'选项有误会。你的意思是“词法分析器”吗?因为如果要显示 javascript 代码,则需要 javascript 词法分析器,而不是格式化程序。 @BaptistePernet,我已经编辑了我的问题,希望能澄清我想要做什么。 【参考方案1】:

我认为您误解了 pygment 的作用以及 lexerformatter 之间的区别。

lexer 用于解析要突出显示的代码,在 jekyll 中,在 % highlight % 命令中,您提供词法分析器作为参数:rubypythonjavascript 等。 formatter 是您想要的输出格式:pdflatexhtml 等。

如果您选择 html 格式化程序,您将拥有一个 CSS 样式表,用于所有将使用不同 lexer 解析的语言。

因此,要获得此 CSS,您可以浏览网络以查找自定义 CSS(访问 http://pygments.org/demo/ 并在您选择了一个演示后使用组合框选择不同的样式)。或者从http://pygments.org/media/pygments_style.css下载默认样式

【讨论】:

以上是关于Pygmentize:找不到名称“javascript”的格式化程序的主要内容,如果未能解决你的问题,请参考以下文章

隐藏为空时隐藏

pygments pygmentize 传递字符串

自定义标签未加载到模板中

Angular 和 Typescript:找不到名称 - 错误:找不到名称

找不到模块“快递”;找不到名称“进程”;等等

如何修复“找不到名称'ClipboardItem'”错误?