-
Notifications
You must be signed in to change notification settings - Fork 152
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Feature Vision Discussion: Keybindings #69
Comments
Current votingVote for the topic(s) you care about by selecting the corresponding emoji. (No judgement based on the emojis sentiment!)
|
I would like to suggest a Sublime Text (/VS Code/micro) mode with GUI-like keyboard shortcuts, and ideally mouse support. |
One suggestion is to include a Kakoune-like mode. I find the interactivity in Kakoune to make more sense and be more conducive to faster navigation and editing flow than how it works in vi. |
what syntax should this keybinding file should have? |
In nushell it's a yaml file but I'd guess that json, yml, toml, some structured file may work. I'm also guessing that if reedline is already using one of these crates somewhere that we'd want to use whichever one that is in order to keep dependencies down. thoughts? |
I think it wouldn't be too hard to create this dictionary. If we use EditCommands and ReedlineEvents you can describe any command |
we might want to take a look at rustyline's issues regarding keybinding to make sure we can support the functionality. one thing that comes to mind is attaching arbitrary internal or external commands to keybindings. like maybe ctrl-shift-h runs htop or something like that. as I recall, we created a few issues on rustyline's repo about keybindings. of course, this type of functionality can come later but we want to be sure our deserialization handles such things up front. i.e. start with the end in mind. |
It is very useful to expose Vi hard-coded keybinding to support other keyboard layout. I like how Helix editor handles the config in nested way to represent mode. Maybe kind of abstracting major modes ("emacs", "vi insert", and "vi normal") into a single state combined with nested keybindings to support Vi actions. This way, we can put ChangeMode in ReedlineEvents and vi command into a nested one.
|
I think a helix-mode would go a long way into making the reedline experience more complete, now targeting the three major modal editors. Helix's philosophy is a bit like this (a small excerpt from their vision page on github):
helix also has multi-cursors but we could add it later. Also important to note that helix is heavily inspired by kakoune, so this would be satisfying for that group of users too. |
This issue is part of the larger vision discussion managed in #63 to brainstorm and prioritize ideas around features that would make
reedline
as a line editor for you both viable as well as pleasant to use. Feel free to up-vote features you depend on in other tools/shells as well as suggest new ideas!Keybinding Features
The text was updated successfully, but these errors were encountered: