約 1 分で読めます

Claude Code ✕ WSL ✕ devcontainerでShift + Enter改行ができなかった件について 

なんとなくの概要

TL;DR

開いている環境のVSCode設定をいじるべし!

WSLで作業していても閲覧していて動いているのはWindowsのVSCodeからリモートアクセスしてるだけ。

この解決法に至った経緯

keybindings.jsonをいじってみたり、競合してそうなショートカットを無効にしたり試していると、 以下の記事にたどり着いた。

Claude Code × Cursor × WSL で Shift+Enter が改行にならなかった話(備忘録)zenn.dev

この備忘録が救世主でした。 内容はCursorを使っているとのことで自分の構成とは違うんですが、ピンときた。 devcontainerで別の環境を開いているから、同じ用に設定がその中で閉じているのでは...と

そこで僕はWSLにWindowsのVSCodeを通して内部のdevcontainer環境にアクセスしているので、Windows側のVSCodeのkeyconfig.jsonを書き換えてみた。

/teminal-setupで追記される内容とおなじやつ

/mnt/c/Users/user/AppData/Roaming/Code/User/keybindings.json
[
  {
    "key": "shift+enter",
    "command": "workbench.action.terminal.sendSequence",
    "args": {
      "text": "\u001b\r"
    },
    "when": "terminalFocus"
  },
]

無事改行されました!!