Я устал от shift-pgup, чтобы перебирать страницы в терминале gnome, командной строке, терминаторе, guake и т. Д.
Есть ли способ легко заставить эти приложения использовать прямые клавиши перемещения вверх и вниз для перемещения по страницам?
Боюсь, что это невозможно, так как PgUp / PgDown не будут отправлены приложениям командной строки, что сделает некоторые из них непригодными для использования. Это хорошая старая функция Unix.
Если вы хотите более удобную прокрутку, я предлагаю использовать команду less
. Он используется следующим образом:
command-with-lot-of-output | less
Это запустит команду less
с выводом вашей исходной команды. ( Подробнее о передаче результатов в другие программы можно найти здесь: http://www.dsj.net/compedge/shellbasics1.html )
Меньше можно перемещаться с помощью стрелок или PgUp / PgDown. Для вашего удобства он также обеспечивает поиск и многое другое (подробнее см. man less
). Вы можете выйти из less
, просто нажав клавишу q
.
Вы можете использовать команду more
следующим образом:
command-with-lots-of-output | more
это запустит исходный вывод вашей команды с большим количеством.
more
можно перемещаться с помощью «пробела». Просто нажмите пробел и увидите вывод команды в виде страниц.
Используйте xterm
и настройте сочетания клавиш (в ~/.Xresources
) следующим образом:
xterm*VT100.Translations: #override \n\
<KeyPress>Prior:scroll-back(1,page)\n\
<KeyPress>Next:scroll-forw(1,page)\n\
gnome-terminal
говорит, что PageUp / PageDown предназначен для приложений в терминале, и их использование может привести к путанице. .
Konsole является эмулятором терминала для KDE, который предоставляет соответствующую возможность, в которой может быть настроен для использования клавиш Page Up и клавиш Page Down для прямой подкачки страниц. Нет никаких других эмуляторов терминала, которые я нашел столь же легким как Konsole для такой настройки.
Как направить подкачку страниц
В Konsole сделайте следующие шаги.
В строке меню перейдите к "Настройкам" и нажмите "Configure Current Profile..." (Kubuntu 12.04), или "Изменяют Текущий Профиль..." (Kubuntu 16.04) и окно появятся.
Нажмите на вкладку (Kubuntu 12.04) или "Keyboard" вкладки "Input" (Kubuntu 16.04), который имеет раздел под названием "Привязки клавиш" с предопределенными списками привязок клавиш.
Выберите "Значение по умолчанию (XFree 4)" и нажмите кнопку "Edit...", затем другое окно появится.
Прокрутите вниз и ищите сочетание клавиш PgDown-Shift-AnyModifier
с выводом \E[6~
. Переименуйте этот вывод к ScrollPageDown
.
Прокрутите вниз и ищите сочетание клавиш PgUp-Shift-AnyModifier
с выводом \E[5~
. Переименуйте этот вывод к ScrollPageUp
.
Нажмите кнопку "OK", чтобы закончить и закрыть окна.
Как протестировать вывод
На шаге 3 существует "Зона испытания" для подтверждения вывода для каждого нажатия клавиши.
Нажмите для обеспечения фокуса во "Входе": текстовое поле и нажимает Page Up и клавиши Page Down (по одному).
Подтвердите вывод для совпадения с переименованный в.
Или, запишите простой сценарий для повторения сообщения в цикле. Я включал свой собственный сценарий как после.
Скопируйте и вставьте следующие строки кода в текстовом редакторе.
#!/bin/bash
echo "Started script"
echo "If no input, then loop"
while true
do {
echo "Hello, world"
echo "Wait 1 second to loop [q to quit]"
read -t 1 -n 1 INPUT && echo
if [ "$INPUT" == "q" ]
then break
else echo "UTC now: $(date -u +%H%M%S)"
fi
continue
}
done
echo "Ended script"
Сохраните как файл т.е. loop.sh
и запущенный скрипт в терминале т.е. bash loop.sh
(неисполняемый файл).
Ожидайте, пока отраженные сообщения не заполняют область просмотра и начали прокручивать вывод вниз.
Затем нажмите Page Up и клавиши Page Down, чтобы прокрутить и прокрутить область просмотра вниз.
Я протестировал использование Konsole 2.8.5, KDE 4.8.5 в Kubuntu 12.04.
Премия: Сочетание клавиш и вывод
Хорошо, бонусный ответ для разъяснения. Можно задаться вопросом, почему я должен был отредактировать их сочетание клавиш и не другие. Я понял это ранее путем тестирования нескольких типов клавиатуры.
Следующее является сочетанием клавиш по умолчанию и его выводом, которые были вычислены с помощью "Зоны испытания" в Konsole.
Для основной Page Up / клавиши Page Down (включая вариант клавиатуры, который требует для нажатия клавиши Fn иначе. Fn+PgUp/Fn+PgDn):
Сочетание клавиш: PgDown-Shift-AnyModifier
Вывод: \E[6~
Сочетание клавиш: PgUp-Shift-AnyModifier
Вывод: \E[5~
Для вторичной Page Up / клавиши Page Down (ярлык по умолчанию в терминале, который требует клавиши Shift иначе. Shift+PgUp/Shift+PgDn):
Сочетание клавиш: PgDown+Shift-AppScreen
Вывод: ScrollPageDown
Сочетание клавиш: PgUp+Shift-AppScreen
Вывод: ScrollPageUp
Заметьте это минус -
и плюс +
знаки отличаются между каждым ключевые слова для основных и вторичных ключей. Это - то, как нажатия клавиш переводятся в эквивалентные символы, по крайней мере, в Konsole.
Однако я не уверен, если те эквивалентные символы на самом деле поняты под другими эмуляторами терминала. Это - насколько я знаю по собственному опыту.
Вердикт
Для продвинутых пользователей, которым не нравится иметь дело с различными конфигурационными файлами и такими утомительными обходными решениями, Konsole легко покорит Ваше сердце. Кажется, что никто не замечал к этому уровню настройки, предлагаемой Konsole и KDE в течение прошлых четырех лет. Как странный.