如何理解bindkey

如何理解bindkey

从这个页面获取有关如何自定义 zsh 的信息,我遇到了这个

# oh wow!  This is killer...  try it!
bindkey -M vicmd "q" push-line

我无法找到 bindkey 的手册页,也无法理解所绑定的密钥是什么、意味着什么-M以及是什么vicmd

所以我不知道如何知道美化器杀手功能是什么:)

答案1

% type bindkey
bindkey is a shell builtin

因此它的文档位于 zsh 手册中,而不是其自己的手册页中。虽然有一个man zshbuiltins,但bindkey内置函数没有在那里记录,因为它是 zsh 的半自治部分(行编辑器 zle)的一部分,因此它记录在man zshzle.

run-help bindkey您可以通过在 zsh 中运行或M-h在光标位于命令上时按 来查找文档bindkey。这需要run-help正确设置,但由于某种原因,默认情况下并非如此:它是 的别名man。要获得有用的run-help,请将这些行放入您的 中.zshrc

unalias run-help 2>/dev/null
autoload -U run-help

或者,使用man zshall.或者,如果您正在浏览本手册的超文本版本,请使用功能索引,其中还列出了内置函数。


vicmd是个键位图在 vi 命令模式下使用。push-line是一个编辑器小部件, 其中有他们自己的索引。所以这个命令使qvi 命令模式下的当前行“暂停”(由于某种原因,这个功能确实很有用,但在 emacs 模式下默认只绑定到一个键)。

相关内容