VS CODE クイックリファレンス
ナビゲーション、編集、マルチカーソル、ターミナル、デバッグ、拡張機能
ナビゲーション
ファイルとシンボルのナビゲーション
| Ctrl+P | ファイル名でクイックオープン |
| Ctrl+Shift+P | コマンドパレット |
| Ctrl+Shift+O | ファイル内のシンボルへ移動 |
| Ctrl+T | ワークスペース内のシンボルへ移動 |
| Ctrl+G | 行番号へ移動 |
| F12 | 定義へ移動 |
| Alt+F12 | 定義をピーク |
| Shift+F12 | すべての参照を検索 |
| Ctrl+Shift+\ | 対応する括弧へジャンプ |
タブとエディタのナビゲーション
| Ctrl+Tab | 開いているタブを順番に切り替え |
| Ctrl+1 / 2 / 3 | エディタグループ 1 / 2 / 3 にフォーカス |
| Ctrl+\ | エディタを分割 |
| Ctrl+B | サイドバーの表示切り替え |
| Ctrl+J | 下部パネルの表示切り替え |
編集
行操作
| Ctrl+Shift+K | 行全体を削除 |
| Alt+Up / Down | 行を上 / 下に移動 |
| Shift+Alt+Up / Down | 行を上 / 下にコピー |
| Ctrl+Enter | 下に行を挿入 |
| Ctrl+Shift+Enter | 上に行を挿入 |
| Ctrl+Shift+[ | リージョンを折りたたむ |
| Ctrl+Shift+] | リージョンを展開 |
テキスト操作
| Ctrl+D | 単語を選択(繰り返すと次のマッチを追加) |
| Ctrl+Shift+L | 選択のすべての出現箇所を選択 |
| Ctrl+L | 行全体を選択 |
| Ctrl+/ | 行コメントを切り替え |
| Shift+Alt+A | ブロックコメントを切り替え |
| Tab / Shift+Tab | インデント / アンインデント |
マルチカーソル
カーソルの追加
| Alt+Click | クリック位置にカーソルを追加 |
| Ctrl+Alt+Up / Down | 上 / 下にカーソルを追加 |
| Ctrl+D | 選択の次の出現箇所を追加 |
| Ctrl+Shift+L | すべての出現箇所にカーソルを追加 |
| Ctrl+U | 最後に追加したカーソルを元に戻す |
| Esc | マルチカーソルモードを終了 |
マルチカーソルのワークフロー
// Select a word, then Ctrl+D to add matches
// Type replacement — all cursors update
// Ctrl+Shift+L selects ALL matches at once
// Alt+Click for arbitrary cursor placement
ターミナル
ターミナルのショートカット
| Ctrl+` | 統合ターミナルの切り替え |
| Ctrl+Shift+` | 新しいターミナルを作成 |
| Ctrl+Shift+5 | ターミナルを分割 |
| Ctrl+PgUp / PgDn | ターミナルを上 / 下にスクロール |
| Ctrl+Shift+C | ターミナルで選択をコピー |
| Ctrl+Shift+V | ターミナルに貼り付け |
ターミナルの管理
| Ctrl+Shift+P → Terminal: Kill | アクティブなターミナルを終了 |
| Ctrl+Shift+P → Terminal: Rename | ターミナルタブを名前変更 |
| Terminal dropdown | ターミナルを切り替え |
| terminal.integrated.shell.* | デフォルトシェルを変更する設定 |
デバッグ
デバッグコントロール
| F5 | デバッグ開始 / 続行 |
| Shift+F5 | デバッグ停止 |
| Ctrl+Shift+F5 | デバッグ再起動 |
| F9 | ブレークポイントの切り替え |
| F10 | ステップオーバー |
| F11 | ステップイン |
| Shift+F11 | ステップアウト |
launch.json の例
{
"type": "node",
"request": "launch",
"name": "Run App",
"program": "${workspaceFolder}/app.js"
}
デバッグ機能
| Watch panel | デバッグ中に式を監視 |
| Call Stack | 実行コールスタックを表示 |
| Debug Console | ブレークポイントで式を評価 |
| Conditional breakpoint | ブレークポイントを右クリック → 条件を編集 |
| Logpoint | 実行を停止せずにメッセージをログ |
拡張機能
拡張機能の管理
| Ctrl+Shift+X | 拡張機能ビューを開く |
| @installed | インストール済みの拡張機能でフィルター |
| @enabled / @disabled | 有効 / 無効でフィルター |
| @recommended | 推奨拡張機能を表示 |
必須拡張機能
| Prettier | コードフォーマッター(JS、TS、CSS、HTML) |
| ESLint | JavaScript/TypeScript のリンティング |
| GitLens | 拡張 Git 統合とブレーム表示 |
| Remote - SSH | SSH 経由でリモートマシンで開発 |
| Live Server | ライブリロード付きローカル開発サーバー |
| Thunder Client | VS Code 内の REST API クライアント |
設定
設定へのアクセス
| Ctrl+, | 設定 UI を開く |
| Ctrl+Shift+P → settings.json | 設定 JSON を開く |
一般的な設定(JSON)
{
"editor.fontSize": 14,
"editor.tabSize": 2,
"editor.formatOnSave": true,
"editor.wordWrap": "on",
"files.autoSave": "afterDelay"
}
ワークスペース vs ユーザー
| User settings | グローバル、すべてのプロジェクトに適用 |
| Workspace settings | プロジェクトごと、.vscode/settings.json に保存 |
| Workspace overrides User | ワークスペース設定が優先 |
キーボードショートカット
カスタマイズ
| Ctrl+K Ctrl+S | キーボードショートカットエディタを開く |
| keybindings.json | カスタムバインド用 JSON ファイル |
必須ショートカット
| Ctrl+Shift+P | コマンドパレット(すべてにアクセス) |
| Ctrl+P | ファイルをクイックオープン |
| Ctrl+Shift+F | すべてのファイルを検索 |
| Ctrl+H | ファイル内で検索と置換 |
| Ctrl+Shift+H | ファイル全体で検索と置換 |
| F2 | シンボルの名前変更 |
| Ctrl+. | クイックフィックス(コードアクション) |
| Ctrl+Space | IntelliSense のトリガー |
| Ctrl+Shift+I | ドキュメントをフォーマット |
Git 統合
ソースコントロールビュー
| Ctrl+Shift+G | ソースコントロールパネルを開く |
| + | 変更をステージ(SCM ビュー内) |
| - | 変更をアンステージ |
| Ctrl+Enter | ステージ済みの変更をコミット |
| ... | その他のアクション(プッシュ、プルなど) |
インライン Git 機能
| Gutter indicators | 追加/変更/削除に対する緑/青/赤のマーク |
| Ctrl+Shift+P → Git: Checkout | ブランチを切り替え |
| Ctrl+Shift+P → Git: Pull | リモートからプル |
| Ctrl+Shift+P → Git: Push | リモートへプッシュ |
| Click gutter change | 変更された行のインライン差分表示 |
差分とマージ
| SCM → Open Changes | サイドバイサイド差分表示 |
| Inline diff arrows | 個別の変更を元に戻す |
| 3-way merge editor | コンフリクトを視覚的に解決(1.69+) |
よく使うパターン
ワークスペース機能
| Ctrl+Shift+E | ファイルエクスプローラーにフォーカス |
| Ctrl+Shift+D | デバッグビューにフォーカス |
| Ctrl+Shift+M | 問題パネルを表示 |
| Ctrl+K Ctrl+T | カラーテーマを変更 |
| Ctrl+K Z | Zen モードへ |
スニペット
// File → Preferences → Configure Snippets
"Print": {
"prefix": "log",
"body": "console.log('$1');",
"description": "Console log"
}
タスク(tasks.json)
{
"label": "build",
"type": "shell",
"command": "npm run build",
"group": "build"
}