如果less
通过键入/search term
并跳转到搜索结果进行搜索,n并且N文本视图会跳转,以便搜索词的出现位于终端的顶部。在出现之前和之后显示文本的一半更有用,我想知道如何实现它。
使用该-j
选项。例如,如果您使用less -j3
,则匹配将显示在第 3 行。做你想做的事,即在终端的中心显示匹配:
less -j$((LINES/2))
Run Code Online (Sandbox Code Playgroud)
或者因为小于 397,可以在屏幕内指定一个百分比:
less -j.5
Run Code Online (Sandbox Code Playgroud)
注意:要永久执行此操作,即对于所有调用,您可以将此-j
n选项放在LESS
环境变量中。
这也会影响转到第N行的命令,例如,第N行将出现在终端的第 3 行,带有-j3
。一个小缺点是可以在文件开头之前得到虚假的空行,例如使用键<。编辑:我写了一个补丁来避免这个问题;有关其他详细信息,请参阅我的错误报告的此消息。此补丁仅允许在转到特殊行 0 时避免这些空行,这是键g
和的默认值<
。因此,它在实践中应该足够了。