Hacker News new | ask | show | jobs
by v3ss0n 768 days ago
We need proper Neovim gui that is officially maintained
4 comments

What's the use case for a separate GUI for neovim? I remember using macvim for a few days maybe 8 years ago, but I never "got it". It felt like the benefits of having my editor in my terminal were thrown out for little return.
If neovim had a proper gui, you could move away from some of the limitations of the terminal. The biggest being using fixed width characters for drawing UI elements.

Emacs does it pretty well, one of the few things that makes me jealous of emacs as a vim user.

IIUC fixed widths is more than just a UI problem. Lots of internal code is assuming that. But maybe it works well-enough that it isn't a real issue.

I remember trying a terminal that didn't have fixed char widths and it mostly worked. The only real issue was line wrapping (as vim and the terminal would both wrap based on how long they considered the line to be). So maybe it would be possible! I would love to see solid support for variable-width fonts.

I know variable-width fonts are controversial, but I actually think they work well for coding but haven't had the chance to use them much due to Vim limitations. But especially for Markdown and similar mostly-text content they seem like a clear win.

And input limitations can be resolved by non-terminal UIs (for example like Ctrl+i and Tab being mapped to the same control character in old terminals - that one is solved by newer protocols, but the problems don't end there.)
Neovim already supports these keys as long as you are using a terminal that supports the Kitty keyboard protocol (Kitty, wezterm, alacritty, foot, ghostty)
also even the newer protocols fail to support modifier sides (left vs right shift)
Kitty keyboard protocol does indeed support modifier sides.
No it doesn't, and the author rejected the proposal to add them

https://sw.kovidgoyal.net/kitty/keyboard-protocol/

Modifiers are encoded as a bit field with:

shift 0b1 (1) alt 0b10 (2) ctrl 0b100 (4) super 0b1000 (8) hyper 0b10000 (16) meta 0b100000 (32) caps_lock 0b1000000 (64) num_lock 0b10000000 (128)

I'd really like image support in a Neovim GUI.

It'd make markdown editing easier for me

Seems more likely to be something you implement with e.g. kitty/iterm/sixel escape codes than moving to a GUI app. Actually probably is something that could be implemented in neovim today. Maybe even by a plugin, not sure what control they have over stuff like that.
see 3rd/image.nvim on github. There might be others
Just basics like fonts and window sizing make the gui version of Vim a better experience for me.
I mostly work on macOS nowadays, and I like macvim.

Of course there are plenty of Neovim GUI. Currently happy enough with VimR.

+1 for VimR
proportional fonts

many broken things fixed automagically, like those meta keybinds that took years to implement, and also clipboards, then menus

then window management from resizing to switching with Alt-Tab and direct keybinds

then easier integration with external tooling since it's easier to detect the app in a dedicated window

Then freer keybindings not conflicting with the terminals'

Terminal is a poor restricting UI for any complex app such as the text editor

I don't get it, why do we need that?

And I already use Neovide as a GUI pretty often.

I've been using neovide for a few months now, and my biggest gripe is that there's not an easy way to automagically open a new file in an existing neovide window as a tab. With macvim I could do `--remote-tab-silent` and it was handled, but neovide seems to want me to use some kind of background server and a bunch of other hoops to jump through.
that would be nice, currently neovide works pretty well for me. I've heard some who like VimR a lot as well but it's a bit cluttered for me, I just want a fast minimal GUI
neovide is a nvim gui that feels good