跳转到内容

语言支持

标记:

  • ✅:支持
  • 🚫:未在开发中
  • ⌛️:开发中
  • ⚠️:部分支持(可能带有警告)
语言解析格式化检查插件支持
[JavaScript](#JavaScript 支持)
[TypeScript](#TypeScript 支持)
JSX
TSX
JSON🚫
JSONC🚫
HTML⌛️⌛️🚫🚫
[Vue](#HTML 超级支持)⚠️⚠️⚠️🚫
[Svelte](#HTML 超级支持)⚠️⚠️⚠️🚫
[Astro](#HTML 超级支持)⚠️⚠️⚠️🚫
CSS✅️✅️✅️
YAML⌛️🚫🚫🚫
GraphQL✅️✅️✅️🚫
Markdown⌛️🚫🚫🚫
GritQL✅️✅️🚫🚫

Biome 支持 ES2024 标准并且仅支持官方语法。

我们的团队将在新语法到达 第三阶段 时进行开发。

Biome 支持 TypeScript 5.6。

JSONC 代表 “带有注释的JSON”。

这种格式因为其允许用户在配置文件中添加注释而被各种工具广泛使用,如 VS CodeTypeScriptBabel 等。

但是,由于 JSONC 不是一种严格定义的标准,因此不同工具在处理 JSONC 文件中的尾随逗号的方式存在一些差异。 为了适应这一点,Biome 没有为 JSONC 提供专门的语言配置。 相反,我们使用了 json.parser.allowCommentsjson.parser.allowTrailingCommasjson.formatter.trailingCommas 选项增强了 JSON 解析和格式化功能。 这种方法使 Biome 能够有效地支持 JSON 文件的不同变体。

对于扩展名为 .jsonc 或那些根据 语言标识符 被确定为 jsonc 的文件,Biome 会自动应用以下默认设置进行解析和格式化:

  • json.parser.allowComments: true
  • json.parser.allowTrailingCommas: true
  • json.formatter.trailingCommas: none

请注意,一些知名文件如 tsconfig.json.babelrc 不使用 .jsonc 扩展名,但仍允许注释和尾随逗号。 但一些其他的文件如 .eslintrc.json 只允许注释。Biome 能够识别这些文件并相应地调整 json.parser.allowTrailingCommas 选项以确保它们被正确解析。

文档 忽略或解析为其他格式的文件 会给出 Biome 可以识别的知名文件的完整列表。

在版本 1.6.0 时,这些语言是 部分 支持的。

随着时间的推移,Biome 会变得更好,并且它将提供更多选项来调整您的项目。 至于今天,仍有一些限制需要考虑:

  • 对于后缀为 .astro 的文件, 仅会格式化 文件支持的一部分。

  • 对于后缀为 .vue.svelte 的文件, 只有文件的 <script> 标签部分 支持。

  • 只显示 属于上述代码片段的诊断。

  • 格式化 .vue.svelte 文件,JavaScript 或 TypeScript 代码片段的缩进将从头开始(也就是从 0 格缩进开始)。

    file.vue
    <script>
    import Component from "./Component.vue";
    import Component from "./Component.vue";
    </script>
  • 检查 后缀为 .svelte.astro.vue 的文件时建议关闭一些规则,以防止因为我们的部分支持而误报错误。请使用 overrides 选项覆盖一些规则,如下:

    {
    "overrides": [
    {
    "includes": ["**/*.svelte", "**/*.astro", "**/*.vue"],
    "linter": {
    "rules": {
    "style": {
    "useConst": "off",
    "useImportType": "off"
    },
    "correctness": {
    "noUnusedVariables": "off",
    "noUnusedImports": "off"
    }
    }
    }
    }
    ]
    }