Go to file
2011-12-06 00:32:51 -08:00
bin Added willmorgan git helper scripts in bin/willmorgan 2011-11-22 13:23:59 -06:00
KeyBindings@a62dfd4f8a Keybindings from ttscoff 2011-11-18 10:10:06 -06:00
vim Removed old unused docs 2011-12-06 00:32:23 -08:00
.gitignore Added willmorgan git helper scripts in bin/willmorgan 2011-11-22 13:23:59 -06:00
.gitmodules Added willmorgan git helper scripts in bin/willmorgan 2011-11-22 13:23:59 -06:00
bash_aliases Added a few git aliases 2011-11-29 16:56:11 -08:00
bash_options Initial commit. 2011-11-17 16:00:49 -06:00
bash_path Added willmorgan git helper scripts in bin/willmorgan 2011-11-22 13:23:59 -06:00
bash_profile Configuration for zsh 2011-11-22 19:20:31 -06:00
git-completion.bash Froze in latest git-completion.bash, fixed references in bash_profile to use ~/.dotfiles 2011-11-18 12:53:07 -06:00
gitconfig Improved git log colors 2011-11-27 17:51:59 -06:00
gitignore_global Added ctags files to global gitignore 2011-11-29 16:56:28 -08:00
inputrc Initial commit. 2011-11-17 16:00:49 -06:00
irbrc Initial commit. 2011-11-17 16:00:49 -06:00
osx Readme cleanup 2011-11-17 16:51:44 -06:00
README.md Apple-k, Apple-K for underscores and dashes 2011-11-30 01:16:49 -08:00
vimrc Color cleanup 2011-12-06 00:32:51 -08:00
zsh_aliases Fixed function/alias 'fn' for finding files 2011-11-23 21:15:52 -06:00
zshrc Added rvm 2011-11-23 21:14:45 -06:00

Yan's Excellent Dotfiles!

There are two main goals accomplished in my dotfiles to produce insane productivity

  • All common bash commands should be two and three character mnemonic aliases
  • Most vim tasks, especially those having to do with navigation, should be mapped to a single Capital Letter or two letter mnemonic.

Submodules

This project uses git submodules for some of its plugins. Please run:

git submodule update

To get all the current plugins. Over time, I plan to move all plugins into submodules.

Setup for ZSH

I am now using ZSH as my default shell because of its awesome globbing and autocomplete features, nice colors, etc. This setup assumes you use oh-my-zsh (https://github.com/robbyrussell/oh-my-zsh)

Place this as the last line in your ~/.zshrc created by oh-my-zsh:

source ~/.dotfiles/zshrc

This setup reuses my bash aliases but provides some custom functions.

Setup for Bash

To set these up as your own (careful, don't overwrite your bash_profile unintentionally!):

git clone git://github.com/skwp/dotfiles ~/.dotfiles

ln -s ~/.dotfiles/bash_profile ~/.bash_profile
. ~/.bash_profile

Lots of things I do every day are done with two or three character mnemonic aliases. Please feel free to edit them:

ae # alias edit
ar # alias reload

Setup for Vim

To use the vim files:

ln -s ~/.dotfiles/vimrc ~/.vimrc
ln -s ~/.dotfiles/vim ~/.vim

The .vimrc is well commented and broken up by settings. I encourage you to take a look and learn some of my handy aliases, or comment them out if you don't like them, or make your own.

These are things I use every day to be insanely productive. Hope you like em.

  • F - instantly Find definition of class (must have exuberant ctags installed)
  • B - show Buffer explorer
  • S - Show buffers in LustyJuggler (use asdfjkl home row keys to then select buffer)
  • T - Tag list (list of methods in a class)
  • K - git grep for the Kurrent word under the cursor
  • O - Open a GitGrep command line with a quote pretyped (close the quote yourself)
  • \m - show my Marks (set a mark with mX where X is a letter, navigate to mark using 'X). Uppercase marks to mark files, lowercase marks to use within a file.
  • Z - jump back and forth between last two buffers
  • Q - Quit a window (normally Ctrl-w,c)
  • \Q - Kill a buffer completely (normally :bw)
  • Ctrl-j and Ctrl-k to move up and down roughly by functions
  • vv and ss - vertical and horizontal split windows by double tapping
  • H,L,I,M - to move left, right, up, down between windows
  • Ctrl-\ - Show NerdTree (project finder) and expose current file
  • cf - Copy Filename of current file into system (not vi) paste buffer
  • // - clear the search
  • ,, or z,, - use EasyMotion - type that and then type one of the highlighted letters. I'm just exploring this one.
  • Apple-k and Apple-K to type underscores and dashes, since they are so common in code but so far away from home row
  • yw - remapped to yaw, meaning yanking a word will yank the entire word no matter where your cursor is
  • W - write a file (instead of :w, saving you keystrokes for the most common vim operation)

Setup for Git

To use the gitconfig (some of the git bash aliases rely on my git aliases)

ln -s ~/.dotfiles/gitconfig ~/.gitconfig

Read through the gitconfig to find out what's in store.

OSX Hacks

The osx file is a bash script that sets up sensible defaults for devs and power users under osx. Read through it before running it. To use:

./osx

OSX KeyBindings for systemwide text editing

I am also experimenting with Brett Terpstra's OSX KeyBindings (github: ttscoff/KeyBindings) for good text editing features across the entire OS. To install:

git submodule update
mkdir -p ~/Library/KeyBindings
ln -s KeyBindings/DefaultKeyBinding.dict ~/Library/KeyBindings/DefaultKeyBindings.dict

More info: http://brettterpstra.com/keybinding-madness/

other OSX Insane Productivity tools I use

Credits

I can't take credit for all of this. The vim files are a combination of work by tpope, scrooloose, and many hours of scouring blogs, vimscripts, and other places for the cream of the crop of vim and bash awesomeness.

TODO

I started migrating to tpope's pathogen, but only a few plugins are currently under vim/bundles.

For more tips and tricks

Follow my blog: http://yanpritzker.com