如何在 less 中禁用“v”键绑定?

如何在 less 中禁用“v”键绑定?

当我使用less并按下v它时,它会切换到当前设置的编辑器(Emacs 或 vim)。

MISCELLANEOUS COMMANDS
v    Edit the current file with $VISUAL or $EDITOR.

如果我不想在编辑器中打开当前文件,是否可以防止这种行为?

答案1

您可以v通过将其绑定到来禁用noaction:add

# command
v noaction

to ~/.lesskey(或者,如果$XDG_CONFIG_HOME设置了并且您使用的是less582 或更高版本,则$XDG_CONFIG_HOME/lesskey),并且如果您使用的是less581 或更早版本,则运行lesskey

您还可以绑定v到不同的命令。例如,要使其向下移动一行而不是打开编辑器,请使用

# command
v forw-line

反而。 (默认绑定是visual。)

禁用vin 的另一种方法less是设置VISUALtrue

VISUAL=true less foo

然后按下v将运行true foo,这将立即返回到less

答案2

您可以v通过将环境变量设置LESSSECURE为 来禁用该命令1

export LESSSECURE=1您可以在 shell 的初始化文件中为新的 shell 会话设置此项。

但请注意,这也会禁用!|:es命令,以及其他一些可能不安全的功能。请参阅手册中的“安全”部分less(1)

相关内容