我为pygments编写了一个新的词法分析器,并尝试使用它。因此我看这个页面
http://pygments.org/docs/lexerdevelopment/
描述安装过程的位置。他们说可以,make mapfiles但我不知道在哪里。
我查看了这两个目录,那里有他们谈论的other.py模块。
/usr/share/pyshared/pygments/lexers/
Run Code Online (Sandbox Code Playgroud)
和
/usr/share/pyshared/pygments/lexers/
Run Code Online (Sandbox Code Playgroud)
但是那里没有任何makefile。因此,我该怎么办?
小智 5
博客文章pygments中的Custom语法说明了另一种向pygments中添加自定义词法分析器的方法:
Pygments通过setuptools中称为入口点的方式启用自定义插件。
目录结构:
|- FantomLexer
|- fantomlexer
| |- __init__.py
| |- lexer.py
|- setup.py
Run Code Online (Sandbox Code Playgroud)
该__init__.py文件可以为空,但必须存在,因此足以触摸它。在lexer.py将包含Pygments来做正则表达式词法分析器。
内容setup.py如下:
from setuptools import setup, find_packages
setup (
name='fantomlexer',
packages=find_packages(),
entry_points =
"""
[pygments.lexers]
fantomlexer = fantomlexer.lexer:FantomLexer
""",
)
Run Code Online (Sandbox Code Playgroud)
然后,您可以通过安装lexer sudo python setup.py develop。
| 归档时间: |
|
| 查看次数: |
2330 次 |
| 最近记录: |