completion: Unset local variable outside condition block

Unset `curl_prefix` outside condition block so that it is always
cleared. Also, avoid `brew --prefix <foo>` since it is triggering ruby
in fallback flow when `<foo>` is not present.

Also, apply minor formatting tweaks.
This commit is contained in:
Indrajit Raychaudhuri 2021-05-27 21:55:52 -05:00 committed by Indrajit Raychaudhuri
parent 37443368c1
commit f1e24d3fd8
1 changed files with 13 additions and 13 deletions

View File

@ -12,28 +12,28 @@ if [[ $TERM == 'dumb' ]]; then
fi fi
# Add zsh-completions to $fpath. # Add zsh-completions to $fpath.
fpath=("${0:h}/external/src" $fpath) fpath=(${0:h}/external/src $fpath)
# Add completion for keg-only brewed curl when available. # Add completion for keg-only brewed curl when available.
if (( $+commands[brew] )) \ if (( $+commands[brew] )) \
&& [[ -d "${curl_prefix::="$(brew --prefix curl 2> /dev/null)"}" ]]; then && [[ -d "${curl_prefix::="$(brew --prefix 2> /dev/null)"/opt/curl}" ]]; then
fpath=("$curl_prefix/share/zsh/site-functions" $fpath) fpath=($curl_prefix/share/zsh/site-functions $fpath)
unset curl_prefix
fi fi
unset curl_prefix
# #
# Options # Options
# #
setopt COMPLETE_IN_WORD # Complete from both ends of a word. setopt COMPLETE_IN_WORD # Complete from both ends of a word.
setopt ALWAYS_TO_END # Move cursor to the end of a completed word. setopt ALWAYS_TO_END # Move cursor to the end of a completed word.
setopt PATH_DIRS # Perform path search even on command names with slashes. setopt PATH_DIRS # Perform path search even on command names with slashes.
setopt AUTO_MENU # Show completion menu on a successive tab press. setopt AUTO_MENU # Show completion menu on a successive tab press.
setopt AUTO_LIST # Automatically list choices on ambiguous completion. setopt AUTO_LIST # Automatically list choices on ambiguous completion.
setopt AUTO_PARAM_SLASH # If completed parameter is a directory, add a trailing slash. setopt AUTO_PARAM_SLASH # If completed parameter is a directory, add a trailing slash.
setopt EXTENDED_GLOB # Needed for file modification glob modifiers with compinit. setopt EXTENDED_GLOB # Needed for file modification glob modifiers with compinit.
unsetopt MENU_COMPLETE # Do not autoselect the first completion entry. unsetopt MENU_COMPLETE # Do not autoselect the first completion entry.
unsetopt FLOW_CONTROL # Disable start/stop characters in shell editor. unsetopt FLOW_CONTROL # Disable start/stop characters in shell editor.
# #
# Variables # Variables