社内SEの話

日々起きたことの記録用

wingetでインストールしたVisual studio Codeで右クリックにCodeで開くを設置する方法

wingetでインストールしたVisual studio CodeでCodeで開くを追加する方法を解説

以前に紹介したwingetでインストールすると、右クリックでコードから開くの項目が有効化されず、使いたい場合は、結局GUIでのインストールになってしまいます。

コマンドだけでVisual Studio Codeをインストールし、かつCodeで開くの項目を有効化する方法を詳しく解説します。

wingetでVSCodeをインストール

winget install Microsoft.VisualStudioCode  

VisualStudioCode vscode

VisualStudioCode vscode

インストールコマンドではCodeで開くがありません

Git管理されたフォルダやPythonのvenvなどフォルダによって動作に影響を受ける作業をしたいときに「Codeで開く」がないと結構不便です。

「Codeで開く」を追加する方法について詳しくまとめました。

GUIで再インストールする

この方法が一番簡単で確実

code.visualstudio.com

VisualStudioCode vscode

このタイミングでアクションを追加させます

VisualStudioCode vscode

追加されました。

再インストールしても拡張機能など設定は引き継がれるので、安心して再インストールできます

せっかくCLIでインストールしたのに、結局GUI操作でインストールするのかという印象です。

exeの引数

何らかの方法でインストーラーをダウンロードしexeをコマンドで実行するときに引数を指定して実行します

.\VSCodeUserSetup-x64-1.93.1.exe /VERYSILENT /NORESTART /MERGETASKS=!runcode,addcontextmenufiles,addcontextmenufolders,associatewithfiles,addtopath,desktopicon  

詳しくは

VScodeはInno Setupというセットアップパッケージを使用しています。

そのため下記のヘルプからコマンドの詳細がわかります

code.visualstudio.com

jrsoftware.org

.\VSCodeUserSetup-x64-1.93.1.exe /help  

VisualStudioCode vscode

またMergeTasksの引数で具体的にPathの追加や本件のCodeで開くの登録などの指定ができます

addcontextmenufiles ファイルを選択して右クリック「Codeで開く」を追加する

addcontextmenufolders フォルダで右クリック「Codeで開く」を追加する

associatewithfiles VSCodeでサポートしている拡張子をCodeを登録する

addtopath PATHへの追加。コンソールでCodeのエイリアス登録

desktopicon アイコンをデスクトップに設置

詳しい仕様についてはここから

silentinstallhq.com

これらの引数の公式な仕様については発見できませんでした。

Githubを見てもなんとなく実装しているのはわかりますが、具体的なドキュメントの記載はありませんでした。

github.com

ここで本題 wingetのoverrideで指定

exeの引数を使ってwignetでインストールします。

wingetで引数を使う場合は--overrideで引数指定ができます

winget install Microsoft.VisualStudioCode --silent --override "/VERYSILENT /NORESTART /MERGETASKS=!runcode,addcontextmenufiles,addcontextmenufolders,associatewithfiles,addtopath,desktopicon"

VisualStudioCode vscode

レジストリを変更する方法もあるらしいが・・・

当初レジストリでの登録を検証しましたが、うまく追加できなかったのでおすすめはしません。

zenn.dev