Аналогичный подход заключается в использовании Xdummy, если xserver-xorg-video-dummy доступен в вашей изолированной системе. Он использует некоторые фиктивные драйверы и предоставляет X-сервер, который может работать без привилегий root. Вы можете найти некоторые объяснения и образец xorg.conf на веб-сайте xpra: https://xpra.org/trac/wiki/Xdummy . Требуется установить X, но не не нужен работающий X-сервер.
(Извините, у меня недостаточно репутации, чтобы опубликовать это в качестве комментария)
Что-то вроде этого:
"\e[1;5C": forward-word
"\e[1;5D": backward-word
"\e[H": beginning-of-line
"\e[F": end-of-line
"\eOH": beginning-of-line
"\eOF": end-of-line
"\e[1~": beginning-of-line
"\e[4~": end-of-line
В зависимости от настроек терминала и от того, используете ли вы экран
, xterm
будет отправлять эти варианты для Home и End , в то время как клавиши модифицированного курсора Control отправляют согласованное значение. Вы можете изменить это (с xterm
: другие терминалы, как правило, нет).
Control/Del и control/Backspace, вероятно, не будут работать, если только под Del вы не подразумеваете нижнюю левую клавишу на 6-клавишной клавиатуре редактирования. Для xterm это отправляет "\e[3;5~"
.
С помощью putty у вас мало вариантов для «стрелок ctrl», поскольку он использует модификатор управления для переключения между нормальным и приложением режимами клавиш курсора. То есть вы будете переключаться между "\e[C" (обычный) и "\eOC" (приложение). Кроме того, можно изменить начало/конец (на то, что разработчики шпатлевки назвали «rxvt»), чтобы получить «\e[H», упомянутый выше.
Дополнительная литература:
Функциональные клавиши и клавиши курсора отправляют escape-последовательность, которая начинается с символа ESC (escape ). Нажмите Ctrl + V , затем клавишу или сочетание клавиш. Это буквально вставляет символ ESC, за которым следуют остальные символы escape-последовательности.
Например, предположим, что вы нажимаете Ctrl + VCtrl + Влево , и он вставляет ^[O5D
. ^[
— escape-символ. Затем в .inputrc
вы свяжете его с
"\eO5D": backward-word
Escape-последовательность для данного ключа зависит от терминала, поэтому вы можете в конечном итоге привязать более одной escape-последовательности к одной и той же функции, в зависимости от того, какие терминалы вы используете и как вы их настраиваете. Хорошая новость заключается в том, что по большому счету нет управляющих последовательностей, соответствующих разным клавишам на разных терминалах.
Многие терминалы не отправляют отдельные escape-последовательности для всех клавишных сочетаний. Например, вы можете обнаружить, что Ctrl + Влево и Ctrl + Shift + Влево отправляют одну и ту же управляющую последовательность.. Может быть, а может и не быть способа исправить это в конфигурации терминала;см. этот пост для обсуждения, ориентированного на Emacs -. См. также Как сделать исчерпывающий набор возможностей для определения "командных символов" экрана GNU -? и Как работает ввод с клавиатуры и вывод текста? и Как сделать исчерпывающий набор возможностей для определения "командных символов" экрана GNU -? для получения дополнительной информации по теме.