WebStorm 2026.1 Help

语言与引用注入

语言注入使您可以处理与文件主语言不同的编程语言的代码片段。

WebStorm 提供全面的语言支持,用于编辑 HTML、CSS、XML、JSON、RegExp 以及字符串和模板字面量中的其他代码片段,以及 XML 类语言中的标签和属性。

除了语言注入外, IDE 还支持引用注入,将字符串字面量视为对其他实体(例如类或文件)的引用。

添加语言注入

添加临时语言注入

  1. 将光标放在您希望注入语言的字符串、模板字面量、标签或属性中,然后按 Alt+Enter (或使用 意图操作 图标 意图操作图标)。

  2. 选择 注入语言或引用 ,然后选择您要注入的语言。

    临时注入 HTML 代码。},{

添加持久语言注入

使用语言注入注释(注解)来添加持久的已注入语言片段。

  • 当您注入一种语言时,WebStorm 会建议添加注解。 按 Alt+Enter 接受建议。

  • 在目标字符串文本前添加一个空行,并输入以下注释:

    language=<language_ID>

    对于注释,请使用您想要插入的语言的语法。 语言 ID 通常很直观,例如,SQL、RegExp、XML、HTML。

    您还可以在设置中了解 language ID。 按下 Ctrl+Alt+S 打开设置,然后选择 Editor | language Injections。 双击某语言的注入规则;语言 ID 已指定在 ID 字段。

  • (可选)在注释中包含前缀或后缀。

    // language=<language_ID> prefix=<prefix> suffix=<suffix>

    在以下情况下需要:

    • 该字符串是不完整/部分的 SQL 语句

    • 该字符串未直接用于我们支持的调用之一(例如 select /where)

编辑已注入的语言片段

WebStorm 允许您在专用编辑器中编辑注入的语言片段。

打开片段编辑器

  1. 将插入符置于注入的代码片段内,然后按 Alt+Enter (或使用 意图操作 图标 意图操作图标)。

  2. 请选择 编辑 <language ID> 片段

    WebStorm 将打开一个专用编辑器区域,用于编辑注入语言的代码。 此编辑器提供完整的编码辅助功能,包括代码补全、检查、 意图操作s 和代码风格操作。

注入引用

引用注入将字符串文字解释为指向其他文件的链接。

例如,任意字符串文字中的文件路径可以被视为对文件的引用。

添加临时引用注入

  1. 将文本光标置于您要注入引用的字符串或模板文字内,然后按 Alt+Enter (或使用 意图操作 图标 意图操作图标)。

  2. 选择 注入语言或引用 ,并选择一个选项,例如:

    • 文件引用 :向指定文件添加引用。

    根据您安装的插件,可能还会提供其他引用选项。

添加持久引用注入

使用注释添加持久引用注入。

  • 在目标字符串字面量之前添加一个空行,并输入带有所需值的 // language= 注释。

    • // language=file-reference 会向文件添加引用。

取消注入

  • 将光标放在代码片段上,按 Alt+Enter ,然后从列表中选择 取消注入语言或引用

    取消语言注入
  • 或者,只需删除注入注释即可。

禁用意图操作灯泡图标

请执行以下操作以隐藏编辑器中的意图操作图标 意图操作图标

  1. 按下 Ctrl+Alt+S 打开设置,然后选择 编辑器|常规|外观

  2. 清除 显示意图灯泡 复选框。

  3. 应用更改并关闭对话框。

配置自动注入规则

在 WebStorm 中,有一组预定义规则,根据这些规则,IDE 会在您的代码中的某些位置自动注入语言。

您可以在 Editor | Language Injections 设置页面&#xa0; Ctrl+Alt+S 上配置语言注入规则。

所有预定义的注入规则都配置为 内置 作用域。 换句话说,它们是全局的(因此在所有 WebStorm 项目中都可用)。 自定义规则可以配置为适用于 IDE,或仅适用于单个项目。 要更改自定义注入的作用域,请使用 移动到 Project/IDE 作用域按钮

要通过 VCS 共享自定义规则,请使用工具栏上的相应选项将其移动到 项目 作用域。 通过这样做,您将在 .idea 目录中创建一个名为 IntelliLang.xml 的新文件,其中包含您可以置于版本控制下的自定义规则。

语言注入设置

如果您不使用 VCS,您可以通过将规则导出到 XML 文件(点击工具栏上的 导出 )然后将其导入到另一个项目来分享您的规则。

要配置自定义注入规则,请点击 "添加"按钮 以添加新规则,或复制预定义规则并更改其设置。

配置自定义注入规则

  1. 请执行以下操作之一:

    • 要创建新规则,请点击工具栏上的 "添加"按钮 ,然后选择要应用规则的上下文。

      添加新规则
    • 要编辑现有规则,请选中它并点击工具栏上的 “编辑”按钮

      编辑规则
    • 要基于已有规则创建新规则,请选择基础规则,点击工具栏上的 复制按钮 ,选择复制项后,再点击工具栏上的 重复按钮

      复制规则

    语言注入设置。 对话框将打开。 对话框中的控件取决于所选注入类型。

  2. 指定要注入语言的 ID 或名称。

    可选,指定前缀和后缀,也就是在注入前后要添加的字符序列。 可能需要用它来包裹不完整的片段。 假设有以下代码段:

    const query = "SELECT * FROM users WHERE id = ?";

    可以将 选择 作为前缀、 ; 作为后缀进行注入。 或者,如果选择 JSON 作为注入语言,可以指定一对大括号 {} 作为前缀和后缀。

  3. 位置模式模板标签 字段中,根据规则类型,输入定义上下文规则,使 WebStorm 能将字面量识别为注入内容。 规则可以针对函数实参、变量初始值、对象属性、JSX 特性等。

    示例 1 - 任意 JavaScript 字符串实参

    psiParameter().withName("query")

    示例 2 - 标记模板

    psiElement(JSStringTemplateExpression)

    这些规则由 程序结构接口 (PSI) 模式 构建而成,实际上是内部 WebStorm 语言的方法的链式调用。 程序结构接口 (PSI) 按 WebStorm 的处理方式显示文件的结构。

    如果您正在编辑预定义的注入规则,模式已预先指定。 它们可确保高效与易用。 建议您依赖这些配置,而不是创建新的配置。

  4. 可选:

    高级 区域中,指定其他设置以收窄注入规则适用的上下文,从而对注入过程进行更细粒度的控制。

    • 值模式 字段中,输入确定将语言注入至何处上下文的正则表达式。 通过将模式的第一个捕获组用作注入目标,您可以将该过程配置为仅将语言注入匹配某一模式的值,或注入匹配该模式的多个部分。

      例如, ^javascript:(.*) 匹配可用于在超链接 href 中执行 JavaScript 代码的 javascript 协议。

    • 单个文件 - 如果此选项关闭,与值模式匹配的片段将被单独处理,视为不同的“文件”——例如,从片段编辑器的视角来看。

      如果该选项开启,相应的片段将全部合并在一起,形成一个单元,或 "file"。

      鉴于此数值模式

      xxx (.+) yyy (.+) zzz

      以及片段

      xxx select * yyy from family zzz,

      如果该选项关闭, select *from family 将被视为两个独立的片段(或 "文件")。 如果该选项开启, select * from family 将被视为一个单元,或 "文件"。

  5. 关于 XML 标记XML 特性注入规则,请参见 语言注入设置对话框:XML 标签注入语言注入设置对话框:XML 属性注入

2026年 5月 8日