zed-industries / zed

Code at the speed of thought – Zed is a high-performance, multiplayer code editor from the creators of Atom and Tree-sitter.
https://zed.dev
Other
50.57k stars 3.13k forks source link

Feature Request: Allow to run the GUI in a terminal via kitty graphics + keyboard protocol #13605

Open oblitzitate opened 5 months ago

oblitzitate commented 5 months ago

Check for existing issues

Describe the feature

It would be revolutionary to have such a GUI editor run in a terminal emulator so that it can seamlessly integrate with terminal features (e.g. tabs, sessions, remote, navigate-edit workflow, etc.) and tools (e.g. zoxide and fzf) for the best keyboard-centric user experience.

It would be an advantage over other editors like Neovim (lackluster GUI) and VSCode (no TUI).

It's already possible to run a chromium browser in the terminal. Try watching a video in awrit youtube.com and it's pretty fast (ignore the lack of cursor visual feedback). It's also possible to play videos directly in the terminal via mpv --vo=kitty --vo-kitty-use-shm=yes. Why not a GUI editor?

You would use kitty graphics protocol to render the GUI. And you would use kitty keyboard protocol for advanced keyboard handling such as detecting modifiers and releases.

If applicable, add mockups / screenshots to help present your vision of the feature

No response

thiagomajesk commented 4 months ago

I believe this is duplicated: https://github.com/zed-industries/zed/issues/7493 (I hope this gets implemented though)

oblitzitate commented 4 months ago

Kind of but not really. Instead of creating a whole new TUI along with the GUI, this is just about making the GUI compatible with terminal emulators that use the kitty graphics protocol.

It's less costly this way since you don't need to maintain a TUI. You can treat this like a second-class citizen and focus most of the efforts in the GUI.