减少突出显示搜索模式而不是斜体

sgp*_*667 27 less man escape-characters

据我了解,manless用作寻呼机,并在使用less它搜索关键字时用斜体“突出显示”关键字。我觉得这真的很不方便,所以我想把它改成类似 vim 的东西set hlsearch,在那里找到的模式有不同的背景。

我试图运行,man -P vim systemd但以错误状态 1 退出,所以看起来我被less.

我在man less这方面找不到任何帮助(相反,我发现该选项-G会关闭突出显示所有内容,这比斜体更糟糕)。

话虽如此,有人知道如何在手册页中实现搜索突出显示(更改背景颜色)吗?

仅供参考,我运行的是 Ubuntu 14.10

我遇到了这个问题,似乎问了同样的问题,但我不确定我是否遵循了它的工作原理 ( LESS_TERMCAP_so)。该less手册页并没有提到这一点。(我用这个解决方案得到了奇怪的结果)

小智 17

在超级用户上找到答案:https : //superuser.com/questions/566082/less-doesnt-highlight-search

看起来这与您的 TERM 设置有关。例如,在正常的 gnome 终端窗口中,较少的突出显示(白色背景突出显示)通常会起作用,但是当我在 tmux 中时,会出现斜体。对我来说,不同之处在于 TERM 在 tmux 中被设置为“屏幕”,但在没有时设置为“xterm-256color”。当我在 tmux 窗口中设置“TERM=xterm-256color”时,较少的突出显示会回到背景突出显示。


Tho*_*key 12

提到的LESS_TERMCAP_so不完整。这是用于覆盖 termcap so(突出)功能的less 的特殊环境变量。要使用此功能,您还必须提供se(标准)功能。

的terminfo(5)手册页给出了这些功能的terminfo(SMSO / rmso)总结和termcap的(所以/ SE)名称:

   enter_standout_mode           smso       so        begin standout mode
   exit_standout_mode            rmso       se        exit standout mode  
Run Code Online (Sandbox Code Playgroud)

突出显示部分解释说:

如果您的终端具有一种或多种显示属性,则可以用多种不同的方式来表示这些属性。您应该选择一种显示形式作为突出模式,代表一种良好的、高对比度的、易于使用的、用于突出显示错误消息和其他引起注意的格式。(如果你有一个选择,倒车影像以及半亮好,或者单独倒车影像)的序列进入和退出突出模式给定为 smsormso分别。

如果要使用颜色来突出显示,则必须提供相应的LESS_TERMCAP_se重置颜色。只要您不希望出于其他原因(例如使用 groff 的 SGR 颜色功能)使用手册页中的颜色,这相对简单。

假设评论中建议的值:

export LESS_TERMCAP_so=$'\E[30;43m'
Run Code Online (Sandbox Code Playgroud)

那么你可以使用

export LESS_TERMCAP_se=$'\E[39;49m'
Run Code Online (Sandbox Code Playgroud)

顺便说一下,斜体的原因是 GNU 的终端描述screen使用斜体的标准转义序列作为它自己的突出/标准功能。其中一些在终端数据库条目中进行了讨论。