gpt4 book ai didi

zsh - zsh 中的多点路径,如 `cd ....`

转载 作者:行者123 更新时间:2023-12-02 07:53:11 26 4
gpt4 key购买 nike

所有 shell 都理解这些命令:

$ cd .
$ cd ..

并且 zsh 也会理解:

$ cd ...
$ cd ....

只要你说:

$ alias -g ...='../..'
$ alias -g ....='../../..'

现在,当我开始输入 cd ..../<TAB> 时,如何才能使其正确完成制表符补全? ?我记得它是在 oh-my-zsh 中实现的,但我现在已经停止使用它了。

如果它不仅适用于cd,我们也将不胜感激。 ,假设我要执行cat ..../a/b/..../c/d | less .

最佳答案

我对其他答案并不满意,所以我花了一些时间来获得更符合我喜好的内容。当您点击 (回车)或 (制表符)时,以下内容将展开点,而不是在您键入点时展开。

function expand-dots() {
local MATCH
if [[ $LBUFFER =~ '(^| )\.\.\.+' ]]; then
LBUFFER=$LBUFFER:fs%\.\.\.%../..%
fi
}

function expand-dots-then-expand-or-complete() {
zle expand-dots
zle expand-or-complete
}

function expand-dots-then-accept-line() {
zle expand-dots
zle accept-line
}

zle -N expand-dots
zle -N expand-dots-then-expand-or-complete
zle -N expand-dots-then-accept-line
bindkey '^I' expand-dots-then-expand-or-complete
bindkey '^M' expand-dots-then-accept-line

关于zsh - zsh 中的多点路径,如 `cd ....`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23456873/

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