阅读less
和lesskeys
手册页,我创建了一个文件,其中包含:
^B shell touch ~/testfile
并运行它lesskey
生成.less-test
,然后执行less -k .less-test file
。这一切都工作正常并且达到了我所希望的效果,除了我需要按两次 Enter 键才能实际执行 shell 命令并返回到file
.更改命令以touch ~/testfile\n
消除对其中一个回车键的需要,但touch ~/testfile\n\n
无法消除它们。有没有办法绕过这里按回车键?
作为后续问题(并解释为什么我首先要问)——我将其作为文件标记的过程来执行,其中我使用 less 检查文件并希望使用这些热键写入另一个带有两个标签之一的文件(我计划将其绑定到两个不同的键序列)。因此,除了不必像上面那样按两次 Enter 之外,我还想知道是否有一种方法可以立即移动到下一个文件(与next-file
lesskey 命令一样)(即除了标记之外不按其他键)键序列)。
答案1
它将始终显示“!完成”消息。
如果需要,您可以在 command.c(第 272 行和第 274 行)中将“!done”更改为 NULL 以消除此行为。
例如,要使其在 touch 命令之后执行下一个文件,您可以添加以下绑定:
^B shell touch ~/testfile\n:n\n
(:n 是下一个文件的默认绑定)