Cleaned up lib/ and removed trailing white space everywhere.

Conflicts:

	oh-my-zsh.sh
This commit is contained in:
Sorin Ionescu 2011-06-01 02:48:26 -04:00
parent 3436a9247c
commit 94ab5e0ec8
46 changed files with 319 additions and 284 deletions

View file

@ -1,32 +1,35 @@
# The 'ls' family # The 'ls' family
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
[[ "$DISABLE_COLOR" != 'true' ]] && { if [[ "$DISABLE_COLOR" != 'true' ]]; then
[[ -x "${commands[gdircolors]}" ]] && use_color_gnu='true' || use_color_bsd='true' if (( ${+commands[dircolors]} )); then
} dircolors="${commands[dircolors]}"
fi
if (( ${+commands[gdircolors]} )); then
dircolors="${commands[gdircolors]}"
fi
if [[ -x "$dircolors" ]] && [[ -e "$HOME/.dir_colors" ]]; then
eval $("$dircolors" "$HOME/.dir_colors")
alias ls='ls -hF --group-directories-first --color=auto'
else
export CLICOLOR=1
export LSCOLORS="exfxcxdxbxegedabagacad"
alias ls='ls -G -F'
fi
fi
[[ "$use_color_gnu" == 'true' && -e "$HOME/.dir_colors" ]] && eval $(gdircolors $HOME/.dir_colors) alias ll='ls -lh' # Show human readable.
[[ "$use_color_bsd" == 'true' ]] && export CLICOLOR=1 alias la='ls -lhA' # Show hidden files.
[[ "$use_color_bsd" == 'true' ]] && export LSCOLORS="exfxcxdxbxegedabagacad" alias lx='ls -lhXB' # Sort by extension.
alias lk='ls -lhSr' # Sort by size, biggest last.
# add colors for filetype recognition alias lc='ls -lhtcr' # Sort by and show change time, most recent lasa.
[[ "$use_color_gnu" == 'true' ]] && alias ls='ls -hF --group-directories-first --color=auto' alias lu='ls -lhtur' # Sort by and show access time, most recent last.
[[ "$use_color_bsd" == 'true' ]] && alias ls='ls -G -F' alias lt='ls -lhtr' # Sort by date, most recent last.
alias lm='ls -lha | more' # Pipe through 'more'.
alias ll='ls -lh' # show human readable alias lr='ls -lhR' # Recursive ls.
alias la='ls -lhA' # show hidden files alias sl='ls' # I often screw this up.
alias lx='ls -lhXB' # sort by extension
alias lk='ls -lhSr' # sort by size, biggest last
alias lc='ls -lhtcr' # sort by and show change time, most recent last
alias lu='ls -lhtur' # sort by and show access time, most recent last
alias lt='ls -lhtr' # sort by date, most recent last
alias lm='ls -lha | more' # pipe through 'more'
alias lr='ls -lhR' # recursive ls
alias sl='ls' # often screw this up
# General # General
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
alias ...='cd ../..'
alias -- -='cd -'
alias rm='nocorrect rm -i' alias rm='nocorrect rm -i'
alias cp='nocorrect cp -i' alias cp='nocorrect cp -i'
alias mv='nocorrect mv -i' alias mv='nocorrect mv -i'
@ -38,20 +41,13 @@ alias pu='pushd'
alias po='popd' alias po='popd'
alias _='sudo' alias _='sudo'
alias e="$EDITOR" alias e="$EDITOR"
alias q='exit'
alias history='fc -l 1' alias history='fc -l 1'
alias h='history'
alias j='jobs -l'
alias f='fg'
alias gr='grep -r'
alias get='curl -C - -O' alias get='curl -C - -O'
alias afind='ack-grep -il' alias afind='ack -il'
alias type='type -a' alias type='type -a'
alias ssh='ssh -X' alias ssh='ssh -X'
alias print-path='echo -e ${PATH//:/\\n}' alias print-path='echo -e ${PATH//:/\\n}'
alias print-libpath='echo -e ${LD_LIBRARY_PATH//:/\\n}' alias t="t --task-dir ~/.tasks --list todo.txt --delete-if-empty"
alias lsbom='lsbom -f -l -s -pf'
alias t="$HOME/.local/bin/t --task-dir ~/.tasks --list todo.txt --delete-if-empty"
if [[ -x "${commands[htop]}" ]]; then if [[ -x "${commands[htop]}" ]]; then
alias top=htop alias top=htop
@ -60,24 +56,38 @@ else
alias topc='top -o cpu' alias topc='top -o cpu'
fi fi
[[ "$DISABLE_COLOR" != 'true' ]] && { if [[ "$DISABLE_COLOR" != 'true' ]]; then
[[ -x "${commands[colordiff]}" ]] && alias diff='colordiff' if [[ -x "${commands[colordiff]}" ]]; then
[[ -x "${commands[colormake]}" ]] && alias make='colormake' alias diff='colordiff'
} fi
# Screen if [[ -x "${commands[colormake]}" ]]; then
alias make='colormake'
fi
fi
# Terminal Multiplexer
# ------------------------------------------------------------------------------ # ------------------------------------------------------------------------------
[[ "$TERM" == 'xterm-color' && -e "$HOME/.screenrc" ]] && screenrc="-c '$HOME/.screenrc'" local screenrc tmuxconf
[[ "$TERM" == 'xterm-256color' && -e "$HOME/.screenrc256" ]] && screenrc="-c '$HOME/.screenrc256'" if [[ "$TERM" == 'xterm-color' ]]; then
if [[ -e "$HOME/.screenrc" ]]; then
screenrc="-c '$HOME/.screenrc'"
tmuxconf="-f '$HOME/.tmux.conf'"
fi
fi
if [[ "$TERM" == 'xterm-256color' ]]; then
if [[ -e "$HOME/.screenrc256" ]]; then
screenrc="-c '$HOME/.screenrc256'"
tmuxconf="-f '$HOME/.tmux256.conf'"
fi
fi
alias screen="screen $screenrc" alias screen="screen $screenrc"
alias sl="screen $screenrc -list" alias sl="screen $screenrc -list"
alias sr="screen $screenrc -a -A -U -D -R" alias sr="screen $screenrc -a -A -U -D -R"
alias S="screen $screenrc -U -S" alias S="screen $screenrc -U -S"
# TMUX
# ------------------------------------------------------------------------------
[[ "$TERM" == 'xterm-color' && -e "$HOME/.tmux.conf" ]] && tmuxconf="-f '$HOME/.tmux.conf'"
[[ "$TERM" == 'xterm-256color' && -e "$HOME/.tmux256.conf" ]] && tmuxconf="-f '$HOME/.tmux256.conf'"
alias tmux="tmux $tmuxconf" alias tmux="tmux $tmuxconf"
alias tls="tmux list-sessions" alias tls="tmux list-sessions"

View file

@ -1,19 +1,21 @@
# fixme - the load process here seems a bit bizarre # Dumb terminals lack support.
[[ "$TERM" == "dumb" ]] && return if [[ "$TERM" == 'dumb' ]]; then
return
fi
unsetopt menu_complete # do not autoselect the first completion entry unsetopt menu_complete # Do not autoselect the first completion entry.
unsetopt flowcontrol unsetopt flow_control # Disable start/stop characters in shell editor.
setopt auto_menu # show completion menu on succesive tab press setopt auto_menu # Show completion menu on a succesive tab press.
setopt complete_in_word setopt complete_in_word # Complete from both ends of a word.
setopt always_to_end setopt always_to_end # Move cursor to the end of a completed word.
WORDCHARS='' WORDCHARS=''
# fixme - complist is crashing ZSH on menu completion # FIXME: complist is crashing ZSH on menu completion.
# zmodload -i zsh/complist # 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 if [[ "$CASE_SENSITIVE" == "true" ]]; then
zstyle ':completion:*' matcher-list 'r:|[._-]=* r:|=*' 'l:|=* r:|=*' zstyle ':completion:*' matcher-list 'r:|[._-]=* r:|=*' 'l:|=* r:|=*'
unset CASE_SENSITIVE unset CASE_SENSITIVE
else else
@ -22,18 +24,19 @@ fi
zstyle ':completion:*' list-colors '' zstyle ':completion:*' list-colors ''
# should this be in keybindings? # FIXME: It depends on complist which crashes ZSH on menu completion.
# Should this be in key-bindings.zsh?
# bindkey -M menuselect '^o' accept-and-infer-next-history # bindkey -M menuselect '^o' accept-and-infer-next-history
zstyle ':completion:*:*:*:*:*' menu select zstyle ':completion:*:*:*:*:*' menu select
zstyle ':completion:*:*:kill:*:processes' list-colors '=(#b) #([0-9]#) ([0-9a-z-]#)*=01;34=0=01' 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:*:*:*:*:processes' command "ps -u `whoami` -o pid,user,comm -w -w"
# disable named-directories autocompletion # Disable named-directories autocompletion.
zstyle ':completion:*:cd:*' tag-order local-directories directory-stack path-directories zstyle ':completion:*:cd:*' tag-order local-directories directory-stack path-directories
cdpath=(.) cdpath=(.)
# use /etc/hosts and known_hosts for hostname completion # Use /etc/hosts and known_hosts for hostname completion.
[ -r ~/.ssh/known_hosts ] && _ssh_hosts=(${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[\|]*}%%\ *}%%,*}) || _ssh_hosts=() [ -r ~/.ssh/known_hosts ] && _ssh_hosts=(${${${${(f)"$(<$HOME/.ssh/known_hosts)"}:#[\|]*}%%\ *}%%,*}) || _ssh_hosts=()
[ -r /etc/hosts ] && : ${(A)_etc_hosts:=${(s: :)${(ps:\t:)${${(f)~~"$(</etc/hosts)"}%%\#*}##[:blank:]#[^[:blank:]]#}}} || _etc_hosts=() [ -r /etc/hosts ] && : ${(A)_etc_hosts:=${(s: :)${(ps:\t:)${${(f)~~"$(</etc/hosts)"}%%\#*}##[:blank:]#[^[:blank:]]#}}} || _etc_hosts=()
hosts=( hosts=(
@ -44,11 +47,11 @@ hosts=(
) )
zstyle ':completion:*:hosts' hosts $hosts zstyle ':completion:*:hosts' hosts $hosts
# Use caching so that commands like apt and dpkg complete are useable # Use caching to make completion for cammands such as dpkg and apt usable.
zstyle ':completion::complete:*' use-cache 1 zstyle ':completion::complete:*' use-cache 1
zstyle ':completion::complete:*' cache-path ~/.oh-my-zsh/cache/ zstyle ':completion::complete:*' cache-path ~/.oh-my-zsh/cache/
# Don't complete uninteresting users # Don't complete uninteresting users...
zstyle ':completion:*:*:*:users' ignored-patterns \ zstyle ':completion:*:*:*:users' ignored-patterns \
adm amanda apache avahi beaglidx bin cacti canna clamav daemon \ adm amanda apache avahi beaglidx bin cacti canna clamav daemon \
dbus distcache dovecot fax ftp games gdm gkrellmd gopher \ dbus distcache dovecot fax ftp games gdm gkrellmd gopher \

View file

@ -8,3 +8,4 @@ alias gist='nocorrect gist'
alias heroku='nocorrect heroku' alias heroku='nocorrect heroku'
alias ebuild='nocorrect ebuild' alias ebuild='nocorrect ebuild'
alias hpodder='nocorrect hpodder' alias hpodder='nocorrect hpodder'

View file

@ -1,7 +1,9 @@
# Changing/making/removing directory setopt auto_cd # Auto cd to a directory without typing cd.
setopt auto_name_dirs setopt auto_pushd # Push the old directory onto the stack on cd.
setopt auto_pushd setopt pushd_ignore_dups # Don't store duplicates in the stack.
setopt pushd_ignore_dups setopt cdable_vars # Change directory to a path stored in a variable.
setopt auto_name_dirs # Auto add variable-stored paths to ~ list.
setopt multios # Write to multiple descriptors.
alias ..='cd ..' alias ..='cd ..'
alias cd..='cd ..' alias cd..='cd ..'

View file

@ -1,10 +1,10 @@
function zsh_stats() { function history-stat() {
history | awk '{print $2}' | sort | uniq -c | sort -rn | head history | awk '{print $2}' | sort | uniq -c | sort -rn | head
} }
function take() { function mkdcd() {
mkdir -p $1 mkdir -p "$1"
cd $1 cd "$1"
} }
function cdll() { function cdll() {
@ -30,12 +30,16 @@ function popdll() {
ls -lFhA ls -lFhA
} }
function grab() { function gown() {
sudo chown -R ${USER} ${1:-.} sudo chown -R "${USER}" "${1:-.}"
} }
function reload() { function reload() {
source "$HOME/.zshrc" local zshrc="$HOME/.zshrc"
if [[ -n "$1" ]]; then
zshrc="$1"
fi
source "$zshrc"
} }
function calc() { function calc() {
@ -43,14 +47,14 @@ function calc() {
} }
function pmine() { function pmine() {
ps $@ -u $USER -o pid,%cpu,%mem,command ps "$@" -u "$USER" -o pid,%cpu,%mem,command
} }
function findexec() { function findexec() {
find . -type f -iname '*'${1:-}'*' -exec ${2:-file} {} \; find . -type f -iname "*${1:-}*" -exec "${2:-file}" {} \;
} }
function httpserve() { function httpserve() {
python -m SimpleHTTPServer python -m SimpleHTTPServer "$@"
} }

View file

@ -1,11 +1,21 @@
# get the name of the branch we are on # Renders the name of the current branch.
function git_prompt_info() { function git_prompt_info() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || return local branch=$(git_current_branch)
echo "$ZSH_THEME_GIT_PROMPT_PREFIX${ref#refs/heads/}$(parse_git_dirty)$ZSH_THEME_GIT_PROMPT_SUFFIX" if [[ -n "$branch" ]]; then
echo "${ZSH_THEME_GIT_PROMPT_PREFIX}${branch}$(parse_git_dirty)${ZSH_THEME_GIT_PROMPT_SUFFIX}"
fi
} }
# Checks if working tree is dirty # Gets the current branch.
parse_git_dirty() { function git_current_branch() {
local ref=$(git symbolic-ref HEAD 2> /dev/null)
if [[ -n "$ref" ]]; then
echo "${ref#refs/heads/}"
fi
}
# Checks if the working tree is dirty.
function parse_git_dirty() {
if [[ -n $(git status -s 2> /dev/null) ]]; then if [[ -n $(git status -s 2> /dev/null) ]]; then
echo "$ZSH_THEME_GIT_PROMPT_DIRTY" echo "$ZSH_THEME_GIT_PROMPT_DIRTY"
else else
@ -13,25 +23,31 @@ parse_git_dirty() {
fi fi
} }
# Checks if there are commits ahead from remote # Checks if there are commits ahead from remote.
function git_prompt_ahead() { function git_prompt_ahead() {
if $(echo "$(git log origin/$(current_branch)..HEAD 2> /dev/null)" | grep '^commit' &> /dev/null); then if $(echo "$(git log origin/$(git_current_branch)..HEAD 2> /dev/null)" | grep '^commit' &> /dev/null); then
echo "$ZSH_THEME_GIT_PROMPT_AHEAD" echo "$ZSH_THEME_GIT_PROMPT_AHEAD"
fi fi
} }
# Formats prompt string for current git commit short SHA # Formats the prompt string for current git commit short SHA.
function git_prompt_short_sha() { function git_prompt_short_sha() {
SHA=$(git rev-parse --short HEAD 2> /dev/null) && echo "$ZSH_THEME_GIT_PROMPT_SHA_BEFORE$SHA$ZSH_THEME_GIT_PROMPT_SHA_AFTER" local sha=$(git rev-parse --short HEAD 2> /dev/null)
if [[ -n "$sha" ]]; then
echo "${ZSH_THEME_GIT_PROMPT_SHA_BEFORE}${sha}${ZSH_THEME_GIT_PROMPT_SHA_AFTER}"
fi
} }
# Formats prompt string for current git commit long SHA # Formats the prompt string for current git commit long SHA.
function git_prompt_long_sha() { function git_prompt_long_sha() {
SHA=$(git rev-parse HEAD 2> /dev/null) && echo "$ZSH_THEME_GIT_PROMPT_SHA_BEFORE$SHA$ZSH_THEME_GIT_PROMPT_SHA_AFTER" local sha=$(git rev-parse HEAD 2> /dev/null)
if [[ -n "$sha" ]]; then
echo "${ZSH_THEME_GIT_PROMPT_SHA_BEFORE}${sha}${ZSH_THEME_GIT_PROMPT_SHA_AFTER}"
fi
} }
# Get the status of the working tree # Gets the status of the working tree.
git_prompt_status() { function git_prompt_status() {
local indicators line untracked added modified renamed deleted local indicators line untracked added modified renamed deleted
while IFS=$'\n' read line; do while IFS=$'\n' read line; do
if [[ "$line" =~ '^\?\? ' ]]; then if [[ "$line" =~ '^\?\? ' ]]; then
@ -61,3 +77,4 @@ git_prompt_status() {
done < <(git status --porcelain 2> /dev/null) done < <(git status --porcelain 2> /dev/null)
echo $indicators echo $indicators
} }

View file

@ -1,6 +1,10 @@
if [[ "$DISABLE_COLOR" != "true" ]]; then if [[ "$DISABLE_COLOR" != 'true' ]]; then
export GREP_OPTIONS='--color=auto' if [[ -z "$GREP_OPTIONS" ]]; then
export GREP_COLOR='37;45' export GREP_OPTIONS='--color=auto'
fi
if [[ -z "$GREP_COLOR" ]]; then
export GREP_COLOR='37;45'
fi
else else
export GREP_OPTIONS='--color=none' export GREP_OPTIONS='--color=none'
export GREP_COLOR='' export GREP_COLOR=''

View file

@ -1,13 +1,14 @@
## Command history configuration ## Command history configuration
HISTFILE=$HOME/.zsh_history HISTFILE="$HOME/.zsh_history"
HISTSIZE=10000 HISTSIZE=10000
SAVEHIST=10000 SAVEHIST=10000
setopt HIST_VERIFY setopt hist_verify
setopt HIST_EXPIRE_DUPS_FIRST setopt hist_expire_dups_first
setopt HIST_IGNORE_SPACE setopt hist_ignore_space
setopt HIST_IGNORE_DUPS setopt hist_ignore_dups
setopt SHARE_HISTORY setopt share_history
setopt APPEND_HISTORY setopt append_history
setopt EXTENDED_HISTORY setopt extended_history
setopt INC_APPEND_HISTORY setopt inc_append_history

View file

@ -1,4 +1,4 @@
# TODO: Explain what some of this does.. # TODO: Write a GNU Emacs key bindings file akin to the vi-mode plugin.
bindkey -e bindkey -e
bindkey '\ew' kill-region bindkey '\ew' kill-region
@ -8,7 +8,7 @@ bindkey '^r' history-incremental-search-backward
bindkey "^[[5~" up-line-or-history bindkey "^[[5~" up-line-or-history
bindkey "^[[6~" down-line-or-history bindkey "^[[6~" down-line-or-history
# make search up and down work, so partially type and hit up/down to find relevant stuff # Make key up/down move up/down or search history.
bindkey '^[[A' up-line-or-search bindkey '^[[A' up-line-or-search
bindkey '^[[B' down-line-or-search bindkey '^[[B' down-line-or-search
@ -16,18 +16,22 @@ bindkey "^[[H" beginning-of-line
bindkey "^[[1~" beginning-of-line bindkey "^[[1~" beginning-of-line
bindkey "^[[F" end-of-line bindkey "^[[F" end-of-line
bindkey "^[[4~" end-of-line bindkey "^[[4~" end-of-line
bindkey ' ' magic-space # also do history expansion on space
# Do history expansion on space.
bindkey ' ' magic-space
# File rename magick.
bindkey "^[m" copy-prev-shell-word
bindkey '^[[Z' reverse-menu-complete bindkey '^[[Z' reverse-menu-complete
# Make the delete key (or Fn + Delete on the Mac) work instead of outputting a ~ # Make the delete key (or Fn + Delete on the Mac) work instead of outputting a ~.
bindkey "^[[3~" delete-char bindkey "^[[3~" delete-char
bindkey "^[3;5~" delete-char bindkey "^[3;5~" delete-char
bindkey "\e[3~" delete-char bindkey "\e[3~" delete-char
# consider emacs keybindings: # Consider GNU Emacs keybindings:
#bindkey -e ## emacs key bindings #bindkey -e # Emacs key bindings.
# #
#bindkey '^[[A' up-line-or-search #bindkey '^[[A' up-line-or-search
#bindkey '^[[B' down-line-or-search #bindkey '^[[B' down-line-or-search
@ -40,6 +44,6 @@ bindkey "\e[3~" delete-char
#bindkey '^X^N' accept-and-infer-next-history #bindkey '^X^N' accept-and-infer-next-history
#bindkey '^W' kill-region #bindkey '^W' kill-region
#bindkey '^I' complete-word #bindkey '^I' complete-word
## Fix weird sequence that rxvt produces ## FIXME: A weird sequence that rxvt produces
#bindkey -s '^[[Z' '\t' #bindkey -s '^[[Z' '\t'
#

View file

@ -1,13 +1,17 @@
## smart urls # Smart URLs
autoload -U url-quote-magic autoload -U url-quote-magic
zle -N self-insert url-quote-magic zle -N self-insert url-quote-magic
## file rename magick # Jobs
bindkey "^[m" copy-prev-shell-word
## jobs
setopt long_list_jobs setopt long_list_jobs
## pager # Pager
[[ -z "$PAGER" ]] && export PAGER=less if [[ -z "$PAGER" ]]; then
[[ -z "$LC_CTYPE" ]] && export LC_CTYPE=en_US.UTF-8 export PAGER=less
fi
# Localization
if [[ -z "$LC_CTYPE" ]]; then
export LC_CTYPE=en_US.UTF-8
fi

View file

@ -1,7 +1,8 @@
# get the name of the branch we are on # Get the name of the current branch.
function rvm_prompt_info() { function rvm_prompt_info() {
ruby_version=$(~/.rvm/bin/rvm-prompt 2> /dev/null) || return local ruby_version=$(~/.rvm/bin/rvm-prompt 2> /dev/null)
echo "($ruby_version)" if [[ -n "$ruby_version" ]]; then
echo "($ruby_version)"
fi
} }

View file

@ -1,20 +1,20 @@
#! /bin/zsh # A script to make using 256 colors in ZSH less painful.
# A script to make using 256 colors in zsh less painful.
# P.C. Shyamshankar <sykora@lucentbeing.com> # P.C. Shyamshankar <sykora@lucentbeing.com>
# Copied from http://github.com/sykora/etc/blob/master/zsh/functions/spectrum/ # Copied from http://github.com/sykora/etc/blob/master/zsh/functions/spectrum/
typeset -Ag FX FG BG typeset -Ag FX FG BG
FX=( FX=(
reset "%{%}" reset "%{%}"
bold "%{%}" no-bold "%{%}" bold "%{%}" no-bold "%{%}"
italic "%{%}" no-italic "%{%}" italic "%{%}" no-italic "%{%}"
underline "%{%}" no-underline "%{%}" underline "%{%}" no-underline "%{%}"
blink "%{%}" no-blink "%{%}" blink "%{%}" no-blink "%{%}"
reverse "%{%}" no-reverse "%{%}" reverse "%{%}" no-reverse "%{%}"
) )
for color in {000..255}; do for color in {000..255}; do
FG[$color]="%{[38;5;${color}m%}" FG[$color]="%{[38;5;${color}m%}"
BG[$color]="%{[48;5;${color}m%}" BG[$color]="%{[48;5;${color}m%}"
done done

View file

@ -1,31 +1,40 @@
[[ "$TERM" == "dumb" ]] && return # Dumb terminals lack support.
if [[ "$TERM" == 'dumb' ]]; then
return
fi
#usage: title short_tab_title looooooooooooooooooooooggggggg_windows_title # Fully supports GNU Screen, iTerm, and most modern xterm and rxvt terminals.
#http://www.faqs.org/docs/Linux-mini/Xterm-Title.html#ss3.1 # Partially supports Mac OS X Terminal since it can't set window and tab separately.
#Fully support screen, iterm, and probably most modern xterm and rxvt # Usage: title "tab title" "window title"
#Limited support for Apple Terminal (Terminal can't set window or tab separately)
function title { function title {
[ "$DISABLE_AUTO_TITLE" != "true" ] || return if [[ "$DISABLE_AUTO_TITLE" != 'true' ]]; then
if [[ "$TERM" == screen* ]]; then if [[ "$TERM" == screen* ]]; then
print -Pn "\ek$1:q\e\\" #set screen hardstatus, usually truncated at 20 chars # Set GNU Screen's hardstatus (usually truncated at 20 characters).
elif [[ "$TERM" == xterm* ]] || [[ $TERM == rxvt* ]] || [[ "$TERM_PROGRAM" == "iTerm.app" ]]; then print -Pn "\ek$1:q\e\\"
print -Pn "\e]2;$2:q\a" #set window name elif [[ "$TERM" == xterm* ]] || [[ "$TERM" == rxvt* ]]; then
print -Pn "\e]1;$1:q\a" #set icon (=tab) name (will override window name on broken terminal) # Set the window title.
print -Pn "\e]2;$2:q\a"
# Set the tab title (will override window title on a broken terminal).
print -Pn "\e]1;$1:q\a"
fi
fi fi
} }
ZSH_THEME_TERM_TAB_TITLE_IDLE="%15<..<%~%<<" #15 char left truncated PWD # 15 character, left-truncated current working directory.
ZSH_THEME_TERM_TAB_TITLE_IDLE="%15<..<%~%<<"
ZSH_THEME_TERM_TITLE_IDLE="%n@%m: %~" ZSH_THEME_TERM_TITLE_IDLE="%n@%m: %~"
#Appears when you have the prompt # Set the tab and window titles before the prompt is displayed.
function precmd { function precmd {
title $ZSH_THEME_TERM_TAB_TITLE_IDLE $ZSH_THEME_TERM_TITLE_IDLE title "$ZSH_THEME_TERM_TAB_TITLE_IDLE" "$ZSH_THEME_TERM_TITLE_IDLE"
} }
#Appears at the beginning of (and during) of command execution # Set the tab and window titles before command execution.
function preexec { function preexec {
emulate -L zsh emulate -L zsh
setopt extended_glob setopt extended_glob
local CMD=${1[(wr)^(*=*|sudo|ssh|-*)]} #cmd name only, or if this is sudo or ssh, the next cmd # Command name only, or if this is sudo or ssh, the next command.
local CMD=${1[(wr)^(*=*|sudo|ssh|-*)]}
title "$CMD" "%100>...>$2%<<" title "$CMD" "%100>...>$2%<<"
} }

View file

@ -1,35 +1,23 @@
# ls colors # Load and run colors.
autoload colors; colors; autoload -U colors
[[ -z "$LSCOLORS" ]] && export LSCOLORS="Gxfxcxdxbxegedabagacad" colors -i
# Enable ls colors # Set the GNU Screen window number.
if [ "$DISABLE_COLOR" != "true" ] if [[ -n "$WINDOW" ]]; then
then SCREEN_NO="%B$WINDOW%b "
# Find the option for using colors in ls, depending on the version: Linux or BSD
ls --color -d . &>/dev/null 2>&1 && alias ls='ls --color=tty' || alias ls='ls -G'
fi
#setopt no_beep
setopt auto_cd
setopt multios
setopt cdablevarS
if [[ x$WINDOW != x ]]
then
SCREEN_NO="%B$WINDOW%b "
else else
SCREEN_NO="" SCREEN_NO=""
fi fi
# Apply theming defaults # Set the default prompt theme.
PS1="%n@%m:%~%# " PS1="%n@%m:%~%# "
# git theming default: Variables for theming the git info prompt # Set the default Git prompt theme.
ZSH_THEME_GIT_PROMPT_PREFIX="git:(" # Prefix at the very beginning of the prompt, before the branch name ZSH_THEME_GIT_PROMPT_PREFIX="git:(" # Prefix before the branch name.
ZSH_THEME_GIT_PROMPT_SUFFIX=")" # At the very end of the prompt ZSH_THEME_GIT_PROMPT_SUFFIX=")" # Suffix after the branch name.
ZSH_THEME_GIT_PROMPT_DIRTY="*" # Text to display if the branch is dirty ZSH_THEME_GIT_PROMPT_DIRTY="*" # Indicator to display if the branch is dirty.
ZSH_THEME_GIT_PROMPT_CLEAN="" # Text to display if the branch is clean ZSH_THEME_GIT_PROMPT_CLEAN="" # Indicator to display if the branch is clean.
# Setup the prompt with pretty colors # Enable parameter, arithmentic expansion and command substitution in prompt.
setopt prompt_subst setopt prompt_subst

View file

@ -1,38 +1,39 @@
# Initializes Oh My Zsh # Initializes OH MY ZSH.
# Disable colors on dumb terminals # Disable color in dumb terminals.
if [ "$TERM" = "dumb" ]; then if [[ "$TERM" == 'dumb' ]]; then
DISABLE_COLOR="true" DISABLE_COLOR='true'
fi fi
# Load all of the config files in ~/oh-my-zsh that end in .zsh # Load all files in $ZSH/oh-my-zsh/lib/ that end in .zsh.
# TIP: Add files you don't want in git to .gitignore for config_file in $ZSH/lib/*.zsh; do
for config_file ($ZSH/lib/*.zsh) source $config_file source "$config_file"
done
# Add all defined plugins to fpath # Add all defined plugins to fpath.
plugin=${plugin:=()} plugin=${plugin:=()}
for plugin ($plugins) fpath=($ZSH/plugins/$plugin $fpath) for plugin in $plugins; do
fpath=($ZSH/plugins/$plugin $fpath)
done
# Load and run compinit # Load and run compinit.
autoload -U compinit autoload -U compinit
compinit -i compinit -i
# Load all of the plugins that were defined in ~/.zshrc # Load all plugins defined in ~/.zshrc.
for plugin ($plugins); do for plugin in $plugins; do
if [ -f $ZSH/plugins/$plugin/$plugin.plugin.zsh ]; then if [[ -f "$ZSH/plugins/$plugin/$plugin.plugin.zsh" ]]; then
source $ZSH/plugins/$plugin/$plugin.plugin.zsh source "$ZSH/plugins/$plugin/$plugin.plugin.zsh"
fi fi
done done
# Load the theme # Load the theme.
if [ "$ZSH_THEME" = "random" ] if [[ "$ZSH_THEME" == "random" ]]; then
then themes=($ZSH/themes/*.zsh-theme)
themes=($ZSH/themes/*zsh-theme) theme_index=${#themes[@]}
N=${#themes[@]} (( theme_index=((RANDOM % theme_index) + 1) ))
((N=(RANDOM%N)+1)) random_theme="${themes[$theme_index]}"
RANDOM_THEME=${themes[$N]} source "$random_theme"
source "$RANDOM_THEME"
echo "[oh-my-zsh] Random theme '$RANDOM_THEME' loaded..."
else else
if [ ! "$ZSH_THEME" = "" ] if [ ! "$ZSH_THEME" = "" ]
then then
@ -41,7 +42,7 @@ else
fi fi
# Compile zcompdump, if modified, to increase startup speed. # Compile zcompdump, if modified, to increase startup speed.
if [ "$HOME/.zcompdump" -nt "$HOME/.zcompdump.zwc" -o ! -e "$HOME/.zcompdump.zwc" ]; then if [[ "$HOME/.zcompdump" -nt "$HOME/.zcompdump.zwc" ]] || [[ ! -e "$HOME/.zcompdump.zwc" ]]; then
zcompile "$HOME/.zcompdump" zcompile "$HOME/.zcompdump"
fi fi

View file

@ -7,7 +7,7 @@
if (( ${+commands[compleat]} )); then if (( ${+commands[compleat]} )); then
local prefix="${commands[compleat]:h:h}" local prefix="${commands[compleat]:h:h}"
local setup="${prefix}/share/compleat-1.0/compleat_setup" local setup="${prefix}/share/compleat-1.0/compleat_setup"
if [[ -f "$setup" ]]; then if [[ -f "$setup" ]]; then
if ! bashcompinit >/dev/null 2>&1; then if ! bashcompinit >/dev/null 2>&1; then
@ -15,6 +15,6 @@ if (( ${+commands[compleat]} )); then
bashcompinit -i bashcompinit -i
fi fi
source "$setup" source "$setup"
fi fi
fi fi

View file

@ -1,9 +1,9 @@
#!/bin/zsh #!/bin/zsh
# #
# Make the dirstack more persistant # Make the dirstack more persistant
# #
# Add dirpersist to $plugins in ~/.zshrc to load # Add dirpersist to $plugins in ~/.zshrc to load
# #
# $zdirstore is the file used to persist the stack # $zdirstore is the file used to persist the stack
zdirstore=~/.zdirstore zdirstore=~/.zdirstore

View file

@ -329,4 +329,4 @@ __git_command_successful () {
return 0 return 0
} }
zstyle ':completion:*:*:git:*' user-commands flow:'description for foo' zstyle ':completion:*:*:git:*' user-commands flow:'description for foo'

View file

@ -1,4 +1,3 @@
# Aliases
alias g='git' alias g='git'
compdef g=git compdef g=git
alias gst='git status' alias gst='git status'
@ -27,24 +26,12 @@ alias gcp='git cherry-pick'
compdef _git gcp=git-cherry-pick compdef _git gcp=git-cherry-pick
alias glg='git log --stat --max-count=5' alias glg='git log --stat --max-count=5'
compdef _git glg=git-log compdef _git glg=git-log
# Git and svn mix
alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk' alias git-svn-dcommit-push='git svn dcommit && git push github master:svntrunk'
compdef git-svn-dcommit-push=git compdef git-svn-dcommit-push=git
alias ggpull='git pull origin $(git_current_branch)'
#
# Will return the current branch name
# Usage example: git pull origin $(current_branch)
#
function current_branch() {
ref=$(git symbolic-ref HEAD 2> /dev/null) || return
echo ${ref#refs/heads/}
}
# these aliases take advantage of the previous function
alias ggpull='git pull origin $(current_branch)'
compdef ggpull=git compdef ggpull=git
alias ggpush='git push origin $(current_branch)' alias ggpush='git push origin $(git_current_branch)'
compdef ggpush=git compdef ggpush=git
alias ggpnp='git pull origin $(current_branch) && git push origin $(current_branch)' alias ggpnp='git pull origin $(git_current_branch) && git push origin $(git_current_branch)'
compdef ggpnp=git compdef ggpnp=git

View file

@ -1,6 +1,6 @@
#compdef port #compdef port
local subcmds local subcmds
# we cache the list of ports # we cache the list of ports
# we shall use some cache policy to avoid problems with new ports # we shall use some cache policy to avoid problems with new ports
@ -31,8 +31,8 @@ subcmds=(
'file' 'file'
'help' 'help'
'info' 'info'
'install' 'install'
'installed' 'installed'
'list' 'list'
'livecheck' 'livecheck'
'location' 'location'
@ -48,7 +48,7 @@ subcmds=(
'test' 'test'
'unarchive' 'unarchive'
'uninstall' 'uninstall'
'upgrade' 'upgrade'
'variants' 'variants'
'version' 'version'
) )

View file

@ -27,7 +27,7 @@ alias latest-perl='curl -s http://www.perl.org/get.html | perl -wlne '\''if (/pe
# Functions ################################################################# # Functions #################################################################
# newpl - creates a basic Perl script file and opens it with $EDITOR # newpl - creates a basic Perl script file and opens it with $EDITOR
newpl () { newpl () {
# set $EDITOR to 'vim' if it is undefined # set $EDITOR to 'vim' if it is undefined
[[ -z $EDITOR ]] && EDITOR=vim [[ -z $EDITOR ]] && EDITOR=vim

View file

@ -139,4 +139,4 @@ _arguments \
if (( CURRENT == 1 )); then if (( CURRENT == 1 )); then
_describe -t commands "redis-cli subcommand" _1st_arguments _describe -t commands "redis-cli subcommand" _1st_arguments
return return
fi fi

View file

@ -34,7 +34,7 @@ _arguments -C \
case $state in case $state in
cmds) cmds)
cmds=( cmds=(
"version:show the rvm version installed in rvm_path" "version:show the rvm version installed in rvm_path"
"use:setup current shell to use a specific ruby version" "use:setup current shell to use a specific ruby version"
"reload:reload rvm source itself (useful after changing rvm source)" "reload:reload rvm source itself (useful after changing rvm source)"
@ -116,7 +116,7 @@ case $state in
if (( CURRENT == 3 )); then if (( CURRENT == 3 )); then
_values 'package_commands' \ _values 'package_commands' \
'install' \ 'install' \
'uninstall' 'uninstall'
else else
_values 'packages' \ _values 'packages' \
'readline' \ 'readline' \

View file

@ -15,7 +15,7 @@ function in_svn() {
function svn_get_repo_name { function svn_get_repo_name {
if [ in_svn ]; then if [ in_svn ]; then
svn info | sed -n 's/Repository\ Root:\ .*\///p' | read SVN_ROOT svn info | sed -n 's/Repository\ Root:\ .*\///p' | read SVN_ROOT
svn info | sed -n "s/URL:\ .*$SVN_ROOT\///p" | sed "s/\/.*$//" svn info | sed -n "s/URL:\ .*$SVN_ROOT\///p" | sed "s/\/.*$//"
fi fi
} }
@ -29,9 +29,9 @@ function svn_get_rev_nr {
function svn_dirty_choose { function svn_dirty_choose {
if [ in_svn ]; then if [ in_svn ]; then
s=$(svn status 2>/dev/null) s=$(svn status 2>/dev/null)
if [ $s ]; then if [ $s ]; then
echo $1 echo $1
else else
echo $2 echo $2
fi fi
fi fi

View file

@ -1,4 +1,4 @@
#compdef vagrant #compdef vagrant
#autoload #autoload
# vagrant zsh completion # vagrant zsh completion
@ -64,7 +64,7 @@ __vagrant-box ()
(options) (options)
case $line[1] in case $line[1] in
(repackage|remove) (repackage|remove)
_arguments ':feature:__box_list' _arguments ':feature:__box_list'
;; ;;
esac esac
;; ;;
@ -93,7 +93,7 @@ case $state in
(options) (options)
case $line[1] in case $line[1] in
(help) (help)
_arguments ':feature:__task_list' _arguments ':feature:__task_list'
;; ;;
(box) (box)

View file

@ -1,25 +1,24 @@
# Path to your oh-my-zsh configuration. # Path to oh-my-zsh.
export ZSH=$HOME/.oh-my-zsh export ZSH="$HOME/.oh-my-zsh"
# Set name of the theme to load. # Set the name of the theme to load (see $ZSH/themes/).
# Look in ~/.oh-my-zsh/themes/ # Setting it to 'random' loads a random theme.
# Optionally, if you set this to "random", it'll load a random theme each
# time that oh-my-zsh is loaded.
export ZSH_THEME="robbyrussell" export ZSH_THEME="robbyrussell"
# Set to this to use case-sensitive completion # Set to 'true' to enable case-sensitivity.
# export CASE_SENSITIVE="true" export CASE_SENSITIVE='false'
# Uncomment following line if you want to disable colors in ls # Set to 'true' to disable color (auto set on dumb terminals).
# export DISABLE_COLOR="true" export DISABLE_COLOR='false'
# Uncomment following line if you want to disable autosetting terminal title. # Set to 'true' to disable auto setting the tab and window titles.
# export DISABLE_AUTO_TITLE="true" export DISABLE_AUTO_TITLE='false'
# Which plugins would you like to load? (plugins can be found in ~/.oh-my-zsh/plugins/*) # Set the plugins to load (see $ZSH/plugins/).
# Example format: plugins=(rails git textmate ruby lighthouse) # Example: plugins=(rails git textmate ruby lighthouse)
plugins=(git) plugins=(git)
source $ZSH/oh-my-zsh.sh source "$ZSH/oh-my-zsh.sh"
# Customize to your needs... # Customize to your needs...

View file

@ -5,10 +5,10 @@ ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[white]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%})" ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%})"
# Text to display if the branch is dirty # Text to display if the branch is dirty
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}*%{$reset_color%}" ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[red]%}*%{$reset_color%}"
# Text to display if the branch is clean # Text to display if the branch is clean
ZSH_THEME_GIT_PROMPT_CLEAN="" ZSH_THEME_GIT_PROMPT_CLEAN=""
# Colors vary depending on time lapsed. # Colors vary depending on time lapsed.
ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT="%{$fg[green]%}" ZSH_THEME_GIT_TIME_SINCE_COMMIT_SHORT="%{$fg[green]%}"
@ -35,7 +35,7 @@ function rvm_gemset() {
GEMSET=`rvm gemset list | grep '=>' | cut -b4-` GEMSET=`rvm gemset list | grep '=>' | cut -b4-`
if [[ -n $GEMSET ]]; then if [[ -n $GEMSET ]]; then
echo "%{$fg[yellow]%}$GEMSET%{$reset_color%}|" echo "%{$fg[yellow]%}$GEMSET%{$reset_color%}|"
fi fi
} }
@ -53,12 +53,12 @@ function git_time_since_commit() {
# Totals # Totals
MINUTES=$((seconds_since_last_commit / 60)) MINUTES=$((seconds_since_last_commit / 60))
HOURS=$((seconds_since_last_commit/3600)) HOURS=$((seconds_since_last_commit/3600))
# Sub-hours and sub-minutes # Sub-hours and sub-minutes
DAYS=$((seconds_since_last_commit / 86400)) DAYS=$((seconds_since_last_commit / 86400))
SUB_HOURS=$((HOURS % 24)) SUB_HOURS=$((HOURS % 24))
SUB_MINUTES=$((MINUTES % 60)) SUB_MINUTES=$((MINUTES % 60))
if [[ -n $(git status -s 2> /dev/null) ]]; then if [[ -n $(git status -s 2> /dev/null) ]]; then
if [ "$MINUTES" -gt 30 ]; then if [ "$MINUTES" -gt 30 ]; then
COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG" COLOR="$ZSH_THEME_GIT_TIME_SINCE_COMMIT_LONG"

View file

@ -15,4 +15,4 @@ ZSH_THEME_REPO_NAME_COLOR="%{$fg_bold[red]%}"
ZSH_THEME_SVN_PROMPT_PREFIX="svn:(" ZSH_THEME_SVN_PROMPT_PREFIX="svn:("
ZSH_THEME_SVN_PROMPT_SUFFIX=")" ZSH_THEME_SVN_PROMPT_SUFFIX=")"
ZSH_THEME_SVN_PROMPT_DIRTY="%{$fg[red]%} ✘ %{$reset_color%}" ZSH_THEME_SVN_PROMPT_DIRTY="%{$fg[red]%} ✘ %{$reset_color%}"
ZSH_THEME_SVN_PROMPT_CLEAN=" " ZSH_THEME_SVN_PROMPT_CLEAN=" "

View file

@ -3,4 +3,4 @@ PROMPT='%{$fg_bold[cyan]%}☁ %{$fg_bold[green]%}%p %{$fg[green]%}%c %{$fg_bold[
ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}[%{$fg[cyan]%}" ZSH_THEME_GIT_PROMPT_PREFIX="%{$fg[green]%}[%{$fg[cyan]%}"
ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}" ZSH_THEME_GIT_PROMPT_SUFFIX="%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}] %{$fg[yellow]%}⚡%{$reset_color%}" ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[green]%}] %{$fg[yellow]%}⚡%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%}]" ZSH_THEME_GIT_PROMPT_CLEAN="%{$fg[green]%}]"

View file

@ -1,5 +1,5 @@
#RVM settings #RVM settings
if [[ -s ~/.rvm/scripts/rvm ]] ; then if [[ -s ~/.rvm/scripts/rvm ]] ; then
RPS1="%{$fg[yellow]%}rvm:%{$reset_color%}%{$fg[red]%}\$(~/.rvm/bin/rvm-prompt)%{$reset_color%} $EPS1" RPS1="%{$fg[yellow]%}rvm:%{$reset_color%}%{$fg[red]%}\$(~/.rvm/bin/rvm-prompt)%{$reset_color%} $EPS1"
fi fi

View file

@ -1,2 +1,2 @@
# Evan describes this sexy prompt as: "a skinny, topless prompt" # Evan describes this sexy prompt as: "a skinny, topless prompt"
PROMPT='%m :: %2~ %B»%b ' PROMPT='%m :: %2~ %B»%b '

View file

@ -2,4 +2,4 @@
# http://zshwiki.org/home/config/prompt # http://zshwiki.org/home/config/prompt
# #
PROMPT="%{$fg[red]%}%n%{$reset_color%}@%{$fg[blue]%}%m %{$fg[yellow]%}%~ %{$reset_color%}%% " PROMPT="%{$fg[red]%}%n%{$reset_color%}@%{$fg[blue]%}%m %{$fg[yellow]%}%~ %{$reset_color%}%% "

View file

@ -11,4 +11,4 @@ local smiley="%(?,%{$fg[green]%}:%)%{$reset_color%},%{$fg[red]%}:(%{$reset_color
PROMPT="╭─${path_p}─${user_host}─${ret_status}─${hist_no} PROMPT="╭─${path_p}─${user_host}─${ret_status}─${hist_no}
╰─${blue_op}${smiley}${blue_cp} %# " ╰─${blue_op}${smiley}${blue_cp} %# "
local cur_cmd="${blue_op}%_${blue_cp}" local cur_cmd="${blue_op}%_${blue_cp}"
PROMPT2="${cur_cmd}> " PROMPT2="${cur_cmd}> "

View file

@ -12,7 +12,7 @@ git_custom_status() {
} }
#RVM and git settings #RVM and git settings
if [[ -s ~/.rvm/scripts/rvm ]] ; then if [[ -s ~/.rvm/scripts/rvm ]] ; then
RPS1='$(git_custom_status)%{$fg[red]%}[`~/.rvm/bin/rvm-prompt`]%{$reset_color%} $EPS1' RPS1='$(git_custom_status)%{$fg[red]%}[`~/.rvm/bin/rvm-prompt`]%{$reset_color%} $EPS1'
fi fi

View file

@ -2,4 +2,4 @@
# http://zshwiki.org/home/config/prompt # http://zshwiki.org/home/config/prompt
# #
PROMPT="%{$fg[red]%}%%%{$reset_color%} " PROMPT="%{$fg[red]%}%%%{$reset_color%} "

View file

@ -5,15 +5,15 @@ function precmd {
### ###
# Truncate the path if it's too long. # Truncate the path if it's too long.
PR_FILLBAR="" PR_FILLBAR=""
PR_PWDLEN="" PR_PWDLEN=""
local promptsize=${#${(%):---(%n@%m:%l)---()--}} local promptsize=${#${(%):---(%n@%m:%l)---()--}}
local rubyprompt=`rvm_prompt_info` local rubyprompt=`rvm_prompt_info`
local rubypromptsize=${#${rubyprompt}} local rubypromptsize=${#${rubyprompt}}
local pwdsize=${#${(%):-%~}} local pwdsize=${#${(%):-%~}}
if [[ "$promptsize + $rubypromptsize + $pwdsize" -gt $TERMWIDTH ]]; then if [[ "$promptsize + $rubypromptsize + $pwdsize" -gt $TERMWIDTH ]]; then
((PR_PWDLEN=$TERMWIDTH - $promptsize)) ((PR_PWDLEN=$TERMWIDTH - $promptsize))
else else
@ -69,7 +69,7 @@ setprompt () {
### ###
# See if we can use extended characters to look nicer. # See if we can use extended characters to look nicer.
typeset -A altchar typeset -A altchar
set -A altchar ${(s..)terminfo[acsc]} set -A altchar ${(s..)terminfo[acsc]}
PR_SET_CHARSET="%{$terminfo[enacs]%}" PR_SET_CHARSET="%{$terminfo[enacs]%}"
@ -81,10 +81,10 @@ setprompt () {
PR_LRCORNER=${altchar[j]:--} PR_LRCORNER=${altchar[j]:--}
PR_URCORNER=${altchar[k]:--} PR_URCORNER=${altchar[k]:--}
### ###
# Decide if we need to set titlebar text. # Decide if we need to set titlebar text.
case $TERM in case $TERM in
xterm*) xterm*)
PR_TITLEBAR=$'%{\e]0;%(!.-=*[ROOT]*=- | .)%n@%m:%~ | ${COLUMNS}x${LINES} | %y\a%}' PR_TITLEBAR=$'%{\e]0;%(!.-=*[ROOT]*=- | .)%n@%m:%~ | ${COLUMNS}x${LINES} | %y\a%}'
@ -96,8 +96,8 @@ setprompt () {
PR_TITLEBAR='' PR_TITLEBAR=''
;; ;;
esac esac
### ###
# Decide whether to set a screen title # Decide whether to set a screen title
if [[ "$TERM" == "screen" ]]; then if [[ "$TERM" == "screen" ]]; then
@ -105,8 +105,8 @@ setprompt () {
else else
PR_STITLE='' PR_STITLE=''
fi fi
### ###
# Finally, the prompt. # Finally, the prompt.

View file

@ -15,7 +15,7 @@ function josh_prompt {
branch_size=${#branch} branch_size=${#branch}
ruby_size=${#ruby_version} ruby_size=${#ruby_version}
user_machine_size=${#${(%):-%n@%m-}} user_machine_size=${#${(%):-%n@%m-}}
if [[ ${#branch} -eq 0 ]] if [[ ${#branch} -eq 0 ]]
then (( ruby_size = ruby_size + 1 )) then (( ruby_size = ruby_size + 1 ))
else else
@ -24,15 +24,15 @@ function josh_prompt {
(( branch_size = branch_size + 2 )) (( branch_size = branch_size + 2 ))
fi fi
fi fi
(( spare_width = ${spare_width} - (${user_machine_size} + ${path_size} + ${branch_size} + ${ruby_size}) )) (( spare_width = ${spare_width} - (${user_machine_size} + ${path_size} + ${branch_size} + ${ruby_size}) ))
while [ ${#prompt} -lt $spare_width ]; do while [ ${#prompt} -lt $spare_width ]; do
prompt=" $prompt" prompt=" $prompt"
done done
prompt="%{%F{green}%}$PWD$prompt%{%F{red}%}$(rvm_prompt_info)%{$reset_color%} $(git_prompt_info)" prompt="%{%F{green}%}$PWD$prompt%{%F{red}%}$(rvm_prompt_info)%{$reset_color%} $(git_prompt_info)"
echo $prompt echo $prompt
} }

View file

@ -43,4 +43,4 @@ ZSH_THEME_GIT_PROMPT_SHA_AFTER="%{$WHITE%}]"
PROMPT=' PROMPT='
%{$GREEN_BOLD%}%n@%m%{$WHITE%}:%{$YELLOW%}%~%u$(parse_git_dirty)$(git_prompt_ahead)%{$RESET_COLOR%} %{$GREEN_BOLD%}%n@%m%{$WHITE%}:%{$YELLOW%}%~%u$(parse_git_dirty)$(git_prompt_ahead)%{$RESET_COLOR%}
%{$BLUE%}>%{$RESET_COLOR%} ' %{$BLUE%}>%{$RESET_COLOR%} '
RPROMPT='%{$GREEN_BOLD%}$(current_branch)$(git_prompt_short_sha)$(git_prompt_status)%{$RESET_COLOR%}' RPROMPT='%{$GREEN_BOLD%}$(current_branch)$(git_prompt_short_sha)$(git_prompt_status)%{$RESET_COLOR%}'

View file

@ -9,4 +9,4 @@ RPROMPT='%~$(git_prompt_info)$(get_host)'
ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[yellow]%}✗%{$reset_color%}" ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg[yellow]%}✗%{$reset_color%}"
ZSH_THEME_GIT_PROMPT_PREFIX="(" ZSH_THEME_GIT_PROMPT_PREFIX="("
ZSH_THEME_GIT_PROMPT_SUFFIX=")" ZSH_THEME_GIT_PROMPT_SUFFIX=")"

View file

@ -47,7 +47,7 @@ prompt_jnrowe_precmd () {
#dir_status="$c1%n%F{7}@%F{9}%m%F{7}:%F{12}%/" #dir_status="$c1%n%F{7}@%F{9}%m%F{7}:%F{12}%/"
dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$c4%}%/ %{$c0%}(%{$c5%}%?%{$c0%})" dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$c4%}%/ %{$c0%}(%{$c5%}%?%{$c0%})"
#dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$foopath%} %{$c0%}(%{$c5%}%?%{$c0%})" #dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$foopath%} %{$c0%}(%{$c5%}%?%{$c0%})"
PROMPT='%{$fg_bold[green]%}%p%{$reset_color%}${vcs_info_msg_0_}${dir_status} ${ret_status}%{$reset_color%} PROMPT='%{$fg_bold[green]%}%p%{$reset_color%}${vcs_info_msg_0_}${dir_status} ${ret_status}%{$reset_color%}
> ' > '
elif [[ $(git diff --cached --name-status 2>/dev/null ) != "" ]]; then elif [[ $(git diff --cached --name-status 2>/dev/null ) != "" ]]; then
@ -55,7 +55,7 @@ prompt_jnrowe_precmd () {
PROMPT='${vcs_info_msg_0_} PROMPT='${vcs_info_msg_0_}
%{$fg_bold[green]%}%p%{$reset_color%}${dir_status} ${vcs_info_msg_0_}%{$reset_color%} %{$fg_bold[green]%}%p%{$reset_color%}${dir_status} ${vcs_info_msg_0_}%{$reset_color%}
> ' > '
elif [[ $(git diff --name-status 2>/dev/null ) != "" ]]; then elif [[ $(git diff --name-status 2>/dev/null ) != "" ]]; then
dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$c4%}%/ %{$c0%}(%{$c5%}%?%{$c0%})" dir_status="%{$c1%}%n%{$c4%}@%{$c2%}%m%{$c0%}:%{$c3%}%l%{$c6%}->%{$c4%}%/ %{$c0%}(%{$c5%}%?%{$c0%})"
@ -67,7 +67,7 @@ prompt_jnrowe_precmd () {
PROMPT='${vcs_info_msg_0_} PROMPT='${vcs_info_msg_0_}
%{$fg_bold[green]%}%p%{$reset_color%}${dir_status} ${vcs_info_msg_0_}%{$reset_color%} %{$fg_bold[green]%}%p%{$reset_color%}${dir_status} ${vcs_info_msg_0_}%{$reset_color%}
> ' > '
fi fi
} }

View file

@ -20,4 +20,4 @@ mikeh_precmd() {
# entry in a nice long thread on the Arch Linux forums: http://bbs.archlinux.org/viewtopic.php?pid=521888#p521888 # 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%} 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] <($vcs_info_msg_0_)>%{\e[0m%}%b ' %{\e[0;34m%}%B..%B[%{\e[1;35m%}$%{\e[0;34m%}%B] <($vcs_info_msg_0_)>%{\e[0m%}%b '
PS2=$' \e[0;34m%}%B>%{\e[0m%}%b ' PS2=$' \e[0;34m%}%B>%{\e[0m%}%b '

View file

@ -12,4 +12,4 @@ git_custom_status() {
} }
PROMPT='%2~ $(git_custom_status) »%b ' PROMPT='%2~ $(git_custom_status) »%b '

View file

@ -1,6 +1,6 @@
# /|/ Code by Stephen # /|/ Code by Stephen
# /|/ "Rixius" Middleton # /|/ "Rixius" Middleton
# #
# name in folder (github) # name in folder (github)
# ± if in github repo, or ≥ if otherwise Time in 24-hour format is on right. # ± if in github repo, or ≥ if otherwise Time in 24-hour format is on right.
function collapse_pwd { function collapse_pwd {

View file

@ -26,10 +26,10 @@ if [[ "$DISABLE_COLOR" != "true" ]]; then
ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜" ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[magenta]%} ➜"
ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═" ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[yellow]%} ═"
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭" ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[cyan]%} ✭"
else else
MODE_INDICATOR="" MODE_INDICATOR=""
local return_status="%(?::⏎)" local return_status="%(?::⏎)"
PROMPT='%c$(git_prompt_info) %(!.#.) ' PROMPT='%c$(git_prompt_info) %(!.#.) '
ZSH_THEME_GIT_PROMPT_PREFIX=" git:" ZSH_THEME_GIT_PROMPT_PREFIX=" git:"

View file

@ -13,4 +13,4 @@ ZSH_THEME_GIT_PROMPT_MODIFIED="%{$fg[yellow]%} ✭"
ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✗" ZSH_THEME_GIT_PROMPT_DELETED="%{$fg[red]%} ✗"
ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%} ➦" ZSH_THEME_GIT_PROMPT_RENAMED="%{$fg[blue]%} ➦"
ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[magenta]%} ✂" ZSH_THEME_GIT_PROMPT_UNMERGED="%{$fg[magenta]%} ✂"
ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[grey]%} ✱" ZSH_THEME_GIT_PROMPT_UNTRACKED="%{$fg[grey]%} ✱"

View file

@ -9,4 +9,4 @@ ZSH_THEME_GIT_PROMPT_DIRTY="%{$fg_bold[yellow]%}✗%{$fg_bold[blue]%})"
# LS colors, made with http://geoff.greer.fm/lscolors/ # LS colors, made with http://geoff.greer.fm/lscolors/
export LSCOLORS="Gxfxcxdxbxegedabagacad" export LSCOLORS="Gxfxcxdxbxegedabagacad"
export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:' export LS_COLORS='no=00:fi=00:di=01;34:ln=00;36:pi=40;33:so=01;35:do=01;35:bd=40;33;01:cd=40;33;01:or=41;33;01:ex=00;32:*.cmd=00;32:*.exe=01;32:*.com=01;32:*.bat=01;32:*.btm=01;32:*.dll=01;32:*.tar=00;31:*.tbz=00;31:*.tgz=00;31:*.rpm=00;31:*.deb=00;31:*.arj=00;31:*.taz=00;31:*.lzh=00;31:*.lzma=00;31:*.zip=00;31:*.zoo=00;31:*.z=00;31:*.Z=00;31:*.gz=00;31:*.bz2=00;31:*.tb2=00;31:*.tz2=00;31:*.tbz2=00;31:*.avi=01;35:*.bmp=01;35:*.fli=01;35:*.gif=01;35:*.jpg=01;35:*.jpeg=01;35:*.mng=01;35:*.mov=01;35:*.mpg=01;35:*.pcx=01;35:*.pbm=01;35:*.pgm=01;35:*.png=01;35:*.ppm=01;35:*.tga=01;35:*.tif=01;35:*.xbm=01;35:*.xpm=01;35:*.dl=01;35:*.gl=01;35:*.wmv=01;35:*.aiff=00;32:*.au=00;32:*.mid=00;32:*.mp3=00;32:*.ogg=00;32:*.voc=00;32:*.wav=00;32:'