在zsh中删除类似bash的单词(自动加载不起作用)

在zsh中删除类似bash的单词(自动加载不起作用),zsh,Zsh,我的.zshrc中有以下代码,我已经安装了.oh我的zshell 然而,下面这一行并不像其他帖子所描述的那样有效: autoload -U select-word-style select-word-style bash 是否需要添加其他选项才能使其正常工作?如果您想要'^W'bash行为,您可能需要取消设置WORDCHARS或将其放置在单独的函数中,并绑定新创建的函数 由于我没有使用您的示例,这里是我实现这一点的方法,第二个示例也是使用实现bash兼容性的,这与下面定义的WORDCHAR有关

我的.zshrc中有以下代码,我已经安装了.oh我的zshell

然而,下面这一行并不像其他帖子所描述的那样有效:

autoload -U select-word-style
select-word-style bash

是否需要添加其他选项才能使其正常工作?

如果您想要
'^W'
bash行为,您可能需要取消设置
WORDCHARS
或将其放置在单独的函数中,并绑定新创建的函数

由于我没有使用您的示例,这里是我实现这一点的方法,第二个示例也是使用
实现bash兼容性的,这与下面定义的WORDCHAR有关

x-bash-backward-kill-word(){
    WORDCHARS='' zle backward-kill-word

}
zle -N x-bash-backward-kill-word
bindkey '^W' x-bash-backward-kill-word

x-backward-kill-word(){
    WORDCHARS='*?_-[]~\!#$%^(){}<>|`@#$%^*()+:?' zle backward-kill-word
}
zle -N x-backward-kill-word 
bindkey '\e^?' x-backward-kill-word
x-bash-backward-kill-word(){
WORDCHARS=''zle向后杀死单词
}
zle-nx-bash-backward-kill-word
bindkey“^W”x-bash-backward-kill-word
x-backward-kill-word(){
WORDCHARS='*?'-[]~\!\\\$%^(){}\\\`@\\$%^*()+:?'zle向后杀死单词
}
zle-nx-backward-kill-word
bindkey'\e^?'x-backward-kill-word

无论是否有我在问题中提到的
自动加载
部分,可能的重复对我来说仍然不起作用。拥有oh my zsh是否会引起一些冲突?oh my zsh功能丰富,有时会让人头痛。我建议您在没有oh my zsh和您提到的自动加载内容的情况下尝试这段代码。然后评估oh my zsh并将所需内容分发到小文件中,并通过.zshrc获取它们的源代码。将WORDCHARS=''更改为WORDCHARS='`~!@$%^&*()-_=+[{]}\|;:“,/?”““@Bohr非常感谢!在这样的环境下,这对我来说很有效:1.我没有安装oh my zsh 2.在macOS上可以删除,但不能跳过单词3.在ubuntu上,它可以删除和跳过单词