我在哪里可以找到一份使用bindkey
的zsh
命令列表,并带有描述?
每次我查找某个标准操作(例如,end-of-line
)的名称时,都需要进行谷歌搜索并猜测找到的命令是否是我要寻找的。
相关:
- 解释zsh bindkey转义序列 (SO)
- Z-Shell行编辑器 (doc)
我在哪里可以找到一份使用bindkey
的zsh
命令列表,并带有描述?
每次我查找某个标准操作(例如,end-of-line
)的名称时,都需要进行谷歌搜索并猜测找到的命令是否是我要寻找的。
相关:
bindkey -l
命令将给出现有键位映射的列表。
bindkey -M <keymap>
命令将列出特定键位映射中所有绑定的键位。
如果你在 zsh 命令行中使用 emacs 模式,则 emacs
键位映射可能最为重要。
如果你在 vi 模式下使用,则可能会对 viins
和 vicmd
感兴趣。
(有关更多详细信息,请参阅zshzle(1)
手册页。)
一旦你有了键位绑定列表,就可以在官方 ZLE 文档 中搜索操作名称(或 zsh 术语中的“widget”)。
zle -al
列出所有已注册的zle命令
可用于行编辑器的命令称为小部件(widgets)。标准小部件列于zshzle
手册的STANDARD WIDGETS
章节中。该手册也可以从zsh网站获取。
$ bindkey
,例如($ bindkey|grep case
,查找down-case);$ zle -al
用于列出所有注册的zle命令;$ vim ~/.zshrc
,添加# bindkey
bindkey "^U" backward-kill-line
bindkey "^u" backward-kill-line
bindkey "^[l" down-case-word
bindkey "^[L" down-case-word
# alt+<- | alt+->
bindkey "^[f" forward-word
bindkey "^[b" backward-word
# ctrl+<- | ctrl+->
bindkey "^[[1;5D" backward-word
bindkey "^[[1;5C" forward-word
我正在使用putty上的zsh。对于我来说,绑定键是不同的。你可以通过按下CTRL+V
,然后按下左箭头来查找这个信息。它会显示使用的字符序列。所以对于我来说,它是:
bindkey "^[[D" backward-word
bindkey "^[[C" forward-word
bindkey "^H" backward-kill-word
read
命令对我有效,因为我将 ctrl+v
绑定到粘贴:https://www.techrepublic.com/article/find-and-bind-key-sequences-in-bash/ - DharmaTurtleoh-my-zsh
之后,我输入bindkey 'anything'
,然后按tab键,再输入yes
。可以清空可用的绑定键列表。
bindkey
命令而不带参数会打印出所有的按键绑定。 - Keith Hughittbindkey
将显示main
键映射的内容。main
是emacs
或viins
的别名,具体取决于您是否设置了类似于emacs或vi的行编辑。只有使用-M
标志才能看到vicmd
的内容。 - wjv