diff --git a/lib/aliases.zsh b/lib/aliases.zsh index d3ee2dd8c..f97daf41a 100644 --- a/lib/aliases.zsh +++ b/lib/aliases.zsh @@ -25,21 +25,6 @@ alias ss='sudo su -' #alias g='grep -in' -# Git related -alias g='git' -alias gst='git status' -alias gl='git pull' -alias gup='git fetch && git rebase' -alias gp='git push' -alias gd='git diff | mate' -alias gdv='git diff -w "$@" | vim -R -' -alias gc='git commit -v' -alias gca='git commit -v -a' -alias gb='git branch' -alias gba='git branch -a' -alias gcount='git shortlog -sn' -alias gcp='git cherry-pick' - # Show history alias history='fc -l 1' @@ -65,4 +50,4 @@ alias etp='mate app config lib db public spec test vendor/plugins vendor/gems Ra alias etts='mate app config lib db public script spec test vendor/plugins vendor/gems Rakefile Capfile Todo &' # Editor Ruby file in TextMate -alias mr='mate CHANGELOG app config db lib public script spec test' \ No newline at end of file +alias mr='mate CHANGELOG app config db lib public script spec test' diff --git a/lib/completion.zsh b/lib/completion.zsh index c231ee21e..46b6d8f65 100644 --- a/lib/completion.zsh +++ b/lib/completion.zsh @@ -43,7 +43,7 @@ if [ -f ~/.ssh/known_hosts ]; then fi # Complete on history -# zstyle ':completion:*:history-words' stop yes -# zstyle ':completion:*:history-words' remove-all-dups yes -# zstyle ':completion:*:history-words' list false -# zstyle ':completion:*:history-words' menu yes +#zstyle ':completion:*:history-words' stop yes +#zstyle ':completion:*:history-words' remove-all-dups yes +#zstyle ':completion:*:history-words' list false +#zstyle ':completion:*:history-words' menu yes diff --git a/lib/correction.zsh b/lib/correction.zsh index c9fecb0fe..a96f7ffd8 100644 --- a/lib/correction.zsh +++ b/lib/correction.zsh @@ -3,4 +3,6 @@ setopt correct_all alias man='nocorrect man' alias mv='nocorrect mv' alias mysql='nocorrect mysql' -alias mv='nocorrect mv' +alias mkdir='nocorrect mkdir' +alias gist='nocorrect gist' +alias heroku='nocorrect heroku' diff --git a/lib/functions.zsh b/lib/functions.zsh index 2fb096dd6..74b93f00e 100644 --- a/lib/functions.zsh +++ b/lib/functions.zsh @@ -44,7 +44,7 @@ function tab() { end tell application "Terminal" activate - do script with command "cd $PWD; $*" in window 1 + do script with command "cd \"$PWD\"; $*" in window 1 end tell EOF } @@ -58,3 +58,20 @@ function tm() { cd $1 mate $1 } + +# To use: add a .lighthouse file into your directory with the URL to the +# individual project. For example: +# https://rails.lighthouseapp.com/projects/8994 +# Example usage: http://screencast.com/t/ZDgwNDUwNT +open_lighthouse_ticket () { + if [ ! -f .lighthouse-url ]; then + echo "There is no .lighthouse file in the current directory..." + return 0; + else + lighthouse_url=$(cat .lighthouse-url); + echo "Opening ticket #$1"; + `open $lighthouse_url/tickets/$1`; + fi +} + +alias lho='open_lighthouse_ticket' diff --git a/lib/git.zsh b/lib/git.zsh index 52c7969f3..629a08b0e 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -20,3 +20,18 @@ function current_branch() { ref=$(git symbolic-ref HEAD 2> /dev/null) || return echo ${ref#refs/heads/} } + +# Aliases +alias g='git' +alias gst='git status' +alias gl='git pull' +alias gup='git fetch && git rebase' +alias gp='git push' +alias gd='git diff | mate' +alias gdv='git diff -w "$@" | vim -R -' +alias gc='git commit -v' +alias gca='git commit -v -a' +alias gb='git branch' +alias gba='git branch -a' +alias gcount='git shortlog -sn' +alias gcp='git cherry-pick' diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh index eadf02d00..fa2738e18 100644 --- a/oh-my-zsh.sh +++ b/oh-my-zsh.sh @@ -15,5 +15,5 @@ if [ "$DISABLE_AUTO_UPDATE" = "true" ] then return else - /bin/sh $ZSH/tools/check_for_upgrade.sh + /usr/bin/env zsh $ZSH/tools/check_for_upgrade.sh fi diff --git a/themes/macovsky.zsh-theme b/themes/macovsky.zsh-theme new file mode 100644 index 000000000..db7f9148c --- /dev/null +++ b/themes/macovsky.zsh-theme @@ -0,0 +1,8 @@ +# ZSH Theme - Preview: http://gyazo.com/8becc8a7ed5ab54a0262a470555c3eed.png +local return_code="%(?..%{$fg[red]%}%? ↵%{$reset_color%})" + +PROMPT='%{$fg[green]%}%~%{$reset_color%} $(git_prompt_info)%{$reset_color%}%B$%b ' +RPS1="${return_code}" + +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[yellow]%}‹" +ZSH_THEME_GIT_PROMPT_SUFFIX="› %{$reset_color%}" \ No newline at end of file diff --git a/themes/tonotdo.zsh-theme b/themes/tonotdo.zsh-theme index 478f01de7..a6407034c 100644 --- a/themes/tonotdo.zsh-theme +++ b/themes/tonotdo.zsh-theme @@ -1,11 +1,11 @@ -PROMPT='%{$fg_no_bold[cyan]%}%n%{$fg_no_bold[yellow]%}•%{$fg_no_bold[magenta]%}%3~$(git_prompt_info)%{$reset_color%}» ' +PROMPT='%{$fg_no_bold[cyan]%}%n%{$fg_no_bold[magenta]%}➜%{$fg_no_bold[green]%}%3~$(git_prompt_info)%{$reset_color%}» ' RPROMPT='[%*]' # git theming -ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}(%{$fg_no_bold[green]%}" +ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg_bold[blue]%}(%{$fg_no_bold[red]%}" ZSH_THEME_GIT_PROMPT_SUFFIX="" ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg_bold[blue]%})" -ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[red]%}⚡%{$fg_bold[blue]%})" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[yellow]%}✗%{$fg_bold[blue]%})" # LS colors, made with http://geoff.greer.fm/lscolors/ export LSCOLORS="Gxfxcxdxbxegedabagacad" diff --git a/themes/xiong-chiamiov-plus.zsh-theme b/themes/xiong-chiamiov-plus.zsh-theme new file mode 100644 index 000000000..095dae290 --- /dev/null +++ b/themes/xiong-chiamiov-plus.zsh-theme @@ -0,0 +1,6 @@ +# user, host, full path, and time/date +# on two lines for easier vgrepping +# entry in a nice long thread on the Arch Linux forums: http://bbs.archlinux.org/viewtopic.php?pid=521888#p521888 +PROMPT=$'%{\e[0;34m%}%B┌─[%b%{\e[0m%}%{\e[1;32m%}%n%{\e[1;30m%}@%{\e[0m%}%{\e[0;36m%}%m%{\e[0;34m%}%B]%b%{\e[0m%} - %b%{\e[0;34m%}%B[%b%{\e[1;37m%}%~%{\e[0;34m%}%B]%b%{\e[0m%} - %{\e[0;34m%}%B[%b%{\e[0;33m%}'%D{"%a %b %d, %I:%M"}%b$'%{\e[0;34m%}%B]%b%{\e[0m%} +%{\e[0;34m%}%B└─%B[%{\e[1;35m%}$%{\e[0;34m%}%B] <$(git_prompt_info)>%{\e[0m%}%b ' +PS2=$' \e[0;34m%}%B>%{\e[0m%}%b ' diff --git a/tools/check_for_upgrade.sh b/tools/check_for_upgrade.sh index 5c212b6fa..c59ebaed4 100644 --- a/tools/check_for_upgrade.sh +++ b/tools/check_for_upgrade.sh @@ -1,11 +1,22 @@ #!/bin/sh -current_epoch=$(($(date +%s) / 60 / 60 / 24)) +function _current_epoch() { + echo $(($(date +%s) / 60 / 60 / 24)) +} + +function _update_zsh_update() { + echo "LAST_EPOCH=$(_current_epoch)" > ~/.zsh-update +} if [ -f ~/.zsh-update ] then . ~/.zsh-update - epoch_diff=$(($current_epoch - $LAST_EPOCH)) + + if [[ -z "$LAST_EPOCH" ]]; then + _update_zsh_update && return 0; + fi + + epoch_diff=$((${_current_epoch} - $LAST_EPOCH)) if [ $epoch_diff -gt 6 ] then echo "[Oh My Zsh] Would you like to check for updates?" @@ -15,14 +26,9 @@ then then /bin/sh $ZSH/tools/upgrade.sh fi - - # Set the last epoch to the current so that we don't ask for another week - echo "LAST_EPOCH=${current_epoch}" > ~/.zsh-update fi -else - # TODO: refactor this so remove duplicates - # Create the ~/.zsh-update file with the current epoch info - echo "LAST_EPOCH=${current_epoch}" > ~/.zsh-update fi +# update the zsh file +_update_zsh_update