🥱

【VSCode】プロファイル別のEasy Snippetの設定で躓いた

2024/05/12に公開

profiles関連の設定でグダったので残しておきます.

簡単に言うと,デフォルトのプロファイルと新規作成したプロファイルではスニペットの設定ファイルの場所が異なるレイヤにあって設定ファイルを見つける(解釈する)のに手こずり,設定を反映させることができず,小1時間つぶしました.

発生した問題

新規作成したプロファイルaでは問題なく動作していたEasy Snippetが,既定のプロファイルに変更すると動作しなくなる.

ひとこと解決法

Easy Snippet: Snippets Pathがちゃんと適用したいプロファイル用になっているか確認してください.

詳しい解決手順

profiles

VSCodeではprofilesという機能があります.
この機能によって見た目や一部の設定等をプロファイル別に分けることが出来ます.
(デフォルトのプロファイルは「既定」(英語なら「default」)と名前がついています.)

Easy Snippet

以下の記事で使用したスニペットを別のプロファイルでも使えるようにします.
https://zenn.dev/sato_7f/articles/813c318e00f573
現在は新規作成されたプロファイルで動作しています.

拡張機能のタブで右下の歯車から「拡張機能の設定」でEasy Snippetの設定画面に移れます.

この設定の内,下の「Easy Snippet: Snippets Path」という設定を,スニペットを使う予定のプロファイルのスニペットの設定ファイルの保存フォルダにしてください.

必要であれば別のプロファイルのスニペットの設定ファイル({言語名}.json)をコピペして完了です.

設定ファイルの場所

デフォルトのプロファイルでの,スニペットの設定ファイルの場所

C:\Users\{ユーザ名}\AppData\Roaming\Code\User\snippets\{言語名}.json

新規作成したプロファイルでの,スニペットの設定ファイルの場所

C:\Users\{ユーザ名}\AppData\Roaming\Code\User\profiles\{プロファイル固有の値}\snippets\{言語名}.json

勘違いしてたところ

  • ×Easy Snippetはスニペットを保存・適用するための拡張機能
    〇Easy SnippetはVSCode標準のスニペット機能のための設定ファイルへ簡単に書き込めるように変換してくれるインターフェース的な拡張機能
  • ×profiles機能の既定のプロファイルには新規作成されるプロファイルと同様に個別の番号が与えられている
    〇既定のプロファイルはある種特別なプロファイルで,別のプロファイルと設定ファイルのレイヤが異なる

お疲れさまでした.

Discussion