Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
My dotfiles (.vimrc, .zshrc, etc.)
VimL Shell Ruby
Branch: master
Failed to load latest commit information.
bin Explain when `gcl git clone` might happen
git-template Try a different git commit message template
helpful-tips Ensure ZSH tips are on their own lines
irbrc.d Remove unused irb configuration
system Enable backspace as Back button in Safari
terminal-themes Update terminal theme
vim Show path to current file, relative to git repo
zsh qq sources zshrc and stays in same directory
.gitignore Create backups in vim
Brewfile rbenv-gem-rehash is part of rbenv now
README.md Document a few things
agignore Tell ag to ignore JS things
basic-cabal-file Easily generate x.cabal file
ctags Extend custom Ruby ctags (via @georgebrock)
curlrc Did you know there's a .curlrc?!
default-gems Install fzf by default
editrc editrc
gemrc Use --no-document to make purpose clearer
ghci Haskell: Enable OverloadedStrings GHC extension
gitconfig git mm / git mm-safe
gitignore Don't gitignore .ruby-version
haskeline haskeline settings
inputrc tmux, don't ever convert <Enter> to ^M again.
install.sh Switch from Vundle to vim-plug
irbrc Double quotes
link-dotfiles.sh Use rbenv-default-gems
nethackrc bye bingo
pryrc Use pry!
psqlrc shut up, psql
pythonstartup Add python settings
rspec Always run specs in random order
tmux.conf Add a space after the tmux session name
vimrc Add `:RunLine` vim function
zshenv Auto-connect to tmux sessions
zshrc Clear up some antecedent confusion in a comment

README.md

dotfiles

Gabriel Berke-Williams' dotfiles for zsh, ruby, git, and more.

Questions? Comments? Open an issue or tweet @gabebw.

Prerequisites

  • ZSH. To change your default shell to ZSH: chsh -s $(which zsh) $USER
  • Homebrew.

Installation

$ ./install.sh

It won't touch your existing dotfiles, but will symlink ones that don't exist. For example, if you have a ~/.zshrc but no ~/.zshenv, then the script will add a symlink from ~/.zshenv to the zshenv in this repo.

zsh

  • Look in /zshenv, /zshrc, /zsh/colors.zsh, /zsh/completion.zsh, /zsh/key_bindings.zsh, /zsh/navigation.zsh, /zsh/options.zsh, /zsh/path.zsh, /zsh/prompt.zsh
  • Turn off all beeping
  • Turn off "helpful" command autocorrecting
  • Prevent zsh: no matches found: ... error
  • Since (among others) $HOME/code is in my cdpath (see navigation.zsh), and I have $HOME/code/hello, I can type hello from anywhere to go to there.
  • The prompt shows the current directory, the current git branch, the status of the git branch (changed, staged, clean, etc) and the current Ruby version
  • The prompt is fairly well documented, and is self-contained: you can copy it into your dotfiles with no changes to test it out. It's in zsh/prompt.zsh.
  • Enables pretty colors
  • Enables completions
  • Enables Vi-style editing on the command line, with Ctrl-r to search backwards
  • If you've typed abc then press the Up arrow, it searches for commands starting with abc; same for the Down arrow.
  • Completion for the following commands (in /zsh/completion-scripts): brew, rake, rspec, tmux, bundle
  • Every time a directory changes, save it to a file and go back to the current directory when the shell is opened again. Files are named based on the current tmux session.

ruby

Check out /zsh/ruby.zsh.

  • alias irb to pry
  • be is bundle exec
  • b with no arguments runs a faster version of bundle install and then installs binstubs.
  • b with arguments (like b install) acts just like bundle
  • binstubs installs bundler binstubs to ./bin/stubs

rails

Check out /zsh/rails.zsh.

  • alias h to heroku
  • alias summer to spring stop
  • rrg something greps the routes for something
  • f starts foreman on the port specified in .foreman, or if that's in use, starts foreman on a guaranteed-unused port.
  • db-reset drops and resets the database

Vim

  • For Vim-plugin-specific settings, check out /vim/rcplugins/.
Something went wrong with that request. Please try again.