summaryrefslogtreecommitdiff
path: root/plugins
diff options
context:
space:
mode:
authorSébastien M-B <essembeh@gmail.com>2013-02-09 22:11:07 +0100
committerSébastien M-B <essembeh@gmail.com>2013-02-09 22:11:07 +0100
commitbc00362a01d5f459bbe33a10784b420a110bc9df (patch)
tree9be32cc06fd2914c5a78b29c56bf47728179ea86 /plugins
parent2595484a97d85496fdcdca99a23f52eecd9b1b43 (diff)
parentfce68bbba0be99cfd49f9e46572b2d12d0a86d45 (diff)
downloadzsh-bc00362a01d5f459bbe33a10784b420a110bc9df.tar.gz
zsh-bc00362a01d5f459bbe33a10784b420a110bc9df.tar.bz2
zsh-bc00362a01d5f459bbe33a10784b420a110bc9df.zip
Merge remote-tracking branch 'upstream/master'
Diffstat (limited to 'plugins')
-rw-r--r--plugins/pj/pj.plugin.zsh42
-rw-r--r--plugins/rbenv/rbenv.plugin.zsh10
2 files changed, 47 insertions, 5 deletions
diff --git a/plugins/pj/pj.plugin.zsh b/plugins/pj/pj.plugin.zsh
new file mode 100644
index 000000000..ba3765b83
--- /dev/null
+++ b/plugins/pj/pj.plugin.zsh
@@ -0,0 +1,42 @@
+#!/bin/zsh
+
+#
+# Original idea by DefV (Jan De Poorter)
+# Source: https://gist.github.com/pjaspers/368394#comment-1016
+#
+# Usage:
+# - Set `$PROJECT_PATHS` in your ~/.zshrc
+# e.g.: PROJECT_PATHS=(~/src ~/work)
+# - In ZSH you now can open a project directory with the command: `pj my-project`
+# the plugin will locate the `my-project` directory in one of the $PROJECT_PATHS
+# Also tab completion is supported.
+# - `pjo my-project` will open the directory in $EDITOR
+#
+
+function pj() {
+ cmd="cd"
+ file=$1
+
+ if [[ "open" == "$file" ]] then
+ file=$2
+ cmd=(${(s: :)EDITOR})
+ fi
+
+ for project in $PROJECT_PATHS; do
+ if [[ -d $project/$file ]] then
+ $cmd "$project/$file"
+ unset project # Unset project var
+ return
+ fi
+ done
+
+ echo "No such project $1"
+}
+
+alias pjo="pj open"
+
+function _pj () {
+ compadd `/bin/ls -l $PROJECT_PATHS 2>/dev/null | awk '{ print $9 }'`
+}
+
+compdef _pj pj
diff --git a/plugins/rbenv/rbenv.plugin.zsh b/plugins/rbenv/rbenv.plugin.zsh
index d855c2445..fb9df4bdd 100644
--- a/plugins/rbenv/rbenv.plugin.zsh
+++ b/plugins/rbenv/rbenv.plugin.zsh
@@ -32,11 +32,11 @@ for rbenvdir in "${rbenvdirs[@]}" ; do
function gems {
local rbenv_path=$(rbenv prefix)
- gem list $@ | sed \
- -Ee "s/\([0-9\.]+( .+)?\)/$fg[blue]&$reset_color/g" \
- -Ee "s|$(echo $rbenv_path)|$fg[magenta]\$rbenv_path$reset_color|g" \
- -Ee "s/$current_ruby@global/$fg[yellow]&$reset_color/g" \
- -Ee "s/$current_ruby$current_gemset$/$fg[green]&$reset_color/g"
+ gem list $@ | sed -E \
+ -e "s/\([0-9a-z, \.]+( .+)?\)/$fg[blue]&$reset_color/g" \
+ -e "s|$(echo $rbenv_path)|$fg[magenta]\$rbenv_path$reset_color|g" \
+ -e "s/$current_ruby@global/$fg[yellow]&$reset_color/g" \
+ -e "s/$current_ruby$current_gemset$/$fg[green]&$reset_color/g"
}
function rbenv_prompt_info() {