狮身人面像:找不到自定义 Pygments 词法分析器

Sphinx: custom Pygments' lexer not found

提问人:Denis Bitouzé 提问时间:10/20/2023 最后编辑:Denis Bitouzé 更新时间:10/22/2023 访问量:75

问:

我创建了自定义词法分析器和样式:Pygments

  • acetexlexer.py(词法分析文件),
  • acedracula.py(样式文件),

效果很好,因为以下命令返回预期结果:

pygmentize -O style=acedracula -x -l acetexlexer.py:AceTexLexer test.tex

enter image description here

但是我无法让他们与狮身人面像合作,尽管在互联网上进行了广泛的研究。

例如,我尝试了以下设置,部分基于:

我从以下位置找到的:

https://github.com/sphinx-doc/sphinx/issues/9544

  1. 在项目的根目录下,我创建了一个包含词法分析器和样式文件的子目录 ( 和 )。source_pygmentsacetexlexer.pyacedracula.py

  2. 相关线路是:acetexlexer.py

     from pygments.lexer import inherit, bygroups
     from pygments.token import Text, Comment, Operator, Keyword, Name, String, \
         Number, Punctuation, Generic, Other, Whitespace
     from pygments.lexers.markup import TexLexer
    
     __all__ = ['AceTexLexer']
    
     class AceTexLexer(TexLexer):
         aliases = ['xtex', 'xlatex']
    
  3. 我的相关台词是:conf.py

     import os
     import sys
     sys.path.insert(0, os.path.abspath('.'))
     sys.path.append(os.path.abspath("./_ext"))
     sys.path.append(os.path.abspath("./_pygments"))
    
     def setup(app):
         from acetexlexer import AceTexLexer
         app.add_lexer('xlatex', acetexlexer.AceTexLexer)
    

但是,当我运行时:

sphinx-build -v -j auto source build/html source/test.md

我得到:

[...]/source/test.md:16:警告:Pygments 词法分析器名称“xlatex”未知。

我做错了什么?

蟒蛇 python-狮身人面 词法分析器 pygments

评论


答: 暂无答案