summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGrégoire Duchêne <gduchene@awhk.org>2020-07-05 20:01:51 +0100
committerGrégoire Duchêne <gduchene@awhk.org>2020-07-05 20:01:51 +0100
commit09b038046742ef35ee446ee8473663a491805ee2 (patch)
treeb8d7a43fa6b5d216cf241748ba1734c2dc8cf1f0
parent4435c0efc83b8fd0c2cae0a5fe0ce886b794552b (diff)
zsh: Add paths to ${PATH} in env instead of rc
Also, only add paths if they are not already in ${PATH}. This avoids duplicates in subshells.
-rw-r--r--zsh/env9
-rw-r--r--zsh/rc7
2 files changed, 9 insertions, 7 deletions
diff --git a/zsh/env b/zsh/env
index b2bd2c9..91c4cdb 100644
--- a/zsh/env
+++ b/zsh/env
@@ -14,3 +14,12 @@ setopt REMATCH_PCRE
source_if_exists dotfiles-${UNAME}/zsh/env
source_if_exists dotfiles-${DOMAIN}/zsh/env
source_if_exists dotfiles-${HOST}/zsh/env
+
+() {
+ local dir
+ for dir in ~/{.local/bin,bin} ${GOPATH:-~/go}/bin; do
+ if [[ -d ${dir} && ${path[(I)${dir}]} -eq 0 ]]; then
+ path=(${dir} ${path})
+ fi
+ done
+}
diff --git a/zsh/rc b/zsh/rc
index 9885dc7..237c140 100644
--- a/zsh/rc
+++ b/zsh/rc
@@ -15,13 +15,6 @@ PS1="%n@%m:%~ %# "
SAVEHIST=${HISTSIZE}
WORDCHARS=${WORDCHARS/\//}
-() {
- local dir
- for dir in ~/{.local/bin,bin} ${GOPATH:-~/go}/bin; do
- [[ -d ${dir} ]] && path=(${dir} ${path})
- done
-}
-
alias bc='bc -lq'
alias cp='cp -i'
alias ddig='dig +noall +answer'