忽略Sublime CodeIntel标记为不正确的单行

时间:2013-05-13 00:40:14

标签: sublimetext2 code-intelligence

我正在将Sublime用于Python项目。我有这样的词典理解:

inv_map = {v:k for k, v in map.items()}

CodeIntel将此标记为“无效语法”错误,但这是正确的并且运行没有问题。

如何告诉CodeIntel忽略此特定行?

1 个答案:

答案 0 :(得分:2)

字典理解(您正在使用的功能)是Python 2.7 +。

    inv_map = {v:k for k, v in map.items()}

内部SublimeLinter运行名为pep8的Python命令行程序(pep8是PEP-8 guideline checks和pyflakes的包名。由于SublimeLinter的体系结构,运行它们可能仅限于Python 2.x目标,嵌入的Python版本通过Sublime Text。

此处的相关SublimeLinter源代码:

https://github.com/SublimeLinter/SublimeLinter/blob/master/sublimelinter/modules/python.py

您的问题中的错误可能来自pep8或Pyflakes。

Pyflakes不提供如何使其忽略任何行的文档。可能不可能,因为这个问题How do I get Pyflakes to ignore a statement?的答案中的建议不是使用Pyflakes。

https://pypi.python.org/pypi/pyflakes

pep8仅提供全局错误和警告忽略,而不是基于每个文件或每行。

http://pep8.readthedocs.org/en/latest/intro.html#configuration