Skip to content


Subversion checkout URL

You can clone with
Download ZIP
My dotfiles
Perl VimL Shell Perl6 Other
Failed to load latest commit information.
bash change cmd-line edit mode back to emacs
lib/File no longer need perl YAML module
scripts remove cpanm, interferes with setup on laptop
terminfo adding xterm-color terminfo for iOS Prompt
vim Clean up vim stuff I hardly ever/don't use.
.gitignore move oh-my-zsh repo into ~/.dotfiles Do not install bash symlinks by default
bash_profile undo
bashrc fix uname path for bash environment
colordiffrc colordiffrc color changes
cvsrc add -d to cvs up
emacs initial import
gitconfig add 'undo-commit' alias
gitignore no need to ignore vim tag files.
hgrc add mercurial defaults file (hgrc)
inputrc change cmd-line edit mode back to emacs add docker plugin
ircrc IRC stuff
perldb add .perldb
perltidyrc perltidy settings change
pgclirc add .pgclirc
pryrc pry theme solarized
psqlrc turn off psql verbosity
screenrc 256 color support (in theory)
tcshrc add git branch to tcsh prompt
tmux.conf tmux color adjustment
vimrc note about alternate method of turning syntax on
zlogin Use reattach-to-user-namespace if available (MacOS)
zlogout removing bye message
zshenv auto-activate virtualenv on entering directory
zshrc remove outdated author info


This repository contains my personal dotfiles, which I use on unix systems of varying flavors, and on my Macs. They are published here because I occasionally want to share them or use them as examples, and this is an easy way to do so. Feel free to use anything you find here.

Note however, that I do not make any particular effort to make this easy for others to use. I randomly move things around, add and remove Vim bundles, according to my needs. If you want to use these dotfiles, I would definitely suggest forking them to your own repo so you can selectively merge changes as you see fit. YMMV.


I am a Zsh user. This repo goes in conjunction with my fork of oh-my-zsh. If you want to use my zsh setup, run ./ zsh.

Using Bash does not need any external repos. Use ./ bash to install my Bash setup. I used Bash for many years, and those files are fairly mature, but I am no longer paying a lot of attention to them. Note that the default installer does not install the bash symlinks anymore, you have to install 'bash' specifically!

I regularly use this setup with Mac OS X, Solaris, and Linux systems. I have used it with FreeBSD in the past.

Some parts of the Bash, Zsh, and Vim configs may assume you have 256 color support in your terminal. If you are using Apple Terminal before OS X Lion, you don't. Try iTerm2 instead.

I have written two blog posts on the subject of iTerm and iTerm2. Give them a read; color support is only one of several good reasons to switch.

iTerm > Terminal

iTerm2 > iTerm

Shell colors

The colors in the shell prompts for both Bash and Zsh are currently set up assuming the terminal is using Solarized Dark as a color scheme. They may not look very good in other terminal setups.

The Zsh setup lets you pick from multiple prompts. Run prompt -l to see them, and set what you like in ~/.zshrc.


umask 0022
git clone ~/.dotfiles

To install my dotfiles as your dotfiles, you can create symlinks with ./ all. If you do not run that command, everything will be isolated inside of the ~/.dotfiles directory (or wherever you cloned it) and will not interfere with your existing environment.

cd ~/.dotfiles && ./ all will ask you before overwriting any files that already exist.

You can also install subsets of the environment using one of the following.

./ bash
./ zsh
./ vim
./ git


I periodically change the Vim bundles I use. There are two update tasks for Vim. The first updates the bundles from their repositories.

./ update:vim

The second cleans up any bundles which are no longer known. (Note that update:vim will run the cleanup before doing the update step.)

./ cleanup:vim

You can refresh the zsh environment with

./ update:zsh
Something went wrong with that request. Please try again.