Formatter
Biomeは、スタイル関する議論に終止符を打つことを目的とした「opinionated」なフォーマッタです。 Prettierと近い哲学を持ち、 スタイルに関する議論がBiomeのオプションに関する議論に発展するのを避けるために、いくつかのオプションのみをサポートしています。 チーム内での些細な議論を防ぎ、本当に重要なことに集中できるようにするために、新しいオプションを意図的に追加しないようにしています。
Biomeがサポートする、言語に依存しないオプションは以下の通りです。
- インデントスタイル(デフォルト:
tab):インデントにはスペースまたはタブを使用します - タブ幅(デフォルト:
2):インデントレベルごとのスペースの数です。 - 行幅(デフォルト:
80):Biomeがコードを折り返す列幅です。
特定の言語に対する他のフォーマットオプションも利用可能です。詳しくは設定オプションをご覧ください。
デフォルトでは、フォーマッタはコードをチェックし、差分がある場合はそれを報告します。
npx @biomejs/biome format ./srcpnpm exec biome format ./srcbunx --bun biome format ./srcdeno run -A npm:@biomejs/biome format ./srcyarn exec biome format ./src新しいフォーマットを適用する場合は、--writeオプションを使用してください。
npx @biomejs/biome format --write ./srcpnpm exec biome format --write ./srcbunx --bun biome format --write ./srcdeno run -A npm:@biomejs/biome format --write ./srcyarn exec biome format --write ./src利用可能なオプションを知りたい場合は、--helpフラグを使用してください。
npx @biomejs/biome format --helppnpm exec biome format --helpbunx --bun biome format --helpdeno run -A npm:@biomejs/biome format --helpyarn exec biome format --helpその他については、CLIのリファレンスを確認してください。
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", "trailingCommas": "all" } }, "json": { "formatter": { "trailingCommas": "none" } }}他のツールと違って、Biomeは言語ごとに関するオプションを設定することができます。
コードのフォーマットを無効にする
Section titled “コードのフォーマットを無効にする”フォーマットされたコードが理想的でない場合があります。
そのような場合は、フォーマットを抑制するコメントが使用できます。
// 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, ];Copyright (c) 2023-present Biome Developers and Contributors.