Thursday, January 21, 2021

Shift+{Left|Right}_Arrow pressed generates C, D in bash

This situation made me stuck for a while, especially in comparison of two equal Linux systems. One Linux generates ;2D while another generates simply short D ( :-) ) when shift-left_arrow combination was pressed (it actually expected to be Esc[1;2D , but the shell ate first two symbols (Esc[ is the control sequence introducer, see console_codes (4))

It's very difficult to answer shortly what was going on because where were a lot of Linux players (program layers, terminal types etc.) in the chain between keys pressed and actually displayed on the terminal window. One of the widespread "players" is a readline library. I'm totally unable to explain that, but simple creation of the empty .inputrc file in the home directory solved the issue.

Good Luck !

No comments:

Post a Comment