I am confused about how
Ctrl-key combinations work in terminal. In bash man page, there are various combinations such as:
C-e- go to end of the line
C-f- go one character forward
But then there are some undocumented shortcuts such as:
C-m) for return key.
C-ifor tab etc.
Are these shortcuts just forgotten to be documented? Or, because
in ASCII, is this somehow a "default" behavior? In other words, is the behavior for
C-i not implemented by bash but by something else?
Another question is, when I press
C-v and left arrow key,
^[[D appears on screen. I.e,
ESC-[-d. But when I press
ESC-[-d, the cursor does not move left. What is the reason for this?
Initially, I have thought that when I press
C-j, the keyboard directly sends
00001010 to kernel. But then I decided that this is not the case, because using programs such as
evtest, I have observed that key presses to
j appear as different events. So when I press
C-j, the keyboard does not send
00001010, but probably multiple bytes. Then where the conversion of these multiple bytes to
00001010 is done?