我在vim中通过ALE使用flake8和pylint。
我知道如何在各自的配置文件中禁用每个链接的个别错误/警告。
如何在文件开头的shebang行(如果有的话)保留除之外的line-too-long
次检查?
如果第一行不是一个shebang行,它仍然应该抱怨太长的行。
因此,如果最大行长度为5(为了示例),请使用此文件:
#!/run/stuff
x=3
print(x)
他们应该抱怨第三条线而不是第一条线。
但是有了这个文件:
x = 1 + 1 + 1
# Print the result
print(x)
它应该抱怨所有三条线。
答案 0 :(得分:1)
通过执行pylint --generate-rcfile
制作配置文件。请点击此处了解更多https://docs.pylint.org/en/1.6.0/run.html
[MESSAGES CONTROL]
部分下的将line-too-long
添加到disable=
的列表中。
在每个python文件的第二行,您重新启用line-too-long
。
#!/usr/bin/env python3
# pylint: enable=line-too-long
x=3
print(x) # make this longer than the enable line
我将行限制设置为30,因此pylint抱怨第4行。我向shebang行添加了无偿的空格,但是pylint仍然忽略了长度。
答案 1 :(得分:0)
感谢@Ian Stapleton Cordasco,我最终向pycodestyle提交了一个补丁(由flake8使用),以忽略shebang行的长度。
所以现在为了修复我的ALE设置,我可以用my latest version from GitHub取代我的flake8副本的pycodestyle脚本,并在pylint中禁用行太长的检查,同时将它们保留在flake8 / pycodestyle中。这样一来,如果没有以任何方式修改我的脚本,我仍然会在其他任何地方获取行长,而不会为长期的shebang提供冗余警告。