sublime怎么禁止自动补全括号_sublime关闭括号自动配对【详解】

12次阅读

只需将用户设置中的 “auto_match_enabled”: false,即可彻底禁用括号、引号、方括号等所有成对符号的自动补全,且无需重启;注意检查语法专属设置是否覆盖该配置。

sublime怎么禁止自动补全括号_sublime关闭括号自动配对【详解】

怎么关掉括号自动配对?只需改一个配置项

sublime Text 默认开启括号自动补全,输入 ( 会立刻补上 ),光标停在中间——这个行为由 auto_match_enabled 控制。要彻底禁用,不是删插件、也不是调快捷键,而是直接把它设为 false

  • 打开菜单:Preferences → Settings(会并排显示默认设置和用户设置)
  • 在右侧「用户设置」中添加或修改这一行:
    { "auto_match_enabled": false }
  • 保存文件(Ctrl+S),无需重启,立即生效

注意:别误改左侧默认设置——它是只读的,改了也不起作用。

为什么关了还“偶尔补全”?检查语法专属设置是否覆盖了全局

即使用户设置里写了 "auto_match_enabled": false,某些文件类型(比如 pythonjsON、markdown)可能单独开了自动匹配,因为它们在 Preferences → Settings – Syntax Specific 里有独立配置。

  • 打开一个你发现“仍会自动补括号”的文件(例如 test.py
  • 点击菜单:Preferences → Settings – Syntax Specific
  • 看右边打开的文件里有没有 "auto_match_enabled": true —— 如果有,删掉或改成 false
  • 如果该文件是 Plain TextLog 类型,也建议同样检查,这类文件常被忽略但其实也会继承语法设置

语法专属设置的优先级高于用户设置,这是最常被忽略的冲突点。

关了括号配对,引号、方括号也一起没了?没错,这是设计如此

auto_match_enabled 是统一开关,它控制所有成对符号的自动补全,包括:()[]{}""''``。Sublime 没有内置方式只关圆括号而留着引号——想精细控制,必须借助插件(如 BracketHighlighter 配合自定义键绑定),但代价是配置复杂度陡增。

  • 如果你只讨厌 {} 在写 json 时乱跳,但喜欢 "" 在写字符串时自动补全,那原生 Sublime 不支持这种拆分
  • 临时绕过:输入左括号后按 (右方向键)可跳过自动插入的右括号,光标移到外面
  • 误触发补全后,按 Ctrl+Z 可撤销一次,比删掉更稳

和其他补全功能混淆?分清 auto_match_enabledauto_complete

很多人搜“关闭自动补全”却把括号配对和代码提示框搞混。这两者完全独立:

  • auto_match_enabled:管符号配对(输入 ( 就出 )
  • auto_complete:管弹出式代码建议框(输 prin 后出现 print 提示)
  • 两者可同时开、同时关,也可一开一关——比如你只想关括号配对,但保留函数名提示,那就只动 auto_match_enabled,别碰 auto_complete

真正容易踩坑的是:有人为了“关补全”把 auto_complete 设为 false,结果发现括号还在配对——那说明根本没动对配置项。

text=ZqhQzanResources