如何禁用Sublime Text按下Tab、回车键触发的自动补全功能
解决方案
第一步:调整核心配置项
你之前修改的两个配置不生效是因为缺少控制代码片段编辑场景下自动补全行为的参数,打开 Preferences -> Settings,在右侧用户配置中添加以下3项:
"tab_completion": false, "auto_complete_commit_on_tab": false, "auto_complete_with_fields": false
保存后先重启一次Sublime Text测试,如果问题仍然存在,再走第二步修改快捷键绑定。
第二步:覆盖Tab键的自动补全提交绑定
你找到的默认快捷键规则不需要删除,直接在用户快捷键配置中添加优先级更高的覆盖规则即可:
- 打开
Preferences -> Key Bindings - 在右侧用户配置文件中添加以下规则:
{ "keys": ["tab"], "command": "next_field", "context": [ { "key": "has_next_field", "operator": "equal", "operand": true } ] }, { "keys": ["tab"], "command": "commit_completion", "context": [ { "key": "auto_complete_visible" }, { "key": "has_next_field", "operator": "equal", "operand": false } ] }
该规则的逻辑是:如果当前正处于代码片段的可编辑字段中,按下Tab优先跳转到下一个编辑位,只有不存在下一个编辑位的时候,Tab才会用来提交自动补全选项。
可选配置
如果需要禁用Enter键触发自动补全,可以在用户配置中额外添加一项:
"auto_complete_commit_on_enter": false
内容的提问来源于stack exchange,提问作者Skywave
相关产品推荐
相关产品推荐

