VS Code 1.69.0版本无法使用Emmet的"!"快捷键如何解决?
VS Code 1.69.0 Emmet
! 快捷生成功能失效修复方案 适用场景:除
!生成HTML基础骨架功能失效外,其余Emmet缩写快捷键均可正常使用,无需回退版本、重装软件,按以下步骤排查修复即可。
- 第一步:校验文件语言模式
查看VS Code右下角的语言模式标识,如果当前文件被识别为Plain Text或其他非HTML/对应模板语言,点选标识切换为HTML(vue文件切为Vue、jsx文件切为JavaScript React),再测试!触发生效情况。 - 第二步:核对基础Emmet配置
按Ctrl+,(macOS为Cmd+,)打开设置面板:- 搜索
Emmet: Trigger Expansion On Tab,勾选该选项,确保Tab键可触发Emmet缩写展开 - 搜索
Emmet: Exclude Languages,确认排除列表中没有html及你使用的模板语言项,存在则直接删除 - 若在vue、jsx等嵌入式场景使用,打开
settings.json添加如下配置,补全Emmet语言关联:
"emmet.includeLanguages": { "vue-html": "html", "javascript": "javascriptreact", "typescript": "typescriptreact" } - 搜索
- 第三步:修复1.69版本专属优先级冲突bug
该版本默认的提示排序规则会把普通文本建议放在Emmet建议前面,导致!输入后无法匹配到Emmet缩写:- 设置面板搜索
Editor: Snippet Suggestions,将值修改为top,让Emmet、代码片段类建议优先展示 - 若仍未生效,打开快捷键配置文件
keybindings.json,添加如下规则强制!场景优先触发Emmet展开:
{ "key": "tab", "command": "editor.emmet.action.expandAbbreviation", "when": "editorTextFocus && !editorHasSelection && editorTextModel.getWordUntilPosition().word == '!'" } - 设置面板搜索
- 临时快速触发方案:输入
!后如果没有弹出Emmet提示,直接按Ctrl+Space(macOS为Cmd+Space,注意和系统输入法快捷键冲突可自行修改)手动唤起建议列表,选中Emmet缩写项即可展开。 - 额外排查项:如果安装过第三方HTML补全、前端语法提示类插件,先禁用插件后重启VS Code测试,这类插件常会覆盖默认Emmet触发规则导致单功能失效。
内容的提问来源于stack exchange,提问作者Nitin Goswami
相关产品推荐
相关产品推荐

