Можно ли отобразить функциональные клавиши (F1-F12) на less с помощью lesskey?
Это не похоже на работу:
#command
F1 forw-line
Можно ли отобразить функциональные клавиши (F1-F12) на less с помощью lesskey?
Это не похоже на работу:
#command
F1 forw-line
Исторически, терминалы используют экранированные последовательности для функциональных клавиш, клавиш курсора и многого другого. Средства termcap и terminfo помогают справляться с изменениями между терминалами.
Сначала вам нужно определить, что ваш терминал отправляет, когда вы нажимаете F1, в bash вы можете сделать:
printf "%q\n" " Ctrl V F1 "
Во второй паре кавычек вы нажимаете Ctrl+V, чтобы буквально обработать следующее нажатие клавиши (дословно), а затем F1. На моем терминале (rxvt) я вижу
$'\E[11~'
так что моя последовательность F1 - escape [ 11 ~ , поэтому в .lesskey должно идти
#command
\e[11~ forw-line
запустите lesskey для обновления, и теперь F1 вызовет эту команду.
infocmp - это еще один способ узнать, как настроен ваш терминал, например
infocmp -L1 rxvt | grep key_f1=
См. Ответ Стефана Чазела здесь, чтобы получить более подробную информацию об этом, хотя less использует readline , для настройки readline требуется аналогичное понимание.