当我调用像man这样的命令时,它会将所有内容放入缓冲区,并且一次只显示一个页面。我可以使用我的方向键或空格键进行导航,但我希望它能够立即显示所有内容而无需滚动浏览。我需要做些什么来改变它?我很确定这是一些关键的绑定,但我无法弄明白。
如果只是自动滚动到最后,我会更喜欢它。如果有一些命令我可以进入以使其自动执行此操作,请告诉我。如果我必须使用键绑定来使其向下滚动到缓冲区的末尾,或者将所有内容发送到shell,那么请告诉我。
如果我正在做一个键绑定,我更喜欢它像shift / command + down一样向下滚动。然后我可能会绘制一个类似的图片来重新开始。
感谢。
答案 0 :(得分:2)
当您使用man
时,它会通过寻呼机传递您的结果。如果您尚未对其进行配置,则在Mac上为/usr/bin/less -is
。
绕过寻呼机的一种方法是将其设置为ul
。例如:
% man -P ul ls
LS(1) BSD General Commands Manual LS(1)
[...]
ul
是一个过滤器,可确保保留粗体和下划线。它们分别由X^HX
和X^H_
以相当古老的方式编码,现代终端不支持;寻呼机通常将这些转换为终端转义序列。
使用man
,还有其他几个选项:
man
页面的“帮助”菜单。
按下
⇧ ⌘ /
并键入您的页面名称
想要,然后从菜单中选择它(虽然我认为这使用了一个
不幸的是固定路径)。这个
只需在新的终端窗口中为您运行man -P ul
。另一个是渲染
PostScript,OS X可以转换
到PDF格式,格式很好
打印如果你想。我去过
使用此zsh
功能多年:
gman() {
PDF=/tmp/man.$$.pdf
print 'Converting to PDF...'
man -t $@ | /usr/bin/pstopdf -i -o $PDF
print 'Opening...'
open $PDF
{ sleep 5; rm -f $PDF } &!
}
答案 1 :(得分:0)
将寻呼机更改为cat
而不是默认设置(我的机器上为/usr/bin/less -is
)应该可以执行您想要的操作。来自man(1)
man page:
-P 寻呼机
指定要使用的寻呼机。此选项会覆盖
MANPAGER
环境变量,该变量会覆盖PAGER
变量。默认情况下,man
使用/usr/bin/less -is
。 “
因此,您可以执行man -P cat whatever
,也可以将环境中的MANPAGER
和/或PAGER
设置为cat
并获得相同的行为。
答案 2 :(得分:0)
less
寻呼机通常是大多数系统的默认寻呼机,它已经具有直接到输入结束和开始输入的键绑定:
g
将转到输入的开头G
(实际上是Shift+g
的内容,除非您使用大写锁定键输入)将转到输入的末尾