🖇️
VSCode で複数 .env ファイルを扱うとき ShellCheck の警告が出てしまうのをなんとかしたい
例えば、次の場合。
- 環境別の設定を
.env.development
/.env.production
などとして扱いたい場合 - 設定ファイルのひながたを
.env.sample
として git 管理している場合
こういう警告が出る。
どうやら Shell Script
言語として扱われてしまうようで、 ShellCheck の対象となってしまっている。これをなんとかしたい。
おおまかにふたつの対処方法がある。どちらも個人かワークスペースの settings.json に次を記載する。
定数定義用言語として解釈させる
.env
ファイルは VSCode だと Properties
という言語と認識され、定数定義用のシンタックスハイライトが効くのでこれにあわせてしまうのが良さそう。
{
"files.associations": {
".env*": "properties"
}
}
files.associations
の言語一覧 には Properties
という言語がないが、全部小文字の properties
が対応するようだ。
チェック対象から外してしまう
.env ファイルでは定数定義しかしないので、チェック対象から外してしまう方法。 ShellCheck 拡張の設定で無視するパスを指定する。
{
"shellcheck.ignorePatterns": {
"**/.env*": true
}
}
Discussion