diff --git a/module/.autocomplete.__init__ b/module/.autocomplete.__init__ index 61924fa4..d2a35c8e 100644 --- a/module/.autocomplete.__init__ +++ b/module/.autocomplete.__init__ @@ -68,13 +68,9 @@ local zsh_cache_dir=${XDG_CACHE_HOME:-$HOME/.cache}/zsh local mod; for mod in compinit config widget key key-binding recent-dirs async; do - if ! zstyle -t ':autocomplete:' $mod false no off 0; then - mod=.autocomplete.$mod - $mod - unfunction $mod - builtin autoload -Uz ${${(%):-%x/$mod}:a} + if zstyle -T ':autocomplete:' $mod; then + source ~zsh-autocomplete/module/.autocomplete.$mod fi done add-zsh-hook precmd .autocomplete.__init__.precmd -unfunction .autocomplete.__init__ diff --git a/module/.autocomplete.key-binding b/module/.autocomplete.key-binding index 5d187748..fa17ba3c 100644 --- a/module/.autocomplete.key-binding +++ b/module/.autocomplete.key-binding @@ -5,7 +5,7 @@ zmodload -Fa zsh/parameter p:funcstack p:functions .autocomplete.key-binding.precmd() { # Work around plugin managers making `key` local. [[ -z $key[Tab] || -z $key[Shift-Tab] ]] && - .autocomplete.key + source ~zsh-autocomplete/module/.autocomplete.key local tab_style; zstyle -s :autocomplete:tab: widget-style tab_style || tab_style='complete-word' diff --git a/zsh-autocomplete.plugin.zsh b/zsh-autocomplete.plugin.zsh index e42d9df9..74697f29 100644 --- a/zsh-autocomplete.plugin.zsh +++ b/zsh-autocomplete.plugin.zsh @@ -23,20 +23,14 @@ setopt NO_singlelinezle hash -d zsh-autocomplete=$basedir typeset -gU FPATH fpath=( ~zsh-autocomplete/completion $fpath[@] ) - local -a subdirs=( ~zsh-autocomplete/*(N-/) ) - if ! (( $#subdirs )); then - print -u2 -- 'zsh-autocomplete: Failed to find sub dirs. Aborting.' - return 66 - fi - - local -a funcs=( $^subdirs/.autocomplete.*~*.zwc(N-.:a) ) + local -a funcs=( ~zsh-autocomplete/{utility,widget}/.autocomplete.*~*.zwc(N-.:a) ) if ! (( $#funcs )); then print -u2 -- 'zsh-autocomplete: Failed to find functions. Aborting.' return 66 fi builtin autoload -Uz $funcs[@] - .autocomplete.__init__ + source ~zsh-autocomplete/module/.autocomplete.__init__ # Workaround for https://github.com/zdharma/zinit/issues/366 [[ -v functions[.zinit-shade-on] ]] &&