設定
$schema
Section titled “$schema”JSONスキーマファイルへのパスを指定できます。
biome.json 用のJSONスキーマファイルを公開しています。
@biomejs/biome パッケージが node_modules フォルダにインストールされている場合、そのスキーマへの相対パスを指定できます。
{ "$schema": "./node_modules/@biomejs/biome/configuration_schema.json"}スキーマファイルの解決に問題がある場合は、このサイトで提供されているスキーマも使用できます。
{ "$schema": "https://biomejs.dev/schemas/2.3.11/schema.json"}extends
Section titled “extends”他のBiome設定ファイルへのパスのリストです。Biomeは extends リストに含まれるファイルの設定を解決して適用し、
最終的に biome.json/biome.jsonc ファイルに含まれるオプションを適用します。
拡張するパスの順序は、関連性の低いものから高いものへと進みます。
v2以降、このオプションは値 "//" に一致する必要がある文字列を受け入れます。これはモノレポを設定する際に使用できます。
この設定をルートとして扱うかどうかを指定します。デフォルトでは、すべての設定ファイルはデフォルトでルートと見なされます。
設定ファイルが「ネストされた設定」である場合、"root": false を設定する必要があります。そうしないとエラーがスローされます。
これは、BiomeがCLIとエディタで同時に複数のファイルを調整できるようにするために必要です。
デフォルト:
true
files.includes
Section titled “files.includes”処理の対象とするファイルを指定するglobパターンのリストです。 Biomeは、これらのパターンに一致するファイルやフォルダのみを処理します。
次の例は、 src フォルダ内の拡張子が .js のすべてのファイルに一致します。
{ "files": { "includes": ["src/**/*.js"] }}includes では否定パターンもサポートしています。
{ "files": { "includes": ["**", "!**/*.test.js", "**/special.test.js", "!test"] }}**により、すべてのフォルダ内のすべてのファイルを処理対象にする。- ただし、拡張子が
.test.jsのファイルは除外する。 - しかし、
special.test.jsは処理対象に戻す。 - ただし、
testという名前のフォルダ内にある場合は処理しない。
つまり、結果は以下の通りです。
src/app.jsは処理対象src/app.test.jsは処理対象外src/special.test.jsは処理対象test/special.test.jsは処理対象外
node_modules/ 内のファイルは、files.includes 設定に関係なく無視されることに注意してください。
スキャナーとの相互作用
Section titled “スキャナーとの相互作用”Biomeにはスキャナーがあり、ネストされた設定ファイルや .gitignore ファイルを検出します。また、
プロジェクトドメインの1つ以上のルールが有効になっている場合、ソースファイルをインデックス化することもできます。
スキャナーは files.includes と .gitignore ファイルからの無視パターンの両方を尊重しますが、注意すべき2つの例外があります:
biome.jsonや.gitignoreなどの特殊ファイルは、files.includesの無視パターンよりも優先されます。- プロジェクトドメインのルールが有効な場合、スキャナーはソースファイルとそのソースファイルの依存関係をインデックス化します。これは、
files.includesの一部として無視されるファイルでも、それらのファイルをインポートする他の含まれるファイルがある限り、スキャナーによってインデックス化される可能性があることを意味します。また、これはnode_modules/内の.d.tsファイルやpackage.jsonマニフェストもインデックス化される可能性があることを意味します。
スキャナーによって明示的に無視するファイルを強制したい場合は、
いわゆる force-ignore パターン を使用できます。force-ignoreパターンは通常の否定パターンのように見えますが、二重の感嘆符 (!!) で始まります。
例えば、次の設定を使用して、Biomeに任意の dist/ フォルダ内を決して見ないように指示できます:
{ "files": { "includes": ["**", "!!**/dist"] }}build/ や dist/ などの 出力 ファイルを含むフォルダには、force-ignore構文を使用することをお勧めします。このようなフォルダの場合、インデックス化が有用な利点を持つ可能性は極めて低いです。生成されたファイルを含むフォルダの場合、通常の無視パターンを使用することをお勧めします。これにより、ファイルから型情報を抽出できます。
明示的に無視したいネストされた biome.json ファイルや .gitignore ファイルについても、force-ignore構文を使用する必要があります。
files.ignoreUnknown
Section titled “files.ignoreUnknown”true の場合、Biomeは処理できないファイルに遭遇しても診断を出力しません。
{ "files": { "ignoreUnknown": true }}デフォルト:
false
files.maxSize
Section titled “files.maxSize”ソースコードファイルの最大許容サイズ(バイト単位)です。この制限を超えるファイルは、パフォーマンス上の理由から無視されます。
デフォルト:
1048576(1024*1024、1MB)
files.experimentalScannerIgnores
Section titled “files.experimentalScannerIgnores”スキャナーがクロール中に無視すべきリテラルパスセグメントの配列です。無視されたファイルはインデックス化されません。つまり、これらのファイルはモジュールグラフの一部にならず、それらから型が推論されません。
BiomeをVCS(バージョン管理システム)ソフトウェアと統合するためのプロパティのセットです。
vcs.enabled
Section titled “vcs.enabled”BiomeがVCSクライアントと統合するかどうかを指定します。
デフォルト:
false
vcs.clientKind
Section titled “vcs.clientKind”VCSクライアントの種類を指定します。
値:
"git"
vcs.useIgnoreFile
Section titled “vcs.useIgnoreFile”BiomeがVCSの除外ファイルを使用するかどうかを指定します。true に設定すると、Biomeは除外ファイルに指定されたファイルを無視します。
vcs.root
Section titled “vcs.root”BiomeがVCSファイルを探すフォルダを指定します。デフォルトでは、Biomeは biome.json が見つかったフォルダを使用します。
もしBiomeが設定を見つけられない場合、現在の作業ディレクトリを使用しようとします。現在の作業ディレクトリも見つからない場合、BiomeはVCS統合を使用せず、診断情報が出力されます。
vcs.defaultBranch
Section titled “vcs.defaultBranch”プロジェクトのメインブランチです。Biomeは、変更されたファイルを評価する際にこのブランチを使用します。
linter
Section titled “linter”linter.enabled
Section titled “linter.enabled”Biomeのリンタを有効にします。
デフォルト:
true
linter.includes
Section titled “linter.includes”リントするファイルのglobパターンのリストです。
次の例は、src フォルダ内の .js 拡張子を持つすべてのファイルをリントします:
{ "linter": { "includes": ["src/**/*.js"] }}* は フォルダ内のすべてのファイル に一致し、** は フォルダ内のすべてのファイルとサブフォルダを再帰的に 一致させます。globの詳細については、
glob構文リファレンスを参照してください。
includes は、例外である否定パターンもサポートしています。これらは ! で始まるパターンで、Biomeに否定パターンに一致するファイルを除く すべて のファイルを処理するように指示するために使用できます。
例外は順番に処理されるため、例外の例外を指定できます。
次の例を考えてみましょう:
{ "linter": { "includes": ["**", "!**/*.test.js", "**/special.test.js"] }}この例は次のことを指定しています:
**パターンのおかげで、すべての(サブ)フォルダ内のすべてのファイルがリントされます。..- … ただし、それらのファイルが
.test.js拡張子を持つ場合は除きます。.. - … しかし、ファイル
special.test.tsは まだ リントされます。
つまり:
src/app.jsはリントされます。src/app.test.jsはリントされません。src/special.test.jsはリントされます。
linter.includes は files.includes の 後に 適用されることに注意してください。これは、files.includes に一致しないファイルは、もはや linter.includes に一致できないことを意味します。これは、次の例が機能しないことを意味します:
{ "files": { "includes": "src/**" }, "linter": { // これは files.includes と重複がないため何も一致しません: "includes": "scripts/**" }}linter.includes が指定されていない場合、files.includes に一致するすべてのファイルがリントされます。
linter.rules.recommended
Section titled “linter.rules.recommended”すべてのグループに対して推奨ルールを有効にします。
デフォルト:
true
linter.rules.[group]
Section titled “linter.rules.[group]”単一のグループのルールに影響を与えるオプションです。Biomeは次のグループをサポートしています。
- accessibility: アクセシビリティの問題を防ぐためのルール。
- complexity: より簡潔に記述できる可能性のある複雑なコードを見つけるためのルール。
- correctness: 間違っているか、不要なコードを検出するルール。
- nursery: まだ開発中の新しいルール。バグやパフォーマンスの問題が残っている可能性があるため、安定バージョンにおいては設定で明示的に有効化する必要があります。nightlyビルドではデフォルトで有効ですが、これらは不安定であるため、安定化する際に推奨ルールとなるかに応じて診断の重大度がエラーまたは警告に設定されることがあります。これらのルールは安定化して他のグループへ昇格されるか、削除されます。このグループに属するルールはセマンティックバージョンの対象ではありません。
- performance: より速く、または効率的に実行できる可能性のあるコードを見つけるルール。
- security: 潜在的なセキュリティ上の欠陥を検出するルール。
- style: 一貫性があり、慣用的なコードスタイルを強制するルール。
- suspicious: 間違っているか、不要な可能性のあるコードを検出するルール。
それぞれのグループは値として、重大度を表す文字列か、設定可能な各ルールのオブジェクトを受け入れます。
重大度を渡すときは、グループに属するすべてのルールに対して重大度を設定できます。
例えば、a11y グループは情報の診断を出力するように設定できます:
{ "linter": { "rules": { "a11y": "info" } }}以下が許容される値です:
"on": グループに属する各ルールは、デフォルトの重大度で診断を出力します。ルールのドキュメントを参照するか、explainコマンドを利用してください:Terminal window biome explain noDebugger"off": グループに属するすべてのルールは診断を出力しません。"info": グループに属するすべてのルールは 重大度が情報の診断 を出力します。"warn": グループに属するすべてのルールは 重大度が警告の診断 を出力します。"error": グループに属するすべてのルールは 重大度がエラーの診断 を出力します。
linter.rules.[group].recommended
Section titled “linter.rules.[group].recommended”特定のグループに対して推奨されるルールを有効にします。
例:
{ "linter": { "enabled": true, "rules": { "nursery": { "recommended": true } } }}assist
Section titled “assist”assist.enabled
Section titled “assist.enabled”Biomeのアシスト機能を有効にします。
デフォルト:
true
assist.includes
Section titled “assist.includes”解析するファイルのglobパターンのリストです。
次の例は、src フォルダ内の .js 拡張子を持つすべてのファイルを解析します:
{ "assist": { "includes": ["src/**/*.js"] }}* は フォルダ内のすべてのファイル に一致し、** は フォルダ内のすべてのファイルとサブフォルダを再帰的に 一致させます。globの詳細については、
glob構文リファレンスを参照してください。
includes は、例外である否定パターンもサポートしています。これらは ! で始まるパターンで、Biomeに否定パターンに一致するファイルを除く すべて のファイルを処理するように指示するために使用できます。
例外は順番に処理されるため、例外の例外を指定できます。
次の例を考えてみましょう:
{ "assist": { "includes": ["**", "!**/*.test.js", "**/special.test.js"] }}この例は次のことを指定しています:
**パターンのおかげで、すべての(サブ)フォルダ内のすべてのファイルが解析されます。..- … ただし、それらのファイルが
.test.js拡張子を持つ場合は除きます。.. - … しかし、ファイル
special.test.jsは まだ 解析されます。
つまり:
src/app.jsは解析されます。src/app.test.jsは解析されません。src/special.test.jsは解析されます。
assist.includes は files.includes の 後に 適用されることに注意してください。これは、files.includes に一致しないファイルは、もはや assist.includes に一致できないことを意味します。これは、次の例が機能しないことを意味します:
{ "files": { "includes": "src/**" }, "assist": { // これは files.includes と重複がないため何も一致しません: "includes": "scripts/**" }}assist.includes が指定されていない場合、files.includes に一致するすべてのファイルがリントされます。
assist.actions.recommended
Section titled “assist.actions.recommended”すべてのグループの推奨アクションを有効にします。
assist.actions.[group]
Section titled “assist.actions.[group]”単一グループのルールに影響を与えるオプションです。Biomeは次のグループをサポートしています:
- source: このグループは、保存時にドキュメントに安全に適用できるアクションを表します。これらのアクションは一般的にすべて安全で、通常はプログラムの機能を変更しません。
assist.actions.[group].recommended
Section titled “assist.actions.[group].recommended”単一グループの推奨ルールを有効にします。
例:
{ "assist": { "enabled": true, "actions": { "source": { "recommended": true } } }}formatter
Section titled “formatter”これらのオプションはすべての言語に適用されます。 下記には、言語固有のフォーマッタオプションが追加で記載されています。
formatter.enabled
Section titled “formatter.enabled”Biomeのフォーマッタを有効にします。
デフォルト:
true
formatter.includes
Section titled “formatter.includes”フォーマットするファイルのglobパターンのリストです。
次の例は、src フォルダ内の .js 拡張子を持つすべてのファイルをフォーマットします:
{ "formatter": { "includes": ["src/**/*.js"] }}* は フォルダ内のすべてのファイル に一致し、** は フォルダ内のすべてのファイルとサブフォルダを再帰的に 一致させます。globの詳細については、
glob構文リファレンスを参照してください。
includes は、例外である否定パターンもサポートしています。これらは ! で始まるパターンで、Biomeに否定パターンに一致するファイルを除く すべて のファイルを処理するように指示するために使用できます。
例外は順番に処理されるため、例外の例外を指定できます。
次の例を考えてみましょう:
{ "formatter": { "includes": ["**", "!**/*.test.js", "**/special.test.js"] }}この例は次のことを指定しています:
**パターンのおかげで、すべての(サブ)フォルダ内のすべてのファイルがフォーマットされます。..- … ただし、それらのファイルが
.test.js拡張子を持つ場合は除きます。.. - … しかし、ファイル
special.test.tsは まだ フォーマットされます。
つまり:
src/app.jsはフォーマットされます。src/app.test.jsはフォーマットされません。src/special.test.jsはフォーマットされます。
formatter.includes は files.includes の 後に 適用されることに注意してください。これは、files.includes に一致しないファイルは、もはや formatter.includes に一致できないことを意味します。これは、次の例が機能しないことを意味します:
{ "files": { "includes": "src/**" }, "formatter": { // これは files.includes と重複がないため何も一致しません: "includes": "scripts/**" }}formatter.includes が指定されていない場合、files.includes に一致するすべてのファイルがフォーマットされます。
formatter.formatWithErrors
Section titled “formatter.formatWithErrors”構文エラーがあるドキュメントをフォーマットできるようにします。
{ "formatter": { "formatWithErrors": true }}デフォルト:
false
formatter.indentStyle
Section titled “formatter.indentStyle”インデントのスタイルです。 "tab" または "space" のいずれかを指定できます。
デフォルト:
"tab"
formatter.indentWidth
Section titled “formatter.indentWidth”インデントのサイズを指定します。
デフォルト:
2
formatter.lineEnding
Section titled “formatter.lineEnding”改行コードの種類を指定します。
"lf": Line Feedのみ (\n)、LinuxやmacOS、またはgitリポジトリ内で一般的です。"crlf": Carriage Return + Line Feed文字 (\r\n)、Windowsで一般的です。"cr": Carriage Return文字のみ (\r)、非常にまれに使用されます。
デフォルト:
"lf"
formatter.lineWidth
Section titled “formatter.lineWidth”1行に書き込むことができる文字数を指定します。
デフォルト:
80
formatter.attributePosition
Section titled “formatter.attributePosition”HTML系言語の属性位置スタイルを指定します。
"auto"、属性は自動的にフォーマットされ、特定の基準に達したときのみ複数行に折り返されます。"multiline"、属性が2つ以上使用されている場合、複数行に折り返されます。
デフォルト:
"auto"
formatter.bracketSpacing
Section titled “formatter.bracketSpacing”括弧と内部の値の間にスペースを追加するかどうかを指定します。
デフォルト:
true
formatter.expand
Section titled “formatter.expand”配列とオブジェクトを複数行に展開するかどうかを指定します。
"auto"、オブジェクトリテラルは最初のプロパティに改行がある場合は複数行にフォーマットされ、 配列リテラルは行に収まる場合は単一行にフォーマットされます。"always"、これらのリテラルはリストの長さに関係なく複数行にフォーマットされます。"never"、これらのリテラルは行に収まる場合は単一行にフォーマットされます。
package.json をフォーマットする場合、別途設定されない限りBiomeは always を使います。
デフォルト:
"auto"
formatter.trailingNewline
Section titled “formatter.trailingNewline”ファイルの末尾に改行を追加するかどうかを指定します。
デフォルト: true
formatter.useEditorconfig
Section titled “formatter.useEditorconfig”Biomeが .editorconfig ファイルを使用してフォーマットオプションを決定するかどうかを指定します。
設定ファイル .editorconfig と biome.json は次のルールに従います:
biome.jsonのフォーマット設定は常に.editorconfigファイルより優先されます。biome.jsonファイルよりも階層の上位に存在する.editorconfigファイルは既に無視されます。これは、誰かのホームディレクトリからフォーマット設定をbiome.jsonファイルを持つプロジェクトにロードすることを避けるためです。- ネストされた
.editorconfigファイルは現在サポートされていません。
デフォルト:
false
organizeImports
Section titled “organizeImports”organizeImports.enabled
Section titled “organizeImports.enabled”Biomeのインポートのソート機能を有効にします。
デフォルト:
true
organizeImports.ignore
Section titled “organizeImports.ignore”Biomeは、パターンに一致するファイルやフォルダを無視します。 Unixシェル形式のパターンのリストで指定します。
{ "organizeImports": { "ignore": ["scripts/*.js"] }}organizeImports.include
Section titled “organizeImports.include”Biomeは、これらのパターンに一致するファイルやフォルダのみを処理します。 Unixシェル形式のパターンのリストで指定します。
{ "organizeImports": { "include": ["scripts/*.js"] }}例えば、下記のような指定を考えます。
{ "organizeImports": { "include": ["scripts/**/*.js", "src/**/*.js"], "ignore": ["scripts/**/*.js"] }}パターン src/**/*.js に一致するファイルのみが処理され、パターン scripts/**/*.js に一致するファイルは無視されます。
javascript
Section titled “javascript”これらのオプションは、JavaScript(およびTypeScript)ファイルにのみ適用されます。
javascript.parser.unsafeParameterDecoratorsEnabled
Section titled “javascript.parser.unsafeParameterDecoratorsEnabled”安全でない/実験的なパラメータデコレーターをサポートするようにします。
{ "javascript": { "parser": { "unsafeParameterDecoratorsEnabled": true } }}デフォルト:
false
javascript.parser.jsxEverywhere
Section titled “javascript.parser.jsxEverywhere”true に設定すると、.js ファイルの中でJSX文法をパースすることを許可します。
false に設定すると、.js ファイルの中でJSX文法に遭遇したときにBiomeは診断を出力します。
デフォルト:
true
{ "javascript": { "parser": { "jsxEverywhere": false } }}javascript.formatter.quoteStyle
Section titled “javascript.formatter.quoteStyle”文字列リテラルを表現する際に使用する引用符の種類です。 "single" または "double" のいずれかを指定できます。
デフォルト:
"double"
javascript.formatter.jsxQuoteStyle
Section titled “javascript.formatter.jsxQuoteStyle”JSXの文字列リテラルを表現する際に使用する引用符の種類です。 "single" または "double" のいずれかを指定できます。
デフォルト:
"double"
{ "javascript": { "formatter": { "jsxQuoteStyle": "single" } }}javascript.formatter.quoteProperties
Section titled “javascript.formatter.quoteProperties”オブジェクト内のプロパティをいつ引用符で囲むかを指定します、。 "asNeeded" または "preserve" のいずれかを選択できます。
デフォルト:
"asNeeded"
{ "javascript": { "formatter": { "quoteProperties": "preserve" } }}javascript.formatter.trailingCommas
Section titled “javascript.formatter.trailingCommas”複数行のカンマ区切りの構文構造で、可能な限り末尾カンマを追加します。可能な値は次の通りです。
"all": 末尾カンマが常に追加されます。"es5": 末尾カンマが、古いバージョンのJavaScriptでサポートされている場所にのみ追加されます。"none": 末尾カンマは決して追加されません。
デフォルト:
"all"
javascript.formatter.semicolons
Section titled “javascript.formatter.semicolons”フォーマッタがセミコロンを出力する場所を指定します。
"always": 各ステートメントの末尾に常にセミコロンが追加されます。"asNeeded": セミコロンは必要な場所にのみ追加され、ASIから保護します。
デフォルト:
"always"
例:
{ "javascript": { "formatter": { "semicolons": "asNeeded" } }}javascript.formatter.arrowParentheses
Section titled “javascript.formatter.arrowParentheses”アロー関数に不要な括弧を追加するかどうかを指定します:
"always": 括弧が常に追加されます。"asNeeded": 必要な場合にのみ括弧が追加されます。
デフォルト:
"always"
javascript.formatter.enabled
Section titled “javascript.formatter.enabled”JavaScript(およびその拡張言語)ファイル用のBiomeフォーマッタを有効にします。
デフォルト
true
javascript.formatter.indentStyle
Section titled “javascript.formatter.indentStyle”JavaScript(およびその拡張言語)ファイルのインデントスタイルです。 "tab" または "space" のいずれかを指定できます。
デフォルト:
"tab"
javascript.formatter.indentWidth
Section titled “javascript.formatter.indentWidth”JavaScript(およびその拡張言語)ファイルのインデントサイズを指定します。
デフォルト:
2
javascript.formatter.lineEnding
Section titled “javascript.formatter.lineEnding”JavaScript(およびその拡張言語)ファイルの改行コードの種類を指定します。
"lf": Line Feedのみ (\n)、LinuxやmacOS、またはgitリポジトリ内で一般的です。"crlf": Carriage Return + Line Feed文字 (\r\n)、Windowsで一般的です。"cr": Carriage Return文字のみ (\r)、非常にまれに使用されます。
デフォルト:
"lf"
javascript.formatter.lineWidth
Section titled “javascript.formatter.lineWidth”JavaScript(およびその拡張言語)ファイルの行の文字数を指定します。
デフォルト:
80
javascript.formatter.bracketSameLine
Section titled “javascript.formatter.bracketSameLine”複数行のJSX要素の終了タグ > を最後の属性行に配置するかどうかを指定します。
デフォルト:
false
javascript.formatter.bracketSpacing
Section titled “javascript.formatter.bracketSpacing”括弧と内部の値の間にスペースを追加するかどうかを指定します。
デフォルト:
true
javascript.formatter.attributePosition
Section titled “javascript.formatter.attributePosition”JSX要素における属性の位置スタイルを指定します。
"auto": 属性は自動的にフォーマットされ、特定の基準に達したときのみ複数行に折り返されます。"multiline": 属性は常に複数行でフォーマットされます。
デフォルト:
"auto"
javascript.formatter.expand
Section titled “javascript.formatter.expand”配列とオブジェクトのリテラルを複数行に展開するかどうかを指定します。
"auto": オブジェクトリテラルは最初のプロパティに改行があれば複数行にフォーマットされ、配列リテラルは行に収まる場合は単一行にフォーマットされます。"always": これらのリテラルは長さを問わず複数行にフォーマットされます。"never": これらのリテラルは行に収まる場合は単一行にフォーマットされます。
デフォルト:
"auto"
javascript.globals
Section titled “javascript.globals”Biomeが無視すべきグローバル名前のリストです。
{ "javascript": { "globals": ["$", "_", "externalVariable"] }}javascript.jsxRuntime
Section titled “javascript.jsxRuntime”JSXを解釈するために使用されるランタイムまたは変換のタイプを示します。
"transparent"— 特別な処理がBiomeによって必要ない、モダンまたはネイティブなJSX環境を示します。"reactClassic"—Reactインポートが必要な古いReact環境を示します。TypeScriptのtsconfig.jsonにおけるjsxオプションのreact値に対応します。
{ "javascript": { "jsxRuntime": "reactClassic" }}古いJSXランタイムと新しいJSXランタイムについての詳細は、以下をご覧ください。 https://legacy.reactjs.org/blog/2020/09/22/introducing-the-new-jsx-transform.html
デフォルト:
"transparent"
javascript.linter.enabled
Section titled “javascript.linter.enabled”JavaScript(およびその拡張言語)ファイル用のBiomeリンタを有効にします。
デフォルト:
true
{ "javascript": { "linter": { "enabled": false } }}javascript.assist.enabled
Section titled “javascript.assist.enabled”JavaScript(およびその拡張言語)ファイル用のBiomeアシストを有効にします。
デフォルト:
true
{ "javascript": { "assist": { "enabled": false } }}javascript.experimentalEmbeddedSnippetsEnabled
Section titled “javascript.experimentalEmbeddedSnippetsEnabled”JavaScript(およびその拡張言語)ファイル内の埋め込み言語スニペットのパースとフォーマットを有効にします。
デフォルト:
false
{ "javascript": { "experimentalEmbeddedSnippetsEnabled": true }}JSONファイルに適用されるオプションです。
json.parser.allowComments
Section titled “json.parser.allowComments”JSONファイル内のコメントの解析を有効にします。
{ "json": { "parser": { "allowComments": true } }}json.parser.allowTrailingCommas
Section titled “json.parser.allowTrailingCommas”JSONファイル内の末尾カンマの解析を有効にします。
{ "json": { "parser": { "allowTrailingCommas": true } }}json.formatter.enabled
Section titled “json.formatter.enabled”JSON(およびその拡張言語)ファイル用のBiomeフォーマッタを有効にします。
デフォルト:
true
{ "json": { "formatter": { "enabled": false } }}json.formatter.indentStyle
Section titled “json.formatter.indentStyle”JSON(およびその拡張言語)ファイルのインデントスタイルです。 "tab" または "space" のいずれかを指定できます。
デフォルト:
"tab"
json.formatter.indentWidth
Section titled “json.formatter.indentWidth”JSON(およびその拡張言語)ファイルのインデントサイズを指定します。
デフォルト:
2
json.formatter.lineEnding
Section titled “json.formatter.lineEnding”JSON(およびその拡張言語)ファイルの改行コードの種類を指定します。
"lf": Line Feedのみ (\n)、LinuxやmacOS、またはgitリポジトリ内で一般的です。"crlf": Carriage Return + Line Feed文字 (\r\n)、Windowsで一般的です。"cr": Carriage Return文字のみ (\r)、非常にまれに使用されます。
デフォルト:
"lf"
json.formatter.lineWidth
Section titled “json.formatter.lineWidth”JSON(およびその拡張言語)ファイルの行の文字数を指定します。
デフォルト:
80
json.formatter.trailingCommas
Section titled “json.formatter.trailingCommas”複数行のカンマ区切りの構文構造で、可能な限り末尾カンマを追加します。
許可される値は次の通りです。
"none": 末尾カンマは削除されます。"all": 末尾カンマは保持され、推奨されます。
デフォルト:
"none"
json.formatter.bracketSpacing
Section titled “json.formatter.bracketSpacing”括弧と内部の値の間にスペースを追加するかどうかを指定します。
デフォルト:
true
json.formatter.expand
Section titled “json.formatter.expand”配列とオブジェクトのリテラルを複数行に展開するかどうかを指定します。
"auto": オブジェクトリテラルは最初のプロパティに改行があれば複数行にフォーマットされ、配列リテラルは行に収まる場合は単一行にフォーマットされます。"always": これらのリテラルは長さを問わず複数行にフォーマットされます。"never": これらのリテラルは行に収まる場合は単一行にフォーマットされます。
package.json をフォーマットする場合、別途設定されない限りBiomeは always を使います。
デフォルト:
"auto"
json.linter.enabled
Section titled “json.linter.enabled”JSON(およびその拡張言語)ファイル用のBiomeのリンタを有効にします。
デフォルト:
true
{ "json": { "linter": { "enabled": false } }}json.assist.enabled
Section titled “json.assist.enabled”JSON(およびその拡張言語)ファイル用のBiomeのアシストを有効にします。
デフォルト:
true
{ "json": { "assist": { "enabled": false } }}CSSファイルに適用されるオプションです。
css.parser.cssModules
Section titled “css.parser.cssModules”CSS modules の解析を有効にします。
デフォルト:
false
css.parser.tailwindDirectives
Section titled “css.parser.tailwindDirectives”Tailwind 固有の構文(@theme、@utility、@apply など)の解析を有効にします。
デフォルト:
false
css.formatter.enabled
Section titled “css.formatter.enabled”CSSファイル用のBiomeのフォーマッタを有効にします。
デフォルト:
false
{ "css": { "formatter": { "enabled": false } }}css.formatter.indentStyle
Section titled “css.formatter.indentStyle”CSSファイルのインデントスタイルです。 "tab" または "space" のいずれかを指定できます。
デフォルト:
"tab"
css.formatter.indentWidth
Section titled “css.formatter.indentWidth”CSSファイルのインデントサイズを指定します。
デフォルト:
2
css.formatter.lineEnding
Section titled “css.formatter.lineEnding”CSSファイルの改行コードの種類を指定します。
"lf": Line Feedのみ (\n)、LinuxやmacOS、またはgitリポジトリ内で一般的です。"crlf": Carriage Return + Line Feed文字 (\r\n)、Windowsで一般的です。"cr": Carriage Return文字のみ (\r)、非常にまれに使用されます。
デフォルト:
"lf"
css.formatter.lineWidth
Section titled “css.formatter.lineWidth”CSSファイルの行の文字数を指定します。
デフォルト:
80
css.formatter.quoteStyle
Section titled “css.formatter.quoteStyle”文字列リテラルを表現する際に使用する引用符の種類です。 "single" または "double" のいずれかを指定できます。
デフォルト:
"double"
css.formatter.trailingNewline
Section titled “css.formatter.trailingNewline”ファイルの末尾に改行を追加するかどうかを指定します。
デフォルト: true
css.linter.enabled
Section titled “css.linter.enabled”CSSファイル用のBiomeのリンタを有効にします。
デフォルト:
true
{ "css": { "linter": { "enabled": false } }}css.assist.enabled
Section titled “css.assist.enabled”CSSファイル用のBiomeのアシストを有効にします。
デフォルト:
true
{ "css": { "assist": { "enabled": false } }}graphql
Section titled “graphql”GraphQLファイルに適用されるオプションです。
graphql.formatter.enabled
Section titled “graphql.formatter.enabled”GraphQLファイル用のBiomeのフォーマッタを有効にします。
デフォルト:
false
graphql.formatter.indentStyle
Section titled “graphql.formatter.indentStyle”GraphQLファイルのインデントスタイルです。 "tab" または "space" のいずれかを指定できます。
デフォルト:
"tab"
graphql.formatter.indentWidth
Section titled “graphql.formatter.indentWidth”GraphQLファイルのインデントサイズを指定します。
デフォルト:
2
graphql.formatter.lineEnding
Section titled “graphql.formatter.lineEnding”GraphQLファイルの改行コードの種類を指定します。
"lf": Line Feedのみ (\n)、LinuxやmacOS、またはgitリポジトリ内で一般的です。"crlf": Carriage Return + Line Feed文字 (\r\n)、Windowsで一般的です。"cr": Carriage Return文字のみ (\r)、非常にまれに使用されます。
デフォルト:
"lf"
graphql.formatter.lineWidth
Section titled “graphql.formatter.lineWidth”GraphQLファイルの行の文字数を指定します。
デフォルト:
80
graphql.formatter.quoteStyle
Section titled “graphql.formatter.quoteStyle”文字列リテラルを表現する際に使用する引用符の種類です。 "single" または "double" のいずれかを指定できます。
デフォルト:
"double"
graphql.formatter.trailingNewline
Section titled “graphql.formatter.trailingNewline”ファイルの末尾に改行を追加するかどうかを指定します。
デフォルト: true
graphql.linter.enabled
Section titled “graphql.linter.enabled”GraphQLファイル用のBiomeのリンタを有効にします。
デフォルト:
true
graphql.assist.enabled
Section titled “graphql.assist.enabled”GraphQLファイル用のBiomeのアシストを有効にします。
デフォルト:
true
Gritファイルに適用されるオプションです。
grit.formatter.enabled
Section titled “grit.formatter.enabled”Gritファイル用のBiomeのフォーマッタを有効にします。
デフォルト:
false
grit.formatter.indentStyle
Section titled “grit.formatter.indentStyle”Gritファイルのインデントスタイルです。 "tab" または "space" のいずれかを指定できます。
デフォルト:
"tab"
grit.formatter.indentWidth
Section titled “grit.formatter.indentWidth”Gritファイルのインデントサイズを指定します。
デフォルト:
2
grit.formatter.lineEnding
Section titled “grit.formatter.lineEnding”Gritファイルの改行コードの種類を指定します。
"lf": Line Feedのみ (\n)、LinuxやmacOS、またはgitリポジトリ内で一般的です。"crlf": Carriage Return + Line Feed文字 (\r\n)、Windowsで一般的です。"cr": Carriage Return文字のみ (\r)、非常にまれに使用されます。
デフォルト:
"lf"
grit.formatter.lineWidth
Section titled “grit.formatter.lineWidth”Gritファイルの行の文字数を指定します。
デフォルト:
80
grit.formatter.quoteStyle
Section titled “grit.formatter.quoteStyle”文字列リテラルを表現する際に使用する引用符の種類です。 "single" または "double" のいずれかを指定できます。
デフォルト:
"double"
grit.formatter.trailingNewline
Section titled “grit.formatter.trailingNewline”ファイルの末尾に改行を追加するかどうかを指定します。
デフォルト: true
grit.linter.enabled
Section titled “grit.linter.enabled”Gritファイル用のBiomeのリンタを有効にします。
デフォルト:
true
{ "grit": { "linter": { "enabled": false } }}grit.assist.enabled
Section titled “grit.assist.enabled”Gritファイル用のBiomeのアシストを有効にします。
デフォルト:
true
{ "grit": { "assist": { "enabled": false } }}html.experimentalFullSupportEnabled
Section titled “html.experimentalFullSupportEnabled”有効にすると、BiomeはHTML系言語(Vue、Svelte、Astroファイル)の完全サポートを有効にします。これらのファイル内の埋め込み言語のパース、フォーマット、リントは一貫しています。
無効にすると、BiomeはこれらのファイルのJavaScript/TypeScript部分のみを解析用に抽出し、残りのコンテンツは無視します。
html.parser.interpolation
Section titled “html.parser.interpolation”.html ファイル内の {{ expression }} のような二重テキスト式のパースを有効にします。
デフォルト:
false
html.formatter.enabled
Section titled “html.formatter.enabled”HTMLファイル用のBiomeのフォーマッタを有効にします。
デフォルト:
false
html.formatter.indentStyle
Section titled “html.formatter.indentStyle”HTMLファイルのインデントスタイルです。 "tab" または "space" のいずれかを指定できます。
デフォルト:
"tab"
html.formatter.indentWidth
Section titled “html.formatter.indentWidth”HTMLファイルのインデントサイズを指定します。
デフォルト:
2
html.formatter.lineEnding
Section titled “html.formatter.lineEnding”HTMLファイルの改行コードの種類を指定します。
"lf": Line Feedのみ (\n)、LinuxやmacOS、またはgitリポジトリ内で一般的です。"crlf": Carriage Return + Line Feed文字 (\r\n)、Windowsで一般的です。"cr": Carriage Return文字のみ (\r)、非常にまれに使用されます。
デフォルト:
"lf"
html.formatter.lineWidth
Section titled “html.formatter.lineWidth”HTMLファイルの行の文字数を指定します。
デフォルト:
80
html.formatter.attributePosition
Section titled “html.formatter.attributePosition”HTML要素の属性位置スタイルを指定します。
"auto"、属性は自動的にフォーマットされ、特定の基準に達したときのみ複数行に折り返されます。"multiline"、属性が2つ以上使用されている場合、複数行に折り返されます。
デフォルト:
"auto"
html.formatter.bracketSameLine
Section titled “html.formatter.bracketSameLine”複数行のHTMLタグの閉じ括弧を、最後の行の末尾に配置するか、次の行に単独で配置するかを指定します。
デフォルト:
false
html.formatter.whitespaceSensitivity
Section titled “html.formatter.whitespaceSensitivity”HTML(およびその拡張言語)をフォーマットする際に、空白の重要性を考慮するかどうかを指定します。
デフォルト: “css”
-
"css": フォーマッタは、ブラウザのユーザーエージェントスタイルシートでデフォルトで “inline” 表示スタイルを持つ要素の空白を重要と見なします。 -
"strict": コンテンツ内の先頭と末尾の空白は、すべての要素にとって重要と見なされます。空白が存在する場合、フォーマッタは少なくとも1つの空白文字を残す必要があります。 そうでない場合、空白がない場合は、
>の後や<の前に空白を追加しないでください。つまり、空白がない場合、テキストコンテンツはタグに密着する必要があります。タグに密着するテキストの例:
<b>content</b> -
"ignore": 空白は重要ではないと見なされます。フォーマッタは適切と判断したときに空白を削除または追加できます。
html.formatter.indentScriptAndStyle
Section titled “html.formatter.indentScriptAndStyle”2.3以降:.vue および .svelte ファイルにのみ影響します
VueおよびSvelteファイルの <script> および <style> タグのコンテンツをインデントするかどうかを指定します。現在、これはプレーンなHTMLファイルには適用されません。
デフォルト:
false
trueの場合、<script> および <style> タグのコンテンツは、タグに対して1レベルインデントされます。
<script>import Bar from "./Bar.vue"; import Bar from "./Bar.vue";</script>html.formatter.selfCloseVoidElements
Section titled “html.formatter.selfCloseVoidElements”void要素を自己閉じタグにするかどうかを指定します。デフォルトはneverです。
デフォルト:
"never"
"never": void要素内のスラッシュ/はフォーマッタによって削除されます。"always": void要素内のスラッシュ/は常に追加されます。
html.formatter.trailingNewline
Section titled “html.formatter.trailingNewline”ファイルの末尾に改行を追加するかどうかを指定します。
デフォルト: true
html.linter.enabled
Section titled “html.linter.enabled”HTMLファイル用のBiomeのリンタを有効にします。
デフォルト:
true
html.assist.enabled
Section titled “html.assist.enabled”HTMLファイル用のBiomeのアシストを有効にします。
デフォルト:
true
overrides
Section titled “overrides”パターンのリストです。 この設定を使用して、特定のファイルに対するツールの動作を変更します。 ファイルがオーバーライドパターンに一致すると、そのパターンに指定された設定がトップレベルの設定を上書きします。 パターンの順序は重要です。ファイルが3つのパターンに一致する場合、最初のパターンのみが使用されます。
overrides.<ITEM>.includes
Section titled “overrides.<ITEM>.includes”カスタマイズされた設定を適用するファイルのglobパターンのリストです。
{ "overrides": [{ "includes": ["scripts/*.js"], // includes フィールドで指定されたファイルにのみ適用される設定 }]}overrides.<ITEM>.formatter
Section titled “overrides.<ITEM>.formatter”ignore と include を除いた、上位のformatter 設定のオプションが含まれます。
Examples
Section titled “Examples”例えば、generated/** のグロブパスに含まれる特定のファイルに対して、フォーマッタの lineWidth や indentStyle を変更することが可能です。
{ "formatter": { "lineWidth": 100 }, "overrides": [ { "include": ["generated/**"], "formatter": { "lineWidth": 160, "indentStyle": "space" } } ]}overrides.<ITEM>.linter
Section titled “overrides.<ITEM>.linter”ignore と include を除いた、上位のlinter 設定のオプションが含まれます。
Examples
Section titled “Examples”特定のグロブパスに対しては特定のルールを無効にし、他のグロブパスに対してはリンタを無効にすることができます。
{ "linter": { "enabled": true, "rules": { "recommended": true } }, "overrides": [ { "include": ["lib/**"], "linter": { "rules": { "suspicious": { "noDebugger": "off" } } } }, { "include": ["shims/**"], "linter": { "enabled": false } } ]}overrides.<ITEM>.[language]
Section titled “overrides.<ITEM>.[language]”トップレベルの言語設定のオプションが含まれます。特定のファイルに対して言語固有の設定を上書きできます。
overrides.<ITEM>.javascript
Section titled “overrides.<ITEM>.javascript”上位のjavascript 設定のオプションが含まれます。
Examples
Section titled “Examples”特定のフォルダ内のJavaScriptファイルのフォーマット動作を変更することができます。
{ "formatter": { "lineWidth": 120 }, "javascript": { "formatter": { "quoteStyle": "single" } }, "overrides": [ { "include": ["lib/**"], "javascript": { "formatter": { "quoteStyle": "double" } } } ]}overrides.<ITEM>.json
Section titled “overrides.<ITEM>.json”上位のjson 設定のオプションが含まれます。
Examples
Section titled “Examples”特定のJSONファイルに対して解析機能を有効にすることができます。
{ "linter": { "enabled": true, "rules": { "recommended": true } }, "overrides": [ { "includes": [".vscode/**"], "json": { "parser": { "allowComments": true, "allowTrailingCommas": true } } } ]}Glob構文リファレンス
Section titled “Glob構文リファレンス”Globパターンは、ファイルとフォルダのパスを一致させるために使用されます。Biomeは globで次の構文をサポートしています:
*はゼロ個以上の文字に一致します。パスセパレータ/には一致できません。**はディレクトリとファイルを再帰的に一致させます。このシーケンスは パスコンポーネント全体として使用する必要があるため、**aとb**の両方が無効でエラーになります。連続する2つ以上の*文字のシーケンスも 無効です。[...]は括弧内の任意の文字に一致します。 文字の範囲も指定できます。Unicodeで順序付けられているため、例えば[0-9]は0から9までの任意の文字を指定します。[!...]は[...]の否定、つまり括弧内にない任意の文字に一致します。- glob全体が
!で始まる場合、いわゆる否定パターンです。この globは、パスがglobに一致_しない_場合にのみ一致します。Negatedパターンは 単独では使用できず、通常のglobの_例外_としてのみ使用できます。 - ファイルが含まれるかどうかを判断する際、Biomeは親フォルダも考慮します。これは、フォルダ内のすべてのファイルを_含める_場合、
これらのファイルに一致するように
/**サフィックスを使用する必要があることを意味します。ただし、フォルダ内のすべてのファイルを_無視_する場合は、/**サフィックスなしで実行できます。不必要にフォルダをトラバースすることを避けるため、また無視されたフォルダからbiome.jsonまたは.gitignoreファイルをBiomeが読み込むリスクを避けるために、末尾の/**なしでフォルダを無視することをお勧めします。
いくつかの例:
dist/**はdist/フォルダとその中のすべてのファイルに一致します。!distはdist/フォルダとその中のすべてのファイルを無視します。**/test/**はtestという名前のフォルダの下のすべてのファイルに一致します。どこにあっても。例:dist/test、src/test。**/*.jsはすべてのフォルダ内の.js拡張子で終わるすべてのファイルに一致します。
Copyright (c) 2023-present Biome Developers and Contributors.