VisualStudioCodeであるフォルダ以下のファイルを全てShift-JISで開きたい

やりたいこと

タイトルの通りなんだが、 Shift-JISで書かれた文書がフォルダ以下にたくさんあって、その内容を Visual Studio Code で確認したい。

Visual Studio Code のデフォルトエンコードUTF-8 なので、まぁ文字化けするわするわ。

試したこと1

  1. ステータスバーの右下の UTF-8 をクリック
  2. エンコード付きで再度開く
  3. Japanese(Shift-JIS)を選択

こんなんファイル開くたびにやってられない。。

試したこと2

  1. ファイル -> 基本設定 -> 設定
  2. ユーザー設定を選択
  3. ""files.encoding": "shiftjis"" を追加

これだと毎回 Shift-JIS になってしまう。

いつもは UTF-8 で見たいんだよぉぅ。。

試したこと3(解決方法)

Visual Studio Code は ワークスペースって概念があって、そのワークスペース毎に設定を記述できる。 (概念って書いてるけど、単にフォルダ毎に設定書けるってはなし)

方法2で、ユーザー設定を選択してたけど、その横にワークスペースの設定がある。 これを選択することで、ワークスペース.vscode\settings.json ってファイルができるので、この中に設定を記述していく。

で、この設定はワークスペース内に適用される。

ワークスペースの設定に "files.encoding": "shiftjis" を記述することで、 ワークスペース以下(フォルダ以下)のファイルが Shift-JIS で開くことができる。

ちなみに、ワークスペースの設定は、ユーザー設定よりも優先されるらしいので、一番強い設定になるのかな。

https://vscode-doc-jp.github.io/docs/getstarted/settings.html

その他

qiita.com

こちらの記事を最初読んでて、"files.autoGuessEncoding": true を設定して、自動エンコーディングを設定してたけど、思うようなエンコーディングにならない場合もあった。

公式にも

https://code.visualstudio.com/updates/v1_11#_auto-guess-encoding-of-files

Note: there are cases where the encoding is detected wrongly or not at all. To have full control over the encoding in the workspace, use the files.encoding setting instead.

注:エンコーディングが誤って検出されるか、まったく検出されない場合があるよ。ワークスペースのエンコーディングを完全に制御するには、代わりにfiles.encoding設定を使用してくれ。

とあり、自分の場合はShift-JIS 固定にしたかったこともあったので、files.encoding を設定した。