Open RolandMarchand opened 1 week ago
Pretty sure we have at least most of these? #3027 added u, l, c for example.
Huh, that's curious. I confirm to have tested all the shortcuts listed above, and they are not implemented as of c136280891cecfdd935f470abfa1fef3a3eeee2d. I can provide more detail about my build if requested.
Here's a list of all the implemented keybinds:
ctrl('N')
ctrl('P')
ctrl('A')
ctrl('B')
ctrl('D')
ctrl('E')
ctrl('F')
ctrl('H')
DEL
ctrl('K')
ctrl('L')
ctrl('R')
ctrl(']')
Key { ctrl(']'), Key::Alt }
ctrl('T')
'\n'
Vector<Key> { ctrl('X'), ctrl('E') }
Key { '.', Key::Alt }
ctrl('Y')
Key { 'b', Key::Alt }
Key { 'f', Key::Alt }
Key { ctrl('B'), Key::Alt }
Key { ctrl('F'), Key::Alt }
Key { '\b', Key::Alt }
Key { 'd', Key::Alt }
Key { '\\', Key::Alt }
Key { 'c', Key::Alt }
Key { 'l', Key::Alt }
Key { 'u', Key::Alt }
Key { 't', Key::Alt }
m_termios.c_cc[VWERASE]
m_termios.c_cc[VKILL]
m_termios.c_cc[VERASE]
Of the list mentioned by the OP, these are not implemented:
ctrl('_')
Vector<Key> { ctrl('X'), ctrl('X') }
Key { 'r', Key::Alt }
As for Alt+{u,l,c} not working, I just tested them (on lagom) and they're fine; might be a Terminal issue if you're testing from within Serenity.
Some GNU Bash/Readline shortcuts are not implemented in LibLine as of the latest commit c136280891.
Missing shortcuts (in order of personal usage):
Cancel the changes and put back the line as it was in the history(N/A, Shell's history is copied, not reference)Shell already implements many existing GNU Bash shortcuts, so I am proposing to extend the list.
I am not sure if the existing shortcuts are specifically implemented in LibLine, or in Shell, Terminal, or elsewhere. Since GNU Readline implements those shortcuts, I think LibLine should, too, if it was to have them.
Edit: this issue might be a good fit for the label "good first issue."