1
0
mirror of git://git.code.sf.net/p/zsh/code synced 2024-10-02 08:51:18 +02:00
zsh/Functions/Zle/cycle-completion-positions
2001-01-11 10:06:40 +00:00

17 lines
497 B
Plaintext

# This may be called after a completion that inserted the unambiguous
# (i.e. non-menu- and non-single-match-) string into the command line.
# If there are multiple positions in the string with missing or differing
# characters, repeatedly calling this widget cycles between all these
# positions.
emulate -L zsh
setopt extendedglob
local p="$_lastcomp[insert_positions]"
if [[ $p = ((#s)|*:)${CURSOR}:* ]]; then
CURSOR=${${p#(|*:)${CURSOR}:}%%:*}
elif [[ -n $p ]]; then
CURSOR=${p%%:*}
fi