No description, website, or topics provided.
Vim script Shell Ruby
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
bin
vim/bundle
zsh
.gitignore
LICENSE
README.md
agignore
aliases
gitconfig
gitignore
install.sh
tmux.conf
vimrc
vimrc-old
vimrc.bundles
zlogin
zshrc

README.md

thoughtbot dotfiles

Requirements

Set zsh as your login shell.

chsh -s /bin/zsh

Install

Clone onto your laptop:

git clone git://github.com/thoughtbot/dotfiles.git

(Or, fork and keep your fork updated).

Install:

cd dotfiles
./install.sh

This will create symlinks for config files in your home directory. If you include the line "DO NOT EDIT BELOW THIS LINE" anywhere in a config file, it will copy that file over instead of symlinking it, and it will leave everything above that line in your local config intact.

You can safely run ./install.sh multiple times to update.

Make your own customizations

Put your customizations at the top of files, separated by "DO NOT EDIT BELOW THIS LINE."

For example, the top of your ~/.gitconfig might look like this:

[user]
  name = Joe Ferris
  email = jferris@thoughtbot.com

# DO NOT EDIT BELOW THIS LINE

[push]
  default = current

The top of your ~/.zlogin might look like this:

# Productivity
alias todo='$EDITOR ~/.todo'

# DO NOT EDIT BELOW THIS LINE

# recommended by brew doctor
export PATH="/usr/local/bin:/usr/local/sbin:$PATH"

What's in it?

vim configuration:

  • Ctrl-P for fuzzy file/buffer/tag finding.
  • Rails.vim for enhanced navigation of Rails file structure via gf and :A (alternate), :Rextract partials, :Rinvert migrations, etc.
  • Run RSpec specs from vim.
  • Set <leader> to a single space.
  • Switch between the last two files with space-space.
  • Syntax highlighting for CoffeeScript, Textile, Cucumber, Haml, Markdown, and HTML.
  • Use Ag instead of Grep when available.
  • Use Exuberant Ctags for tab completion.
  • Use GitHub color scheme.
  • Use Vundle to manage plugins.

tmux configuration:

  • Improve color resolution.
  • Remove administrative debris (session name, hostname, time) in status bar.
  • Set prefix to Ctrl+a (like GNU screen).
  • Soften status bar color from harsh green to light gray.

git configuration:

  • Adds a create-branch alias to create feature branches.
  • Adds a delete-branch alias to delete feature branches.
  • Adds a merge-branch alias to merge feature branches into master.

Shell aliases and scripts:

  • b for bundle.
  • g with no arguments is git status and with arguments acts like git.
  • git-churn to show churn for the files changed in the branch.
  • m for rake db:migrate && rake db:rollback && rake db:migrate && rake db:test:prepare.
  • mcd to make a directory and change into it.
  • rake is zeus rake if using Zeus on the project in current directory.
  • replace foo bar **/*.rb to find and replace within a given list of files.
  • rk for rake.
  • rspec is zeus rspec if using Zeus on the project in current directory.
  • tat to attach to tmux session named the same as the current directory.
  • v for $VISUAL.

Credits

Thank you, contributors!

thoughtbot

Dotfiles is maintained by thoughtbot, inc The names and logos for thoughtbot are trademarks of thoughtbot, inc.

Dotfiles is © 2009-2013 thoughtbot, inc. It is free software and may be redistributed under the terms specified in the LICENSE file.