From 926d116259ee46b718d2a2fa068dcc6d1bbd426f Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Mon, 18 Jan 2010 11:46:41 -0500 Subject: [PATCH 01/58] Add a new "prose" theme. --- themes/prose.zsh-theme | 32 ++++++++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100644 themes/prose.zsh-theme diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme new file mode 100644 index 000000000..d83361e61 --- /dev/null +++ b/themes/prose.zsh-theme @@ -0,0 +1,32 @@ +function prompt_char { + git branch >/dev/null 2>/dev/null && echo '±' && return + hg root >/dev/null 2>/dev/null && echo '☿' && return + echo '○' +} + +function battery_charge { + echo `$BAT_CHARGE` 2>/dev/null +} + +function virtualenv_info { + [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') ' +} + +function hg_prompt_info { + hg prompt --angle-brackets "\ +< on %{$fg[magenta]%}%{$reset_color%}>\ +< at %{$fg[yellow]%}%{$reset_color%}>\ +%{$fg[green]%}%{$reset_color%}< +patches: >" 2>/dev/null +} + +PROMPT=' +%{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}%m%{$reset_color%} in %{$fg_bold[green]%}%~%{$reset_color%}$(hg_prompt_info)$(git_prompt_info) +$(virtualenv_info)$(prompt_char) ' + +RPROMPT='$(battery_charge)' + +ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}!" +ZSH_THEME_GIT_PROMPT_CLEAN="" From 0f711cab40a8d838e7bffd3a114bd1c689e7b952 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Mon, 18 Jan 2010 11:47:06 -0500 Subject: [PATCH 02/58] Switch around the .gitignore a bit to account for symlinking. --- .gitignore | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index f84db6dc2..18a09e24d 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,6 @@ locals.zsh log/.zsh_history projects.zsh +custom custom/*.zsh -!custom/example.zsh \ No newline at end of file +!custom/example.zsh From d136031d3552c4c136a210809c2df6981cc80d39 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 20 Jan 2010 00:40:13 -0500 Subject: [PATCH 03/58] Fix the collapsed-pwd. --- themes/prose.zsh-theme | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme index d83361e61..319e620f5 100644 --- a/themes/prose.zsh-theme +++ b/themes/prose.zsh-theme @@ -1,3 +1,7 @@ +function collapse_pwd { + echo $(pwd | sed -e "s,^$HOME,~,") +} + function prompt_char { git branch >/dev/null 2>/dev/null && echo '±' && return hg root >/dev/null 2>/dev/null && echo '☿' && return @@ -21,7 +25,7 @@ patches: Date: Wed, 20 Jan 2010 00:41:41 -0500 Subject: [PATCH 04/58] Add annoying OS X files to the ignore. --- .gitignore | 2 ++ 1 file changed, 2 insertions(+) diff --git a/.gitignore b/.gitignore index 18a09e24d..e173dab09 100644 --- a/.gitignore +++ b/.gitignore @@ -4,3 +4,5 @@ projects.zsh custom custom/*.zsh !custom/example.zsh + +.DS_Store From 3d22ee248c6bce357c018a93d31f8d292d2cb4cd Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 20 Jan 2010 12:12:48 -0500 Subject: [PATCH 05/58] Improve the git prompt. --- lib/git.zsh | 16 ++++++++++++---- themes/prose.zsh-theme | 1 + 2 files changed, 13 insertions(+), 4 deletions(-) diff --git a/lib/git.zsh b/lib/git.zsh index 629a08b0e..a34140d89 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -5,10 +5,18 @@ function git_prompt_info() { } parse_git_dirty () { - if [[ $((git status 2> /dev/null) | tail -n1) != "nothing to commit (working directory clean)" ]]; then - echo "$ZSH_THEME_GIT_PROMPT_DIRTY" - else - echo "$ZSH_THEME_GIT_PROMPT_CLEAN" + gitstat=$(git status 2>/dev/null | grep '\(# Untracked\|# Changes\|# Changed but not updated:\)') + + if [[ $(echo ${gitstat} | grep -c "^# Changes to be committed:$") > 0 ]]; then + echo -n "$ZSH_THEME_GIT_PROMPT_DIRTY" + fi + + if [[ $(echo ${gitstat} | grep -c "^\(# Untracked files:\|# Changed but not updated:\)$") > 0 ]]; then + echo -n "$ZSH_THEME_GIT_PROMPT_UNTRACKED" + fi + + if [[ $(echo ${gitstat} | wc -l | tr -d ' ') == 0 ]]; then + echo -n "$ZSH_THEME_GIT_PROMPT_CLEAN" fi } diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme index 319e620f5..9071ee07f 100644 --- a/themes/prose.zsh-theme +++ b/themes/prose.zsh-theme @@ -33,4 +33,5 @@ RPROMPT='$(battery_charge)' ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}!" +ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?" ZSH_THEME_GIT_PROMPT_CLEAN="" From 6ec9f8c1688c3e99e301632aa818763c28fad896 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Mon, 25 Jan 2010 09:06:45 -0500 Subject: [PATCH 06/58] Clear new tabs. --- lib/functions.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/functions.zsh b/lib/functions.zsh index 74b93f00e..aa974e5c2 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\"; clear; $*" in window 1 end tell EOF } From 26866cf4be95b1e1bfc427a8228b8e6e3d5c62b9 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Mon, 1 Feb 2010 18:43:54 -0500 Subject: [PATCH 07/58] themes/prose: Replace collapse_pwd with a built-in version. --- themes/prose.zsh-theme | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme index 9071ee07f..cab930f87 100644 --- a/themes/prose.zsh-theme +++ b/themes/prose.zsh-theme @@ -1,7 +1,3 @@ -function collapse_pwd { - echo $(pwd | sed -e "s,^$HOME,~,") -} - function prompt_char { git branch >/dev/null 2>/dev/null && echo '±' && return hg root >/dev/null 2>/dev/null && echo '☿' && return @@ -25,7 +21,7 @@ patches: Date: Mon, 1 Feb 2010 23:31:59 -0700 Subject: [PATCH 08/58] Initial merge, adding vi key bindings and RPROMPT clock --- themes/mattcable.zsh-theme | 9 +++++++++ 1 file changed, 9 insertions(+) create mode 100644 themes/mattcable.zsh-theme diff --git a/themes/mattcable.zsh-theme b/themes/mattcable.zsh-theme new file mode 100644 index 000000000..29ef6a22b --- /dev/null +++ b/themes/mattcable.zsh-theme @@ -0,0 +1,9 @@ +# based on robbyrussel.zsh-theme + +PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}' +RPROMPT="%{$fg_bold[red]%}(%D{%m-%d %H:%M})%{$reset_color%}" + +ZSH_THEME_GIT_PROMPT_PREFIX="git:(%{$fg[red]%}" +ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[blue]%}) %{$fg[yellow]%}✗%{$reset_color%}" +ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[blue]%})" From 2e9ab0b8eafa8188754e27624117cda5463eccda Mon Sep 17 00:00:00 2001 From: Matt Cable Date: Mon, 1 Feb 2010 23:44:57 -0700 Subject: [PATCH 09/58] vi keybindings --- lib/key-bindings.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/key-bindings.zsh b/lib/key-bindings.zsh index 87e47bab6..f6cf45ce3 100644 --- a/lib/key-bindings.zsh +++ b/lib/key-bindings.zsh @@ -2,7 +2,7 @@ autoload -U compinit compinit -bindkey -e +bindkey -v bindkey '\ew' kill-region bindkey -s '\el' "ls\n" bindkey -s '\e.' "..\n" From 35e544f76f4e39c6f5d5fb42db61f96e62b92077 Mon Sep 17 00:00:00 2001 From: Matt Cable Date: Mon, 1 Feb 2010 23:46:20 -0700 Subject: [PATCH 10/58] Changed default theme --- templates/zshrc.zsh-template | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/zshrc.zsh-template b/templates/zshrc.zsh-template index d905be04b..5d4072186 100644 --- a/templates/zshrc.zsh-template +++ b/templates/zshrc.zsh-template @@ -3,7 +3,7 @@ export ZSH=$HOME/.oh-my-zsh # Set to the name theme to load. # Look in ~/.oh-my-zsh/themes/ -export ZSH_THEME="robbyrussell" +export ZSH_THEME="mattcable" # Set to this to use case-sensitive completion # export CASE_SENSITIVE="true" From 2b6116039b42da1d4deca9a954819fe1458a4c84 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Tue, 2 Feb 2010 09:11:41 -0500 Subject: [PATCH 11/58] Add bare dot aliases for backing out of directories. --- lib/directories.zsh | 3 +++ 1 file changed, 3 insertions(+) diff --git a/lib/directories.zsh b/lib/directories.zsh index 56d7a2316..146a5b069 100644 --- a/lib/directories.zsh +++ b/lib/directories.zsh @@ -4,6 +4,9 @@ setopt auto_pushd setopt pushd_ignore_dups alias ..='cd ..' +alias ...='cd ../..' +alias ....='cd ../../..' +alias .....='cd ../../../..' alias cd..='cd ..' alias cd...='cd ../..' alias cd....='cd ../../..' From 863b28411fa9b96ad4ef7f296ee8c1548af51d21 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Tue, 2 Feb 2010 09:21:54 -0500 Subject: [PATCH 12/58] Load zmv to help with complex renames. --- lib/misc.zsh | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/misc.zsh b/lib/misc.zsh index 4c1743657..bf68182e1 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -3,6 +3,7 @@ autoload -U url-quote-magic zle -N self-insert url-quote-magic ## file rename magick +autoload -U zmv bindkey "^[m" copy-prev-shell-word ## jobs From 7bde96c7b207a9989fac19882c4553f7b0d07670 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Tue, 2 Feb 2010 09:26:02 -0500 Subject: [PATCH 13/58] Add a file for Python-related things. --- lib/python.zsh | 3 +++ 1 file changed, 3 insertions(+) create mode 100644 lib/python.zsh diff --git a/lib/python.zsh b/lib/python.zsh new file mode 100644 index 000000000..79c8e151e --- /dev/null +++ b/lib/python.zsh @@ -0,0 +1,3 @@ +function wo() { + [ -f './.venv' ] && workon `cat ./.venv` +} From db2302a59cc6e37f1b94871c94df6a4908141f19 Mon Sep 17 00:00:00 2001 From: Matt Cable Date: Tue, 2 Feb 2010 10:39:11 -0700 Subject: [PATCH 14/58] git_prompt_info didn't account for empty gitstat case. Problem was only noticable with non-empty $ZSH_THEME_GIT_PROMPT_CLEAN --- lib/git.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/git.zsh b/lib/git.zsh index a34140d89..31fa77c10 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -15,7 +15,7 @@ parse_git_dirty () { echo -n "$ZSH_THEME_GIT_PROMPT_UNTRACKED" fi - if [[ $(echo ${gitstat} | wc -l | tr -d ' ') == 0 ]]; then + if [[ $(echo ${gitstat} | grep -v '^$' | wc -l | tr -d ' ') == 0 ]]; then echo -n "$ZSH_THEME_GIT_PROMPT_CLEAN" fi } From e5fa536313178aa37713b575c00b5fe4139102a8 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Tue, 2 Feb 2010 19:22:28 -0500 Subject: [PATCH 15/58] Undo the VI keybinding change and switch my prompt to be the default. --- lib/key-bindings.zsh | 2 +- templates/zshrc.zsh-template | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/lib/key-bindings.zsh b/lib/key-bindings.zsh index f6cf45ce3..87e47bab6 100644 --- a/lib/key-bindings.zsh +++ b/lib/key-bindings.zsh @@ -2,7 +2,7 @@ autoload -U compinit compinit -bindkey -v +bindkey -e bindkey '\ew' kill-region bindkey -s '\el' "ls\n" bindkey -s '\e.' "..\n" diff --git a/templates/zshrc.zsh-template b/templates/zshrc.zsh-template index 5d4072186..ef1e645d5 100644 --- a/templates/zshrc.zsh-template +++ b/templates/zshrc.zsh-template @@ -3,7 +3,7 @@ export ZSH=$HOME/.oh-my-zsh # Set to the name theme to load. # Look in ~/.oh-my-zsh/themes/ -export ZSH_THEME="mattcable" +export ZSH_THEME="prose" # Set to this to use case-sensitive completion # export CASE_SENSITIVE="true" From db18f4361beac88fd8f31fe9ac67113fdef146e3 Mon Sep 17 00:00:00 2001 From: Ole Reifschneider Date: Tue, 19 Jan 2010 15:51:54 +0100 Subject: [PATCH 16/58] lib/completion: Don't select the first item of completion list. Based on a commit by: Ole Reifschneider --- lib/completion.zsh | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/lib/completion.zsh b/lib/completion.zsh index 46b6d8f65..0e2e38849 100644 --- a/lib/completion.zsh +++ b/lib/completion.zsh @@ -1,6 +1,5 @@ ## fixme - the load process here seems a bit bizarre -setopt noautomenu setopt complete_in_word setopt always_to_end @@ -30,7 +29,7 @@ unsetopt MENU_COMPLETE # should this be in keybindings? bindkey -M menuselect '^o' accept-and-infer-next-history -zstyle ':completion:*:*:*:*:*' menu yes select +zstyle ':completion:*:*:*:*:*' menu select # zstyle ':completion:*:*:*:*:processes' force-list always zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#) ([0-9a-z-]#)*=01;34=0=01' From 66e9fa165ddbe079f5e9a5a81ed09d1be8ccbc1d Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Tue, 16 Feb 2010 17:31:21 -0500 Subject: [PATCH 17/58] Trash all the ruby/git cruft and tweak completion a bit. --- lib/aliases.zsh | 35 ---------------------------------- lib/appearance.zsh | 1 - lib/completion.zsh | 18 ++++++------------ lib/directories.zsh | 10 +++++++++- lib/functions.zsh | 21 --------------------- lib/git.zsh | 15 --------------- lib/key-bindings.zsh | 20 -------------------- lib/misc.zsh | 2 +- lib/rake_completion.zsh | 42 ----------------------------------------- 9 files changed, 16 insertions(+), 148 deletions(-) delete mode 100644 lib/rake_completion.zsh diff --git a/lib/aliases.zsh b/lib/aliases.zsh index f97daf41a..eac15103f 100644 --- a/lib/aliases.zsh +++ b/lib/aliases.zsh @@ -5,49 +5,14 @@ alias pu='pushd' alias po='popd' alias ss='thin --stats "/thin/stats" start' -alias sg='ruby script/generate' -alias sd='ruby script/destroy' -alias sp='ruby script/plugin' -alias ssp='ruby script/spec' -alias rdbm='rake db:migrate' -alias sc='ruby script/console' -alias sd='ruby script/server --debugger' alias devlog='tail -f log/development.log' -# Basic directory operations -alias .='pwd' -alias ...='cd ../..' -alias -- -='cd -' - # Super user alias _='sudo' alias ss='sudo su -' -#alias g='grep -in' - # Show history alias history='fc -l 1' -# List direcory contents -alias lsa='ls -lah' -alias l='ls -la' -alias ll='ls -alr' -alias sl=ls # often screw this up - -alias sgem='sudo gem' - -# Find ruby file -alias rfind='find . -name *.rb | xargs grep -n' -alias afind='ack-grep -il' - -# Git and svn mix -alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk' - # TextMate alias et='mate . &' -alias ett='mate app config lib db public spec test Rakefile Capfile Todo &' -alias etp='mate app config lib db public spec test vendor/plugins vendor/gems Rakefile Capfile Todo &' -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' diff --git a/lib/appearance.zsh b/lib/appearance.zsh index ffee52b5e..0fd7f463f 100644 --- a/lib/appearance.zsh +++ b/lib/appearance.zsh @@ -1,7 +1,6 @@ # ls colors autoload colors; colors; export LSCOLORS="Gxfxcxdxbxegedabagacad" -#export LS_COLORS # Enable ls colors if [ "$DISABLE_LS_COLORS" != "true" ] diff --git a/lib/completion.zsh b/lib/completion.zsh index 0e2e38849..dbf8572a6 100644 --- a/lib/completion.zsh +++ b/lib/completion.zsh @@ -1,7 +1,8 @@ ## fixme - the load process here seems a bit bizarre +unsetopt noautomenu setopt complete_in_word -setopt always_to_end +unsetopt always_to_end unsetopt flowcontrol @@ -12,7 +13,7 @@ compinit zmodload -i zsh/complist -## case-insensitive (all),partial-word and then substring completion +# case-insensitive (all), partial-word and then substring completion if [ "x$CASE_SENSITIVE" = "xtrue" ]; then zstyle ':completion:*' matcher-list 'r:|[._-]=* r:|=*' 'l:|=* r:|=*' unset CASE_SENSITIVE @@ -22,15 +23,14 @@ fi zstyle ':completion:*' list-colors '' - unsetopt MENU_COMPLETE -#setopt AUTO_MENU +setopt AUTO_MENU # should this be in keybindings? bindkey -M menuselect '^o' accept-and-infer-next-history -zstyle ':completion:*:*:*:*:*' menu select -# zstyle ':completion:*:*:*:*:processes' force-list always +zstyle ':completion:*:*:*:*:*' menu select=1 +zstyle ':completion:*:*:*:*:processes' force-list always zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#) ([0-9a-z-]#)*=01;34=0=01' zstyle ':completion:*:*:*:*:processes' command "ps -u `whoami` -o pid,user,comm -w -w" @@ -40,9 +40,3 @@ if [ -f ~/.ssh/known_hosts ]; then zstyle ':completion:*' hosts $( sed 's/[, ].*$//' $HOME/.ssh/known_hosts ) zstyle ':completion:*:*:(ssh|scp):*:*' hosts `sed 's/^\([^ ,]*\).*$/\1/' ~/.ssh/known_hosts` 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 diff --git a/lib/directories.zsh b/lib/directories.zsh index 146a5b069..3fd274fc9 100644 --- a/lib/directories.zsh +++ b/lib/directories.zsh @@ -3,6 +3,8 @@ setopt auto_name_dirs setopt auto_pushd setopt pushd_ignore_dups +alias -- -='cd -' +alias .='pwd' alias ..='cd ..' alias ...='cd ../..' alias ....='cd ../../..' @@ -40,4 +42,10 @@ cd () { alias md='mkdir -p' alias rd=rmdir -alias d='dirs -v' \ No newline at end of file +alias d='dirs -v' + +# List direcory contents +alias lsa='ls -lah' +alias l='ls -la' +alias ll='ls -alr' +alias sl=ls diff --git a/lib/functions.zsh b/lib/functions.zsh index aa974e5c2..d272b6460 100644 --- a/lib/functions.zsh +++ b/lib/functions.zsh @@ -21,10 +21,6 @@ function preexec { title $cmd[1]:t "$cmd[2,-1]" } -function remote_console() { - /usr/bin/env ssh $1 "( cd $2 && ruby script/console production )" -} - function zsh_stats() { history | awk '{print $2}' | sort | uniq -c | sort -rn | head } @@ -58,20 +54,3 @@ 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 31fa77c10..7628d9e8a 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -28,18 +28,3 @@ 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/lib/key-bindings.zsh b/lib/key-bindings.zsh index 87e47bab6..134a0bcbd 100644 --- a/lib/key-bindings.zsh +++ b/lib/key-bindings.zsh @@ -19,23 +19,3 @@ bindkey "^[[1~" beginning-of-line bindkey "^[[F" end-of-line bindkey "^[[4~" end-of-line bindkey ' ' magic-space # also do history expansion on space - - -# consider emacs keybindings: - -#bindkey -e ## emacs key bindings -# -#bindkey '^[[A' up-line-or-search -#bindkey '^[[B' down-line-or-search -#bindkey '^[^[[C' emacs-forward-word -#bindkey '^[^[[D' emacs-backward-word -# -#bindkey -s '^X^Z' '%-^M' -#bindkey '^[e' expand-cmd-path -#bindkey '^[^I' reverse-menu-complete -#bindkey '^X^N' accept-and-infer-next-history -#bindkey '^W' kill-region -#bindkey '^I' complete-word -## Fix weird sequence that rxvt produces -#bindkey -s '^[[Z' '\t' -# \ No newline at end of file diff --git a/lib/misc.zsh b/lib/misc.zsh index bf68182e1..d09375044 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -10,5 +10,5 @@ bindkey "^[m" copy-prev-shell-word setopt long_list_jobs ## pager -export PAGER=less +export PAGER='less -R' export LC_CTYPE=en_US.UTF-8 diff --git a/lib/rake_completion.zsh b/lib/rake_completion.zsh deleted file mode 100644 index c425a625e..000000000 --- a/lib/rake_completion.zsh +++ /dev/null @@ -1,42 +0,0 @@ -_rake_does_task_list_need_generating () { - if [ ! -f .rake_tasks~ ]; then return 0; - else - accurate=$(stat -f%m .rake_tasks~) - changed=$(stat -f%m Rakefile) - return $(expr $accurate '>=' $changed) - fi -} - -_rake () { - if [ -f Rakefile ]; then - if _rake_does_task_list_need_generating; then - echo "\nGenerating .rake_tasks~..." > /dev/stderr - rake --silent --tasks | cut -d " " -f 2 > .rake_tasks~ - fi - compadd `cat .rake_tasks~` - fi -} - -compctl -K _rake rake - -function _cap_does_task_list_need_generating () { - if [ ! -f .cap_tasks~ ]; then return 0; - else - accurate=$(stat -f%m .cap_tasks~) - changed=$(stat -f%m config/deploy.rb) - return $(expr $accurate '>=' $changed) - fi -} - -function _cap () { - if [ -f config/deploy.rb ]; then - if _cap_does_task_list_need_generating; then - echo "\nGenerating .cap_tasks~..." > /dev/stderr - cap show_tasks -q | cut -d " " -f 1 | sed -e '/^ *$/D' -e '1,2D' -> .cap_tasks~ - fi - compadd `cat .cap_tasks~` - fi -} - -compctl -K _cap cap From ce4dc6fac28028d82099b969bead1966bfbfb0ad Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Sat, 27 Feb 2010 16:55:53 -0500 Subject: [PATCH 18/58] Add the cdv alias to cd to the virtualenvs directory. --- lib/python.zsh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/python.zsh b/lib/python.zsh index 79c8e151e..1eeb65741 100644 --- a/lib/python.zsh +++ b/lib/python.zsh @@ -1,3 +1,5 @@ function wo() { [ -f './.venv' ] && workon `cat ./.venv` } + +alias cdv='cd $WORKON_HOME' From 9d43c16f4e1d0617bcb615275be5483e0cfadadb Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 10 Mar 2010 09:18:52 -0500 Subject: [PATCH 19/58] Add the pman function to view man pages as PDFs. --- lib/misc.zsh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/misc.zsh b/lib/misc.zsh index d09375044..a608f9dda 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -12,3 +12,8 @@ setopt long_list_jobs ## pager export PAGER='less -R' export LC_CTYPE=en_US.UTF-8 + +## pretty man pages +function pman() { + man $1 -t | open -f -a Preview +} \ No newline at end of file From f7e528b4a155aa59475157c18af50ffdfd548d2f Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Thu, 18 Mar 2010 15:44:13 -0400 Subject: [PATCH 20/58] Add some useful Django-related aliases. --- lib/django.zsh | 6 ++++++ 1 file changed, 6 insertions(+) create mode 100644 lib/django.zsh diff --git a/lib/django.zsh b/lib/django.zsh new file mode 100644 index 000000000..0d563ab5d --- /dev/null +++ b/lib/django.zsh @@ -0,0 +1,6 @@ +alias pmr='python manage.py runserver' +alias pmrp='python manage.py runserver_plus' +alias pmrpg='pmrp --adminmedia=`pwd`/media/admin' +alias pmsdb='python manage.py syncdb' +alias pms='python manage.py shell' +alias pmlf='python manage.py loaddata fixtures/*' From 9cc2d0964beb4249434e773819a9345da713573b Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 23 Apr 2010 11:20:24 -0400 Subject: [PATCH 21/58] Add the cdp function. --- lib/python.zsh | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/lib/python.zsh b/lib/python.zsh index 1eeb65741..f1e507c48 100644 --- a/lib/python.zsh +++ b/lib/python.zsh @@ -3,3 +3,9 @@ function wo() { } alias cdv='cd $WORKON_HOME' + +function cdp () { + cd "$(python -c "import os.path as _, ${1}; \ + print _.dirname(_.realpath(${1}.__file__[:-1]))" + )" +} \ No newline at end of file From ad2d5b0bf5f348c927934de62a8ea313750a9adb Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 23 Apr 2010 21:10:06 -0400 Subject: [PATCH 22/58] Add some simple Redis aliases. --- lib/redis.zsh | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 lib/redis.zsh diff --git a/lib/redis.zsh b/lib/redis.zsh new file mode 100644 index 000000000..751a01a84 --- /dev/null +++ b/lib/redis.zsh @@ -0,0 +1,2 @@ +alias res='./redis-server' +alias rec='./redis-cli' From 1df9ea8c2888b90fa42e7762e00227fe8fc14d24 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 30 Apr 2010 10:25:30 -0400 Subject: [PATCH 23/58] Add the pj function to easily prettify JSON. --- lib/misc.zsh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/misc.zsh b/lib/misc.zsh index a608f9dda..b85bdf212 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -16,4 +16,9 @@ export LC_CTYPE=en_US.UTF-8 ## pretty man pages function pman() { man $1 -t | open -f -a Preview +} + +## pretty JSON +function pj() { + python -mjson.tool } \ No newline at end of file From 0be470c37d12e58e0977ecc25ec861eed3b148c0 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 30 Apr 2010 15:11:26 -0400 Subject: [PATCH 24/58] Add some Gunicorn aliases and the oo alias. --- lib/django.zsh | 4 ++++ lib/misc.zsh | 5 ++++- 2 files changed, 8 insertions(+), 1 deletion(-) diff --git a/lib/django.zsh b/lib/django.zsh index 0d563ab5d..901c2f6ef 100644 --- a/lib/django.zsh +++ b/lib/django.zsh @@ -4,3 +4,7 @@ alias pmrpg='pmrp --adminmedia=`pwd`/media/admin' alias pmsdb='python manage.py syncdb' alias pms='python manage.py shell' alias pmlf='python manage.py loaddata fixtures/*' + +alias gs='gunicorn_django' +alias gk='kill `cat .gunicorn.pid`' +alias gl='tail -f .gunicorn.log' \ No newline at end of file diff --git a/lib/misc.zsh b/lib/misc.zsh index b85bdf212..aa033dec3 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -21,4 +21,7 @@ function pman() { ## pretty JSON function pj() { python -mjson.tool -} \ No newline at end of file +} + +## Open current directory +alias oo='open .' \ No newline at end of file From 01680434ff31f19eb05b6c29251430f5f8f311a5 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 30 Apr 2010 15:13:51 -0400 Subject: [PATCH 25/58] Add some Supervisord aliases. --- lib/supervisord.zsh | 2 ++ 1 file changed, 2 insertions(+) create mode 100644 lib/supervisord.zsh diff --git a/lib/supervisord.zsh b/lib/supervisord.zsh new file mode 100644 index 000000000..b09effb67 --- /dev/null +++ b/lib/supervisord.zsh @@ -0,0 +1,2 @@ +alias ssd='sudo supervisord' +alias ssc='sudo supervisorctl' \ No newline at end of file From 37303d022e1d8a47dec56fda4c7f946fd9437d87 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 30 Apr 2010 15:26:03 -0400 Subject: [PATCH 26/58] Move over a few more aliases from my personal .zshrc. --- lib/directories.zsh | 1 + lib/django.zsh | 3 ++- lib/misc.zsh | 11 ++++++++++- lib/python.zsh | 2 +- 4 files changed, 14 insertions(+), 3 deletions(-) diff --git a/lib/directories.zsh b/lib/directories.zsh index 3fd274fc9..fbd90f888 100644 --- a/lib/directories.zsh +++ b/lib/directories.zsh @@ -48,4 +48,5 @@ alias d='dirs -v' alias lsa='ls -lah' alias l='ls -la' alias ll='ls -alr' +alias ls='ls -Goh' alias sl=ls diff --git a/lib/django.zsh b/lib/django.zsh index 901c2f6ef..b1d2c9974 100644 --- a/lib/django.zsh +++ b/lib/django.zsh @@ -1,3 +1,4 @@ +alias pm='python manage.py' alias pmr='python manage.py runserver' alias pmrp='python manage.py runserver_plus' alias pmrpg='pmrp --adminmedia=`pwd`/media/admin' @@ -7,4 +8,4 @@ alias pmlf='python manage.py loaddata fixtures/*' alias gs='gunicorn_django' alias gk='kill `cat .gunicorn.pid`' -alias gl='tail -f .gunicorn.log' \ No newline at end of file +alias gl='tail -f .gunicorn.log' diff --git a/lib/misc.zsh b/lib/misc.zsh index aa033dec3..722412a82 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -24,4 +24,13 @@ function pj() { } ## Open current directory -alias oo='open .' \ No newline at end of file +alias oo='open .' + +## Start a local SMTP server and dump emails sent to it to the console +alias smtpconsole='python -m smtpd -n -c DebuggingServer localhost:1025' + +## Serve the current folder on port 80 +alias serve_this='python -m SimpleHTTPServer' + +## Highlight-aware less command +alias hl='less -R' \ No newline at end of file diff --git a/lib/python.zsh b/lib/python.zsh index f1e507c48..7c17a097e 100644 --- a/lib/python.zsh +++ b/lib/python.zsh @@ -1,7 +1,7 @@ function wo() { [ -f './.venv' ] && workon `cat ./.venv` } - +alias deact='deactivate' alias cdv='cd $WORKON_HOME' function cdp () { From 4ea95c3c166df3d7201fa44f3a67f12ca711c8ca Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Tue, 4 May 2010 14:36:48 -0400 Subject: [PATCH 27/58] Start a custom version of startapp. --- lib/django.zsh | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/lib/django.zsh b/lib/django.zsh index b1d2c9974..2e0eeeaaa 100644 --- a/lib/django.zsh +++ b/lib/django.zsh @@ -9,3 +9,11 @@ alias pmlf='python manage.py loaddata fixtures/*' alias gs='gunicorn_django' alias gk='kill `cat .gunicorn.pid`' alias gl='tail -f .gunicorn.log' + +function djapp() { + mkdir -p $1/templates/$1 + touch $1/__init__.py + echo "from django.db import models\n\n" > $1/models.py + echo "from django.contrib import admin\nfrom $1.models import *\n\n" > $1/admin.py + echo "from django.conf.urls.defaults import *\n\n" > $1/urls.py +} \ No newline at end of file From 968aaf26271d6a88841c4204389eccd8eac8010e Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 5 May 2010 13:01:28 -0400 Subject: [PATCH 28/58] Start using tree. --- lib/directories.zsh | 15 ++++++++++----- 1 file changed, 10 insertions(+), 5 deletions(-) diff --git a/lib/directories.zsh b/lib/directories.zsh index fbd90f888..4c7fd2394 100644 --- a/lib/directories.zsh +++ b/lib/directories.zsh @@ -45,8 +45,13 @@ alias rd=rmdir alias d='dirs -v' # List direcory contents -alias lsa='ls -lah' -alias l='ls -la' -alias ll='ls -alr' -alias ls='ls -Goh' -alias sl=ls +alias l1='tree --dirsfirst -ChFL 1' +alias l2='tree --dirsfirst -ChFL 2' +alias l3='tree --dirsfirst -ChFL 3' + +alias ll1='tree --dirsfirst -ChFupDaL 1' +alias ll2='tree --dirsfirst -ChFupDaL 2' +alias ll3='tree --dirsfirst -ChFupDaL 3' + +alias l='l1' +alias ll='ll1' \ No newline at end of file From 2d82f60bfc1138f5cd3e59b6c91f60c51d274855 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Thu, 8 Jul 2010 10:27:45 -0400 Subject: [PATCH 29/58] lib/django: add a pmsp alias --- lib/directories.zsh | 2 +- lib/django.zsh | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/lib/directories.zsh b/lib/directories.zsh index 4c7fd2394..9065011f9 100644 --- a/lib/directories.zsh +++ b/lib/directories.zsh @@ -54,4 +54,4 @@ alias ll2='tree --dirsfirst -ChFupDaL 2' alias ll3='tree --dirsfirst -ChFupDaL 3' alias l='l1' -alias ll='ll1' \ No newline at end of file +alias ll='ll1' diff --git a/lib/django.zsh b/lib/django.zsh index 2e0eeeaaa..14b11f5ce 100644 --- a/lib/django.zsh +++ b/lib/django.zsh @@ -4,6 +4,7 @@ alias pmrp='python manage.py runserver_plus' alias pmrpg='pmrp --adminmedia=`pwd`/media/admin' alias pmsdb='python manage.py syncdb' alias pms='python manage.py shell' +alias pmsp='python manage.py shell_plus' alias pmlf='python manage.py loaddata fixtures/*' alias gs='gunicorn_django' @@ -16,4 +17,4 @@ function djapp() { echo "from django.db import models\n\n" > $1/models.py echo "from django.contrib import admin\nfrom $1.models import *\n\n" > $1/admin.py echo "from django.conf.urls.defaults import *\n\n" > $1/urls.py -} \ No newline at end of file +} From e13b2dc811484018eb9e3e876328d235eba20194 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 14 Jul 2010 10:04:44 -0400 Subject: [PATCH 30/58] Add an alias for quick looking. --- lib/misc.zsh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/lib/misc.zsh b/lib/misc.zsh index 722412a82..607ee8649 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -26,6 +26,9 @@ function pj() { ## Open current directory alias oo='open .' +## Quick-look a file (^C to close) +alias ql='qlmanage -p 2>/dev/null' + ## Start a local SMTP server and dump emails sent to it to the console alias smtpconsole='python -m smtpd -n -c DebuggingServer localhost:1025' @@ -33,4 +36,4 @@ alias smtpconsole='python -m smtpd -n -c DebuggingServer localhost:1025' alias serve_this='python -m SimpleHTTPServer' ## Highlight-aware less command -alias hl='less -R' \ No newline at end of file +alias hl='less -R' From d52ac73a988e2b7e001f0cd42f90005649017691 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 21 Jul 2010 16:37:09 -0400 Subject: [PATCH 31/58] Update Mercurial tab completion functions. --- functions/_hg | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/functions/_hg b/functions/_hg index 6028baa24..9f9863690 100644 --- a/functions/_hg +++ b/functions/_hg @@ -1,4 +1,3 @@ - #compdef hg # Zsh completion script for mercurial. Rename this file to _hg and copy @@ -359,7 +358,7 @@ _hg_pat_opts=( _hg_diff_opts=( '(--text -a)'{-a,--text}'[treat all files as text]' '(--git -g)'{-g,--git}'[use git extended diff format]' - "--nodates[don't include dates in diff headers]") + "--nodates[omit dates from diff headers]") _hg_dryrun_opts=( '(--dry-run -n)'{-n,--dry-run}'[do not perform actions, just print output]') @@ -735,6 +734,11 @@ _hg_cmd_status() { '*:files:_files' } +_hg_cmd_summary() { + _arguments -s -w : $_hg_global_opts \ + '--remote[check for push and pull]' +} + _hg_cmd_tag() { _arguments -s -w : $_hg_global_opts \ '(--local -l)'{-l,--local}'[make the tag local]' \ From 7ab8155aa89d5cd5e371438508ac6abce001a35c Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 21 Jul 2010 16:38:12 -0400 Subject: [PATCH 32/58] Remove the example script to make custom symlinkable. --- custom/example.zsh | 5 ----- 1 file changed, 5 deletions(-) delete mode 100644 custom/example.zsh diff --git a/custom/example.zsh b/custom/example.zsh deleted file mode 100644 index 28ffcae25..000000000 --- a/custom/example.zsh +++ /dev/null @@ -1,5 +0,0 @@ -# Add yourself some shortcuts to projects you often work on -# Example: -# -# brainstormr=/Users/robbyrussell/Projects/development/planetargon/brainstormr -# \ No newline at end of file From 8b78c0135f0e01ad07526b6fdab440ed01840390 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 21 Jul 2010 16:52:28 -0400 Subject: [PATCH 33/58] Remove some unused aliases/functions. --- lib/directories.zsh | 10 ---------- lib/functions.zsh | 12 ------------ 2 files changed, 22 deletions(-) diff --git a/lib/directories.zsh b/lib/directories.zsh index 9065011f9..0070ad882 100644 --- a/lib/directories.zsh +++ b/lib/directories.zsh @@ -15,16 +15,6 @@ alias cd....='cd ../../..' alias cd.....='cd ../../../..' alias cd/='cd /' -alias 1='cd -' -alias 2='cd +2' -alias 3='cd +3' -alias 4='cd +4' -alias 5='cd +5' -alias 6='cd +6' -alias 7='cd +7' -alias 8='cd +8' -alias 9='cd +9' - cd () { if [[ "x$*" == "x..." ]]; then cd ../.. diff --git a/lib/functions.zsh b/lib/functions.zsh index 75f27efd3..96f7e26a7 100644 --- a/lib/functions.zsh +++ b/lib/functions.zsh @@ -32,15 +32,3 @@ function uninstall_oh_my_zsh() { function upgrade_oh_my_zsh() { /bin/sh $ZSH/tools/upgrade.sh } - -function tab() { - osascript 2>/dev/null < Date: Tue, 27 Jul 2010 15:12:23 -0400 Subject: [PATCH 34/58] django: add pmt --- lib/django.zsh | 1 + 1 file changed, 1 insertion(+) diff --git a/lib/django.zsh b/lib/django.zsh index 14b11f5ce..b72160adc 100644 --- a/lib/django.zsh +++ b/lib/django.zsh @@ -6,6 +6,7 @@ alias pmsdb='python manage.py syncdb' alias pms='python manage.py shell' alias pmsp='python manage.py shell_plus' alias pmlf='python manage.py loaddata fixtures/*' +alias pmt='python -W ignore::DeprecationWarning manage.py test' alias gs='gunicorn_django' alias gk='kill `cat .gunicorn.pid`' From f2dad51a2c8e3ab47fa00bd89f07b2ebe07d1901 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Thu, 12 Aug 2010 09:20:12 -0400 Subject: [PATCH 35/58] lib/python: lazily load the extremely slow virtualenvwrapper --- lib/python.zsh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/lib/python.zsh b/lib/python.zsh index 7c17a097e..3f740b4c9 100644 --- a/lib/python.zsh +++ b/lib/python.zsh @@ -1,5 +1,7 @@ function wo() { - [ -f './.venv' ] && workon `cat ./.venv` + [ "$VEW_SOURCED" ] || source "$VEW_PATH" + [ -f './.venv' ] && workon `cat ./.venv` || workon $1 + export VEW_SOURCED=1 } alias deact='deactivate' alias cdv='cd $WORKON_HOME' @@ -8,4 +10,4 @@ function cdp () { cd "$(python -c "import os.path as _, ${1}; \ print _.dirname(_.realpath(${1}.__file__[:-1]))" )" -} \ No newline at end of file +} From 3e4947673687b94139f819b39de86d9a2fdc2eb8 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Thu, 12 Aug 2010 09:34:14 -0400 Subject: [PATCH 36/58] lib: prune some things to load faster --- lib/aliases.zsh | 9 --------- lib/correction.zsh | 4 ---- lib/grep.zsh | 6 ------ lib/misc.zsh | 8 ++++++++ lib/rvm.zsh | 7 ------- 5 files changed, 8 insertions(+), 26 deletions(-) delete mode 100644 lib/aliases.zsh delete mode 100644 lib/grep.zsh delete mode 100644 lib/rvm.zsh diff --git a/lib/aliases.zsh b/lib/aliases.zsh deleted file mode 100644 index eabafbc4d..000000000 --- a/lib/aliases.zsh +++ /dev/null @@ -1,9 +0,0 @@ -# Push and pop directories on directory stack -alias pu='pushd' -alias po='popd' - -# Super user -alias _='sudo' - -# Show history -alias history='fc -l 1' diff --git a/lib/correction.zsh b/lib/correction.zsh index fc60dcdbd..0ad789881 100644 --- a/lib/correction.zsh +++ b/lib/correction.zsh @@ -4,7 +4,3 @@ 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' diff --git a/lib/grep.zsh b/lib/grep.zsh deleted file mode 100644 index 93c4270b6..000000000 --- a/lib/grep.zsh +++ /dev/null @@ -1,6 +0,0 @@ -# -# Color grep results -# Examples: http://rubyurl.com/ZXv -# -export GREP_OPTIONS='--color=auto' -export GREP_COLOR='1;32' \ No newline at end of file diff --git a/lib/misc.zsh b/lib/misc.zsh index 607ee8649..b1a14140c 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -37,3 +37,11 @@ alias serve_this='python -m SimpleHTTPServer' ## Highlight-aware less command alias hl='less -R' + +## Show history +alias history='fc -l 1' + +## Color grep results +## Examples: http://rubyurl.com/ZXv +export GREP_OPTIONS='--color=auto' +export GREP_COLOR='1;32' diff --git a/lib/rvm.zsh b/lib/rvm.zsh deleted file mode 100644 index 597be1b33..000000000 --- a/lib/rvm.zsh +++ /dev/null @@ -1,7 +0,0 @@ -# get the name of the branch we are on -function rvm_prompt_info() { - ruby_version=$(~/.rvm/bin/rvm-prompt 2> /dev/null) || return - echo "($ruby_version)" -} - - From edda7793d535e9e25f4a5067252f6f6c6cac571b Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 18 Aug 2010 03:54:35 -0400 Subject: [PATCH 37/58] Add Vim undo files to the .gitignore. --- .gitignore | 1 + 1 file changed, 1 insertion(+) diff --git a/.gitignore b/.gitignore index e173dab09..67262f05b 100644 --- a/.gitignore +++ b/.gitignore @@ -4,5 +4,6 @@ projects.zsh custom custom/*.zsh !custom/example.zsh +*.un~ .DS_Store From c279e2af8f0a0d2e3791012b526b7b6b09c97b86 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 18 Aug 2010 03:54:54 -0400 Subject: [PATCH 38/58] themes/prose: remove the battery charge prompt --- themes/prose.zsh-theme | 6 ------ 1 file changed, 6 deletions(-) diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme index cab930f87..74c59c071 100644 --- a/themes/prose.zsh-theme +++ b/themes/prose.zsh-theme @@ -4,10 +4,6 @@ function prompt_char { echo '○' } -function battery_charge { - echo `$BAT_CHARGE` 2>/dev/null -} - function virtualenv_info { [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') ' } @@ -24,8 +20,6 @@ PROMPT=' %{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}%m%{$reset_color%} in %{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(hg_prompt_info)$(git_prompt_info) $(virtualenv_info)$(prompt_char) ' -RPROMPT='$(battery_charge)' - ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}!" From 8f292a08a97b77142b85a98633ce9c1a5101ace4 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 18 Aug 2010 03:59:36 -0400 Subject: [PATCH 39/58] themes/prose: add .box-name support --- themes/prose.zsh-theme | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme index 74c59c071..d64a7ab67 100644 --- a/themes/prose.zsh-theme +++ b/themes/prose.zsh-theme @@ -16,8 +16,12 @@ function hg_prompt_info { patches: >" 2>/dev/null } +function box_name { + [ -f ~/.box-name ] && cat ~/.box-name || hostname -s +} + PROMPT=' -%{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}%m%{$reset_color%} in %{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(hg_prompt_info)$(git_prompt_info) +%{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}$(box_name)%{$reset_color%} in %{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(hg_prompt_info)$(git_prompt_info) $(virtualenv_info)$(prompt_char) ' ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" From 036ab9aa0854b5446aa702a517dc876c60f5be25 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Tue, 24 Aug 2010 14:30:31 -0400 Subject: [PATCH 40/58] lib/misc: add cj function --- lib/misc.zsh | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/misc.zsh b/lib/misc.zsh index b1a14140c..6641ca4ea 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -23,6 +23,11 @@ function pj() { python -mjson.tool } +## curl JSON +function cj() { + curl -sS $@ | pj +} + ## Open current directory alias oo='open .' From cd4d2c8163632d2bbb530a131b64a20027ea9d50 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 24 Sep 2010 10:56:31 -0400 Subject: [PATCH 41/58] themes/prose: Remove prompt_char to make the prompt faster. --- themes/prose.zsh-theme | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme index d64a7ab67..9ade9e573 100644 --- a/themes/prose.zsh-theme +++ b/themes/prose.zsh-theme @@ -1,9 +1,3 @@ -function prompt_char { - git branch >/dev/null 2>/dev/null && echo '±' && return - hg root >/dev/null 2>/dev/null && echo '☿' && return - echo '○' -} - function virtualenv_info { [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') ' } @@ -22,7 +16,7 @@ function box_name { PROMPT=' %{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}$(box_name)%{$reset_color%} in %{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(hg_prompt_info)$(git_prompt_info) -$(virtualenv_info)$(prompt_char) ' +$(virtualenv_info)$ ' ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" From f2f09f0ae6ed10a7e6e16c9bc111e4d4bd9d5258 Mon Sep 17 00:00:00 2001 From: webflo Date: Tue, 28 Sep 2010 13:58:58 +0200 Subject: [PATCH 42/58] fix path to github repository and installation instructions --- README.textile | 6 +++--- tools/install.sh | 2 +- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/README.textile b/README.textile index 8b1b6875a..7d7ac4bc2 100644 --- a/README.textile +++ b/README.textile @@ -8,14 +8,14 @@ h2. Setup h3. The automatic installer... (do you trust me?) -@wget http://github.com/robbyrussell/oh-my-zsh/raw/master/tools/install.sh -O - | sh@ +@wget http://github.com/sjl/oh-my-zsh/raw/master/tools/install.sh -O - | sh@ h3. The manual way 1. Clone the repository - @git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh@ + @git clone git://github.com/sjl/oh-my-zsh.git ~/.oh-my-zsh@ 2. Create a new zsh config by copying the zsh template we've provided. @@ -38,7 +38,7 @@ h2. Usage * enable the plugins you want in your @~/.zshrc@ (take a look at @plugins/@ to see what's possible) ** example: @plugins=(git osx ruby)@ * Theme support: Change the @ZSH_THEME@ environment variable in @~/.zshrc@. -** Take a look at the "current themes":http://wiki.github.com/robbyrussell/oh-my-zsh/themes that come bundled with _Oh My Zsh_. +** Take a look at the "current themes":http://wiki.github.com/sjl/oh-my-zsh/themes that come bundled with _Oh My Zsh_. * much much more... take a look at @lib/@ what _Oh My Zsh_ offers... h2. Useful diff --git a/tools/install.sh b/tools/install.sh index 004b252f4..f441674d4 100755 --- a/tools/install.sh +++ b/tools/install.sh @@ -5,7 +5,7 @@ then fi echo "Cloning Oh My Zsh..." -/usr/bin/env git clone git://github.com/robbyrussell/oh-my-zsh.git ~/.oh-my-zsh +/usr/bin/env git clone git://github.com/sjl/oh-my-zsh.git ~/.oh-my-zsh echo "Looking for an existing zsh config..." if [ -f ~/.zshrc ] || [ -h ~/.zshrc ] From d631d8ab5ac2f6bb0820bf4d7e7b5c59f7e26bcc Mon Sep 17 00:00:00 2001 From: till Date: Sun, 3 Oct 2010 23:38:02 +0200 Subject: [PATCH 43/58] * test if 'custom' exists before we try to read from it * this is to avoid an error message when we enter zsh ;) --- oh-my-zsh.sh | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/oh-my-zsh.sh b/oh-my-zsh.sh index bb45c71eb..84ad483ce 100644 --- a/oh-my-zsh.sh +++ b/oh-my-zsh.sh @@ -8,7 +8,9 @@ fpath=($ZSH/functions $fpath) for config_file ($ZSH/lib/*.zsh) source $config_file # Load all of your custom configurations from custom/ -for config_file ($ZSH/custom/*.zsh) source $config_file +if [ -d "$ZSH/custom" ]; then + for config_file ($ZSH/custom/*.zsh) source $config_file +fi # Load all of the plugins that were defined in ~/.zshrc plugin=${plugin:=()} @@ -22,4 +24,4 @@ else /usr/bin/env zsh $ZSH/tools/check_for_upgrade.sh fi -unset config_file \ No newline at end of file +unset config_file From ee28db27fca924501bef66ef8d23d955743775d2 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Wed, 6 Oct 2010 18:24:00 -0400 Subject: [PATCH 44/58] Remove terminal title junk. --- lib/functions.zsh | 27 +++++---------------------- lib/termsupport.zsh | 21 --------------------- 2 files changed, 5 insertions(+), 43 deletions(-) delete mode 100644 lib/termsupport.zsh diff --git a/lib/functions.zsh b/lib/functions.zsh index 96f7e26a7..558955b23 100644 --- a/lib/functions.zsh +++ b/lib/functions.zsh @@ -1,25 +1,8 @@ -## fixme, i duplicated this in xterms - oops -function title { - if [[ $TERM == "screen" ]]; then - # Use these two for GNU Screen: - print -nR $'\033k'$1$'\033'\\\ - - print -nR $'\033]0;'$2$'\a' - elif [[ $TERM == "xterm" || $TERM == "rxvt" ]]; then - # Use this one instead for XTerms: - print -nR $'\033]0;'$*$'\a' - fi -} - -function precmd { - title zsh "$PWD" -} - -function preexec { - emulate -L zsh - local -a cmd; cmd=(${(z)1}) - title $cmd[1]:t "$cmd[2,-1]" -} +#function preexec { + #emulate -L zsh + #local -a cmd; cmd=(${(z)1}) + #title $cmd[1]:t "$cmd[2,-1]" +#} function zsh_stats() { history | awk '{print $2}' | sort | uniq -c | sort -rn | head diff --git a/lib/termsupport.zsh b/lib/termsupport.zsh deleted file mode 100644 index fef978748..000000000 --- a/lib/termsupport.zsh +++ /dev/null @@ -1,21 +0,0 @@ -case "$TERM" in - xterm*|rxvt*) - preexec () { - print -Pn "\e]0;%n@%m: $1\a" # xterm - } - precmd () { - print -Pn "\e]0;%n@%m: %~\a" # xterm - } - ;; - screen*) - preexec () { - local CMD=${1[(wr)^(*=*|sudo|ssh|-*)]} - echo -ne "\ek$CMD\e\\" - print -Pn "\e]0;%n@%m: $1\a" # xterm - } - precmd () { - echo -ne "\ekzsh\e\\" - print -Pn "\e]0;%n@%m: %~\a" # xterm - } - ;; -esac \ No newline at end of file From 95d695f6958a2b80ef2591aa20b102d6f7ee227e Mon Sep 17 00:00:00 2001 From: Julien Nicoulaud Date: Sat, 20 Nov 2010 16:10:27 +0100 Subject: [PATCH 45/58] Add a plugin that emulates Fish style live command coloring. --- .../command-coloring.plugin.zsh | 53 +++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 plugins/command-coloring/command-coloring.plugin.zsh diff --git a/plugins/command-coloring/command-coloring.plugin.zsh b/plugins/command-coloring/command-coloring.plugin.zsh new file mode 100644 index 000000000..677f5fdec --- /dev/null +++ b/plugins/command-coloring/command-coloring.plugin.zsh @@ -0,0 +1,53 @@ +#!/usr/bin/env zsh +# ------------------------------------------------------------------------------ +# Fish style live command coloring. +# From: http://www.zsh.org/mla/users/2010/msg00692.html +# ------------------------------------------------------------------------------ + +# Required options. +setopt extendedglob + +# Token types styles. +# See http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#SEC135 +ZLE_RESERVED_WORD_STYLE='bold' +ZLE_ALIAS_STYLE='bold' +ZLE_BUILTIN_STYLE='bold' +ZLE_FUNCTION_STYLE='bold' +ZLE_COMMAND_STYLE='bold' +ZLE_COMMAND_UNKNOWN_TOKEN_STYLE='fg=red,bold' +ZLE_TOKENS_FOLLOWED_BY_COMMANDS=('|' '||' ';' '&' '&&' 'sudo' 'start' 'time' 'strace') + +# Recolorize the current ZLE buffer. +colorize-zle-buffer() { + region_highlight=() + colorize=true + start_pos=0 + for arg in ${(z)BUFFER}; do + ((start_pos+=${#BUFFER[$start_pos+1,-1]}-${#${BUFFER[$start_pos+1,-1]## #}})) + ((end_pos=$start_pos+${#arg})) + if $colorize; then + colorize=false + res=$(LC_ALL=C builtin type $arg 2>/dev/null) + case $res in + *'reserved word'*) style=$ZLE_RESERVED_WORD_STYLE;; + *'an alias'*) style=$ZLE_ALIAS_STYLE;; + *'shell builtin'*) style=$ZLE_BUILTIN_STYLE;; + *'shell function'*) style=$ZLE_FUNCTION_STYLE;; + *"$cmd is"*) style=$ZLE_COMMAND_STYLE;; + *) style=$ZLE_COMMAND_UNKNOWN_TOKEN_STYLE;; + esac + region_highlight+=("$start_pos $end_pos $style") + fi + [[ ${${ZLE_TOKENS_FOLLOWED_BY_COMMANDS[(r)${arg//|/\|}]}:+yes} = 'yes' ]] && colorize=true + start_pos=$end_pos + done +} + +# Bind the function to ZLE events. +colorize-hook-self-insert() { builtin zle .self-insert && colorize-zle-buffer } +colorize-hook-backward-delete-char() { builtin zle .backward-delete-char && colorize-zle-buffer } +colorize-hook-vi-backward-delete-char() { builtin zle .vi-backward-delete-char && colorize-zle-buffer } + +zle -N self-insert colorize-hook-self-insert +zle -N backward-delete-char colorize-hook-backward-delete-char +zle -N vi-backward-delete-char colorize-hook-vi-backward-delete-char From d1136186c79b9dc2767ef0147a6556ec09f2b477 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Tue, 23 Nov 2010 10:52:11 -0500 Subject: [PATCH 46/58] lib/django: add South aliases --- lib/django.zsh | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/lib/django.zsh b/lib/django.zsh index b72160adc..4075a5150 100644 --- a/lib/django.zsh +++ b/lib/django.zsh @@ -8,6 +8,15 @@ alias pmsp='python manage.py shell_plus' alias pmlf='python manage.py loaddata fixtures/*' alias pmt='python -W ignore::DeprecationWarning manage.py test' +alias pmdm='python manage.py datamigration' +alias pmsm='python manage.py schemamigration --auto' +alias pmsi='python manage.py schemamigration --initial' +alias pmm='python manage.py migrate' +alias pmma='python manage.py migrate --all' +alias pmml='python manage.py migrate --list' +alias pmmf='python manage.py migrate --fake' +alias pmcats='python manage.py convert_to_south' + alias gs='gunicorn_django' alias gk='kill `cat .gunicorn.pid`' alias gl='tail -f .gunicorn.log' From 9bedf2977a3358441ce01665983798cc69dc353f Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Tue, 23 Nov 2010 10:59:11 -0500 Subject: [PATCH 47/58] lib/misc: add the "What the hell did I do the other day?" function --- lib/misc.zsh | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/lib/misc.zsh b/lib/misc.zsh index 6641ca4ea..a6a07c73c 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -50,3 +50,13 @@ alias history='fc -l 1' ## Examples: http://rubyurl.com/ZXv export GREP_OPTIONS='--color=auto' export GREP_COLOR='1;32' + +# What the hell did I do the other day? +function whatthehelldididoon() { + for repo in `find . -name '.hg'` + do + echo $repo + hg .. -R $repo/.. -d "$1" -u 'Steve Losh' + done +} + From 5aa37062a57d5535f9f39abe882b03014f20ad5b Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Thu, 23 Dec 2010 11:23:50 -0500 Subject: [PATCH 48/58] Add kennethreitz' Fabric tab completion as a plugin. --- plugins/fabric/fabric.plugin.zsh | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 plugins/fabric/fabric.plugin.zsh diff --git a/plugins/fabric/fabric.plugin.zsh b/plugins/fabric/fabric.plugin.zsh new file mode 100644 index 000000000..119be9e67 --- /dev/null +++ b/plugins/fabric/fabric.plugin.zsh @@ -0,0 +1,19 @@ +#!zsh +# +# Installation +# ------------ +# +# To achieve fabfile completion nirvana: +# +# Copy this file somewhere (e.g. ~/.fab-comletion.zsh) and put the following line in your .zshrc: +# +# source ~/.fab-comletion.zsh +# +# Or, use this file as a oh-my-zsh plugin. +# + +_fab_list() { + reply=(`fab --shortlist`) +} +compctl -K _fab_list fab + From ef5e8b18f5dfb9593622b6686257befd7ad110b5 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Mon, 27 Dec 2010 14:36:21 -0500 Subject: [PATCH 49/58] Better syntax highlighting. --- .../command-coloring.plugin.zsh | 114 +++++++++++++----- 1 file changed, 85 insertions(+), 29 deletions(-) diff --git a/plugins/command-coloring/command-coloring.plugin.zsh b/plugins/command-coloring/command-coloring.plugin.zsh index 677f5fdec..1a9fe9594 100644 --- a/plugins/command-coloring/command-coloring.plugin.zsh +++ b/plugins/command-coloring/command-coloring.plugin.zsh @@ -1,53 +1,109 @@ #!/usr/bin/env zsh -# ------------------------------------------------------------------------------ -# Fish style live command coloring. -# From: http://www.zsh.org/mla/users/2010/msg00692.html -# ------------------------------------------------------------------------------ - -# Required options. -setopt extendedglob +# Copyleft 2010 zsh-syntax-highlighting contributors +# http://github.com/nicoulaj/zsh-syntax-highlighting +# All wrongs reserved. # Token types styles. # See http://zsh.sourceforge.net/Doc/Release/Zsh-Line-Editor.html#SEC135 -ZLE_RESERVED_WORD_STYLE='bold' -ZLE_ALIAS_STYLE='bold' -ZLE_BUILTIN_STYLE='bold' -ZLE_FUNCTION_STYLE='bold' -ZLE_COMMAND_STYLE='bold' +ZLE_RESERVED_WORD_STYLE='fg=yellow,bold' +ZLE_ALIAS_STYLE='fg=green,bold' +ZLE_BUILTIN_STYLE='fg=green,bold' +ZLE_FUNCTION_STYLE='fg=green,bold' +ZLE_COMMAND_STYLE='fg=green,bold' +ZLE_PATH_STYLE='fg=white,underline' ZLE_COMMAND_UNKNOWN_TOKEN_STYLE='fg=red,bold' -ZLE_TOKENS_FOLLOWED_BY_COMMANDS=('|' '||' ';' '&' '&&' 'sudo' 'start' 'time' 'strace') + +ZLE_HYPHEN_CLI_OPTION='fg=yellow,bold' +ZLE_DOUBLE_HYPHEN_CLI_OPTION='fg=green,bold' +ZLE_SINGLE_QUOTED='fg=magenta,bold' +ZLE_DOUBLE_QUOTED='fg=red,bold' +ZLE_BACK_QUOTED='fg=cyan,bold' +ZLE_GLOBING='fg=blue,bold' + +ZLE_DEFAULT='fg=white,normal' + +ZLE_TOKENS_FOLLOWED_BY_COMMANDS=('|' '||' ';' '&' '&&' 'sudo' 'start' 'time' 'strace' 'noglob' 'command' 'builtin') + +_check_path() { + [[ -z $arg ]] && return 1 + [[ -e $arg ]] && return 0 + [[ ! -e ${arg:h} ]] && return 1 + [[ ${#BUFFER} == $end_pos && -n $(print $arg*(N)) ]] && return 0 + return 1 +} # Recolorize the current ZLE buffer. colorize-zle-buffer() { + setopt localoptions extendedglob region_highlight=() colorize=true start_pos=0 for arg in ${(z)BUFFER}; do - ((start_pos+=${#BUFFER[$start_pos+1,-1]}-${#${BUFFER[$start_pos+1,-1]## #}})) + ((start_pos+=${#BUFFER[$start_pos+1,-1]}-${#${BUFFER[$start_pos+1,-1]##[[:space:]]#}})) ((end_pos=$start_pos+${#arg})) if $colorize; then colorize=false - res=$(LC_ALL=C builtin type $arg 2>/dev/null) + res=$(LC_ALL=C builtin type -w $arg 2>/dev/null) case $res in - *'reserved word'*) style=$ZLE_RESERVED_WORD_STYLE;; - *'an alias'*) style=$ZLE_ALIAS_STYLE;; - *'shell builtin'*) style=$ZLE_BUILTIN_STYLE;; - *'shell function'*) style=$ZLE_FUNCTION_STYLE;; - *"$cmd is"*) style=$ZLE_COMMAND_STYLE;; - *) style=$ZLE_COMMAND_UNKNOWN_TOKEN_STYLE;; + *': reserved') style=$ZLE_RESERVED_WORD_STYLE;; + *': alias') style=$ZLE_ALIAS_STYLE;; + *': builtin') style=$ZLE_BUILTIN_STYLE;; + *': function') style=$ZLE_FUNCTION_STYLE;; + *': command') style=$ZLE_COMMAND_STYLE;; + *) + if _check_path; then + style=$ZLE_PATH_STYLE + else + style=$ZLE_COMMAND_UNKNOWN_TOKEN_STYLE + fi + ;; esac - region_highlight+=("$start_pos $end_pos $style") + else + case $arg in + '--'*) style=$ZLE_DOUBLE_HYPHEN_CLI_OPTION;; + '-'*) style=$ZLE_HYPHEN_CLI_OPTION;; + "'"*"'") style=$ZLE_SINGLE_QUOTED;; + '"'*'"') style=$ZLE_DOUBLE_QUOTED;; + '`'*'`') style=$ZLE_BACK_QUOTED;; + *"*"*) style=$ZLE_GLOBING;; + *) + style=$ZLE_DEFAULT + _check_path && style=$ZLE_PATH_STYLE + ;; + esac fi - [[ ${${ZLE_TOKENS_FOLLOWED_BY_COMMANDS[(r)${arg//|/\|}]}:+yes} = 'yes' ]] && colorize=true + region_highlight+=("$start_pos $end_pos $style") + [[ ${${ZLE_TOKENS_FOLLOWED_BY_COMMANDS[(r)${arg//|/\|}]:-}:+yes} = 'yes' ]] && colorize=true start_pos=$end_pos done } # Bind the function to ZLE events. -colorize-hook-self-insert() { builtin zle .self-insert && colorize-zle-buffer } -colorize-hook-backward-delete-char() { builtin zle .backward-delete-char && colorize-zle-buffer } -colorize-hook-vi-backward-delete-char() { builtin zle .vi-backward-delete-char && colorize-zle-buffer } +ZLE_COLORED_FUNCTIONS=( + self-insert + delete-char + backward-delete-char + kill-word + backward-kill-word + up-line-or-history + down-line-or-history + beginning-of-history + end-of-history + undo + redo + yank +) + +for f in $ZLE_COLORED_FUNCTIONS; do + eval "$f() { zle .$f && colorize-zle-buffer } ; zle -N $f" +done + +# Expand or complete hack + +# create an expansion widget which mimics the original "expand-or-complete" (you can see the default setup using "zle -l -L") +zle -C orig-expand-or-complete .expand-or-complete _main_complete + +# use the orig-expand-or-complete inside the colorize function (for some reason, using the ".expand-or-complete" widget doesn't work the same) +expand-or-complete() { builtin zle orig-expand-or-complete && colorize-zle-buffer } +zle -N expand-or-complete -zle -N self-insert colorize-hook-self-insert -zle -N backward-delete-char colorize-hook-backward-delete-char -zle -N vi-backward-delete-char colorize-hook-vi-backward-delete-char From fee5b95415abfe5ef89d02388115f62ff92425a4 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Mon, 27 Dec 2010 14:52:50 -0500 Subject: [PATCH 50/58] Syntax highlighting colors. --- plugins/command-coloring/command-coloring.plugin.zsh | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/plugins/command-coloring/command-coloring.plugin.zsh b/plugins/command-coloring/command-coloring.plugin.zsh index 1a9fe9594..c0d2ce6bc 100644 --- a/plugins/command-coloring/command-coloring.plugin.zsh +++ b/plugins/command-coloring/command-coloring.plugin.zsh @@ -14,9 +14,9 @@ ZLE_PATH_STYLE='fg=white,underline' ZLE_COMMAND_UNKNOWN_TOKEN_STYLE='fg=red,bold' ZLE_HYPHEN_CLI_OPTION='fg=yellow,bold' -ZLE_DOUBLE_HYPHEN_CLI_OPTION='fg=green,bold' +ZLE_DOUBLE_HYPHEN_CLI_OPTION='fg=yellow,bold' ZLE_SINGLE_QUOTED='fg=magenta,bold' -ZLE_DOUBLE_QUOTED='fg=red,bold' +ZLE_DOUBLE_QUOTED='fg=magenta,bold' ZLE_BACK_QUOTED='fg=cyan,bold' ZLE_GLOBING='fg=blue,bold' From 0503e60d9a9e99dfb6550fbb2a6cd8173c23e8c9 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Thu, 6 Jan 2011 18:19:21 -0500 Subject: [PATCH 51/58] lib/directories: remove the useless . alias --- lib/directories.zsh | 1 - 1 file changed, 1 deletion(-) diff --git a/lib/directories.zsh b/lib/directories.zsh index 0070ad882..a97cf9c67 100644 --- a/lib/directories.zsh +++ b/lib/directories.zsh @@ -4,7 +4,6 @@ setopt auto_pushd setopt pushd_ignore_dups alias -- -='cd -' -alias .='pwd' alias ..='cd ..' alias ...='cd ../..' alias ....='cd ../../..' From 57af129fc70a4ef6a736b5be20c64e606dbda457 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Thu, 24 Mar 2011 15:04:35 -0400 Subject: [PATCH 52/58] Add encrypt/decrypt. --- lib/misc.zsh | 22 +++++++++------------- 1 file changed, 9 insertions(+), 13 deletions(-) diff --git a/lib/misc.zsh b/lib/misc.zsh index a6a07c73c..0b5acdd9a 100644 --- a/lib/misc.zsh +++ b/lib/misc.zsh @@ -17,16 +17,14 @@ export LC_CTYPE=en_US.UTF-8 function pman() { man $1 -t | open -f -a Preview } - +# ## pretty JSON function pj() { python -mjson.tool } -## curl JSON -function cj() { - curl -sS $@ | pj -} + + ## Open current directory alias oo='open .' @@ -51,12 +49,10 @@ alias history='fc -l 1' export GREP_OPTIONS='--color=auto' export GREP_COLOR='1;32' -# What the hell did I do the other day? -function whatthehelldididoon() { - for repo in `find . -name '.hg'` - do - echo $repo - hg .. -R $repo/.. -d "$1" -u 'Steve Losh' - done +# Quick and dirty encryption +function encrypt() { + openssl des3 -a -in $1 -out $1.des3 +} +function decrypt() { + openssl des3 -d -a -in $1 -out ${1%.des3} } - From 9f202fc05f85755ab8beeb7f276aea47ad49bb07 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Thu, 7 Apr 2011 10:21:43 -0400 Subject: [PATCH 53/58] themes/prose: make the Mercurial binary configurable --- themes/prose.zsh-theme | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme index 9ade9e573..8f7f75943 100644 --- a/themes/prose.zsh-theme +++ b/themes/prose.zsh-theme @@ -1,9 +1,13 @@ +if [ "x$OH_MY_ZSH_HG" = "x" ]; then + OH_MY_ZSH_HG="hg" +fi + function virtualenv_info { [ $VIRTUAL_ENV ] && echo '('`basename $VIRTUAL_ENV`') ' } function hg_prompt_info { - hg prompt --angle-brackets "\ + $OH_MY_ZSH_HG prompt --angle-brackets "\ < on %{$fg[magenta]%}%{$reset_color%}>\ < at %{$fg[yellow]%}%{$reset_color%}>\ %{$fg[green]%}%{$reset_color%}< From 2833427020c1516e2a5a4ccb0c5c4c1e9ef1c9a7 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 3 Jun 2011 16:09:51 -0400 Subject: [PATCH 54/58] Add the rprompt with the retval indicator. --- themes/prose.zsh-theme | 3 +++ 1 file changed, 3 insertions(+) diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme index 8f7f75943..51c1967d8 100644 --- a/themes/prose.zsh-theme +++ b/themes/prose.zsh-theme @@ -27,3 +27,6 @@ ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}!" ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?" ZSH_THEME_GIT_PROMPT_CLEAN="" + +local return_status="%{$fg[red]%}%(?..⏎)%{$reset_color%}" +RPROMPT='${return_status}%{$reset_color%}' From d1602643a444303621097843e6a6d4bbe2a996aa Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 22 Jul 2011 13:49:02 -0400 Subject: [PATCH 55/58] Map Ctrl+N/P too. --- lib/key-bindings.zsh | 2 ++ 1 file changed, 2 insertions(+) diff --git a/lib/key-bindings.zsh b/lib/key-bindings.zsh index dbb54086e..5d6d8041a 100644 --- a/lib/key-bindings.zsh +++ b/lib/key-bindings.zsh @@ -11,6 +11,8 @@ bindkey "^[[6~" down-line-or-history # make search up and down work, so partially type and hit up/down to find relevant stuff bindkey '^[[A' up-line-or-search bindkey '^[[B' down-line-or-search +bindkey '^p' up-line-or-search +bindkey '^n' down-line-or-search bindkey "^[[H" beginning-of-line bindkey "^[[1~" beginning-of-line From f378bff3afaae0cb4e195238756d4aebe32a968b Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 22 Jul 2011 13:49:39 -0400 Subject: [PATCH 56/58] A few tweaks for my prompt. --- themes/prose.zsh-theme | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/themes/prose.zsh-theme b/themes/prose.zsh-theme index 51c1967d8..1a637037a 100644 --- a/themes/prose.zsh-theme +++ b/themes/prose.zsh-theme @@ -20,7 +20,7 @@ function box_name { PROMPT=' %{$fg[magenta]%}%n%{$reset_color%} at %{$fg[yellow]%}$(box_name)%{$reset_color%} in %{$fg_bold[green]%}${PWD/#$HOME/~}%{$reset_color%}$(hg_prompt_info)$(git_prompt_info) -$(virtualenv_info)$ ' +$(virtualenv_info)%(?,,%{${fg_bold[white]}%}[%?]%{$reset_color%} )$ ' ZSH_THEME_GIT_PROMPT_PREFIX=" on %{$fg[magenta]%}" ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" @@ -28,5 +28,5 @@ ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}!" ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[green]%}?" ZSH_THEME_GIT_PROMPT_CLEAN="" -local return_status="%{$fg[red]%}%(?..⏎)%{$reset_color%}" +local return_status="%{$fg[red]%}%(?..✘)%{$reset_color%}" RPROMPT='${return_status}%{$reset_color%}' From 18211c7b5a4284f5393e911f2a91230cd8383cb4 Mon Sep 17 00:00:00 2001 From: Yevgeniy Viktorov Date: Wed, 27 Jul 2011 13:44:06 +0300 Subject: [PATCH 57/58] minor update regexp to fit to the new git status output --- lib/git.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/git.zsh b/lib/git.zsh index 1deca8715..6f17cae48 100644 --- a/lib/git.zsh +++ b/lib/git.zsh @@ -11,7 +11,7 @@ parse_git_dirty () { echo -n "$ZSH_THEME_GIT_PROMPT_DIRTY" fi - if [[ $(echo ${gitstat} | grep -c "^\(# Untracked files:\|# Changed but not updated:\)$") > 0 ]]; then + if [[ $(echo ${gitstat} | grep -c "^\(# Untracked files:\|# Changed but not updated:\|# Changes not staged for commit:\)$") > 0 ]]; then echo -n "$ZSH_THEME_GIT_PROMPT_UNTRACKED" fi From b35ad06fa7b959f1f3e82f2cbdb6b3311a913002 Mon Sep 17 00:00:00 2001 From: Steve Losh Date: Fri, 12 Aug 2011 12:12:49 -0400 Subject: [PATCH 58/58] Switch to static directory for pmrpg. --- lib/django.zsh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/lib/django.zsh b/lib/django.zsh index 4075a5150..e1dd132aa 100644 --- a/lib/django.zsh +++ b/lib/django.zsh @@ -1,7 +1,7 @@ alias pm='python manage.py' alias pmr='python manage.py runserver' alias pmrp='python manage.py runserver_plus' -alias pmrpg='pmrp --adminmedia=`pwd`/media/admin' +alias pmrpg='pmrp --adminmedia=`pwd`/static/admin' alias pmsdb='python manage.py syncdb' alias pms='python manage.py shell' alias pmsp='python manage.py shell_plus'