5 ms·
Is there any complicated no-nonsense GUI for Neovim that transcends the GarbageUI of the terminals and, for example, allows you to have advanced keybinds to inv
by eviks 3y ago
Is there any complicated no-nonsense GUI for Neovim that transcends the GarbageUI of the terminals and, for example, allows you to have advanced keybinds to invoke various vim actions (like enter insert mode on tap I and exit it on hold I or modtap J+I)?
- deleted 3y ago[deleted]
- worksonmine 3y agoWhat's wrong with the native keybindingings? The simplicity to bind any command, even external programs or scripts is one of the best features of vim. For example I have leader+m to compile based on my current filetype, leader+d opens the binary in :termdebug (gdb) and many, many more. I keep adding to my config anytime I get sick of a repetitive action. You don't need anything fancy to do what you're asking, except for holding a key, which AFAIK isn't possible. Some bind j+k to esc in insert mode. I don't like messing with the characters in insert mode because it creates latency and fucks with my typing but I swap esc and caps since esc is my most used key, and caps my least.
- eviks 3y agoSo you use your most used key with a sidewise motion of your weakest finger of your weakest hand? That's just bad ergonomics, and that's what's wrong with the native keybindings - they are simply awful ergonomically JK is not the solution as your mentioned yourself since it's within the same simplistic/terminal-limited key input handling (also, it fails if you speak more than one language where JK is common in regular words, and also fails if you speak just one language since you can have variable names or other abbreviations/terms with JK in them). There are ways to avoid any latency/typing sideffects, but as far as I know that is only possible by eschewing the "but functionally it should act like the terminal UI" maxim, hence the original question whether any GUI app is ready to break off the rusted chains
- worksonmine 3y ago> So you use your most used key with a sidewise motion of your weakest finger of your weakest hand? I'll clarify that for you, my most used individual key. Most of my typing is on the home row. > and that's what's wrong with the native keybindings - they are simply awful ergonomically You asked for a way to bind the keys, you got one. Now all of a sudden your problem is that the default keybindings not being ergonomical. I use vim keys EVERYWHERE to help my RSI, but to each their own. > There are ways to avoid any latency/typing sideffects, but as far as I know that is only possible by eschewing the "but functionally it should act like the terminal UI" maxim, hence the original question whether any GUI app is ready to break off the rusted chains This makes zero sense. My point is that there is no native way to bind hold. The latency comes from vim waiting for either a second keypress to run the binding, or typing the character. You can natively set the delay lower and I do in :termdebug, but when typing it's very noticeable at my typing speeds. You could write a plugin and one probably even exists if you want that functionality. But please, explain how a GUI would solve that in a way a TUI can't. Very curious to hear what you come up with.
- eviks 3y ago> my most used individual key I'll clarify that for you: this is still a big ergonomic issue typing notwithstanding > You asked for a way to bind the keys, you got one. No, I asked for a specific way to bind keys, and got nothing ("except for holding a key") and another JK nothing you yourself don't like >Now all of a sudden your problem is that the default keybindings not being ergonomical. There is nothing sudden about it, it was you who asked what's wrong with the defaults. > I use vim keys EVERYWHERE to help my RSI, but to each their own. That's not true since the vast majority of those aren't supported everywhere, but also irrelevant - I use better keys everywhere, so? > This makes zero sense. My point is that there is no native way to bind hold. That's why you don't get it. Binding hold/modtaps is what allows avoiding the latency etc. > The latency comes from vim waiting for either a second keypress to run the binding, or typing the character Even in this case of two taps (not what I mentioned) there is no need for a wait, you can type right away and perfectly clean up later if the 2nd key is a combo. Neovintageous plugin for Sublime does this > You can natively set the delay lower and I do in :termdebug, but when typing it's very noticeable at my typing speeds. I don't want just the delays, that's a failed branch of key chord evolution, delays can't be perfect. I've described what I want in the very first comment > But please, explain how a GUI would solve that in a way a TUI can't. Very curious to hear what you come up with. By having access to all keyboard event info, not being limited by the terminal, and handling that properly. Check out kanata or google modtaps and home row mods, don't remember a link with a great description.