mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-10-28 17:10:59 +01:00
$PENDING special zle parameter, giving number of un-read bytes
This commit is contained in:
parent
bcd865f7d2
commit
db663c824a
5 changed files with 934 additions and 839 deletions
|
|
@ -75,27 +75,31 @@ incremental-complete-word() {
|
|||
else
|
||||
LBUFFER="$LBUFFER$key"
|
||||
fi
|
||||
lastl="$LBUFFER"
|
||||
lastr="$RBUFFER"
|
||||
[[ "$twid" = "$wid" ]] && comppostfuncs=( "$post[@]" )
|
||||
toolong=''
|
||||
zle $twid "$@"
|
||||
LBUFFER="$lastl"
|
||||
RBUFFER="$lastr"
|
||||
num=$_lastcomp[nmatches]
|
||||
if (( ! num )); then
|
||||
word=''
|
||||
state='-no match-'
|
||||
elif [[ "${LBUFFER}${RBUFFER}" = *${_lastcomp[unambiguous]}* ]]; then
|
||||
word=''
|
||||
state='-no prefix-'
|
||||
if (( ! PENDING )); then
|
||||
lastl="$LBUFFER"
|
||||
lastr="$RBUFFER"
|
||||
[[ "$twid" = "$wid" ]] && comppostfuncs=( "$post[@]" )
|
||||
toolong=''
|
||||
zle $twid "$@"
|
||||
LBUFFER="$lastl"
|
||||
RBUFFER="$lastr"
|
||||
num=$_lastcomp[nmatches]
|
||||
if (( ! num )); then
|
||||
word=''
|
||||
state='-no match-'
|
||||
elif [[ "${LBUFFER}${RBUFFER}" = *${_lastcomp[unambiguous]}* ]]; then
|
||||
word=''
|
||||
state='-no prefix-'
|
||||
else
|
||||
word="${_lastcomp[unambiguous]}"
|
||||
state=''
|
||||
fi
|
||||
zformat -f pstr "$pmpt" "u:${word}" "s:$state" "n:$num" \
|
||||
"l:$toolong" "c:${_lastcomp[completer][2,-1]}"
|
||||
zle -R "$pstr"
|
||||
else
|
||||
word="${_lastcomp[unambiguous]}"
|
||||
state=''
|
||||
zle -R
|
||||
fi
|
||||
zformat -f pstr "$pmpt" "u:${word}" "s:$state" "n:$num" \
|
||||
"l:$toolong" "c:${_lastcomp[completer][2,-1]}"
|
||||
zle -R "$pstr"
|
||||
read -k key
|
||||
done
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue