VSCode按下回车键时自动添加多余空格的问题求助
VSCode按下回车键时自动添加多余空格的问题求助
大家好,我用VSCode已经好几年了,最近换电脑重装后碰到了一个特别闹心的格式问题,想请教下有没有同行遇到过或者知道怎么解决。
具体情况是这样的:
当我在列表、字典这类结构里,把光标放在逗号后面的空格前按回车换行时,以前的正常行为是自动删除光标右侧的空格,并且新行会和上一行保持正确的缩进。比如原来的代码是:
int_list = [ 1, 2, 3, 4, ]
按回车后会变成:
int_list = [ 1, 2, 3, 4, ]
但重装VSCode之后,同样操作反而会在新行开头多加出空格,结果变成了这样:
int_list = [ 1, 2, 3, 4, ]
我还发现一个规律:新行多出来的空格数,正好等于光标原来后面的空格数量。比如如果逗号后面有3个空格:
int_list = [ 1, 2, 3, 4, ]
按回车后新行会多出6个空格(原有缩进4个+额外3个):
int_list = [ 1, 2, 3, 4, ]
更头疼的是,这个问题不只是出现在列表里,字典、元组、函数参数、文档字符串里的逗号,凡是用到逗号的场景都会出现这个问题,真的很影响编码效率。
说下我的环境:当前用的是VSCode 1.97.2,只激活了Python、Python Debugger和Pylance这三个扩展。如果禁用这些扩展,多空格的问题会消失,但同时也失去了语法高亮和代码提示(补充:不过禁用扩展后,原来自动删除空格的功能也没了)。另外换电脑时从Win10升级到了Win11,不确定这个系统变化有没有关联。
我已经尝试过这些方法,但都没解决问题:
- 安装扩展的旧版本测试
- 禁用所有非必要扩展
- 去这几个扩展的GitHub仓库搜索是否有相关的公开issue
- 重启VSCode和扩展
- 开启/关闭「Format On Type」设置
- 调整tab缩进大小、切换tab/空格缩进模式
我自己瞎猜,会不会是某个设置里的逻辑搞反了?比如本来应该是减去空格的操作,变成加上空格了,但翻遍了VSCode和Python扩展的设置,都没找到对应的选项。
有没有大神能给点建议或者方向?感激不尽!
备注:内容来源于stack exchange,提问作者Nicolas Bechstedt
相关产品推荐
相关产品推荐

