This includes my configuration for ZSH, git, psql, irb, tmux and others.
To set up all of the files as symlinks in your home directory, just run this:
ZSH is set up to have full completion for killing processes,
cd-ing to a
ssh-ing to known hosts and other stuff.
The Vim keybindings are activated by default. Plus some non-Vim keybindings:
Ctrl-Rto search back in ZSH history incrementally.
Ctrl-Sto search forward in ZSH history incrementally.
Ctrl-Yto accept a search result.
Ctrl-Pto go back in history.
Ctrl-Nto go forward in history.
Ctrl-Ato go to the beginning of the line.
Ctrl-Eto go to the end of the line.
Ctrl-Qto push the current line onto the stack to run a new command.
Some aliases that are set up:
hs- Search through ZSH history.
tma- Attach to a running a tmux session.
tmn- Create a new tmux session.
There are also shortcuts for the most commonly used git subcommands and other stuff.
Aliases that only work on Linux, or only work on OS X, are in
zsh.d/aliases.Darwin.sh respectively and sourced
Some functions defined in
mkdircd- Create a directory and
serve- Serve the current directory with Python's SimpleHTTPServer.
gifs3- Push a gif to S3 and copy the resulting URL to the clipboard.
agand open the results in Vim.
cdzz- Find files with
cdinto the first resulting directory.
The ZSH prompt shows the current directory, the current git branch, whether the git branch is dirty or not.
The prompt also shows whether a background job is running in the current session or not. Here it is without a background job and a dirty directory:
Here is the prompt after Vim has been suspended with Ctrl-Z:
The setup here allows me to define a new color for the current directoy on each
machine I clone this repo to, by adding the file
Vim is set up as the default editor in
it starts when
\e is used in
The delay for key combinations is redureced with
EDITOR is, of
Go is also set up. As is the
Platform-dependent environment variables are set up in