mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-09-03 10:21:46 +02:00
moved from Completion/Core/_setup
This commit is contained in:
parent
a9fe340666
commit
4c9dc4a461
1 changed files with 73 additions and 0 deletions
73
Completion/Base/Core/_setup
Normal file
73
Completion/Base/Core/_setup
Normal file
|
@ -0,0 +1,73 @@
|
|||
#autoload
|
||||
|
||||
local val nm="$compstate[nmatches]"
|
||||
|
||||
[[ $# -eq 1 ]] && 2="$1"
|
||||
|
||||
if zstyle -a ":completion:${curcontext}:$1" list-colors val; then
|
||||
zmodload -i zsh/complist
|
||||
if [[ "$1" = default ]]; then
|
||||
_comp_colors=( "$val[@]" )
|
||||
else
|
||||
_comp_colors=( "$_comp_colors[@]"
|
||||
"(${2})${(@)^val:#(|\(*\)*)}" "${(M@)val:#\(*\)*}" )
|
||||
fi
|
||||
|
||||
# Here is the problem mentioned in _main_complete.
|
||||
|
||||
# elif [[ "$1" = default && -n "$ZLS_COLORS$ZLS_COLOURS" ]]; then
|
||||
# zmodload -i zsh/complist
|
||||
# ZLS_COLORS="$ZLS_COLORS$ZLS_COLOURS"
|
||||
|
||||
elif [[ "$1" = default ]]; then
|
||||
unset ZLS_COLORS
|
||||
fi
|
||||
|
||||
if zstyle -t ":completion:${curcontext}:$1" list-packed; then
|
||||
compstate[list]="${compstate[list]} packed"
|
||||
elif [[ $? -eq 1 ]]; then
|
||||
compstate[list]="${compstate[list]:gs/packed//}"
|
||||
else
|
||||
compstate[list]="$_saved_list"
|
||||
fi
|
||||
|
||||
if zstyle -t ":completion:${curcontext}:$1" list-rows-first; then
|
||||
compstate[list]="${compstate[list]} rows"
|
||||
elif [[ $? -eq 1 ]]; then
|
||||
compstate[list]="${compstate[list]:gs/rows//}"
|
||||
else
|
||||
compstate[list]="$_saved_list"
|
||||
fi
|
||||
|
||||
if zstyle -t ":completion:${curcontext}:$1" last-prompt; then
|
||||
compstate[last_prompt]=yes
|
||||
elif [[ $? -eq 1 ]]; then
|
||||
compstate[last_prompt]=''
|
||||
else
|
||||
compstate[last_prompt]="$_saved_lastprompt"
|
||||
fi
|
||||
|
||||
if zstyle -t ":completion:${curcontext}:$1" accept-exact; then
|
||||
compstate[exact]=accept
|
||||
elif [[ $? -eq 1 ]]; then
|
||||
compstate[exact]=''
|
||||
else
|
||||
compstate[exact]="$_saved_exact"
|
||||
fi
|
||||
|
||||
[[ _last_nmatches -ge 0 && _last_nmatches -ne nm ]] &&
|
||||
_menu_style=( "$_last_menu_style[@]" "$_menu_style[@]" )
|
||||
|
||||
if zstyle -a ":completion:${curcontext}:$1" menu val; then
|
||||
_last_nmatches=$nm
|
||||
_last_menu_style=( "$val[@]" )
|
||||
else
|
||||
_last_nmatches=-1
|
||||
fi
|
||||
|
||||
[[ "$_comp_force_list" != always ]] &&
|
||||
zstyle -s ":completion:${curcontext}:$1" force-list val &&
|
||||
[[ "$val" = always ||
|
||||
( "$val" = [0-9]## &&
|
||||
( -z "$_comp_force_list" || _comp_force_list -gt val ) ) ]] &&
|
||||
_comp_force_list="$val"
|
Loading…
Reference in a new issue