config files for zsh, completions, gem, git, irb, rails, rvm
Ruby Perl Shell
Switch branches/tags
Nothing to show
Pull request Compare This branch is 41 commits ahead, 24 commits behind ryanb:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.


Alexander Zubkov Dot Files

This is a fork from Ryan Bates's dotfiles. I removed bash. vim, added aliases for Rails 3, changed zsh config a bit, added RVM and more.


git clone git:// ~/.dotfiles
cd ~/.dotfiles
rake install


I am running on FreeBSD, but it will likely work on Mac OS X and Linux as well with minor fiddling. I primarily use zsh, so you should switch to zsh with the following command.

chsh -s /usr/local/bin/zsh


To install RVM just type:


No need to reload shell, it's loaded automatically after installation.


I normally place all of my coding projects in ~/workspace or ~/rails, so these directories can easily be accessed (and tab completed) with the “w” and “r” commands.

w railsca<tab>
r railsca<tab>

There is also an “h” command which behaves similar, but acts on the home path.

h doc<tab>

Tab completion is also added to rake, thor and cap commands:

rake db:mi<tab>
cap de<tab>
thor some_task<tab>

To speed things up, the results are cached in local .rake_tasks~ and .cap_tasks~. It is smart enough to expire the cache automatically in most cases, but you can simply remove the files to flush the cache.

There are a few key bindings set. Many of these require option to be set as the meta key. Option-left/right arrow will move cursor by word, and control-left/right will move to beginning and end of line. Control-option-N will open a new tab with the current directory under Mac OS X Terminal.

If you're using git, you'll notice the current branch name shows up in the prompt while in a git repository.

If you're using Rails 3, you'll find some handy aliases (below). You can also use show_log and hide_log in script/console to show the log inline.

rn       # rails new
rs       # rails s
rg       # rails g
rgs      # rails g nifty:scaffold
rc       # rails c
rp       # rails plugin
rpi      # rails plugin install

a        # autotest
tlog     # tail -f log/development.log
rst      # touch tmp/restart.txt
migrate  # rake db:migrate

See the other aliases in ~/.zsh/aliases

If there are some shell configuration settings which you want secure or specific to one system, place it into a ~/.localrc or ~/.profile file. This will be loaded automatically if it exists.

There are several features enabled in Ruby's irb including history and completion. Many convenience methods are added as well such as “ri” which can be used to get inline documentation in IRB. See irbrc and railsrc files for details.