我试了一下, mac 的终端,不管是 iterm2 还是 terminal , ctrl-w 删除词语时,会把 /作为分隔符。比如cd /var/log/apache2
,此时按ctrl-w
会变成cd /var/log/
。我想变成跟 linux 一样, ctrl-w 就直接删除到 cd 那里。也就是说把 delimeter 中的"/"去掉。我谷歌没有找到搜索结果呢。
1
thekoc 2016-12-05 12:44:47 +08:00
感觉要从 shell 的层面去做
|
2
imherer 2016-12-05 13:08:17 +08:00
不会啊,我刚刚用 terminal 和 iterm2 都试了, control+w 会删完的,只留下 cd 了
|
3
introom 2016-12-05 13:10:04 +08:00 via Android
你是什么 shell, 不同的 shell 绑定的函数可能不一样,很简单的问题,不要灰心,继续谷歌。
|
4
kfll 2016-12-05 13:13:25 +08:00
是不是改 inputrc 了
|
5
zhouzm 2016-12-05 14:02:58 +08:00
bash 和 zsh 不一样的行为。
在 zsh 下可以通过修改 WORDCHARS 的值来达到 ctrl-w 和 bash 一样的效果,(注意: alt-backspace 也会同步被改)。 http://unix.stackexchange.com/a/313812 |
6
mfinal 2016-12-05 15:35:54 +08:00
@zhouzm 说的没错,我试了原生 bash 会删到 cd , zsh 跟楼主说的一样只会到 log/。
解决方法的话就配置一下就好了吧。 |
7
xdz0611 OP 对,没有提到我用的是 zsh ,而且是 on my zsh 插件。
目测是这个插件各种胡搞导致我自定义的配置没有生效,试了下 WORDCHARS 和那个 autoload 都不行。 暂时忍忍吧。。 |