Много информации о последовательностях клавиш можно почерпнуть из справочной страницы console_codes
. Например, для \e[1;5C
имеем:
ECMA-48 CSI sequences
CSI (or ESC [) is followed by a sequence of parameters, at most NPAR (16), that are decimal numbers separated by semicolons. (...) The action of a CSI sequence is determined by its final character.
Это говорит нам о том, что первое число 1
— это параметр, а C
— это действие. Глядя дальше вниз, мы можем успешно найти действие:
C CUF Move cursor right the indicated # of columns.
Это означает, что последовательность описывает клавишу, которая перемещает курсор вправо на один символ... это клавиша → !
Недокументированный (? )Здесь префикс 5
указывает на клавишу управления. Это упоминается в следующем документе , хотя я думаю, что это было бы проще (, но уж точно не просто! )чтобы угадать.
Я не знаю простого способа преобразовать подобный управляющий код в удобочитаемую -форму, однако преобразование в обратном направлении простое, нужно просто нажать C -v в Bash, за которым следует комбинация клавиш,и его управляющая последовательность будет отображаться на экране в символической форме, например, Ctrl + v , Ctrl→ даст ^[[1;5C
.
Вы можете загрузить исходный код из каталога GNU:
wget https://ftp.gnu.org/gnu/bash/bash-4.3.tar.gz
Используя apt
, он загрузит текущую доступную версию в Ubuntu. репозитории.
Добавив исходный репозиторий Xenial, вы можете скачать4.3-14
:
printf "deb-src http://security.ubuntu.com/ubuntu xenial-security main" |\
sudo tee /etc/apt/sources.list.d/xenial-src.list
sudo apt update
apt source bash=4.3-14ubuntu1.4