mirror of https://github.com/jenv/jenv.git
1 changed files with 1 additions and 87 deletions
@ -1,87 +0,0 @@ |
|||||||
#!/usr/bin/env bash |
|
||||||
set -e |
|
||||||
|
|
||||||
if [ "$1" = "--debug" ]; then |
|
||||||
export JENV_DEBUG=1 |
|
||||||
shift |
|
||||||
fi |
|
||||||
|
|
||||||
if [ -n "$JENV_DEBUG" ]; then |
|
||||||
export PS4='+ [${BASH_SOURCE##*/}:${LINENO}] ' |
|
||||||
set -x |
|
||||||
fi |
|
||||||
|
|
||||||
resolve_link() { |
|
||||||
$(type -p greadlink readlink | head -1) "$1" |
|
||||||
} |
|
||||||
|
|
||||||
abs_dirname() { |
|
||||||
local cwd="$(pwd)" |
|
||||||
local path="$1" |
|
||||||
|
|
||||||
while [ -n "$path" ]; do |
|
||||||
cd "${path%/*}" |
|
||||||
local name="${path##*/}" |
|
||||||
path="$(resolve_link "$name" || true)" |
|
||||||
done |
|
||||||
|
|
||||||
pwd |
|
||||||
cd "$cwd" |
|
||||||
} |
|
||||||
|
|
||||||
if [ -z "${JENV_ROOT}" ]; then |
|
||||||
JENV_ROOT="${HOME}/.jenv" |
|
||||||
else |
|
||||||
JENV_ROOT="${JENV_ROOT%/}" |
|
||||||
fi |
|
||||||
export JENV_ROOT |
|
||||||
|
|
||||||
if [ -z "${JENV_DIR}" ]; then |
|
||||||
JENV_DIR="$(pwd)" |
|
||||||
else |
|
||||||
cd "$JENV_DIR" 2>/dev/null || { |
|
||||||
echo "jenv: cannot change working directory to \`$JENV_DIR'" |
|
||||||
exit 1 |
|
||||||
} >&2 |
|
||||||
JENV_DIR="$(pwd)" |
|
||||||
cd "$OLDPWD" |
|
||||||
fi |
|
||||||
export JENV_DIR |
|
||||||
|
|
||||||
|
|
||||||
shopt -s nullglob |
|
||||||
|
|
||||||
bin_path="$(abs_dirname "$0")" |
|
||||||
for plugin_bin in "${JENV_ROOT}/plugins/"*/bin; do |
|
||||||
bin_path="${bin_path}:${plugin_bin}" |
|
||||||
done |
|
||||||
export PATH="${bin_path}:${PATH}" |
|
||||||
|
|
||||||
hook_path="${JENV_HOOK_PATH}:${JENV_ROOT}/jenv.d:/usr/local/etc/jenv.d:/etc/jenv.d:/usr/lib/jenv/hooks" |
|
||||||
for plugin_hook in "${JENV_ROOT}/plugins/"*/etc/jenv.d; do |
|
||||||
hook_path="${hook_path}:${plugin_hook}" |
|
||||||
done |
|
||||||
export JENV_HOOK_PATH="$hook_path" |
|
||||||
|
|
||||||
shopt -u nullglob |
|
||||||
|
|
||||||
|
|
||||||
command="$1" |
|
||||||
case "$command" in |
|
||||||
"" | "-h" | "--help" ) |
|
||||||
echo -e "$(jenv---version)\n$(jenv-help)" >&2 |
|
||||||
;; |
|
||||||
"-v" ) |
|
||||||
exec jenv---version |
|
||||||
;; |
|
||||||
* ) |
|
||||||
command_path="$(command -v "jenv-$command" || true)" |
|
||||||
if [ -z "$command_path" ]; then |
|
||||||
echo "jenv: no such command \`$command'" >&2 |
|
||||||
exit 1 |
|
||||||
fi |
|
||||||
|
|
||||||
shift 1 |
|
||||||
exec "$command_path" "$@" |
|
||||||
;; |
|
||||||
esac |
|
||||||
Loading…
Reference in new issue