Browse Source

Merge pull request #2827 from ncanceill/easymerge

...you folks are amazing. :-)

"Easy-to-merge"
Robby Russell 9 years ago
parent
commit
4131a59d1a
41 changed files with 107 additions and 71 deletions
  1. 11 11
      README.textile
  2. 1 1
      lib/completion.zsh
  3. 10 10
      lib/correction.zsh
  4. 2 2
      lib/git.zsh
  5. 3 1
      oh-my-zsh.sh
  6. 3 3
      plugins/autojump/autojump.plugin.zsh
  7. 0 0
      plugins/bower/_bower
  8. 5 4
      plugins/bundler/bundler.plugin.zsh
  9. 1 1
      plugins/colemak/colemak.plugin.zsh
  10. 5 5
      plugins/colorize/colorize.plugin.zsh
  11. 1 2
      plugins/common-aliases/common-aliases.plugin.zsh
  12. 3 0
      plugins/composer/composer.plugin.zsh
  13. 2 0
      plugins/django/django.plugin.zsh
  14. 1 1
      plugins/extract/extract.plugin.zsh
  15. 1 1
      plugins/git-prompt/gitstatus.py
  16. 1 1
      plugins/github/github.plugin.zsh
  17. 3 0
      plugins/golang/golang.plugin.zsh
  18. 1 1
      plugins/gradle/gradle.plugin.zsh
  19. 0 0
      plugins/grails/grails.plugin.zsh
  20. 0 0
      plugins/jruby/jruby.plugin.zsh
  21. 1 1
      plugins/jump/jump.plugin.zsh
  22. 2 0
      plugins/mercurial/mercurial.plugin.zsh
  23. 4 1
      plugins/mvn/mvn.plugin.zsh
  24. 1 1
      plugins/pip/_pip
  25. 1 1
      plugins/rbenv/rbenv.plugin.zsh
  26. 6 0
      plugins/repo/repo.plugin.zsh
  27. 4 4
      plugins/rsync/rsync.plugin.zsh
  28. 1 1
      plugins/ssh-agent/ssh-agent.plugin.zsh
  29. 1 0
      plugins/sublime/sublime.plugin.zsh
  30. 1 0
      plugins/symfony2/symfony2.plugin.zsh
  31. 0 0
      plugins/systemadmin/systemadmin.plugin.zsh
  32. 2 0
      plugins/vagrant/_vagrant
  33. 1 1
      plugins/vundle/vundle.plugin.zsh
  34. 0 0
      plugins/wd/wd.plugin.zsh
  35. 1 1
      plugins/xcode/xcode.plugin.zsh
  36. 12 6
      templates/zshrc.zsh-template
  37. 6 5
      themes/Soliah.zsh-theme
  38. 1 1
      themes/bureau.zsh-theme
  39. 2 2
      themes/gnzh.zsh-theme
  40. 1 1
      themes/steeef.zsh-theme
  41. 5 1
      tools/check_for_upgrade.sh

+ 11 - 11
README.textile

@@ -10,22 +10,22 @@ h2. Setup
 
 h3. The automatic installer... (do you trust me?)
 
-You can install this via the command line with either `curl` or `wget`.
+You can install this via the command line with either @curl@ or @wget@.
 
-h4. via `curl`
+h4. via @curl@
 
 @curl -L http://install.ohmyz.sh | sh@
 
-h4. via `wget`
+h4. via @wget@
 
 @wget --no-check-certificate http://install.ohmyz.sh -O - | sh@
 
 h4. Optional: change the install directory
 
-The default location is `~/.oh-my-zsh` (hidden in your home directory).
+The default location is @~/.oh-my-zsh@ (hidden in your home directory).
 
 You can change the install directory with the ZSH environment variable, either
-by running `export ZSH=/your/path` before installing, or setting it before the
+by running @export ZSH=/your/path@ before installing, or setting it before the
 end of the install pipeline like this:
 
 @curl -L https://raw.github.com/robbyrussell/oh-my-zsh/master/tools/install.sh | ZSH=~/.dotfiles/zsh sh@
@@ -37,7 +37,7 @@ h3. The manual way
 
   @git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh@
 
-2. *OPTIONAL* Backup your existing ~/.zshrc file
+2. *OPTIONAL* Backup your existing @~/.zshrc@ file
 
   @cp ~/.zshrc ~/.zshrc.orig@
 
@@ -53,9 +53,9 @@ h3. The manual way
 
 h3. Problems?
 
-You _might_ need to modify your PATH in ~/.zshrc if you're not able to find some commands after switching to _Oh My Zsh_.
+You _might_ need to modify your @PATH@ in @~/.zshrc@ if you're not able to find some commands after switching to _Oh My Zsh_.
 
-If you installed manually or changed the install location, check ZSH in ~/.zshrc
+If you installed manually or changed the install location, check ZSH in @~/.zshrc@
 
 h2. Usage
 
@@ -72,16 +72,16 @@ the "refcard":http://www.bash2zsh.com/zsh_refcard/refcard.pdf is pretty tasty fo
 h3. Customization
 
 If you want to override any of the default behavior, just add a new file (ending in @.zsh@) into the @custom/@ directory.
-If you have many functions which go well together you can put them as a *.plugin.zsh file in the @custom/plugins/@ directory and then enable this plugin.
+If you have many functions which go well together you can put them as a @*.plugin.zsh@ file in the @custom/plugins/@ directory and then enable this plugin.
 If you would like to override the functionality of a plugin distributed with oh-my-zsh, create a plugin of the same name in the @custom/plugins/@ directory and it will be loaded instead of the one in @plugins/@.
 
 h3. Updates
 
-By default you will be prompted to check for updates. If you would like oh-my-zsh to automatically update itself without prompting you, set the following in your ~/.zshrc
+By default you will be prompted to check for updates. If you would like oh-my-zsh to automatically update itself without prompting you, set the following in your @~/.zshrc@
 
 @DISABLE_UPDATE_PROMPT=true@
 
-To disable updates entirely, put this in your ~/.zshrc
+To disable updates entirely, put this in your @~/.zshrc@
 
 @DISABLE_AUTO_UPDATE=true@
 

+ 1 - 1
lib/completion.zsh

@@ -44,7 +44,7 @@ zstyle ':completion:*:*:*:users' ignored-patterns \
         named netdump news nfsnobody nobody nscd ntp nut nx obsrun openvpn \
         operator pcap polkitd postfix postgres privoxy pulse pvm quagga radvd \
         rpc rpcuser rpm rtkit scard shutdown squid sshd statd svn sync tftp \
-        usbmux uucp vcsa wwwrun xfs
+        usbmux uucp vcsa wwwrun xfs '_*'
 
 # ... unless we really want to.
 zstyle '*' single-ignored show

+ 10 - 10
lib/correction.zsh

@@ -1,13 +1,13 @@
-alias man='nocorrect man'
-alias mv='nocorrect mv'
-alias mysql='nocorrect mysql'
-alias mkdir='nocorrect mkdir'
-alias gist='nocorrect gist'
-alias heroku='nocorrect heroku'
-alias ebuild='nocorrect ebuild'
-alias hpodder='nocorrect hpodder'
-alias sudo='nocorrect sudo'
-
 if [[ "$ENABLE_CORRECTION" == "true" ]]; then
+  alias ebuild='nocorrect ebuild'
+  alias gist='nocorrect gist'
+  alias heroku='nocorrect heroku'
+  alias hpodder='nocorrect hpodder'
+  alias man='nocorrect man'
+  alias mkdir='nocorrect mkdir'
+  alias mv='nocorrect mv'
+  alias mysql='nocorrect mysql'
+  alias sudo='nocorrect sudo'
+
   setopt correct_all
 fi

+ 2 - 2
lib/git.zsh

@@ -1,8 +1,8 @@
 # get the name of the branch we are on
 function git_prompt_info() {
-  if [[ "$(git config --get oh-my-zsh.hide-status)" != "1" ]]; then
+  if [[ "$(command git config --get oh-my-zsh.hide-status 2>/dev/null)" != "1" ]]; then
     ref=$(command git symbolic-ref HEAD 2> /dev/null) || \
-    ref=$(command git rev-parse --short HEAD 2> /dev/null) || return
+    ref=$(command git rev-parse --short HEAD 2> /dev/null) || return 0
     echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_SUFFIX"
   fi
 }

+ 3 - 1
oh-my-zsh.sh

@@ -46,7 +46,9 @@ else
 fi
 
 # Save the location of the current completion dump file.
-ZSH_COMPDUMP="${ZDOTDIR:-${HOME}}/.zcompdump-${SHORT_HOST}-${ZSH_VERSION}"
+if [ -z "$ZSH_COMPDUMP" ]; then
+  ZSH_COMPDUMP="${ZDOTDIR:-${HOME}}/.zcompdump-${SHORT_HOST}-${ZSH_VERSION}"
+fi
 
 # Load and run compinit
 autoload -U compinit

+ 3 - 3
plugins/autojump/autojump.plugin.zsh

@@ -1,5 +1,7 @@
 if [ $commands[autojump] ]; then # check if autojump is installed
-  if [ -f /usr/share/autojump/autojump.zsh ]; then # debian and ubuntu package
+  if [ -f $HOME/.autojump/etc/profile.d/autojump.zsh ]; then # manual user-local installation
+    . $HOME/.autojump/etc/profile.d/autojump.zsh
+  elif [ -f /usr/share/autojump/autojump.zsh ]; then # debian and ubuntu package
     . /usr/share/autojump/autojump.zsh
   elif [ -f /etc/profile.d/autojump.zsh ]; then # manual installation
     . /etc/profile.d/autojump.zsh
@@ -7,8 +9,6 @@ if [ $commands[autojump] ]; then # check if autojump is installed
     . /etc/profile.d/autojump.sh
   elif [ -f /usr/local/share/autojump/autojump.zsh ]; then # freebsd installation
     . /usr/local/share/autojump/autojump.zsh
-  elif [ -f $HOME/.autojump/etc/profile.d/autojump.zsh ]; then # manual user-local installation
-    . $HOME/.autojump/etc/profile.d/autojump.zsh
   elif [ -f /opt/local/etc/profile.d/autojump.zsh ]; then # mac os x with ports
     . /opt/local/etc/profile.d/autojump.zsh
   elif [ $commands[brew] -a -f `brew --prefix`/etc/autojump.zsh ]; then # mac os x with brew

+ 0 - 0
plugins/bower/_bower


+ 5 - 4
plugins/bundler/bundler.plugin.zsh

@@ -3,10 +3,11 @@ alias bl="bundle list"
 alias bp="bundle package"
 alias bo="bundle open"
 alias bu="bundle update"
+alias bi="bundle_install"
 
 # The following is based on https://github.com/gma/bundler-exec
 
-bundled_commands=(annotate berks cap capify cucumber foodcritic foreman guard irb jekyll kitchen knife middleman nanoc puma rackup rainbows rake rspec ruby shotgun spec spin spork strainer tailor taps thin thor unicorn unicorn_rails)
+bundled_commands=(annotate berks cap capify cucumber foodcritic foreman guard irb jekyll kitchen knife middleman nanoc puma rackup rainbows rake rspec ruby shotgun spec spin spork spring strainer tailor taps thin thor unicorn unicorn_rails)
 
 # Remove $UNBUNDLED_COMMANDS from the bundled_commands list
 for cmd in $UNBUNDLED_COMMANDS; do
@@ -15,7 +16,7 @@ done
 
 ## Functions
 
-bi() {
+bundle_install() {
   if _bundler-installed && _within-bundled-project; then
     local bundler_version=`bundle version | cut -d' ' -f3`
     if [[ $bundler_version > '1.4.0' || $bundler_version = '1.4.0' ]]; then
@@ -39,8 +40,8 @@ _bundler-installed() {
 }
 
 _within-bundled-project() {
-  local check_dir=$PWD
-  while [ $check_dir != "/" ]; do
+  local check_dir="$PWD"
+  while [ "$check_dir" != "/" ]; do
     [ -f "$check_dir/Gemfile" ] && return
     check_dir="$(dirname $check_dir)"
   done

+ 1 - 1
plugins/colemak/colemak.plugin.zsh

@@ -19,4 +19,4 @@ bindkey -a 'N' vi-join
 bindkey -a 'j' vi-forward-word-end
 bindkey -a 'J' vi-forward-blank-word-end
 
-lesskey $ZSH_CUSTOM/plugins/colemak/colemak-less
+lesskey $ZSH/plugins/colemak/colemak-less

+ 5 - 5
plugins/colorize/colorize.plugin.zsh

@@ -1,4 +1,4 @@
-# Plugin for highligthing file content
+# Plugin for highlighting file content
 # Plugin highlights file content based on the filename extension.
 # If no highlighting method supported for given extension then it tries 
 # guess it by looking for file content.
@@ -6,9 +6,9 @@
 alias colorize='colorize_via_pygmentize'
 
 colorize_via_pygmentize() {
-    if [ ! -x $(which pygmentize) ]; then
-        echo package \'pygmentize\' is not installed!
-        exit -1
+    if [ ! -x "$(which pygmentize)" ]; then
+        echo "package \'pygmentize\' is not installed!"
+        return -1
     fi
 
     if [ $# -eq 0 ]; then
@@ -25,4 +25,4 @@ colorize_via_pygmentize() {
             pygmentize -g "$FNAME"
         fi
     done
-}
+}

+ 1 - 2
plugins/common-aliases/common-aliases.plugin.zsh

@@ -3,7 +3,6 @@
 #
 
 # ls, the common ones I use a lot shortened for rapid fire usage
-alias ls='ls --color' #I like color
 alias l='ls -lFh'     #size,show type,human readable
 alias la='ls -lAFh'   #long list,show almost all,show type,human readable
 alias lr='ls -tRFh'   #sorted by date,recursive,show type,human readable
@@ -39,7 +38,7 @@ alias -g NE="2> /dev/null"
 alias -g NUL="> /dev/null 2>&1"
 alias -g P="2>&1| pygmentize -l pytb"
 
-alias dud='du --max-depth=1 -h'
+alias dud='du -d 1 -h'
 alias duf='du -sh *'
 alias fd='find . -type d -name'
 alias ff='find . -type f -name'

+ 3 - 0
plugins/composer/composer.plugin.zsh

@@ -46,3 +46,6 @@ alias cdu='composer dump-autoload'
 
 # install composer in the current directory
 alias cget='curl -s https://getcomposer.org/installer | php'
+
+# Add Composer's global binaries to PATH
+export PATH=$PATH:~/.composer/vendor/bin

+ 2 - 0
plugins/django/django.plugin.zsh

@@ -141,6 +141,7 @@ _managepy-sqlinitialdata(){}
 _managepy-sqlreset(){}
 _managepy-sqlsequencereset(){}
 _managepy-startapp(){}
+_managepy-startproject(){}
 
 _managepy-syncdb() {
   _arguments -s : \
@@ -198,6 +199,7 @@ _managepy-commands() {
     'sqlreset:Prints the DROP TABLE SQL, then the CREATE TABLE SQL, for the given app name(s).'
     'sqlsequencereset:Prints the SQL statements for resetting sequences for the given app name(s).'
     "startapp:Creates a Django app directory structure for the given app name in this project's directory."
+    "startproject:Creates a Django project directory structure for the given project name in this current directory."
     "syncdb:Create the database tables for all apps in INSTALLED_APPS whose tables haven't already been created."
     'test:Runs the test suite for the specified applications, or the entire site if no apps are specified.'
     'testserver:Runs a development server with data from the given fixture(s).'

+ 1 - 1
plugins/extract/extract.plugin.zsh

@@ -52,7 +52,7 @@ function extract() {
       (*.xz) unxz "$1" ;;
       (*.lzma) unlzma "$1" ;;
       (*.Z) uncompress "$1" ;;
-      (*.zip|*.war|*.jar) unzip "$1" -d $extract_dir ;;
+      (*.zip|*.war|*.jar|*.sublime-package) unzip "$1" -d $extract_dir ;;
       (*.rar) unrar x -ad "$1" ;;
       (*.7z) 7za x "$1" ;;
       (*.deb)

+ 1 - 1
plugins/git-prompt/gitstatus.py

@@ -1,4 +1,4 @@
-#!/usr/bin/env python
+#!/usr/bin/env python2
 # -*- coding: UTF-8 -*-
 from subprocess import Popen, PIPE
 import re

+ 1 - 1
plugins/github/github.plugin.zsh

@@ -40,7 +40,7 @@ fi
 #
 # Use this when creating a new repo from scratch.
 empty_gh() { # [NAME_OF_REPO]
-    repo = $1
+    repo=$1
     ghuser=$(  git config github.user )
 
     mkdir "$repo"

+ 3 - 0
plugins/golang/golang.plugin.zsh

@@ -158,3 +158,6 @@ __go_tool_complete() {
 }
 
 compdef __go_tool_complete go
+
+# aliases
+alias gfa='go fmt . ./...'

+ 1 - 1
plugins/gradle/gradle.plugin.zsh

@@ -60,7 +60,7 @@ function in_gradle() {
 ############################################################################
 _gradle_does_task_list_need_generating () {
   [ ! -f .gradletasknamecache ] && return 0;
-  [ .gradletasknamecache -nt build.gradle ] && return 0;
+  [ build.gradle -nt .gradletasknamecache ] && return 0;
   return 1;
 }
 

+ 0 - 0
plugins/grails/grails.plugin.zsh


+ 0 - 0
plugins/jruby/jruby.plugin.zsh


+ 1 - 1
plugins/jump/jump.plugin.zsh

@@ -39,7 +39,7 @@ marks() {
 
 _completemarks() {
 	if [[ $(ls "${MARKPATH}" | wc -l) -gt 1 ]]; then
-		reply=($(ls $MARKPATH/**/*(-) | grep : | sed -E 's/(.*)\/([_\da-zA-Z\-]*):$/\2/g'))
+		reply=($(ls $MARKPATH/**/*(-) | grep : | sed -E 's/(.*)\/([_a-zA-Z0-9\.\-]*):$/\2/g'))
 	else
 		if readlink -e "${MARKPATH}"/* &>/dev/null; then
 			reply=($(ls "${MARKPATH}"))

+ 2 - 0
plugins/mercurial/mercurial.plugin.zsh

@@ -16,6 +16,8 @@ alias hgs='hg status'
 alias hgsl='hg log --limit 20 --template "{node|short} | {date|isodatesec} | {author|user}: {desc|strip|firstline}\n" '
 # this is the 'git commit --amend' equivalent
 alias hgca='hg qimport -r tip ; hg qrefresh -e ; hg qfinish tip'
+# list unresolved files (since hg does not list unmerged files in the status command)
+alias hgun='hg resolve --list'
 
 function in_hg() {
   if [[ -d .hg ]] || $(hg summary > /dev/null 2>&1); then

+ 4 - 1
plugins/mvn/mvn.plugin.zsh

@@ -44,19 +44,22 @@ mvn-color()
 # aliases
 alias mvncie='mvn clean install eclipse:eclipse'
 alias mvnci='mvn clean install'
+alias mvncist='mvn clean install -DskipTests'
 alias mvne='mvn eclipse:eclipse'
 alias mvnce='mvn clean eclipse:clean eclipse:eclipse'
 alias mvnd='mvn deploy'
 alias mvnp='mvn package'
 alias mvnc='mvn clean'
 alias mvncom='mvn compile'
+alias mvnct='mvn clean test'
 alias mvnt='mvn test'
 alias mvnag='mvn archetype:generate'
 alias mvn-updates='mvn versions:display-dependency-updates'
 alias mvntc7='mvn tomcat7:run' 
 alias mvntc='mvn tomcat:run'
 alias mvnjetty='mvn jetty:run'
-
+alias mvndt='mvn dependency:tree'
+alias mvns='mvn site'
 
 function listMavenCompletions { 
      reply=(

+ 1 - 1
plugins/pip/_pip

@@ -1,4 +1,4 @@
-#compdef pip
+#compdef pip pip2 pip-2.7 pip3 pip-3.2 pip-3.3 pip-3.4
 #autoload
 
 # pip zsh completion, based on homebrew completion

+ 1 - 1
plugins/rbenv/rbenv.plugin.zsh

@@ -7,7 +7,7 @@ _rbenv-from-homebrew-installed() {
 }
 
 FOUND_RBENV=0
-rbenvdirs=("$HOME/.rbenv" "/usr/local/rbenv" "/opt/rbenv")
+rbenvdirs=("$HOME/.rbenv" "/usr/local/rbenv" "/opt/rbenv" "/usr/local/opt/rbenv")
 if _homebrew-installed && _rbenv-from-homebrew-installed ; then
     rbenvdirs=($(brew --prefix rbenv) "${rbenvdirs[@]}")
 fi

+ 6 - 0
plugins/repo/repo.plugin.zsh

@@ -10,3 +10,9 @@ compdef _repo rs='repo sync'
 
 alias rsrra='repo sync ; repo rebase --auto-stash'
 compdef _repo rsrra='repo sync ; repo rebase --auto-stash'
+
+alias ru='repo upload'
+compdef _repo ru='repo upload'
+
+alias rst='repo status'
+compdef _repo rst='repo status'

+ 4 - 4
plugins/rsync/rsync.plugin.zsh

@@ -1,4 +1,4 @@
-alias rsync-copy="rsync -av --progress -h"
-alias rsync-move="rsync -av --progress -h --remove-source-files"
-alias rsync-update="rsync -avu --progress -h"
-alias rsync-synchronize="rsync -avu --delete --progress -h"
+alias rsync-copy="rsync -avz --progress -h"
+alias rsync-move="rsync -avz --progress -h --remove-source-files"
+alias rsync-update="rsync -avzu --progress -h"
+alias rsync-synchronize="rsync -avzu --delete --progress -h"

+ 1 - 1
plugins/ssh-agent/ssh-agent.plugin.zsh

@@ -1,7 +1,7 @@
 #
 # INSTRUCTIONS
 #
-#   To enabled agent forwarding support add the following to
+#   To enable agent forwarding support add the following to
 #   your .zshrc file:
 #
 #     zstyle :omz:plugins:ssh-agent agent-forwarding on

+ 1 - 0
plugins/sublime/sublime.plugin.zsh

@@ -7,6 +7,7 @@ if [[ $('uname') == 'Linux' ]]; then
         "/opt/sublime_text/sublime_text"
         "/usr/bin/sublime_text"
         "/usr/local/bin/sublime_text"
+        "/usr/bin/subl"
     )
     for _sublime_path in $_sublime_linux_paths; do
         if [[ -a $_sublime_path ]]; then

+ 1 - 0
plugins/symfony2/symfony2.plugin.zsh

@@ -17,5 +17,6 @@ compdef _symfony2 sf
 alias sf='php app/console'
 alias sfcl='php app/console cache:clear'
 alias sfroute='php app/console router:debug'
+alias sfcontainer='php app/console container:debug'
 alias sfgb='php app/console generate:bundle'
 

plugins/systemadmin/systemadmin.zsh → plugins/systemadmin/systemadmin.plugin.zsh


+ 2 - 0
plugins/vagrant/_vagrant

@@ -8,6 +8,8 @@ _1st_arguments=(
     'box:Box commands'
     'connect:Connects to a shared, remote Vagrant environment'
     'destroy:Destroys the vagrant environment'
+    'docker-logs:Shows Docker logs'
+    'docker-run:Run one-off commands against a Docker container'
     'global-status:Reports the status of all active Vagrant environments on the system'
     'halt:Halts the currently running vagrant environment'
     'init:[box_name] [box_url] Initializes current folder for Vagrant usage'

+ 1 - 1
plugins/vundle/vundle.plugin.zsh

@@ -4,7 +4,7 @@ function vundle-init () {
     mkdir -p ~/.vim/bundle/vundle/
   fi
 
-  if [ ! -d ~/.vim/bundle/vundle/.git/ ]
+  if [ ! -d ~/.vim/bundle/vundle/.git ] && [ ! -f ~/.vim/bundle/vundle/.git ]
   then
     git clone http://github.com/gmarik/vundle.git ~/.vim/bundle/vundle
     echo "\n\tRead about vim configuration for vundle at https://github.com/gmarik/vundle\n"

+ 0 - 0
plugins/wd/wd.plugin.zsh


+ 1 - 1
plugins/xcode/xcode.plugin.zsh

@@ -1,6 +1,6 @@
 #xc function courtesy of http://gist.github.com/subdigital/5420709
 function xc {
-  xcode_proj=`find . -name "*.xc*" -d 1 | sort -r | head -1`
+  xcode_proj=`ls | grep "\.xc" | sort -r | head -1`
   if [[ `echo -n $xcode_proj | wc -m` == 0 ]]
   then
     echo "No xcworkspace/xcodeproj file found in the current directory."

+ 12 - 6
templates/zshrc.zsh-template

@@ -7,10 +7,6 @@ export ZSH=$HOME/.oh-my-zsh
 # time that oh-my-zsh is loaded.
 ZSH_THEME="robbyrussell"
 
-# Example aliases
-# alias zshconfig="mate ~/.zshrc"
-# alias ohmyzsh="mate ~/.oh-my-zsh"
-
 # Uncomment the following line to use case-sensitive completion.
 # CASE_SENSITIVE="true"
 
@@ -26,8 +22,8 @@ ZSH_THEME="robbyrussell"
 # Uncomment the following line to disable auto-setting terminal title.
 # DISABLE_AUTO_TITLE="true"
 
-# Uncomment the following line to disable command auto-correction.
-# DISABLE_CORRECTION="true"
+# Uncomment the following line to enable command auto-correction.
+# ENABLE_CORRECTION="true"
 
 # Uncomment the following line to display red dots whilst waiting for completion.
 # COMPLETION_WAITING_DOTS="true"
@@ -48,6 +44,7 @@ ZSH_THEME="robbyrussell"
 # Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*)
 # Custom plugins may be added to ~/.oh-my-zsh/custom/plugins/
 # Example format: plugins=(rails git textmate ruby lighthouse)
+# Add wisely, as too many plugins slow down shell startup.
 plugins=(git)
 
 source $ZSH/oh-my-zsh.sh
@@ -72,3 +69,12 @@ export PATH=$HOME/bin:/usr/local/bin:$PATH
 
 # ssh
 # export SSH_KEY_PATH="~/.ssh/dsa_id"
+
+# Set personal aliases, overriding those provided by oh-my-zsh libs,
+# plugins, and themes. Aliases can be placed here, though oh-my-zsh
+# users are encouraged to define aliases within the ZSH_CUSTOM folder.
+# For a full list of active aliases, run `alias`.
+#
+# Example aliases
+# alias zshconfig="mate ~/.zshrc"
+# alias ohmyzsh="mate ~/.oh-my-zsh"

+ 6 - 5
themes/Soliah.zsh-theme

@@ -32,11 +32,12 @@ function check_git_prompt_info() {
 
 # Determine if we are using a gemset.
 function rvm_gemset() {
-    GEMSET=`rvm gemset list | grep '=>' | cut -b4-`
-    if [[ -n $GEMSET ]]; then
-        echo "%{$fg[yellow]%}$GEMSET%{$reset_color%}|"
-    fi 
-
+    if hash rvm 2>/dev/null; then
+        GEMSET=`rvm gemset list | grep '=>' | cut -b4-`
+        if [[ -n $GEMSET ]]; then
+            echo "%{$fg[yellow]%}$GEMSET%{$reset_color%}|"
+        fi 
+    fi
 }
 
 # Determine the time since last commit. If branch is clean,

+ 1 - 1
themes/bureau.zsh-theme

@@ -70,7 +70,7 @@ bureau_git_prompt () {
 
 _PATH="%{$fg_bold[white]%}%~%{$reset_color%}"
 
-if [[ "%#" == "#" ]]; then
+if [[ $EUID -eq 0 ]]; then
   _USERNAME="%{$fg_bold[red]%}%n"
   _LIBERTY="%{$fg[red]%}#"
 else

+ 2 - 2
themes/gnzh.zsh-theme

@@ -14,11 +14,11 @@ eval PR_NO_COLOR="%{$terminfo[sgr0]%}"
 eval PR_BOLD="%{$terminfo[bold]%}"
 
 # Check the UID
-if [[ $UID -ge 1000 ]]; then # normal user
+if [[ $UID -ne 0 ]]; then # normal user
   eval PR_USER='${PR_GREEN}%n${PR_NO_COLOR}'
   eval PR_USER_OP='${PR_GREEN}%#${PR_NO_COLOR}'
   local PR_PROMPT='$PR_NO_COLOR➤ $PR_NO_COLOR'
-elif [[ $UID -eq 0 ]]; then # root
+else # root
   eval PR_USER='${PR_RED}%n${PR_NO_COLOR}'
   eval PR_USER_OP='${PR_RED}%#${PR_NO_COLOR}'
   local PR_PROMPT='$PR_RED➤ $PR_NO_COLOR'

+ 1 - 1
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 git ls-files --other --exclude-standard --directory 2> /dev/null | grep -q "."; then
+        if git ls-files --other --exclude-standard 2> /dev/null | grep -q "."; then
             PR_GIT_UPDATE=1
             FMT_BRANCH="(%{$turquoise%}%b%u%c%{$hotpink%}●${PR_RST})"
         else

+ 5 - 1
tools/check_for_upgrade.sh

@@ -5,7 +5,7 @@ function _current_epoch() {
 }
 
 function _update_zsh_update() {
-  echo "LAST_EPOCH=$(_current_epoch)" > ~/.zsh-update
+  echo "LAST_EPOCH=$(_current_epoch)" >! ~/.zsh-update
 }
 
 function _upgrade_zsh() {
@@ -22,6 +22,10 @@ fi
 
 [ -f ~/.profile ] && source ~/.profile
 
+# Cancel upgrade if the current user doesn't have write permissions for the
+# oh-my-zsh directory.
+[[ -w "$ZSH" ]] || return 0
+
 if [ -f ~/.zsh-update ]
 then
   . ~/.zsh-update