在zsh中删除像bash这样的单词(自动加载不起作用)

时间:2013-10-05 20:42:33

标签: zsh

我的.zshrc中有以下代码,我安装了.oh-my-zshell。

但是,以下行不起作用,如其他帖子所述:

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

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

1 个答案:

答案 0 :(得分:3)

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

由于我没有使用你的例子,这是我完成此操作的方法,第二个例子也是使用<A-Backspace>的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