sublime text 自动闭合 html 标签需满足三条件:语法为 html、英文输入法、无插件劫持>键;推荐启用原生 emmet 的 auto_close_tag,或用 ctrl+shift+.(macos 为 cmd+shift+.)调用原生 close_tag 命令。

Sublime Text 默认不自动闭合 HTML 标签,所谓“速度提升十倍”不是靠装一堆插件,而是选对机制、关掉冲突项、用对快捷键——多数人卡在重复闭合、按>没反应、Tab 失效这三件事上。
为什么 > 没反应?检查三个硬条件
原生 auto_close_tags 默认是 false,开了也不一定生效,必须同时满足:
- 右下角状态栏显示的是
HTML(不是Plain text、XML或JavaScript);点它可手动切换 - 输入法必须是英文——中文输入法下按出的是全角「
>」,Sublime 收不到原始字符 - 没有其他插件劫持了
>键(比如某些 Snippet 或主题插件会拦截)
这三个条件漏一个,div> 后就永远等不来 。
Emmet 的 auto_close_tag 是最稳的启用方案
Sublime Text 4 ≥ v4126 已原生集成 Emmet,不用额外安装。它不依赖 > 键,靠 Tab 触发缩写展开,逻辑更可控:
- 打开
Preferences > Package Settings > Emmet > Settings,确保有"auto_close_tag": true - 输
div后按Tab→ 得到<div></div>;输ul>li*3+Tab→ 直接生成嵌套结构 - 该设置只对成对标签(
<p></p>、<section></section>)生效,<img>、<input>不补结束符——这是正确语义,别开auto_close_self_closing_tag - 如果
Tab没反应,先看右下角语法模式;.vue文件中只在<template></template>区域生效
Ctrl+Shift+.(Win/Linux)或 Cmd+Shift+.(macOS)是唯一不挑条件的补全方式
这个快捷键调用 Sublime 原生的 close_tag 命令,不走 Emmet、不校验语法、不依赖文件后缀:
- 光标放在
<section> 后、<code>前、甚至标签名中间,都能立刻补全对应闭合标签 - 哪怕文件后缀是
.inc或.shtml,右下角显示Plain text,它照样工作 - 它只补缺失的对应标签,不会动已有内容——比如你写了
<div>content,按它就补 <code>











