From 2a78c248425635ebeca509097a92f5e190174813 Mon Sep 17 00:00:00 2001 From: Sven Wischnowsky Date: Thu, 11 Jan 2001 10:06:40 +0000 Subject: *** empty log message *** --- Functions/Zle/cycle-completion-positions | 16 ++++++++++++++++ 1 file changed, 16 insertions(+) create mode 100644 Functions/Zle/cycle-completion-positions (limited to 'Functions/Zle') diff --git a/Functions/Zle/cycle-completion-positions b/Functions/Zle/cycle-completion-positions new file mode 100644 index 000000000..34a2d8174 --- /dev/null +++ b/Functions/Zle/cycle-completion-positions @@ -0,0 +1,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 -- cgit 1.4.1