For unix system, with vim, git, pry and tmux. Install some must-have plugins and aliases for developping with rails framework.
Install and set zsh as your login shell.
chsh -s /bin/zsh
Some aliases and plugins recommand/use following programmes:
Install ag (ack-like more powerfull):
git clone https://github.com/ggreer/the_silver_searcher
Install hub (git wrapper for github):
git clone https://github.com/defunkt/hub
Install rvm (Ruby Version Manager) :
Clone onto your laptop:
git clone https://github.com/blackbirdco/dotfiles.git
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.
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 = Loïc Delmaire
email = loic@blackbird.co
# DO NOT EDIT BELOW THIS LINE
[color]
diff = auto
The top of your ~/.zshrc
might look like this:
# Productivity
alias todo='$EDITOR ~/.todo'
# DO NOT EDIT BELOW THIS LINE
# add the current branch name in green
git_prompt_info() {
zsh for default shell:
- Add git branch to right prompt
- Some common options and configurations extract from oh-my-zsh
vim configuration:
- Rails.vim for enhanced navigation of
Rails file structure via
gf
and:A
(alternate),:Rextract
partials,:Rinvert
migrations, etc. - Run RSpec specs from vim.
- Syntax highlighting for : CoffeeScript, Cucumber, Haml, Markdown, and HTML5.
- Use Ag instead of Grep when available.
- Use Exuberant Ctags for tab completion.
- Use Vundle to manage plugins.
Details in vimrc.bundles for others plugins.
You can use your a local configuration in ~/.vimrc.local
.
tmux configuration.
- Set prefix to
Ctrl+a
(like GNU screen).
git configuration.
Shell aliases and scripts:
b
forbundle
.g
with no arguments isgit status
and with arguments acts likegit
.m
forrake db:migrate && rake db:rollback && rake db:migrate && rake db:test:prepare
.mcd
to make a directory and change into it.rake
iszeus rake
if using Zeus on the project in current directory.rk
forrake
.rspec
iszeus 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
.
pry configuration:
- Set pry as the default ruby/rails console (pry-everywhere)
- Add hirb for rails console
- More tests needed
Inspired by thoughtbot's dotfiles
It is free software and may be redistributed under the terms specified in the LICENSE file.