zsh / vim / tmux / irb
Vim script Other
Switch branches/tags
Nothing to show
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
docs
irbrc.d
vim/colors
zsh-themes
.gitignore
README.md
Vagrantfile
ackrc
editrc
gemrc
gitconfig-ct
gvimrc
jshintrc
osx
rdebugrc
rvmrc
setup.sh
tmux.conf
vimrc
zlogin
zlogout
zpreztorc
zprofile
zshenv
zshrc

README.md

Dotfile config

Why a common dotfile config?

  • Share good practices within a team
  • Unleash development productivity

Hamburger

What's inside?

  • A solid VIM config
  • A solid TMUX config
  • Extra dotfiles (ackrc, irbrc, gemrc)

See below for further details

Pre-requisite

  • zsh
  • git / git-core
  • node / npm
  • tmux

If not installed yet, under ubuntu install with aptitude install zsh git git-core

Test it!

This config is super easy to test, try it out (Vagrant is required):

git clone https://github.com/quentindecock/dotfiles.git /tmp/config-test
cd /tmp/config-test
vagrant up
vagrant ssh
sudo su

Install

cd
git clone https://github.com/quentindecock/dotfiles.git .dotfiles
cd .dotfiles
./setup.sh
zsh
cd

TMUX config

iTerm Users: You need to set Option / Alt keys as a meta key in your terminal application.

  • iTerm: Preferences > Profiles > Default > Keys > Left option key acts as + Esc Preferences > Profiles > Default > Keys > Right option key acts as + Esc

Key Bindings

The following key bindings do not require you to send the prefix keystroke:

Command Result
Prefix
Ctrl + e Remapped to the Alt button in our config
Initiation
tmux Starts tmux
tmux attach Re-attach to last open session
tmux attach -t session_name Attach to specific session
Termination
exit Kill the current shell
Alt + d Detach
Panes
Alt + - New split vertically
Alt + | New split horizontally
Pane Movement
Alt + h Go to the left pane
Alt + j Go to the bottom pane
Alt + k Go to the top pane
Alt + l Go to the right pane
Alt + Arrow Resize pane
Tabs
Alt + c New tab
Alt + n Next tab
Alt + p Previous tab
Sessions
Alt + 8 Choose a session to attach
Alt + 9 Cycle left through sessions
Alt + 0 Cycle right through sessions
tmux ls List tmux sessions
Copy mode
Alt + PageUp Copy mode and page up
Alt + u Copy mode
Space Select text
Return Copy text and quit
Alt + i Paste
q Quit copy mode

VIM config

Plugins

plugins - under the hood

  • Vundle - VIM plugin management

Customization

Please put your custom setting in a .custom.vim file at the root of the dotfile directory

Cheat sheet

ctrl + p

  • Press <F6> to purge the cache for the current directory to get new files, remove deleted files and apply new ignore options.
  • Press <c-f> and <c-b> to cycle between modes.
  • Press <c-d> to switch to filename only search instead of full path.
  • Press <c-r> to switch to regexp mode.
  • Use <c-n>, <c-p> to select the next/previous string in the prompt's history.
  • Use <c-y> to create a new file and its parent directories.
  • Use <c-z> to mark/unmark multiple files and <c-o> to open them.

If you need more information, please use :help ctrlp within vim

Fugitive

These are really good videos showcasing Fugitive functionalities

Credits

I would like to thank these guys, this config was largely inspired by their work: