gpt4 book ai didi

text - 如何使 zsh 单词导航/删除像 Vim 一样工作

转载 作者:行者123 更新时间:2023-12-03 14:50:20 25 4
gpt4 key购买 nike

我正在使用 zsh我希望单词导航/删除完全按照它在 Vim 中的工作方式来适应我的肌肉内存。

在 Vim 中,给定文本 foo ./bar baz-bob ,从第一个字符开始的每个向前导航的播放方式如下:

foo ./bar baz-bob
^ ^ ^ ^ ^^

在默认的 zsh 中,它是这样运行的:
foo ./bar baz-bob
^ ^ ^ ^

我已经设法使用 WORDCHARS=${WORDCHARS//[\/-]} 取得了一些成功.据我了解,这是通过删除 / 来实现的。和 -来自 WORDCHARS 的字符. WORDCHARS是一串字符,也是单词的一部分。
foo ./bar baz-bob
^ ^ ^ ^ ^ ^

注意:我知道 zsh 的 vi 模式,但我更愿意将 zsh 的默认模式配置为这种方式。

最佳答案

对于最新的 MacOS Sierra + iTerm2 + oh-my-zsh,如果我在输入 cd /usr/local/share/gobject-introspection-1.0 后连续按 CTRL W ,那么故事就变成了:

cd /usr/local/share/gobject-introspection-1.0
cd /usr/local/share/gobject-introspection-1.
cd /usr/local/share/gobject-introspection-
cd /usr/local/share/gobject-
cd /usr/local/share/
cd /usr/local/

我没有任何键绑定(bind)或其他配置文件。我不喜欢太多的文件。这是我的 .zshrc需要的部分:
...
bindkey -e
bindkey '^[[1;9C' forward-word
bindkey '^[[1;9D' backward-word
...

如果上述方法不起作用或者您不喜欢,那么您可以在 ~/.zshrc 上尝试一下。 :
WORDCHARS='*?_-.[]~=&;!#$%^(){}<>'

或者 :
autoload -U select-word-style
select-word-style bash

或( I found the below a gist which referred here):
tcsh-backward-delete-word () {
local WORDCHARS="${WORDCHARS:s#/#}"
zle backward-delete-word
}
bindkey '^W' tcsh-backward-delete-word

关于text - 如何使 zsh 单词导航/删除像 Vim 一样工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40761991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com