From 753a9e826b5e758838551cec7df04dec23ff1209 Mon Sep 17 00:00:00 2001 From: "Yamashita, Yuu" Date: Fri, 21 Jul 2017 00:43:23 +0000 Subject: [PATCH] Move `conda.txt` and `source.txt` into their directory to allow users to have custom blacklist --- pyenv.d/rehash/conda.bash | 6 ++++-- pyenv.d/rehash/conda.d/.gitignore | 3 +++ pyenv.d/rehash/{conda.txt => conda.d/default.list} | 0 pyenv.d/rehash/source.bash | 6 ++++-- pyenv.d/rehash/source.d/.gitignore | 3 +++ pyenv.d/rehash/source.d/default.list | 6 ++++++ pyenv.d/rehash/source.txt | 1 - 7 files changed, 20 insertions(+), 5 deletions(-) create mode 100644 pyenv.d/rehash/conda.d/.gitignore rename pyenv.d/rehash/{conda.txt => conda.d/default.list} (100%) create mode 100644 pyenv.d/rehash/source.d/.gitignore create mode 100644 pyenv.d/rehash/source.d/default.list delete mode 100644 pyenv.d/rehash/source.txt diff --git a/pyenv.d/rehash/conda.bash b/pyenv.d/rehash/conda.bash index 9b22dfb0..6febe61b 100644 --- a/pyenv.d/rehash/conda.bash +++ b/pyenv.d/rehash/conda.bash @@ -12,11 +12,13 @@ conda_exists() { } shims=() -for shim in $(cat "${BASH_SOURCE%/*}/conda.txt"); do - if [ -n "${shim%%#*}" ]; then +shopt -s nullglob +for shim in $(cat "${BASH_SOURCE%/*}/conda.d/"*".list" | sort | uniq | sed -e 's/#.*$//' | sed -e '/^[[:space:]]*$/d'); do + if [ -n "${shim##*/}" ]; then shims[${#shims[*]}]="${shim})return 0;;" fi done +shopt -u nullglob eval "conda_shim(){ case \"\$1\" in ${shims[@]} *)return 1;;esac;}" # override `make_shims` to avoid conflict between pyenv-virtualenv's `envs.bash` diff --git a/pyenv.d/rehash/conda.d/.gitignore b/pyenv.d/rehash/conda.d/.gitignore new file mode 100644 index 00000000..655d89c2 --- /dev/null +++ b/pyenv.d/rehash/conda.d/.gitignore @@ -0,0 +1,3 @@ +* +!/.gitignore +!/default.list diff --git a/pyenv.d/rehash/conda.txt b/pyenv.d/rehash/conda.d/default.list similarity index 100% rename from pyenv.d/rehash/conda.txt rename to pyenv.d/rehash/conda.d/default.list diff --git a/pyenv.d/rehash/source.bash b/pyenv.d/rehash/source.bash index c4f73da8..f9e02ee3 100644 --- a/pyenv.d/rehash/source.bash +++ b/pyenv.d/rehash/source.bash @@ -1,11 +1,13 @@ PROTOTYPE_SOURCE_SHIM_PATH="${SHIM_PATH}/.pyenv-source-shim" shims=() -for shim in $(cat "${BASH_SOURCE%/*}/source.txt"); do - if [ -n "${shim%%#*}" ]; then +shopt -s nullglob +for shim in $(cat "${BASH_SOURCE%/*}/source.d/"*".list" | sort | uniq | sed -e 's/#.*$//' | sed -e '/^[[:space:]]*$/d'); do + if [ -n "${shim##*/}" ]; then shims[${#shims[*]}]="${shim})return 0;;" fi done +shopt -u nullglob eval "source_shim(){ case \"\$1\" in ${shims[@]} *)return 1;;esac;}" cat > "${PROTOTYPE_SOURCE_SHIM_PATH}" <