blob: 34a2d81744777a9e59c386543928169166043ab1 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
# 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
|