Skip to content

Commit

Permalink
Lazy completion loading for Zsh (#475)
Browse files Browse the repository at this point in the history
Fixes #473
  • Loading branch information
segevfiner authored Mar 4, 2024
1 parent 521082e commit dd79ddf
Showing 1 changed file with 10 additions and 2 deletions.
12 changes: 10 additions & 2 deletions argcomplete/shell_integration.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

from shlex import quote

bashcode = r"""
bashcode = r"""#compdef %(executables)s
# Run something, muting output or redirecting it to the debug stream
# depending on the value of _ARC_DEBUG.
# If ARGCOMPLETE_USE_TEMPFILES is set, use tempfiles for IPC.
Expand Down Expand Up @@ -75,8 +75,16 @@
if [[ -z "${ZSH_VERSION-}" ]]; then
complete %(complete_opts)s -F _python_argcomplete%(function_suffix)s %(executables)s
else
# When called by the Zsh completion system, this will end with
# "loadautofunc" when initially autoloaded and "shfunc" later on, otherwise,
# the script was "eval"-ed so use "compdef" to register it with the
# completion system
autoload is-at-least
compdef _python_argcomplete%(function_suffix)s %(executables)s
if [[ $zsh_eval_context == *func ]]; then
_python_argcomplete%(function_suffix)s "$@"
else
compdef _python_argcomplete%(function_suffix)s %(executables)s
fi
fi
"""

Expand Down

0 comments on commit dd79ddf

Please sign in to comment.