2
如何將這個bash完成函數轉換爲zsh完成函數?如何將此bash完成函數轉換爲zsh完成函數?
這個bash函數允許你在當前工作目錄上面選項卡上填寫目錄的名字,這樣你可以更快,更準確地導航文件層次結構。
例子:
$ pwd
/Users/me/Animals/Mammals/Ungulates/Goats/Ibex
$ upto Animals
$ pwd
/Users/me/Animals
代碼:
function upto {
if [[ -z $1 ]]; then
return
fi
local upto=$1
cd "${PWD/\/$upto\/*//$upto}"
}
_upto()
{
local cur=${COMP_WORDS[COMP_CWORD]}
local d=${PWD//\//\ }
COMPREPLY=($(compgen -W "$d" -- "$cur"))
}
complete -F _upto upto
我想在zsh中一個類似的,但我不完全理解這個是如何工作的機制,多更少如何修改爲zsh。