Browse Source

style: declare globals properly

By default, `typeset` defines variables locally unless in the main scope.
This is specially bad when using `omz plugin load`, which happens inside
a function, so the declared variables don't continue being defined when
the function finishes and the main scope reappears.
Marc Cornellà 2 years ago
parent
commit
d3bb52d7d8

+ 1 - 1
plugins/colored-man-pages/colored-man-pages.plugin.zsh

@@ -22,7 +22,7 @@ less_termcap[ue]="${reset_color}"
 0="${${(M)0:#/*}:-$PWD/$0}"
 
 # Absolute path to this file's directory.
-typeset __colored_man_pages_dir="${0:A:h}"
+typeset -g __colored_man_pages_dir="${0:A:h}"
 
 function colored() {
   local -a environment

+ 1 - 1
plugins/deno/deno.plugin.zsh

@@ -32,7 +32,7 @@ command mkdir -p "$ZSH_CACHE_DIR/completions"
 # If the completion file doesn't exist yet, we need to autoload it and
 # bind it to `deno`. Otherwise, compinit will have already done that.
 if [[ ! -f "$ZSH_CACHE_DIR/completions/_deno" ]]; then
-  declare -A _comps
+  typeset -g -A _comps
   autoload -Uz _deno
   _comps[deno]=_deno
 fi

+ 1 - 1
plugins/fnm/fnm.plugin.zsh

@@ -18,7 +18,7 @@ command mkdir -p "$ZSH_CACHE_DIR/completions"
 # If the completion file doesn't exist yet, we need to autoload it and
 # bind it to `fnm`. Otherwise, compinit will have already done that.
 if [[ ! -f "$ZSH_CACHE_DIR/completions/_fnm" ]]; then
-  declare -A _comps
+  typeset -g -A _comps
   autoload -Uz _fnm
   _comps[fnm]=_fnm
 fi

+ 1 - 1
plugins/gh/gh.plugin.zsh

@@ -19,7 +19,7 @@ command mkdir -p "$ZSH_CACHE_DIR/completions"
 # If the completion file doesn't exist yet, we need to autoload it and
 # bind it to `gh`. Otherwise, compinit will have already done that.
 if [[ ! -f "$ZSH_CACHE_DIR/completions/_gh" ]]; then
-  declare -A _comps
+  typeset -g -A _comps
   autoload -Uz _gh
   _comps[gh]=_gh
 fi

+ 1 - 1
plugins/helm/helm.plugin.zsh

@@ -14,7 +14,7 @@ command mkdir -p "$ZSH_CACHE_DIR/completions"
 # If the completion file doesn't exist yet, we need to autoload it and
 # bind it to `helm`. Otherwise, compinit will have already done that.
 if [[ ! -f "$ZSH_CACHE_DIR/completions/_helm" ]]; then
-  declare -A _comps
+  typeset -g -A _comps
   autoload -Uz _helm
   _comps[helm]=_helm
 fi

+ 1 - 1
plugins/rbw/rbw.plugin.zsh

@@ -11,7 +11,7 @@ command mkdir -p "$ZSH_CACHE_DIR/completions"
 # If the completion file doesn't exist yet, we need to autoload it and
 # bind it to `rbw`. Otherwise, compinit will have already done that.
 if [[ ! -f "$ZSH_CACHE_DIR/completions/_rbw" ]]; then
-  declare -A _comps
+  typeset -g -A _comps
   autoload -Uz _rbw
   _comps[rbw]=_rbw
 fi

+ 2 - 2
plugins/rust/rust.plugin.zsh

@@ -11,7 +11,7 @@ command mkdir -p "$ZSH_CACHE_DIR/completions"
 # bind it to `cargo`. Otherwise, compinit will have already done that
 if [[ ! -f "$ZSH_CACHE_DIR/completions/_cargo" ]]; then
   autoload -Uz _cargo
-  declare -A _comps
+  typeset -g -A _comps
   _comps[cargo]=_cargo
 fi
 
@@ -19,7 +19,7 @@ fi
 # bind it to `rustup`. Otherwise, compinit will have already done that
 if [[ ! -f "$ZSH_CACHE_DIR/completions/_rustup" ]]; then
   autoload -Uz _rustup
-  declare -A _comps
+  typeset -g -A _comps
   _comps[rustup]=_rustup
 fi
 

+ 1 - 1
plugins/rvm/rvm.plugin.zsh

@@ -1,7 +1,7 @@
 # Completion
 fpath+=("${rvm_path}/scripts/zsh/Completion")
 
-declare -A _comps
+typeset -g -A _comps
 autoload -Uz _rvm
 _comps[rvm]=_rvm
 

+ 1 - 1
plugins/volta/volta.plugin.zsh

@@ -11,7 +11,7 @@ command mkdir -p "$ZSH_CACHE_DIR/completions"
 # If the completion file doesn't exist yet, we need to autoload it and
 # bind it to `deno`. Otherwise, compinit will have already done that.
 if [[ ! -f "$ZSH_CACHE_DIR/completions/_volta" ]]; then
-  declare -A _comps
+  typeset -g -A _comps
   autoload -Uz _volta
   _comps[volta]=_volta
 fi

+ 1 - 1
themes/dieter.zsh-theme

@@ -6,7 +6,7 @@
 # The exit code visual cues will only display once.
 # (i.e. they will be reset, even if you hit enter a few times on empty command prompts)
 
-typeset -A host_repr
+typeset -g -A host_repr
 
 # translate hostnames into shortened, colorcoded strings
 host_repr=('dieter-ws-a7n8x-arch' "%{$fg_bold[green]%}ws" 'dieter-p4sci-arch' "%{$fg_bold[blue]%}p4")

+ 1 - 1
themes/jonathan.zsh-theme

@@ -66,7 +66,7 @@ if [[ "${langinfo[CODESET]}" = UTF-8 ]]; then
   PR_LRCORNER="┘"
   PR_URCORNER="┐"
 else
-  typeset -A altchar
+  typeset -g -A altchar
   set -A altchar ${(s..)terminfo[acsc]}
   # Some stuff to help us draw nice lines
   PR_SET_CHARSET="%{$terminfo[enacs]%}"