第269章:トラブルシューティングと除外設定
この章では「Biomeが思ったとおりに動かないときの直し方」と「触ってほしくないフォルダ/ファイルをちゃんと除外する方法」をまとめて攻略します😊💪
1) まず押さえる:Biomeが「どのファイルを見るか」の決まり方 👀📁

Biomeはだいたいこんな順番で「対象ファイル」を決めます👇 (ここを理解すると、トラブルの8割が解決します😆)
files.includesは「全ツール共通のフィルター」です。ここで落ちたファイルは、どのツール設定でも復活できません。(Biome)files.includesは glob パターンで指定できます(例:src/**/*.js)。(Biome)- Biomeはデフォで一部の“保護ファイル”(lockファイル等)を無視します。(Biome)
2) 除外設定の基本:! と !! の使い分けが超大事 😳🧠
files.includes は「入れるリスト」なんだけど、否定パターン(! / !!)で除外もできます。(Biome)
!:lint/format などの処理から除外(ただしプロジェクト解析のために“インデックス”はされ得る)(Biome)!!:プロジェクト解析(インデックス)からも除外(distみたいな“見なくていい塊”向き)(Biome)- 否定パターンを書く前に、先に
"**"を入れておく必要があります(基本形)。(Biome)
イメージ👇
✅ 例:React + Vite のプロジェクトでよくある除外テンプレ 📦✨
{
"files": {
"includes": [
"**",
// 生成物:整形/検査はしない(でも参照解決には必要なケースも)
"!**/*.generated.ts",
"!**/*.generated.tsx",
// ビルド成果物:解析も含め完全に除外したい
"!!**/dist",
// node_modules は通常触らない(必要なら明示)
"!!**/node_modules"
]
}
}
💡ポイント:フォルダ除外は
dist/**みたいに末尾/**を付けなくてOK(v2.2以降)。/**を付けるとフォルダ自体は探索されてパフォーマンスが落ちることがあるよ〜、という注意があります。(Biome)
3) 「Biomeが効かない😭」ときの鉄板トラブルシュート集 🔧😵💫➡️😄
3-1) VS Codeで保存しても整形されない 💾❌
チェック順(上からやると早いよ✨)
-
format on save がONか VS Codeの
editor.formatOnSaveをtrueにします。(Biome) -
Fix on Save も使いたいなら(ルール修正も自動でやりたい時) Biome拡張は
source.fixAll.biomeを提供してます。(Biome)
例(settings.json)👇
{
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.biome": "explicit",
"source.organizeImports.biome": "explicit"
}
}
- 「そもそもBiomeがフォーマッタ登録されてない」問題
biome.requireConfigurationをtrueにしてると、biome.jsonが無い場所ではBiomeが動きません(逆に安全🤝)。(Biome) → 今開いてるフォルダにbiome.jsonがあるか見てね👀✨
3-2) VS Codeが「違う設定」を読んでる気がする 🤔📄
これ、めっちゃあるやつです😇
-
設定ファイルの場所を明示:
biome.configurationPathを指定できます。(Biome) -
複数フォルダのワークスペース(multi-root)だと、拡張はフォルダごとにBiomeを作ります。(Biome)
- なので「親フォルダを開いてるけど、
biome.jsonは子フォルダにある」みたいな時にズレが起きがち💥
- なので「親フォルダを開いてるけど、
3-3) CLIだと動くのに、VS Codeだけ動きが変 🤖⚡
-
VS Code側が使うBiomeバイナリを指定できます:
biome.lsp.bin。(Biome)- 「グローバルに入れたBiome」と「プロジェクトのBiome」が混ざると事故りやすいです😵💫
3-4) “除外したはず”のフォルダがまだ見られてる気がする 🫠📁
よくある原因👇
files.includesに**を入れてなくて、否定パターンが効いてない → 否定パターン前に**が必要です。(Biome)- フォルダ除外に
dist/**を使ってて重い →dist/**/distでOK(末尾/**不要)という指摘があります。(Biome)
4) 困ったらこれ:原因切り分け用コマンド集 🧪🧰
4-1) 「どの設定で」「どのファイルを見たか」知りたい 👀
--verbose が便利!処理したファイルや追加情報を出してくれます。(Biome)
npx biome check . --verbose
4-2) 設定ファイルの探索が怪しいとき 📍
--config-path で設定ファイル(またはディレクトリ)を指定できます。(Biome)
npx biome check . --config-path=.
4-3) まとめて自動修正したい ✨🧹
--write:安全な修正 + 整形 + import整理--fix:--writeの別名--unsafe:危険な修正も含める(--writeとセット推奨)(Biome)
npx biome check . --write
npx biome check . --write --unsafe
4-4) .gitignore をちゃんと使いたい 🧾
--vcs-use-ignore-file をONにすると、ignoreファイルの指定を使って除外できます。(Biome)
npx biome check . --vcs-use-ignore-file=true
5) ミニ練習:dist と generated を“いい感じに”除外してみよ〜 🧸🎯
src/generated/hello.generated.tsを作る(中身は適当でOK)✍️biome.jsonのfiles.includesをこの形にする👇
{
"files": {
"includes": [
"**",
"!**/*.generated.ts",
"!!**/dist"
]
}
}
- 実行して確認✨
npx biome check . --verbose
hello.generated.tsに対する lint/format が出なければOK(!が効いてる)🎉 (Biome)distが解析対象から消えた感じならOK(!!が効いてる)🚀 (Biome)
必要なら、次の第270章(既存プロジェクトをBiomeに完全移行)に向けて、**あなたの想定フォルダ構成(例:src/, apps/, packages/)**に合わせた「除外テンプレ」をこちらで作って渡せますよ😊✨