Custom Indexing (and potentially extended kb-select bindings) #1810
yuki-tsubaki
started this conversation in
Ideas/Feature Requests
Replies: 1 comment 1 reply
-
Beta Was this translation helpful? Give feedback.
1 reply
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Background
As a lover of the Vim philosophy around keybindings, i.e. use one specific command over multiple general commands, I love the idea of key bindings that automatically select a given index from the list without having to filter or use arrow keys.
While I love the concept, I feel that two things hold rofi back in this regard:
kb-select
commands (which correspond to these index numbers.I think this selection method would be much more powerful if users could change the character set used to label the indexes and, if reasonable to implement, have a dynamic number of index labels and corresponding
kb-select
keybindings.Use Cases
In my case, I would like to use home row letters and a few other easy to reach characters in my select commands along with a set modifier key for all of them. If possible it would be nice to have more than 10 indexes so I can launch my most commonly used programs in 1 key-chord from combi mode even when I have many windows open (although it would be nice even if I could use just 10 with custom index labels).
Right now the index feature feels like it is stuck in an awkward position—it only really fits in themes with exactly ten lines, and the people who would be most likely to use it (keyboard-everywhere, TWM and Vim/Emacs users) are also the most likely people to feel limited by the inherent tie to numerical indices.
In general, expanding the index selection functionality could take it from feeling like an awkward afterthought to a versatile and powerful feature.
Examples and Potential Implementation
As an example of a program that does what I am requesting here, this is a screenshot of my Japanese input method, skk (using fcitx5, although it was originally made for Emacs in the 80's) .
https://i.postimg.cc/Xv0tVw6b/nice-completion.png
I don't need to tab/scroll through the options shown, I can just press one letter to select what I want
As for implementation, the programs that I have seen that use custom character sets for selection (Tridactyl and Nyxt come to mind) use functions to map the keys to the actions which contradicts how you seem to handle all the other bindings (if I am right that this is done in
keyb.c
). However even if it isn't reasonable to use a dynamic key-binder, simply adding a configuration option where you can give a list of index characters would make non-numerickb-select
much more viable.Beta Was this translation helpful? Give feedback.
All reactions