parent
e20401e04e
commit
5da20b9ddd
@ -0,0 +1,8 @@
|
||||
h2. Setup
|
||||
|
||||
# Clone the repository to ~/zsh
|
||||
# Symlink the zsh config with: @ln -s ~/zsh/zshrc .zshrc@
|
||||
# Reload zsh (open a new terminal)
|
||||
|
||||
|
||||
|
@ -0,0 +1,44 @@
|
||||
alias c='cd'
|
||||
alias pu='pushd'
|
||||
alias po='popd'
|
||||
alias sc='ruby script/console'
|
||||
alias ss='ruby script/server'
|
||||
|
||||
alias mr='mate CHANGELOG app config db lib public script spec test'
|
||||
alias .='pwd'
|
||||
alias ...='cd ../..'
|
||||
alias ....='cd ../../..'
|
||||
alias .....='cd ../../../..'
|
||||
alias ......='cd ../../../../..'
|
||||
alias .......='cd ../../../../../..'
|
||||
|
||||
alias _='sudo'
|
||||
alias ss='setsid'
|
||||
|
||||
alias g='grep -in'
|
||||
|
||||
alias s='svn'
|
||||
alias e='mate'
|
||||
|
||||
alias history='fc -l 1'
|
||||
|
||||
# Git aliases
|
||||
|
||||
alias utb='tar jxvf'
|
||||
alias utz='tar zxvf'
|
||||
|
||||
alias ls='ls -GF'
|
||||
alias ll='ls -al'
|
||||
|
||||
alias sgem='sudo gem'
|
||||
|
||||
alias rfind='find . -name *.rb | xargs grep -n'
|
||||
|
||||
alias xenon='ssh rrussell@xenon.planetargon.com'
|
||||
|
||||
alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk'
|
||||
|
||||
bindkey '\ew' kill-region
|
||||
|
||||
bindkey -s '\el' "ls\n"
|
||||
bindkey -s '\e.' "..\n"
|
@ -0,0 +1,4 @@
|
||||
autoload colors; colors;
|
||||
|
||||
unset LSCOLORS
|
||||
export LS_COLORS='di=34:ln=35:so=32:pi=33:ex=31:bd=46;34:cd=43;34:su=41;30:sg=46;30:tw=42;30:ow=43;30'
|
@ -0,0 +1,27 @@
|
||||
setopt noautomenu
|
||||
setopt COMPLETE_IN_WORD
|
||||
setopt ALWAYS_TO_END
|
||||
|
||||
unsetopt flowcontrol
|
||||
|
||||
WORDCHARS=''
|
||||
|
||||
autoload -U compinit
|
||||
compinit
|
||||
|
||||
zmodload -i zsh/complist
|
||||
|
||||
zstyle ':completion:*' list-colors ''
|
||||
zstyle ':completion:*' hosts $( sed 's/[, ].*$//' $HOME/.ssh/known_hosts )
|
||||
|
||||
unsetopt MENU_COMPLETE
|
||||
setopt AUTO_MENU
|
||||
|
||||
bindkey -M menuselect '^o' accept-and-infer-next-history
|
||||
|
||||
zstyle ':completion:*:*:*:*:*' menu yes select
|
||||
# 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"
|
||||
zstyle ':completion:*:*:(ssh|scp):*:*' hosts `sed 's/^\([^ ,]*\).*$/\1/' ~/.ssh/known_hosts`
|
@ -0,0 +1,26 @@
|
||||
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 remote_console() {
|
||||
/usr/bin/env ssh $1 "( cd $2 && ruby script/console production )"
|
||||
}
|
@ -0,0 +1,19 @@
|
||||
# get the name of the branch we are on
|
||||
function git_prompt_info() {
|
||||
ref=$(git symbolic-ref HEAD 2> /dev/null) || return
|
||||
branch=${ref#refs/heads/}
|
||||
|
||||
if [[ -d .git ]]; then
|
||||
CURRENT_BRANCH="%{$fg[red]%}git:(%{$fg[green]${branch}%{$fg[red])"
|
||||
else
|
||||
CURRENT_BRANCH=''
|
||||
fi
|
||||
|
||||
|
||||
#echo "%{$fg[red]%}git:(%{$fg[green]$CURRENT_BRANCH%{$fg[red])"
|
||||
echo $CURRENT_BRANCH
|
||||
}
|
||||
|
||||
parse_git_dirty () {
|
||||
[[ $(git status | tail -n1) != "nothing to commit (working directory clean)" ]] && echo "%{$fg[white] ♻ "
|
||||
}
|
@ -0,0 +1,6 @@
|
||||
#
|
||||
# Color grep results
|
||||
# Examples: http://rubyurl.com/ZXv
|
||||
#
|
||||
export GREP_OPTIONS='--color=auto'
|
||||
export GREP_COLOR='1;32'
|
@ -0,0 +1,15 @@
|
||||
# History stuff.
|
||||
setopt HIST_VERIFY
|
||||
setopt INC_APPEND_HISTORY
|
||||
setopt SHARE_HISTORY
|
||||
setopt EXTENDED_HISTORY
|
||||
setopt HIST_IGNORE_DUPS
|
||||
|
||||
## Command history configuration
|
||||
#
|
||||
HISTFILE=$ZSH/log/.zsh_history
|
||||
HISTSIZE=2500
|
||||
SAVEHIST=2500
|
||||
setopt hist_ignore_dups # ignore duplication command history list
|
||||
setopt share_history # share command history data
|
||||
|
@ -0,0 +1,5 @@
|
||||
# Add yourself some shortcuts to projects you often work on
|
||||
# Example:
|
||||
#
|
||||
# brainstormr=/Users/robbyrussell/Projects/development/planetargon/brainstormr
|
||||
#
|
@ -0,0 +1,29 @@
|
||||
bindkey -e
|
||||
|
||||
# Directory stuff.
|
||||
setopt AUTO_NAME_DIRS
|
||||
|
||||
# Speed stuff.
|
||||
|
||||
#setopt NO_BEEP
|
||||
setopt AUTO_CD
|
||||
setopt MULTIOS
|
||||
setopt CDABLEVARS
|
||||
|
||||
bindkey -e
|
||||
|
||||
if [[ x$WINDOW != x ]]
|
||||
then
|
||||
SCREEN_NO="%B$WINDOW%b "
|
||||
else
|
||||
SCREEN_NO=""
|
||||
fi
|
||||
|
||||
PS1="%n@%m:%~%# "
|
||||
|
||||
# Setup the prompt with pretty colors
|
||||
setopt prompt_subst
|
||||
|
||||
export LSCOLORS="Gxfxcxdxbxegedabagacad"
|
||||
|
||||
PROMPT='%{$fg_bold[red]%}➜ %{$fg_bold[green]%}%p %{$fg[cyan]%}%c %{$fg_bold[blue]%}$(git_prompt_info)%{$fg_bold[blue]%} % %{$reset_color%}'
|
@ -0,0 +1,42 @@
|
||||
_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
|
||||
}
|
||||
|
||||
compdef _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
|
||||
}
|
||||
|
||||
compdef _cap cap
|
@ -0,0 +1,34 @@
|
||||
export EDITOR=/opt/local/bin/joe
|
||||
export PAGER=less
|
||||
export ZSH=$HOME/zsh
|
||||
export LC_CTYPE=en_US.UTF-8
|
||||
|
||||
# TODO: Refactor this sometimes soon...
|
||||
source $ZSH/colors.zsh
|
||||
source $ZSH/aliases.zsh
|
||||
source $ZSH/completion.zsh
|
||||
source $ZSH/rake_completion.zsh
|
||||
source $ZSH/functions.zsh
|
||||
source $ZSH/git.zsh
|
||||
source $ZSH/history.zsh
|
||||
source $ZSH/grep.zsh
|
||||
source $ZSH/prompt.zsh
|
||||
|
||||
# Uncomment if you have a projects.zsh file
|
||||
# source $ZSH/projects.zsh
|
||||
|
||||
# Directory stuff.
|
||||
|
||||
setopt AUTO_NAME_DIRS
|
||||
|
||||
# Speed stuff.
|
||||
|
||||
#setopt NO_BEEP
|
||||
setopt AUTO_CD
|
||||
setopt MULTIOS
|
||||
setopt CDABLEVARS
|
||||
|
||||
# Customize to your needs...
|
||||
export PATH=~/bin:/opt/local/bin:/usr/bin:/bin:/usr/sbin:/sbin:/opt/local/sbin:/opt/local/lib/postgresql83/bin
|
||||
|
||||
|
Loading…
Reference in new issue