コンテンツにスキップ

Formatter

Biomeは、スタイル関する議論に終止符を打つことを目的とした「opinionated」なformatterです。 Prettierと近い哲学を持ち、 スタイルに関する議論がBiomeのオプションに関する議論に発展するのを避けるために、いくつかのオプションのみをサポートしています。 チーム内での些細な議論を防ぎ、本当に重要なことに集中できるようにするために、新しいオプションを意図的に追加しないようにしています。

Biomeがサポートする、言語に依存しないオプションは以下の通りです。

  • インデントスタイル (デフォルト: tab): インデントにはスペースまたはタブを使用します
  • タブ幅 (デフォルト: 2): インデントレベルごとのスペースの数です。
  • 行幅 (デフォルト: 80): Biomeがコードを折り返す列幅です。

特定の言語に対する他のformatオプションも利用可能です。詳しくは設定オプションをご覧ください。

デフォルトでは、formatterはコードをチェックし、差分がある場合はそれを報告します。

Terminal window
npx @biomejs/biome format ./src

新しいformatを適用する場合は、--writeオプションを使用してください。

Terminal window
npx @biomejs/biome format --write ./src

利用可能なオプションを知りたい場合は、--helpフラグを使用してください。

Terminal window
npx @biomejs/biome format --help

その他については、CLIのリファレンスを確認してください。

biome.jsonを使用して、フォーマッターを設定することができます。以下はデフォルトの設定です。

biome.json
{
"formatter": {
"enabled": true,
"formatWithErrors": false,
"ignore": [],
"attributePosition": "auto",
"indentStyle": "tab",
"indentWidth": 2,
"lineEnding": "lf",
"lineWidth": 80
},
"javascript": {
"formatter": {
"arrowParentheses":"always",
"bracketSameLine": false,
"bracketSpacing": true,
"jsxQuoteStyle": "double",
"quoteProperties": "asNeeded",
"semicolons": "always",
"trailingComma": "all"
}
},
"json": {
"formatter": {
"trailingCommas": "none"
}
}
}

他のツールと違って、Biomeは言語ごとに関するオプションを設定することができます。

コードのformatを無効にする

Section titled コードのformatを無効にする

formatされたコードが理想的でない場合があります。

そのような場合は、formatを抑制するコメントが使用できます。

// biome-ignore format: <説明文>

Example:

const expr =
// biome-ignore format: この配列はフォーマットさせない。
[
(2 * n) / (r - l),
0,
(r + l) / (r - l),
0,
0,
(2 * n) / (t - b),
(t + b) / (t - b),
0,
0,
0,
-(f + n) / (f - n),
-(2 * f * n) / (f - n),
0,
0,
-1,
0,
];