Visual Studio代码禁用自动换行长行


77

我用vs代码用pylint编写python。当我按ctrl+ S(保存)时,编辑器将一长行换成多行短行。如何禁用该操作或将自动换行列数配置为120(默认值为80)?我尝试了"python.linting.pylintArgs": ["--max-line-length=120"]"editor.wordWrapColumn": 120,但没有成功。


您是否已打开自动格式设置?VS Code本身不会重新格式化任何内容,因此editor.wordWrapColumn不会受到影响,因为editor.wordWrap-只会影响如何显示长行,而不是重写长行。
Brett Cannon

Answers:


173

检查您的Python格式提供程序。

"python.formatting.provider": "autopep8"

我猜你的情况是不pylint的谁一直缠绕长长的队伍,但是autopep8。尝试设置--max-line-lengthautopep8代替。

"python.formatting.autopep8Args": [
    "--max-line-length=200"
]

9
如果linter的行为类似于格式化程序,那么它也有帮助:“ python.linting.pep8Args”:[“ --max-line-length = 120”]
Lian

1
有关其他可用参数的信息,请参见pypi.org/project/autopep8
Jerren Saunders,

1
TLDR:PEP8表示Python的理想换行限制为80,因此这是autopep8的默认设置。
尤里卡

5
只需单击鼠标,然后单击“代码->首选项->设置”即可实现。然后选择“扩展-> Python”。浏览到“格式:Autopep8 Args”及其“添加项目”,在建议的框中添加“ --max-line-length = 200”
loic.jaouen

"--ignore=E501"完全忽略max-line-length。
杰普

2

使用自定义参数时,在命令行上用空格分隔的参数字符串的每个顶级元素必须是args列表中的单独项目。例如:

“ python.formatting.autopep8Args”:[“ --max-line-length”,“ 120”,“ --experimental”],“ python.formatting.yapfArgs”:[“ --style”,“ {based_on_style:铬,indent_width:20}“],” python.formatting.blackArgs“:[” --line-length“,” 100“]

为了正确格式化这些Python设置,您可以在此处检查 Formatter特定的设置https : //code.visualstudio.com/docs/python/editing#_formatterspecific-settings

还可以在此处检查答案:https : //stackoverflow.com/a/54031007/1130803


0

Autopep8要求--aggressive为了推荐非空白更改:

"python.linting.pylintArgs": ["--max-line-length", "120", "--aggressive"]

这将为您排长行。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.