diff --git a/packages/coding-agent/docs/terminal-setup.md b/packages/coding-agent/docs/terminal-setup.md index 29f7320ad..de91e3c5c 100644 --- a/packages/coding-agent/docs/terminal-setup.md +++ b/packages/coding-agent/docs/terminal-setup.md @@ -130,6 +130,21 @@ Add to `keybindings.json`: } ``` +## Zed (Integrated Terminal) + +Add these key bindings to your Zed `keymap.json`: + +```json +{ + "context": "Terminal", + "bindings": { + "shift-enter": ["terminal::SendText", "\u001b[13;2u"], + "ctrl--": ["terminal::SendText", "\u001b[45;5u"], + "ctrl-alt-]": ["terminal::SendText", "\u001b[93;7u"] + } +} +``` + ## Windows Terminal Pi uses Windows-style keybindings when running natively on Windows or in WSL: diff --git a/packages/tui/src/terminal-image.ts b/packages/tui/src/terminal-image.ts index f82946389..a6ac5967e 100644 --- a/packages/tui/src/terminal-image.ts +++ b/packages/tui/src/terminal-image.ts @@ -110,11 +110,7 @@ function detectCapabilitiesFromEnvironment(tmuxForwardsHyperlink: () => boolean) return { images: null, trueColor: true, hyperlinks: true }; } - if (termProgram === "vscode") { - return { images: null, trueColor: true, hyperlinks: true }; - } - - if (termProgram === "alacritty") { + if (termProgram === "alacritty" || termProgram === "vscode" || termProgram === "zed") { return { images: null, trueColor: true, hyperlinks: true }; } diff --git a/packages/tui/test/terminal-image.test.ts b/packages/tui/test/terminal-image.test.ts index b00af7782..069136d00 100644 --- a/packages/tui/test/terminal-image.test.ts +++ b/packages/tui/test/terminal-image.test.ts @@ -401,6 +401,12 @@ describe("detectCapabilities", () => { }); }); + it("enables Alacritty capabilities for Zed", () => { + withEnv({ TERM_PROGRAM: "zed" }, () => { + assert.deepStrictEqual(detectCapabilities(), { images: null, trueColor: true, hyperlinks: true }); + }); + }); + it("enables truecolor and hyperlinks for Windows Terminal outside multiplexers", () => { withEnv({ WT_SESSION: "session", TERM: "xterm-256color" }, () => { const caps = detectCapabilities();