簡體   English   中英

vscode python格式化autopep8禁用E266

[英]vscode python formatting autopep8 disable E266

我正在嘗試將Visual Studio Code設置為使用autopep8進行格式化,但忽略了E266(對於塊注釋,太多的前導“#”)以允許注釋中的Markdown子標題。

--ignore設置似乎適用於其他錯誤,例如E302,但不適用於E266。

我的格式化配置如下,即使忽略了E302E266仍會強制執行

    "python.formatting.provider": "autopep8",
    "python.formatting.autopep8Args": [
        "--ignore",
        "E266,E302",
        // E266 = multiple-# in comments
        // E302 = expect 2 blank lines before def
    ],

使用上面的配置,autopep8將忽略E302(因此它不會在def之前插入行),但是它將繼續根據E266刪除注釋中的多余#號。

我可以將Linter設置為忽略E266,這樣它就不會在UI中加下划線,但不會在修改代碼的Formatter中加下划線。 這是Linter配置,可以正常工作

    "python.pythonPath": "...path...",
    "python.linting.pep8Enabled": true,
    "python.linting.pep8Args": [
        "--ignore=E266"
        // E266 = multiple-# in comments
    ],
    "python.linting.pylintPath": "...path...",
    "python.linting.pylintArgs": [
        "--load-plugins",
        "pylint_django"
    ],
    "python.linting.pylintEnabled": true,

是否存在類似於E266的重疊規則,該規則導致Formatter盡管忽略了E266仍然進行更改? 之所以不會出現,是因為忽略E266時,Linter無法識別正在編輯的行。

example.py用於示例用法

## These lines will lose one "#" when Formatted in VSCode
## Even though we set it to ignore E266

您正在尋找E265 - Format block comments.

在我的Vscode中使用以下配置:

    "python.formatting.autopep8Args": [
    "--ignore=E302,E265"
],

對於我來說,您的示例沒有改變。
似乎autopep8 --list-fixesREADME中列出的內容不匹配。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM