Wishlist: A readline server
Readline makes using the command-line much nicer. However, it has various problems, and it doesn't go far enough:
- Cannot use the mouse to the move the position. This one is hard to explain to the GUI generation ...
- Not integrated into standard clipboard.
- All editing is done by the application. This is a pain if you're working over a slow link. Imagine ssh over a satellite link.
- Must be bundled into each application.
There are various approaches:
- Bundle readline into the C library, so all applications automatically get it. This gives all applications readline support, but doesn't solve any of the other issues. There are also licensing complications.
- Bundle readline-like editing into the kernel or the terminal handler. After all, the terminal handling code already does rudimentary editing, allowing deleting characters or words; why not just make it smarter? One complication is handling different terminal types - though do we really care about non-vt100-compatible terminals any more? Another complication is handling user preferences when it comes to key bindings, plus managing the history. Co-originating with a clip-board manager also means going outside teh kernel.
- Put more intelligent readline-like editing into the terminal application. One issue is that different people prefer different terminal applications. Another is that the application needs to know when the applications is in raw (character) mode and when it is in cooked (line) mode.
These partial solutions suggest we need terminal editing server - or at least a protocol.