😊

CLI型コーディングエージェントでVS CodeのRun Selected Textショートカットキーを設定するとすごくいい

に公開

これです

vscode

すごくいい

  • エディター上にある文字列を選択してショートカットキーを押すだけでメッセージやスラッシュコマンドを送信できる
  • ターミナルにフォーカスを移動することなくメッセージを送信できるので、エディターの文字入力に集中できる
  • エディターの文字入力に集中することで、メッセージやスラッシュコマンドの履歴から取捨選択したものをテキストファイルなどに蓄積できる
  • いちいちCtrl + Jキー(またはCtrl + `キー)を使ってターミナルを開かなくていい
    • もちろんターミナルにフォーカスを移動して直接入力したほうが早いときはこの方法を使う
  • 誤ってEnterキーを押してメッセージが途中送信される心配もない
    • 誤って「Run Selected Text」のショートカットキーを押して異なるメッセージが送信される、別の問題が発生するかもしれない

設定方法

https://code.visualstudio.com/docs/configure/keybindings

Ctrl + Kキー => Ctrl + Sキーでキーボードショートカット画面を開き、「Terminal: Run Selected Text In Active Terminal」を設定。
またはコマンドパレットで「>Preferences: Open Keyboard Shortcuts (JSON)」を開き、以下JSONを貼り付け。

[
  {
    "key": "ctrl+k ,",
    "command": "workbench.action.terminal.runSelectedText"
  }
]

私は上記の通りCtrl + Kキー => ,キーに設定していますが、好きなショートカットキーを設定すればいいと思います。
私はとりあえずCtrl + Kキーで空いているキーにショートカットキーを設定するタイプなので。

免責

普段使用しているAiderとテスト用にインストールしたCodex CLIで動作することを確認していますが、テスト用にインストールしたClaude Codeでは課金していないのでテストできませんでした。

Claude Codeは現在のCodex CLIと同じくInkを使っているみたいなので、多分使えると思いますが、もしこの方法が全く使えないのであればここの免責に書いたりタグを外したりするので、お知らせください。

https://github.com/vadimdemedes/ink

いずれにしてもClaude CodeのVS Code拡張機能によって、現在の選択/タブは自動的にClaude Codeと共有されるようですので、他のCLI型コーディングエージェントと比較して使用頻度は低くなるかもしれません。

https://docs.anthropic.com/ja/docs/claude-code/ide-integrations

Discussion