使用一些不寻常的语言,processing-py,这是一种围绕java处理语言的python包装。
processing-py引入了许多不需要导入的全局关键字。这些包括函数名称,如loadPixels()和全局变量(常量?),如'width'(屏幕宽度)。
Sublimelinter + flake8正确地为这些引发了F821未定义的名称。 #noqa不方便,我不妨在这一点上关掉它。我还想看看我实际上引入了一个伪造的关键字,例如将loadPixels()(好)拼写为laodPixels()(坏)。
那么有没有办法为F821添加例外列表,或以其他方式扩展已知关键字的字典?
我也使用自定义thTheme和关键字列表,作为processing-py-sublime包的一部分。
谢谢!
答案 0 :(得分:1)
不知道您是否解决了问题,但如果您将SublimePythonIDE与SublimeText3一起使用,则可以在插件的用户设置或项目设置中添加例外列表:
在用户设置中,添加:
"pyflakes_ignore": ["background", "ellipse", "fill", "size" ... ]
在项目设置中,添加到'设置'对象:
{
"settings": {
// Ignoring for Processing.py projects
"pyflakes_ignore": ["background",
"ellipse",
"fill",
"size"]
}
}
答案 1 :(得分:0)
我已经接受了其他用户的回答,但想出了另一种方法,这与我目前的工作流程更加一致。
我使用的是Sublime Linter + Python Flake8 Lint包。
Python Flake8 Lint有一个名为“builtins”的设置,我想这是内置的python语言关键字。你可以在项目级别设置它(我主要在一个大的崇高项目中进行所有的pyprocessing)。
yourpyprocessingproject.sublime项目:
"settings": {
"flake8lint": {
"builtins": [
"draw",
"exit",
"loop",
"noLoop"
etc...
]
}
}
这就是诀窍。使用接受答案中的要点获取完整的关键字列表。