浏览代码

Merge pull request #1565 from serdardalgic/autoenv-plugin

Add autoenv plugin, which adopts using Kenneth Reitz's autoenv.
Robby Russell 11 年之前
父节点
当前提交
685c746cc7
共有 2 个文件被更改,包括 21 次插入0 次删除
  1. 3 0
      lib/directories.zsh
  2. 18 0
      plugins/autoenv/autoenv.plugin.zsh

+ 3 - 0
lib/directories.zsh

@@ -30,6 +30,9 @@ cd () {
     cd ../../../..
   elif [[ "x$*" == "x......" ]]; then
     cd ../../../../..
+  elif [ -d ~/.autoenv ]; then
+    source ~/.autoenv/activate.sh
+    autoenv_cd "$@"
   else
     builtin cd "$@"
   fi

+ 18 - 0
plugins/autoenv/autoenv.plugin.zsh

@@ -0,0 +1,18 @@
+# The use_env call below is a reusable command to activate/create a new Python
+# virtualenv, requiring only a single declarative line of code in your .env files.
+# It only performs an action if the requested virtualenv is not the current one.
+use_env() {
+    typeset venv
+    venv="$1"
+    if [[ "${VIRTUAL_ENV:t}" != "$venv" ]]; then
+        if workon | grep -q "$venv"; then
+            workon "$venv"
+        else
+            echo -n "Create virtualenv $venv now? (Yn) "
+            read answer
+            if [[ "$answer" == "Y" ]]; then
+                mkvirtualenv "$venv"
+            fi
+        fi
+    fi
+}