如何将标记保存在 less 中以供以后访问?

如何将标记保存在 less 中以供以后访问?

如果我在 less 中标记一行,则当当前 less 会话结束时,标记将丢失。

所以,假设,如果我经常检查 bash 手册页中的 READLINE 部分,我^REA每次都必须进行搜索。

好像 less 没有任何配置文件。有没有办法把标记保存得更少,以便下次使用?

答案1

less我看的版本中没有。另一个问题是可能会写入临时文件,那么即使它们被保存,标记之间man将如何排列?/tmp/man.sLCaUQkJ3k/tmp/man.yuvNSUrFZo

我们可以作一点欺骗,并使用vim它进行适当的配置保存标记以供将来使用,并且还为每个man页面使用相同的文件名。请注意,系统范围的临时目录很可能是放置静态文件名的非常糟糕的地方,除非您想生成新的 CVE。

function mman {
   man "$1" | col -bx > "$HOME/tmp/man.$1"
   vim -R "$HOME/tmp/man.$1"
   #rm "$HOME/tmp/man.$1"
}

生成的页面可以立即删除,也可以使用 cron 作业来清理它们。另一个问题是man不支持 man 部分名称或其他参数,因此此代码可能需要很复杂才能处理man 3 rand相同的内容man rand(尽管这两个可能不同,具体取决于您的系统以及 OpenSSLrand手册页是否侵入) 。

答案2

无法在调用之间保留标记......但是:

所以,假设,如果我经常检查 bash 手册页中的 READLINE 部分,我^REA每次都必须进行搜索。

less默认保存搜索历史记录。它将它存储在 中~/.lesshst,可以通过将$LESSHISTFILE环境变量设置为指向另一个文件的路径来覆盖它。因此,至少您可以使用它来搜索您之前使用过的正则表达式(假设您经常使用相同的正则表达式)。我希望您可能会发现它很有用(如果您不知道它)。

相关内容