cb7a3e38aaa9f395d0a2887d7590375ee4ddf72b

Author
Marc Cornellà <marc.cornella@live.com>
Committer
Marc Cornellà <marc.cornella@live.com>
Date

Message

Merge branch 'jburwell/jenv-plugin'

Closes #3406
Closes #4972
Closes #4523
Closes #5964

Diff

This diff is truncated to protect this page.

 1diff --git a/lib/prompt_info_functions.zsh b/lib/prompt_info_functions.zsh
 2index 335c02a3d03867efa8674d778189d82a377896c6..1d5c23e41815f2a51555f6fe84d63202fc5ed6e1 100644
 3--- a/lib/prompt_info_functions.zsh
 4+++ b/lib/prompt_info_functions.zsh
 5@@ -12,7 +12,7 @@
 6 # Real implementations will be used when the respective plugins are loaded
 7 function chruby_prompt_info hg_prompt_info pyenv_prompt_info \
 8   rbenv_prompt_info svn_prompt_info vi_mode_prompt_info \
 9-  virtualenv_prompt_info {
10+  virtualenv_prompt_info jenv_prompt_info {
11   return 1
12 }
13 
14diff --git a/plugins/jenv/README.md b/plugins/jenv/README.md
15new file mode 100644
16index 0000000000000000000000000000000000000000..2f27d67861e40828f6086587788c2be1693ca0d9
17--- /dev/null
18+++ b/plugins/jenv/README.md
19@@ -0,0 +1,3 @@
20+# jenv oh-my-zsh plugin
21+
22diff --git a/plugins/jenv/jenv.plugin.zsh b/plugins/jenv/jenv.plugin.zsh
23new file mode 100644
24index 0000000000000000000000000000000000000000..6c52635bb749991848d0ea56d659f28ad1c94c23
25--- /dev/null
26+++ b/plugins/jenv/jenv.plugin.zsh
27@@ -0,0 +1,30 @@
28+jenvdirs=("$HOME/.jenv" "/usr/local/jenv" "/opt/jenv")
29+
30+FOUND_JENV=0
31+for jenvdir in $jenvdirs; do
32+    if [[ -d "${jenvdir}/bin" ]]; then
33+        FOUND_JENV=1
34+        break
35+    fi
36+done
37+
38+if [[ $FOUND_JENV -eq 0 ]]; then
39+    if (( $+commands[brew] )) && jenvdir="$(brew --prefix jenv)"; then
40+        FOUND_JENV=1
41+    fi
42+fi
43+
44+if [[ $FOUND_JENV -eq 1 ]]; then
45+    export PATH="${jenvdir}/bin:$PATH"
46+    eval "$(jenv init - zsh)"
47+
48+    function jenv_prompt_info() { jenv version-name 2>/dev/null }
49+
50+    if [[ -d "${jenvdir}/versions" ]]; then
51+        export JENV_ROOT=$jenvdir
52+    fi
53+else
54+    function jenv_prompt_info() { echo "system: $(java -version 2>&1 | cut -f 2 -d ' ')" }
55+fi
56+
57+unset jenvdir FOUND_JENV