mirror of
https://github.com/zsh-users/zsh-autosuggestions.git
synced 2024-11-18 09:51:06 +01:00
Fixed options completion
This commit is contained in:
parent
c6c97ab7bd
commit
3734b1eb4e
4 changed files with 12 additions and 8 deletions
|
@ -151,14 +151,19 @@ paused-autosuggest-self-insert() {
|
|||
fi
|
||||
}
|
||||
|
||||
autosuggest-get-completion() {
|
||||
autosuggest-get-suggested-completion() {
|
||||
local words last_word
|
||||
local suggestion=$(autosuggest-first-completion $LBUFFER)
|
||||
words=(${(z)LBUFFER})
|
||||
last_word=${words[-1]}
|
||||
suggestion=${suggestion:$#last_word}
|
||||
RBUFFER="$suggestion"
|
||||
}
|
||||
|
||||
show-suggestion() {
|
||||
[[ -n $ZLE_DISABLE_AUTOSUGGEST || $LBUFFER == '' ]] && return
|
||||
zle .history-beginning-search-backward || autosuggest-get-completion
|
||||
zle .history-beginning-search-backward ||\
|
||||
autosuggest-get-suggested-completion
|
||||
highlight-suggested-text
|
||||
}
|
||||
|
||||
|
|
|
@ -27,9 +27,9 @@ autosuggest-first-completion() {
|
|||
zsocket $ZLE_AUTOSUGGEST_SOCKET &>/dev/null || return 1
|
||||
local connection=$REPLY
|
||||
local completion
|
||||
print -u $connection $1
|
||||
print -u $connection - $1
|
||||
while read -u $connection completion; do
|
||||
print ${completion}
|
||||
print - ${completion}
|
||||
done
|
||||
# close fd
|
||||
exec {connection}>&-
|
||||
|
|
|
@ -110,7 +110,7 @@ compadd () {
|
|||
# description to be displayed afterwards
|
||||
# (( $#__dscr >= $i )) && dscr=" -- ${${__dscr[$i]}##$__hits[$i] #}" || dscr=
|
||||
|
||||
print $IPREFIX$apre$hpre$__hits[$i]$dsuf$hsuf$asuf$dscr
|
||||
print - $IPREFIX$apre$hpre$__hits[$i]$dsuf$hsuf$asuf$dscr
|
||||
|
||||
done
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ zpty -w z "source '${0:a:h}/completion-server-init.zsh'"
|
|||
read-to-null() {
|
||||
while zpty -r z chunk; do
|
||||
[[ $chunk == *$'\0'* ]] && break
|
||||
print -n $chunk
|
||||
print -n - $chunk
|
||||
done
|
||||
}
|
||||
|
||||
|
@ -68,8 +68,7 @@ while zsocket -a $server &> /dev/null; do
|
|||
# send the longest completion back to the client, strip the last
|
||||
# non-printable character
|
||||
if (( $#current )); then
|
||||
local last_word=${${(z)prefix}[-1]}
|
||||
print -u $connection ${current:$#last_word:-1}
|
||||
print -u $connection - ${current:0:-1}
|
||||
else
|
||||
print -u $connection ''
|
||||
fi
|
||||
|
|
Loading…
Reference in a new issue