求助 mac 的 terminal 中自定义 ctrl-w 的分隔符

2016-12-05 11:08:21 +08:00
 xdz0611

我试了一下, mac 的终端,不管是 iterm2 还是 terminal , ctrl-w 删除词语时,会把 /作为分隔符。比如cd /var/log/apache2,此时按ctrl-w会变成cd /var/log/。我想变成跟 linux 一样, ctrl-w 就直接删除到 cd 那里。也就是说把 delimeter 中的"/"去掉。我谷歌没有找到搜索结果呢。

2300 次点击
所在节点    macOS
7 条回复
thekoc
2016-12-05 12:44:47 +08:00
感觉要从 shell 的层面去做
imherer
2016-12-05 13:08:17 +08:00
不会啊,我刚刚用 terminal 和 iterm2 都试了, control+w 会删完的,只留下 cd 了
introom
2016-12-05 13:10:04 +08:00
你是什么 shell, 不同的 shell 绑定的函数可能不一样,很简单的问题,不要灰心,继续谷歌。
kfll
2016-12-05 13:13:25 +08:00
是不是改 inputrc 了
zhouzm
2016-12-05 14:02:58 +08:00
bash 和 zsh 不一样的行为。

在 zsh 下可以通过修改 WORDCHARS 的值来达到 ctrl-w 和 bash 一样的效果,(注意: alt-backspace 也会同步被改)。

http://unix.stackexchange.com/a/313812
mfinal
2016-12-05 15:35:54 +08:00
@zhouzm 说的没错,我试了原生 bash 会删到 cd , zsh 跟楼主说的一样只会到 log/。
解决方法的话就配置一下就好了吧。
xdz0611
2016-12-05 22:32:04 +08:00
对,没有提到我用的是 zsh ,而且是 on my zsh 插件。
目测是这个插件各种胡搞导致我自定义的配置没有生效,试了下 WORDCHARS 和那个 autoload 都不行。
暂时忍忍吧。。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/325348

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX