让终端使用pageup / pagedown而不是shift-pageup / shift-pagedown?
我已经非常厌倦了shift-pgup在gnome终端,命令行,终结符和guake等中的页面。
是否可以轻松地使这些应用程序使用直接向上翻页和向下翻页键进行翻页?
我担心这是不可能的,因为没有PgUp / PgDown将被发送到命令行应用程序,这将使其中一些不可用。 这是很好的日子Unixfunction。
如果你想要更加用户友好的滚动,我建议使用less
命令。 它以这种方式使用:
command-with-lot-of-output | less
这将使用原始命令的输出启动less
命令。 ( 有关管道输出到其他程序的更多信息,请访问: http : //www.dsj.net/compedge/shellbasics1.html )
可以使用箭头或PgUp / PgDown导航较少。 为了您的方便,它还提供搜索和更多(更man less
)。 只需点击q
键即可退出。
使用xterm
并调整键绑定(在~/.Xresources
),如下所示:
xterm*VT100.Translations: #override \n\ Prior:scroll-back(1,page)\n\ Next:scroll-forw(1,page)\n\
gnome-terminal
表示PageUp / PageDown用于终端内的应用程序并使用它们会让人感到困惑……
Konsole是KDE的终端仿真器,提供相关选项,其中可以配置为使用Page Up和Page Down键进行直接分页。 我发现没有其他终端模拟器像Konsole一样容易进行此类定制。
如何直接分页
在Konsole中,执行以下步骤。
-
在菜单栏中,转到“设置”,然后单击“配置当前配置文件…”(Kubuntu 12.04)或“编辑当前配置文件…”(Kubuntu 16.04),将出现一个窗口。
-
单击“输入”选项卡(Kubuntu 12.04)或“键盘”选项卡(Kubuntu 16.04),其中包含一个名为“键绑定”的部分,其中包含预定义的键绑定列表。
-
选择“默认(XFree 4)”并单击“编辑…”按钮,然后会出现另一个窗口。
-
向下滚动并查找组合
PgDown-Shift-AnyModifier
与输出\E[6~
。 将此输出重命名为ScrollPageDown
。 -
向下滚动并查找组合
PgUp-Shift-AnyModifier
与输出\E[5~
。 将此输出重命名为ScrollPageUp
。 -
单击“确定”按钮完成并关闭窗口。
如何测试输出
在步骤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键向上滚动并向下滚动查看区域。
我在Kubuntu 12.04中使用Konsole 2.8.5,KDE 4.8.5进行了测试。
奖励:关键组合和输出
好的,奖金答案澄清。 有人可能想知道为什么我必须编辑那些关键组合而不是其他组合。 我之前通过测试几种键盘来解决这个问题。
以下是默认组合键及其输出,已使用Konsole中的“测试区域”进行了计算。
对于主页面向上/向下翻页键(包括需要按Fn键的键盘变体,即Fn + PgUp / Fn + PgDn):
-
组合
PgDown-Shift-AnyModifier
:PgDown-Shift-AnyModifier
输出:\E[6~
-
组合
PgUp-Shift-AnyModifier
:PgUp-Shift-AnyModifier
输出:\E[5~
对于辅助Page Up / Page Down键(终端中的默认快捷键,需要Shift键,Shift + PgUp / Shift + PgDn):
-
组合
PgDown+Shift-AppScreen
:PgDown+Shift-AppScreen
输出:ScrollPageDown
-
组合
PgUp+Shift-AppScreen
:PgUp+Shift-AppScreen
输出:ScrollPageUp
请注意,主键和辅助键的每个关键字之间的减号和加号不同。 这些是按键被翻译成等效字符的方式,至少在Konsole中是这样。
但是,我不确定其他终端仿真器是否真正理解了这些等效字符。 根据自己的经验,这是我所知道的。
判决书
对于不喜欢处理各种配置文件和繁琐的解决方案的高级用户,Konsole将轻松赢得您的心。 似乎没有人注意到过去四年来Konsole和KDE提供的这种定制水平。 多么奇怪。
您可以使用more
命令,如下所示:
command-with-lots-of-output | more
这将启动您的命令原始输出更多。
more
可以使用’space’进行导航。 只需按空格键即可将命令输出视为页面。