export CLICOLORS=1 if [ -e /bin/dircolors ]; then eval $(dircolors -b ~/.dircolors) fi if [ -t 0 -a -t 1 ]; then #kill flow control stty -ixon stty -ixoff if [ ${BASH_VERSINFO[0]} -ge 4 ]; then shopt -s cdspell shopt -s extglob shopt -s cmdhist shopt -s checkwinsize shopt -s no_empty_cmd_completion shopt -u promptvars shopt -s histappend set -o noclobber shopt -s dirspell #don't echo ^C stty -ctlecho fi fi #set -o functrace if [ "$TERM" = "linux" ]; then echo -en "\e]P0222222" #black echo -en "\e]P8222222" #darkgrey echo -en "\e]P1803232" #darkred echo -en "\e]P9982b2b" #red echo -en "\e]P25b762f" #darkgreen echo -en "\e]PA89b83f" #green echo -en "\e]P3aa9943" #brown echo -en "\e]PBefef60" #yellow echo -en "\e]P4324c80" #darkblue echo -en "\e]PC2b4f98" #blue echo -en "\e]P5706c9a" #darkmagenta echo -en "\e]PD826ab1" #magenta echo -en "\e]P692b19e" #darkcyan echo -en "\e]PEa1cdcd" #cyan echo -en "\e]P7ffffff" #lightgrey echo -en "\e]PFdedede" #white #this is an attempt at working utf8 line drawing chars in the linux-console # export TERM=linux+utf8 clear #hmm, yeah we need this or else we get funky background collisions fi case "$(uname -s)" in Darwin) alias ls="ls -GF" ;; HP-UX) alias ls="ls -F" ;; SunOS) alias ls="ls -F" ;; *) alias ls="ls -F --color" ;; esac alias ll="ls -hl" alias la="ls -a" alias pg="pg -n -p 'page %d:'" alias mp="mplayer" alias screenrd="screen -Rd" if type -p vim >/dev/null; then alias vi="vim" else alias vim="vi" fi #make OOo not look like ass export OOO_FORCE_DESKTOP=gnome export PATH=$PATH:$HOME/bin:$HOME/scripts if [ -d /opt/local/ ]; then export PATH=/opt/local/bin:/opt/local/sbin:$PATH fi #Pango makes firefox hell slow export MOZ_DISABLE_PANGO=1 #export CDPATH=.:..:../..:$HOME:/srv export HISTIGNORE="&:[bf]g:exit" export HISTCONTROL=ignoredups export HISTFILESIZE=10000 export HISTSIZE=10000 export INPUTRC=/etc/inputrc export EDITOR=vim export VISUAL=vim export BROWSER=firefox export PAGER=less export MANPAGER=less export MAILCHECK=0 export MAIL=~/.mail export IGNOREEOF=3 # less man page colors export GROFF_NO_SGR=1 export LESS_TERMCAP_mb=$'\E[01;31m' export LESS_TERMCAP_md=$'\E[01;31m' export LESS_TERMCAP_me=$'\E[0m' export LESS_TERMCAP_so=$'\E[01;44;33m' export LESS_TERMCAP_se=$'\E[0m' export LESS_TERMCAP_us=$'\E[01;32m' export LESS_TERMCAP_ue=$'\E[0m' # grep colors export GREP_OPTIONS='--color=auto' export GREP_COLOR='1;32' function mkcd() { mkdir "$1" && cd "$1"; } function calc(){ awk "BEGIN{ print $* }" ;} function hex2dec { awk 'BEGIN { printf "%d\n",0x$1}'; } function dec2hex { awk 'BEGIN { printf "%x\n",$1}'; } function mktar() { tar czf "${1%%/}.tar.gz" "${1%%/}/"; } function mkmine() { sudo chown -R ${USER} ${1:-.}; } function rot13 () { echo "$@" | tr a-zA-Z n-za-mN-ZA-M; } function :h () { vim -c "silent help $@" -c "only"; } function gril () { grep -rl "$@" *; } function grepword () { grep -Hnr "$@" *; } function vimf () { vim -c "ScratchFind" -c "only"; } function vimg () { vim -c "ScratchFind 'grep -rl \"$@\" *'" -c "only"; } function vfind () { vim -p $(find . -name '$@'); } function sendkey () { if [ $# -eq 1 ]; then local key="" if [ -f ~/.ssh/id_dsa.pub ]; then key=~/.ssh/id_dsa.pub elif [ -f ~/.ssh/id_rsa.pub ]; then key=~/.ssh/id_rsa.pub else echo "No public key found" >&2 return 1 fi ssh $1 'cat >> ~/.ssh/authorized_keys' < $key fi } if [ "$TERM_PROGRAM" = "Apple_Terminal" -a "$TERM" = "vt100" ];then export TERM="screen" fi #Different colors for remote server if [ -z "$SSH_TTY" ]; then PS1="\[\033[36m\]\u\[\033[37m\]@\[\033[32m\]\h:\[\033[33;1m\]\w\[\033[m\]$ " else PS1="\[\033[35m\]\u\[\033[37m\]@\[\033[31m\]\h:\[\033[34;1m\]\w\[\033[m\]$ " fi if [ -e /opt/local/etc/bash_completion ]; then . /opt/local/etc/bash_completion fi if [ -e /etc/bash_completion ]; then . /etc/bash_completion fi if tty -s; then type -p motd >/dev/null && motd #run this neat little script fi # try to load ssh-agent if [ -z "$SSH_AUTH_SOCK" ]; then if type -p ssh-agent >/dev/null; then eval $(/usr/bin/ssh-agent -s) trap "eval \$(/usr/bin/ssh-agent -k)" 0 fi fi [ -f ~/.bashrc-local ] && . ~/.bashrc-local