unix 如何为zsh自动完成设置tab?

u91tlkcl  于 2023-05-17  发布在  Unix
关注(0)|答案(5)|浏览(258)

我想为zsh自动编译插件设置标签。下面是配置的相关部分:

# Widgets that accept the entire suggestion
(( ! ${+ZSH_AUTOSUGGEST_ACCEPT_WIDGETS} )) && {
        typeset -ga ZSH_AUTOSUGGEST_ACCEPT_WIDGETS
        ZSH_AUTOSUGGEST_ACCEPT_WIDGETS=(
                forward-char
                end-of-line
                tab-char //my line
                vi-forward-char
                vi-end-of-line
                vi-add-eol
        )
}

使用的字符名的约定是什么?标签是如何命名的?

mzmfm0qo

mzmfm0qo1#

对于你们所有人都在为接受的答案而挣扎,我做了以下工作:

bindkey '^I' autosuggest-accept

...其中'^I'是tab。

41zrol4v

41zrol4v2#

你必须把

bindkey '       ' autosuggest-accept

.zshrc文件中。请注意,撇号之间的空格是制表符的一次击键。这与每个其他字符或字符组合的工作方式类似。例如,如果您想放置ctrl + space键的组合来触发接受,您可以添加

bindkey '^ ' autosuggest-accept

到文件。
这里有一个指向配置文件的链接,其中解释了这一点:https://github.com/zsh-users/zsh-autosuggestions#key-bindings

rnmwe5a2

rnmwe5a23#

这似乎在~/.zshrc中按预期工作:

bindkey '\t' autosuggest-accept

如果你想了解更多,你可以click here

v9tzhpje

v9tzhpje4#

.zshrc文件中:

bindkey '^I'   complete-word       # tab          | complete
bindkey '^[[Z' autosuggest-accept  # shift + tab  | autosuggest

https://github.com/zsh-users/zsh-autosuggestions/issues/532#issuecomment-907361899

brqmpdu1

brqmpdu15#

我知道这有点旧,但把它留在这里给那些以后试图使用这个的人。
我用的是

bindkey '^I^I' autosuggest-accept

如果我连续按两次tab键,它就完成了命令。如果我点击一次tab然后离开,我可以使用shell的建议并循环使用它们。

相关问题