Sublime Text 3 - 禁用 Python Checker 警告 "缩进包含制表符"

14

我没有在网上找到这个问题的答案,所以我会直接说出来;这不是关于SublimeLinter的问题,我也不想按照PEP8标准格式化我的Python代码。

如何在Python Checker包中禁用“缩进包含制表符”的警告?


1
dv:请解释一下你自己。 - Jonathan H
我没有点踩,但是值得一提的是:Python Checker package page 是谷歌上的第一个搜索结果,并且它在那里解释了它使用 PEP8 配置文件。 - Martijn Pieters
1
是的,无论 pep8 安装在哪里(virtualenv、自定义目录等),仍将使用相同的配置文件。 - Martijn Pieters
1
@MartijnPieters 非常感谢你的帮助,我真的不理解这个 pep8 的胡言乱语,强制在如此深层次的语言语法上进行干涉,我从未见过这样的东西。我想我需要阅读相关资料,或者彻底删除语法检查器。你觉得我应该删除我的问题吗? - Jonathan H
2
我不认为有必要删除它。PEP8只是一个指南,而不是强制性规定;这也是检查器可配置的原因。然而,这个指南是从经验中产生的,如果你是Python初学者,我建议你遵循它。 - Martijn Pieters
显示剩余2条评论
4个回答

22

该项目使用标准的pycodestyle (曾用名pep8)配置文件,只需添加一个ignore行:

[pycodestyle]
ignore = W191

W191 是指缩进包含制表符的错误代码。


Translated:

W191 is the error code for "indentation contains tabs".


这在SublimeText3上对我实际上并没有起作用,无论是在项目文件夹中作为setup.cfg文件,还是在用户级别下。 - AruniRC
@AruniRC,pep8工具已更名为pycodestyle。相关文档已更新以反映此更改。我稍后会在电脑上更新此答案。 - Martijn Pieters

6

您可以使用以下方法将sublime设置为:

视图 -> 缩进 -> 将缩进转换为空格

这将使您的制表符转换为4个(根据您的设置)空格。它在我的电脑上有效。

并将文件中现有的制表符修改为空格:

查看 -> 缩进 -> 将缩进转换为空格


我想使用制表符进行缩进,并手动使用空格对齐我的注释。但还是谢谢你的回答 :) - Jonathan H
1
@Sh3ljohn FYI,在Python 3中,文件中混合使用制表符和空格会导致语法错误,因此您应该计划使用其中一种进行缩进,而Python社区已经确定使用空格。我个人仍然使用制表符,但我使用了几种技术来避免混合缩进(不使用悬挂缩进,在上一行添加注释)。 - Jason R. Coombs

2
在Sublime 2中,选择“Preferences(首选项)”>“Package setting(包设置)”>“Python Fake8 Lint”。 选择“Setting-default”(默认设置)。 在打开的文件中,找到第81行。
// skip errors and warnings (e.g. ["E303", "E4", "W"])
"ignore": [],`

然后在方括号[]中添加"W191"并保存。

祝你好运!^^


1

针对SublimeText 3和pycodestyle:

选择Preferences > Package Settings > SublimeLinter > Settings并添加/更改以下内容:

// SublimeLinter Settings - User
{
    "linters": {
    // The name of the linter you installed
        "pycodestyle": {
            "ignore": ["W191"]
        }
    }
}

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接