diff options
| author | Tanaka Akira <akr@users.sourceforge.net> | 1999-06-08 09:26:01 +0000 |
|---|---|---|
| committer | Tanaka Akira <akr@users.sourceforge.net> | 1999-06-08 09:26:01 +0000 |
| commit | fcd7cd1cfa2ba286f4bf73da7a60116cd3912629 (patch) | |
| tree | d2aa5a9369bf3af8841d3abde69f52bd483f5526 /Functions/Misc/cdmatch2 | |
| parent | Initial revision (diff) | |
| download | zsh-fcd7cd1cfa2ba286f4bf73da7a60116cd3912629.tar zsh-fcd7cd1cfa2ba286f4bf73da7a60116cd3912629.tar.gz zsh-fcd7cd1cfa2ba286f4bf73da7a60116cd3912629.tar.bz2 zsh-fcd7cd1cfa2ba286f4bf73da7a60116cd3912629.tar.lz zsh-fcd7cd1cfa2ba286f4bf73da7a60116cd3912629.tar.xz zsh-fcd7cd1cfa2ba286f4bf73da7a60116cd3912629.tar.zst zsh-fcd7cd1cfa2ba286f4bf73da7a60116cd3912629.zip | |
Initial revision
Diffstat (limited to 'Functions/Misc/cdmatch2')
| -rw-r--r-- | Functions/Misc/cdmatch2 | 15 |
1 files changed, 15 insertions, 0 deletions
diff --git a/Functions/Misc/cdmatch2 b/Functions/Misc/cdmatch2 new file mode 100644 index 000000000..8a3e9591f --- /dev/null +++ b/Functions/Misc/cdmatch2 @@ -0,0 +1,15 @@ +# This function should be called from compctl to complete the +# second argument of cd and pushd. + +emulate -R zsh # Requires zsh 3.0-pre4 or later +setopt localoptions extendedglob +local from + +read -Ac from +from="${from[2]}" + +eval "reply=( \${PWD:s@$from@$1*$2@}~$PWD(ND-/:) )" +reply=( "${${reply[@]#${PWD%%$from*}}%${PWD#*$from}}" ) +[[ ${#reply[(r),-1]} != 0 ]] && reply[(r)]="''" + +return |
