WSL2でVS Codeを直接WSLモードで起動する方法
問題の背景
WSL2環境でVS Codeを使用する際、Windowsのショートカットから以下のようなパスでワークスペースを開くと:
\\wsl.localhost\Ubuntu\home\username\project\workspace.code-workspace
VS Codeは一度Windows側で開かれ、その後「WSLモードで再オープン」のリンクをクリックする必要があります。
この記事では、最初からWSLモードでVS Codeを起動する方法を解説します。
前提条件
- WSL2がインストール済み
- VS Codeがインストール済み
- VS Code WSL拡張がインストール済み
- Ubuntuディストリビューションが設定済み
解決方法
方法1: VS Code WSL拡張を使ったコマンド(推奨)
Windowsショートカットのターゲットを以下のように設定:
code --remote wsl+Ubuntu /home/username/project/workspace.code-workspace
具体例:
code --remote wsl+Ubuntu /home/sanomine/tools_meowassist/tools.meowassist/tools.meowassist.code-workspace
方法2: WSL内からVS Codeを起動
ショートカットでWSLを起動してからcodeコマンドを実行:
wsl -d Ubuntu -e bash -c "cd /home/username/project && code workspace.code-workspace"
具体例:
wsl -d Ubuntu -e bash -c "cd /home/sanomine/tools_meowassist/tools.meowassist && code tools.meowassist.code-workspace"
方法3: より確実な方法
ワークスペースファイルを指定せず、プロジェクトディレクトリを直接開く:
wsl -d Ubuntu -e bash -l -c "cd /home/username/project && code ."
具体例:
wsl -d Ubuntu -e bash -l -c "cd /home/sanomine/tools_meowassist/tools.meowassist && code ."
ショートカットの作成手順
1. デスクトップに新しいショートカットを作成
- デスクトップで右クリック
- 「新規作成」→「ショートカット」を選択
- 上記のいずれかのコマンドを「項目の場所」に入力
- ショートカット名を設定(例:「VSCode WSL Project」)
2. ショートカットのプロパティ設定
- ターゲット: 上記のコマンド
-
作業フォルダー: 空白または
C:\
- 実行時の大きさ: 通常のウィンドウ
各方法の特徴
方法 | メリット | デメリット |
---|---|---|
方法1 | 最もシンプル、ワークスペース設定を維持 | WSL拡張が必要 |
方法2 | 確実に動作、ワークスペースファイルを使用可能 | 少し複雑 |
方法3 | 最も安定、プロジェクト全体を開く | ワークスペース設定が使えない |
トラブルシューティング
ショートカットが動作しない場合
-
WSL拡張の確認
code --list-extensions | grep ms-vscode-remote.remote-wsl
-
パスの確認
WSL内でパスが正しいか確認:ls -la /home/username/project/
-
権限の確認
WSLディストリビューションが正常に動作するか確認:wsl -l -v
VS Codeが起動しない場合
WSL内でcodeコマンドが使用可能か確認:
# WSL内で実行
which code
# 出力例: /mnt/c/Users/Username/AppData/Local/Programs/Microsoft VS Code/bin/code
codeコマンドが見つからない場合は、VS Codeを再インストールするか、PATHを設定してください。
Claude Codeとの連携
この方法でVS Codeを起動すると、最初からWSLモードになるため:
- Claude Codeが直接使用可能
- WSL内のツール(PHP、Node.js、Pythonなど)にフルアクセス
- パフォーマンスの向上
- ファイルシステムの統一
応用例
プロジェクト別ショートカット
複数のプロジェクトがある場合、それぞれにショートカットを作成:
# プロジェクトA
code --remote wsl+Ubuntu /home/username/projectA/workspace.code-workspace
# プロジェクトB
code --remote wsl+Ubuntu /home/username/projectB/workspace.code-workspace
バッチファイルでの起動
より複雑な設定が必要な場合は、バッチファイル(.bat)を作成:
@echo off
wsl -d Ubuntu -e bash -l -c "cd /home/username/project && code . && echo 'VS Code started in WSL mode'"
pause
まとめ
WSL2環境でVS Codeを直接WSLモードで起動することで:
- 「再オープン」の手間が不要
- より高速な動作
- WSLツールとの完全な統合
- Claude Codeなどの開発ツールの即座な利用
最も推奨される方法は方法1(code --remote wsl+Ubuntu
)ですが、環境によって最適な方法を選択してください。
これで効率的なWSL2開発環境が構築できます!