wingetでインストールしたVisual studio CodeでCodeで開くを追加する方法を解説
以前に紹介したwingetでインストールすると、右クリックでコードから開くの項目が有効化されず、使いたい場合は、結局GUIでのインストールになってしまいます。
コマンドだけでVisual Studio Codeをインストールし、かつCodeで開くの項目を有効化する方法を詳しく解説します。
wingetでVSCodeをインストール
winget install Microsoft.VisualStudioCode
インストールコマンドではCodeで開くがありません。
Git管理されたフォルダやPythonのvenvなどフォルダによって動作に影響を受ける作業をしたいときに「Codeで開く」がないと結構不便です。
「Codeで開く」を追加する方法について詳しくまとめました。
GUIで再インストールする
この方法が一番簡単で確実
このタイミングでアクションを追加させます
追加されました。
再インストールしても拡張機能など設定は引き継がれるので、安心して再インストールできます
せっかくCLIでインストールしたのに、結局GUI操作でインストールするのかという印象です。
exeの引数
何らかの方法でインストーラーをダウンロードしexeをコマンドで実行するときに引数を指定して実行します
.\VSCodeUserSetup-x64-1.93.1.exe /VERYSILENT /NORESTART /MERGETASKS=!runcode,addcontextmenufiles,addcontextmenufolders,associatewithfiles,addtopath,desktopicon
詳しくは
VScodeはInno Setupというセットアップパッケージを使用しています。
そのため下記のヘルプからコマンドの詳細がわかります
.\VSCodeUserSetup-x64-1.93.1.exe /help
またMergeTasksの引数で具体的にPathの追加や本件のCodeで開くの登録などの指定ができます
addcontextmenufiles ファイルを選択して右クリック「Codeで開く」を追加する
addcontextmenufolders フォルダで右クリック「Codeで開く」を追加する
associatewithfiles VSCodeでサポートしている拡張子をCodeを登録する
addtopath PATHへの追加。コンソールでCodeのエイリアス登録
desktopicon アイコンをデスクトップに設置
詳しい仕様についてはここから
これらの引数の公式な仕様については発見できませんでした。
Githubを見てもなんとなく実装しているのはわかりますが、具体的なドキュメントの記載はありませんでした。
ここで本題 wingetのoverrideで指定
exeの引数を使ってwignetでインストールします。
wingetで引数を使う場合は--overrideで引数指定ができます
winget install Microsoft.VisualStudioCode --silent --override "/VERYSILENT /NORESTART /MERGETASKS=!runcode,addcontextmenufiles,addcontextmenufolders,associatewithfiles,addtopath,desktopicon"
レジストリを変更する方法もあるらしいが・・・
当初レジストリでの登録を検証しましたが、うまく追加できなかったのでおすすめはしません。