summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--oh-my-zsh.sh2
-rw-r--r--plugins/fasd/fasd.plugin.zsh6
-rwxr-xr-xplugins/jruby/jruby.plugin.zsh4
-rw-r--r--plugins/lol/lol.plugin.zsh2
-rw-r--r--plugins/rbenv/rbenv.plugin.zsh17
-rw-r--r--plugins/rbfu/rbfu.plugin.zsh42
-rwxr-xr-x[-rw-r--r--]plugins/sublime/sublime.plugin.zsh8
-rw-r--r--plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh9
-rw-r--r--plugins/yum/yum.plugin.zsh2
-rw-r--r--themes/fino-time.zsh-theme39
-rw-r--r--themes/nebirhos.zsh-theme2
-rw-r--r--themes/steeef.zsh-theme2
-rwxr-xr-xtools/install.sh7
13 files changed, 124 insertions, 18 deletions
diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh
index c2b6049cb..ddef1ad6c 100644
--- a/oh-my-zsh.sh
+++ b/oh-my-zsh.sh
@@ -51,7 +51,7 @@ for plugin ($plugins); do
done
# Load all of your custom configurations from custom/
-for config_file ($ZSH_CUSTOM/*.zsh(.N)) source $config_file
+for config_file ($ZSH_CUSTOM/*.zsh(N)) source $config_file
# Load the theme
if [ "$ZSH_THEME" = "random" ]
diff --git a/plugins/fasd/fasd.plugin.zsh b/plugins/fasd/fasd.plugin.zsh
new file mode 100644
index 000000000..d42584f1a
--- /dev/null
+++ b/plugins/fasd/fasd.plugin.zsh
@@ -0,0 +1,6 @@
+if [ $commands[fasd] ]; then # check if fasd is installed
+ eval "$(fasd --init auto)"
+ alias v='f -e vim'
+ alias o='a -e open'
+fi
+
diff --git a/plugins/jruby/jruby.plugin.zsh b/plugins/jruby/jruby.plugin.zsh
new file mode 100755
index 000000000..bb7975b10
--- /dev/null
+++ b/plugins/jruby/jruby.plugin.zsh
@@ -0,0 +1,4 @@
+# Aliases
+alias jrspec='jruby --debug -S rspec --debug'
+alias jprofile='jruby --profile.api -S rspec'
+alias jexec='jruby -S'
diff --git a/plugins/lol/lol.plugin.zsh b/plugins/lol/lol.plugin.zsh
index e455527e7..697f98d66 100644
--- a/plugins/lol/lol.plugin.zsh
+++ b/plugins/lol/lol.plugin.zsh
@@ -29,7 +29,7 @@ alias iminurbase='finger'
alias btw='nice'
alias obtw='nohup'
-alias nomz='ps -aux'
+alias nomz='ps aux'
alias nomnom='killall'
alias byes='exit'
diff --git a/plugins/rbenv/rbenv.plugin.zsh b/plugins/rbenv/rbenv.plugin.zsh
index ae37404cd..d855c2445 100644
--- a/plugins/rbenv/rbenv.plugin.zsh
+++ b/plugins/rbenv/rbenv.plugin.zsh
@@ -1,10 +1,23 @@
+_homebrew-installed() {
+ type brew &> /dev/null
+}
+
+_rbenv-from-homebrew-installed() {
+ brew --prefix rbenv &> /dev/null
+}
+
FOUND_RBENV=0
-for rbenvdir in "$HOME/.rbenv" "/usr/local/rbenv" "/opt/rbenv" ; do
+rbenvdirs=("$HOME/.rbenv" "/usr/local/rbenv" "/opt/rbenv")
+if _homebrew-installed && _rbenv-from-homebrew-installed ; then
+ rbenvdirs=($(brew --prefix rbenv) "${rbenvdirs[@]}")
+fi
+
+for rbenvdir in "${rbenvdirs[@]}" ; do
if [ -d $rbenvdir/bin -a $FOUND_RBENV -eq 0 ] ; then
FOUND_RBENV=1
export RBENV_ROOT=$rbenvdir
export PATH=${rbenvdir}/bin:$PATH
- eval "$(rbenv init -)"
+ eval "$(rbenv init - zsh)"
alias rubies="rbenv versions"
alias gemsets="rbenv gemset list"
diff --git a/plugins/rbfu/rbfu.plugin.zsh b/plugins/rbfu/rbfu.plugin.zsh
new file mode 100644
index 000000000..008485205
--- /dev/null
+++ b/plugins/rbfu/rbfu.plugin.zsh
@@ -0,0 +1,42 @@
+# Enables rbfu with --auto option, if available.
+#
+# Also provides a command to list all installed/available
+# rubies. To ensure compatibility with themes, creates the
+# rvm_prompt_info function to return the $RBFU_RUBY_VERSION
+# version.
+
+command -v rbfu &>/dev/null
+
+if [[ $? -eq 0 ]]; then
+ eval "$(rbfu --init --auto)"
+
+ # Internal: Print ruby version details, if it's currently
+ # active etc.
+ function _rbfu_rubies_print() {
+ local rb rb_out
+ rb=$(basename $1)
+ rb_out="$rb"
+ [[ -h $1 ]] && rb_out="$rb_out${fg[green]}@${reset_color}"
+ [[ "x$rb" == "x$2" ]] && rb_out="${fg[red]}$rb_out ${fg[red]}*${reset_color}"
+ echo $rb_out
+ }
+
+ # Public: Provide a list with all available rubies, this basically depends
+ # on `ls -1` and .rfbu/rubies. Highlights the currently active ruby version
+ # and aliases.
+ function rbfu-rubies() {
+ local rbfu_dir active_rb
+ rbfu_dir=$RBFU_RUBIES
+ active_rb=$RBFU_RUBY_VERSION
+ [[ -z "$rbfu_dir" ]] && rbfu_dir="${HOME}/.rbfu/rubies"
+ [[ -z "$active_rb" ]] && active_rb="system"
+ _rbfu_rubies_print "${rbfu_dir}/system" $active_rb
+ for rb in $(ls -1 $rbfu_dir); do
+ _rbfu_rubies_print "${rbfu_dir}/${rb}" $active_rb
+ done
+ }
+
+ # Public: Create rvm_prompt_info command for themes compatibility, unless
+ # it has already been defined.
+ [ ! -x rvm_prompt_info ] && function rvm_prompt_info() { echo "${RBFU_RUBY_VERSION:=system}" }
+fi
diff --git a/plugins/sublime/sublime.plugin.zsh b/plugins/sublime/sublime.plugin.zsh
index c42c68df1..91b0279c5 100644..100755
--- a/plugins/sublime/sublime.plugin.zsh
+++ b/plugins/sublime/sublime.plugin.zsh
@@ -1,3 +1,9 @@
# Sublime Text 2 Aliases
-alias st='/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl'
+#unamestr = 'uname'
+
+if [[ $('uname') == 'Linux' ]]; then
+ alias st='/usr/bin/sublime_text&'
+elif [[ $('uname') == 'Darwin' ]]; then
+ alias st='/Applications/Sublime\ Text\ 2.app/Contents/SharedSupport/bin/subl'
+fi
alias stt='st .'
diff --git a/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh b/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh
index afdad1bea..5d0860400 100644
--- a/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh
+++ b/plugins/virtualenvwrapper/virtualenvwrapper.plugin.zsh
@@ -1,5 +1,5 @@
WRAPPER_FOUND=0
-for wrapsource in "/usr/local/bin/virtualenvwrapper.sh" "/etc/bash_completion.d/virtualenvwrapper" ; do
+for wrapsource in "/usr/bin/virtualenvwrapper.sh" "/usr/local/bin/virtualenvwrapper.sh" "/etc/bash_completion.d/virtualenvwrapper" ; do
if [[ -e $wrapsource ]] ; then
WRAPPER_FOUND=1
source $wrapsource
@@ -10,11 +10,9 @@ for wrapsource in "/usr/local/bin/virtualenvwrapper.sh" "/etc/bash_completion.d/
# by placing a .venv file in the project root with a virtualenv name in it
function workon_cwd {
# Check that this is a Git repo
- GIT_DIR=`git rev-parse --git-dir 2> /dev/null`
+ PROJECT_ROOT=`git rev-parse --show-toplevel 2> /dev/null`
if (( $? == 0 )); then
- # Find the repo root and check for virtualenv name override
- GIT_DIR=`readlink -f $GIT_DIR`
- PROJECT_ROOT=`dirname "$GIT_DIR"`
+ # Check for virtualenv name override
ENV_NAME=`basename "$PROJECT_ROOT"`
if [[ -f "$PROJECT_ROOT/.venv" ]]; then
ENV_NAME=`cat "$PROJECT_ROOT/.venv"`
@@ -30,6 +28,7 @@ for wrapsource in "/usr/local/bin/virtualenvwrapper.sh" "/etc/bash_completion.d/
# Note: this only happens if the virtualenv was activated automatically
deactivate && unset CD_VIRTUAL_ENV
fi
+ unset PROJECT_ROOT
}
# New cd function that does the virtualenv magic
diff --git a/plugins/yum/yum.plugin.zsh b/plugins/yum/yum.plugin.zsh
index c9966f1b1..69abfc4ce 100644
--- a/plugins/yum/yum.plugin.zsh
+++ b/plugins/yum/yum.plugin.zsh
@@ -5,7 +5,7 @@ alias yp="yum info" # show package info
alias yl="yum list" # list packages
alias ygl="yum grouplist" # list package groups
alias yli="yum list installed" # print all installed packages
-alias ymc="yum makecache # rebuilds the yum package list
+alias ymc="yum makecache" # rebuilds the yum package list
alias yu="sudo yum update" # upgrate packages
alias yi="sudo yum install" # install package
diff --git a/themes/fino-time.zsh-theme b/themes/fino-time.zsh-theme
new file mode 100644
index 000000000..22c7a0981
--- /dev/null
+++ b/themes/fino-time.zsh-theme
@@ -0,0 +1,39 @@
+# Fino-time theme by Aexander Berezovsky (http://berezovsky.me) based on Fino by Max Masnick (http://max.masnick.me)
+
+# Use with a dark background and 256-color terminal!
+# Meant for people with RVM and git. Tested only on OS X 10.7.
+
+# You can set your computer name in the ~/.box-name file if you want.
+
+# Borrowing shamelessly from these oh-my-zsh themes:
+# bira
+# robbyrussell
+#
+# Also borrowing from http://stevelosh.com/blog/2010/02/my-extravagant-zsh-prompt/
+
+function virtualenv_info {
+ [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') '
+}
+
+function prompt_char {
+ git branch >/dev/null 2>/dev/null && echo '±' && return
+ echo '○'
+}
+
+function box_name {
+ [ -f ~/.box-name ] && cat ~/.box-name || hostname -s
+}
+
+
+local rvm_ruby='‹$(rvm-prompt i v g)›%{$reset_color%}'
+local current_dir='${PWD/#$HOME/~}'
+local git_info='$(git_prompt_info)'
+
+
+PROMPT="╭─%{$FG[040]%}%n%{$reset_color%} %{$FG[239]%}at%{$reset_color%} %{$FG[033]%}$(box_name)%{$reset_color%} %{$FG[239]%}in%{$reset_color%} %{$terminfo[bold]$FG[226]%}${current_dir}%{$reset_color%}${git_info} %{$FG[239]%}using%{$FG[243]%} ${rvm_ruby} %D - %*
+╰─$(virtualenv_info)$(prompt_char) "
+
+ZSH_THEME_GIT_PROMPT_PREFIX=" %{$FG[239]%}on%{$reset_color%} %{$fg[255]%}"
+ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
+ZSH_THEME_GIT_PROMPT_DIRTY="%{$FG[202]%}✘✘✘"
+ZSH_THEME_GIT_PROMPT_CLEAN="%{$FG[040]%}✔"
diff --git a/themes/nebirhos.zsh-theme b/themes/nebirhos.zsh-theme
index c5864d9b8..a5a226b69 100644
--- a/themes/nebirhos.zsh-theme
+++ b/themes/nebirhos.zsh-theme
@@ -6,7 +6,7 @@ if [ -e ~/.rvm/bin/rvm-prompt ]; then
RUBY_PROMPT_="%{$fg_bold[blue]%}rvm:(%{$fg[green]%}\$(~/.rvm/bin/rvm-prompt s i v g)%{$fg_bold[blue]%})%{$reset_color%} "
else
if which rbenv &> /dev/null; then
- RUBY_PROMPT_="%{$fg_bold[blue]%}rvm:(%{$fg[green]%}\$(rbenv version | sed -e 's/ (set.*$//')%{$fg_bold[blue]%})%{$reset_color%} "
+ RUBY_PROMPT_="%{$fg_bold[blue]%}rbenv:(%{$fg[green]%}\$(rbenv version | sed -e 's/ (set.*$//')%{$fg_bold[blue]%})%{$reset_color%} "
fi
fi
diff --git a/themes/steeef.zsh-theme b/themes/steeef.zsh-theme
index a2583b028..312229e9f 100644
--- a/themes/steeef.zsh-theme
+++ b/themes/steeef.zsh-theme
@@ -81,7 +81,7 @@ add-zsh-hook chpwd steeef_chpwd
function steeef_precmd {
if [[ -n "$PR_GIT_UPDATE" ]] ; then
# check for untracked files or updated submodules, since vcs_info doesn't
- if [[ ! -z $(git ls-files --other --exclude-standard 2> /dev/null) ]]; then
+ if git ls-files --other --exclude-standard --directory 2> /dev/null | grep -q "."; then
PR_GIT_UPDATE=1
FMT_BRANCH="(%{$turquoise%}%b%u%c%{$hotpink%}●${PR_RST})"
else
diff --git a/tools/install.sh b/tools/install.sh
index 8ca427d2c..b080be3a1 100755
--- a/tools/install.sh
+++ b/tools/install.sh
@@ -5,13 +5,10 @@ then
fi
echo "\033[0;34mCloning Oh My Zsh...\033[0m"
-which git > /dev/null
-if [[ $? -eq 0 ]]; then
- /usr/bin/env git clone https://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh
-else
+hash git >/dev/null && /usr/bin/env git clone https://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh || {
echo "git not installed"
exit
-fi
+}
echo "\033[0;34mLooking for an existing zsh config...\033[0m"
if [ -f ~/.zshrc ] || [ -h ~/.zshrc ]