在联机帮助页中模拟 vim 的滚动

在联机帮助页中模拟 vim 的滚动

我所遇到的问题可以通过以下示例得到最好的说明:

我知道curl 允许我执行POST 请求,但我不记得如何执行。于是我打开man curl,开始寻找POST。问题是每个结果都从某个选项描述的中间开始,我需要向上滚动(许多)行才能查看命令和描述的开头。

老实说,我很确定通过网络搜索相同的东西会更快。

为了使浏览手册页的过程更加舒适,我想到了两个解决方案:

  1. 模拟 vim 的scrolloff功能,让您至少保留N当前选定行上方和下方的行。
  2. 使用其他一些搜索,而不是在突出显示的单词处对齐当前行,而是在节的开头对齐。

这样我就能够立即查看我寻找的选项是否相关。

答案1

manless内部使用,并且less-j几乎类似的选项scrolloff功能的选项(请参阅这个答案)。负值会将搜索保留在屏幕底部。

因此,如果您这样做info curl|less -j 4,您将能够在文本上方保持 4 行的同时进行搜索,如果您这样做info curl|less -j -4,您将能够在文本下方保持 4 行并“拥抱”屏幕底部边缘的同时进行搜索(我相信这个更有用。)

您也可以通过定义环境变量来完成此操作,而不是手动info进行管道传输lessmanless管道传输(请参阅这个答案) - 即默认LESS=-j4使用less-j4如果你不想污染环境,你可以做一个man这样的函数:

man() {
    env LESS=-j-4 man "$@"
}

这将导致它在子 shell 中运行,因此变量将被清除。

相关内容