следоватьurxvt: прокрутить только одну строку
Как настроить сочетания клавиш так, чтобы сочетание клавиш Shift+Up прокручивало одну строку вверх в xterm?
решение1
ИспользоватьX ресурсызадокументировано вСтраница руководства XTerm, особенно раздел «ДЕЙСТВИЯ» примерно на 80% ниже.
Создайте файл ~/.Xresources
и поместите в него:
XTerm.VT100.translations: #override \
Shift <Key>Up: scroll-back(1) \n\
Shift <Key>Down: scroll-forw(1)
"Translations" — это базовое название библиотеки Xt для привязок клавиш и мыши. Это устанавливает привязки для компонента VT100 (эмуляция терминала) XTerm, переопределяя любые существующие привязки и устанавливая Shift-Up для прокрутки вверх (или "назад") на одну строку, а Shift-Down для прокрутки вниз ("вперед") на одну строку. Мы создаем одну длинную строку, поэтому используем обратные косые черты в конце, чтобы обозначить продолжение.
Как и при любом использовании .Xresources
, вам нужно будет либо задать XENVIRONMENT
переменную, указывающую на правильное место, либо использоватьxrdb -merge ~/.Xresources
для явной загрузки файла в менеджер ресурсов.
решение2
Ответ Майкла Хорнера близок, но он упускает из виду одну деталь:
XTerm.VT100.translations: #override \
Shift <Key>Up: scroll-back(1) \n\
Shift <Key>Down: scroll-forw(1)
использует единицы измерения по умолчанию для прокрутки. Чтобы убедиться, что вы получаетелинии, вам необходимо добавить параметр:
XTerm.VT100.translations: #override \
Shift <Key>Up: scroll-back(1,line) \n\
Shift <Key>Down: scroll-forw(1,line)
На странице руководства упоминаются единицы измерения при описанииscroll-back
иscroll-forw
, но не упоминает в этом абзаце, что значение по умолчанию установлено другим ресурсом,scrollLines
:
scrollLines (class ScrollLines)
Specifies the number of lines that the scroll-back and scroll-
forw actions should use as a default. The default value is 1.