こんにちは、ロジカル・アーツの笹原です。
しばらく記事を投稿できていなかったので、小ネタになりますが、VS Code の Tips を一つ紹介したいと思います。タイトル通りですが、ワークスペース単位で拡張機能の有効/無効を設定する方法をご紹介したいと思います。
はじめに
VS Code を使っていると、拡張機能を特定のワークスペースだけ有効にしたい、無効にしたいという状況が出てくるかと思います。実は拡張機能の詳細ページから、ワークスペースごとに有効/無効の設定ができます。この記事では、textlint の拡張機能 vscode-textlint を例に手順を説明したいと思います。
シナリオ
二つのワークスペース sample-app
と blog
があるとし、
このうち、blog
にだけ textlint の設定*1をしているとします。
textlint の拡張機能がグローバルに有効の場合、sample-app
で *md
ファイルを開くと、以下の画像のようにエラーメッセージが出力されます。
拡張機能を適用したいのは blog
だけで、blog
以外のワークスペースに対しては無効にしたいと考えています。
方法
このケースではまず、textlint の拡張機能をグローバルに無効にします。 以下の画像のように「Disable」をクリックし、「This extension is disabled globally by the user.」が表示されれば OK です。
次に、blog
を VS Code で開き、textlint の拡張機能の詳細ページを開きます。
今度は「Enable」横のアイコンをクリックし、「Enable (Workspace)」をクリックします。
以下の画像のように「This extension is enabled for this workspace by the user.」が表示されれば OK です。
これで設定は完了です。
再度 sample-app
を VS Code で開き、 *.md
ファイルを開いても先程のエラーが出なくなったことが確認できると思います。
もし一部のワークスペースだけ無効にしたい場合は、拡張機能をまずグローバルに有効にしておいて、無効にしたいワークスペースで「Disable (Workspace)」をクリックすれば設定できます。
おわりに
ワークスペース毎に設定を切り替えたいというのはよくあることだと思うので、拡張機能についても同様の設定ができるのは嬉しいですね。 なお、この設定ができることは、最近必要に駆られて調べて知ったのですが、意外にも言及している記事をあまり見つけられませんでした*2。もしこの記事がお役に立てば幸いです。