Вырезание и вставка (удаление и возврат) текста
В документации к Readline используется термин killing and yanking (удаление и возврат), обозначающий операцию, которую обычно называют вырезанием и вставкой (cutting and pasting). В табл. 8.3 перечислены комбинации клавиш, выполняющие вырезание и вставку. Вырезанные элементы сохраняются в кольцевом буфере, который называется kill-ring (кольцо удалений).
Таблица 8.2. Команды редактирования текста
Клавиша
Действие
CTRL+D
Удаляет символ в позиции курсора
CTRL+T
Меняет местами два символа — в позиции курсора и предшествующий ему
ALT+T
Меняет местами два слова — в позиции курсора и предшествующий ему
ALT+L
Переводит в нижний регистр символы, начиная с символа в позиции курсора и до конца слова
ALT+U
Переводит в верхний регистр символы, начиная с символа в позиции курсора и до конца слова
Таблица 8.3. Команды вырезания и вставки
Клавиша
Действие
CTRL+K
Удаляет символы от позиции курсора до конца строки
CTRL+U
Удаляет символы от позиции курсора до начала строки
ALT+D
Удаляет символы от позиции курсора до конца текущего слова
ALT+BACKSPACE
Удаляет символы от позиции курсора до начала текущего слова. Если курсор находится в начале слова, удаляется предшествующее слово
CTRL+Y
Извлекает текст из кольцевого буфера удалений и вставляет его в позицию курсора
клавиша meta
Отважившиеся заглянуть в документацию к Readline, которая находится в разделе «READLINE», на странице справочного руководства (man) для bash, столкнутся с термином клавиша meta (meta key). На современных клавиатурах ей соответствует клавиша ALT, но так было не всегда.
В стародавние времена (до появления IBM-совместимых персональных компьютеров, но после появления Unix) персональные компьютеры не были так широко распространены. Иногда их заменяли устройства, называемые терминалами. Терминал — это коммуникационное устройство с текстовым дисплеем и клавиатурой, имеющее внутри столько электроники, сколько необходимо для отображения символов и перемещения курсора. Терминалы подключались (обычно посредством последовательного кабеля) к большому компьютеру или коммуникационной сети большого компьютера. В то время существовало очень много различных терминалов, имевших разные клавиатуры и дисплеи с разными функциональными возможностями. Так как все они поддерживали как минимум набор символов ASCII, разработчикам программного обеспечения, пишущим переносимые приложения, необходимо было прийти к общему знаменателю. В системах Unix применяется очень сложный способ использования терминалов и их разнообразных возможностей. Поскольку разработчики Readline не были уверены в наличии специализированной управляющей клавиши, они изобрели ее и назвали meta. На современных клавиатурах роль клавиши meta играет ALT, однако если вы все еще используете терминал (до сих пор поддерживаются в Linux!), можно просто нажать и отпустить клавишу ESC, и вы получите эффект нажатия и удержания клавиши ALT.