You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VS Code中同时实现Smarty与HTML的自动缩进及语法高亮

VS Code混合Smarty与HTML缩进同时生效解决方案

你当前的问题根源是将html/htm文件全量关联为smarty语言类型后,VS Code仅加载Smarty扩展提供的缩进规则,未继承HTML原生的缩进逻辑,按以下步骤调整即可:

方法1:追加语言专属配置(优先推荐)

保留你现有的files.associations配置,在settings.json中追加以下内容:

"[smarty]": {
    "editor.defaultFormatter": "vscode.html-language-features",
    "editor.autoIndent": "full",
    "html.format.enable": true,
    "emmet.includeLanguages": {
        "smarty": "html"
    }
}
  • 该配置会让Smarty类型文件复用VS Code内置HTML语言的格式化、自动缩进、Emmet补全能力,同时不会影响Smarty扩展提供的语法高亮效果
  • 配置完成后重启VS Code即可生效,两种语法的缩进、高亮功能均可正常运行

若你同时使用Prettier作为全局格式化工具,需要额外追加配置避免冲突:

"prettier.documentSelectors": ["**/*.html", "**/*.htm", "**/*.tpl"]

方法2:更换适配性更好的Smarty扩展

如果上述配置不生效,可以卸载当前使用的Smarty Template Support扩展,更换为Jun Han开发的Smarty扩展,该扩展默认已经完成HTML特性继承,安装后保留你现有文件关联配置即可直接使用双语言的缩进、高亮能力。

内容的提问来源于stack exchange,提问作者klm123

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.25 02:27:02