parchlinux global dotfiles
Find a file
Derek Prior 341b7c93dd Add syntastic for syntax checking
* enable check on open: I want to know about any broken windows from the
  start.

* disable inline highlights: the line markers are sufficient.
2013-05-10 08:58:54 -04:00
bin Use ag instead of ack 2013-03-01 23:28:36 -05:00
vim Fix issue with submodules 2013-04-24 09:57:14 -04:00
zsh Don't use suffix flag for zsh compadd command 2013-04-19 12:12:42 -07:00
.gitignore Ignore new things in vim/bundle/ 2013-04-24 09:57:14 -04:00
agignore Use ag instead of ack 2013-03-01 23:28:36 -05:00
aliases g alias for git 2013-03-03 17:14:16 -05:00
gitconfig Add g pr alias for hub pull-request 2013-04-18 21:44:18 -07:00
gitignore Add .gitignore 2012-10-21 14:54:19 -07:00
gvimrc Vim configuration 2011-01-13 17:54:08 -05:00
install.sh Move Bundles into a separate file 2013-04-26 09:25:32 -04:00
LICENSE Update copyright year to 2013 2013-01-06 01:24:19 -08:00
README.md Fix reference to non-existent file 2013-04-22 21:04:57 -07:00
tmux.conf Increase tmux scrollback lines 2013-04-06 11:33:48 -07:00
vimrc Add syntastic for syntax checking 2013-05-10 08:58:54 -04:00
vimrc.bundles Add syntastic for syntax checking 2013-05-10 08:58:54 -04:00
zlogin Add Heroku scripts 2013-01-12 18:06:12 -08:00
zshrc g alias for git 2013-03-03 17:14:16 -05:00

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.
  • load-backup-into development or load-backup-into staging to load latest production database backup into development/staging.
  • m for rake db:migrate && rake db:rollback && rake db:migrate && rake db:test:prepare.
  • mcd to make a directory and change into it.
  • production backup, production migrate, production tail, watch production ps, etc. to interact with production Heroku environment. This script also acts as a pass-through so you can do anything with it that you can do with heroku _______ -r production.
  • 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.
  • staging version of production script.
  • 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.