My *nix confs
JavaScript VimL Shell Perl Python Lua Other
Failed to load latest commit information.
.conky conky file for shell-fm Apr 22, 2010
.i3 get fancy with the scratchpad in i3 May 18, 2015
.irssi remove these scripts from autorun as they seem broken at the moment Jan 21, 2013
.pentadactyl remove `hi clear` since it slows load time Feb 15, 2015
.tmux handle tmux config change gracefully May 9, 2016
.vim replace out old syntax with updated ones May 11, 2016
.vimperator added smoozie back in May 8, 2010
.zsh.d add latest version of zsh syntax highlighting Mar 27, 2013
.zsh/git-prompt better output of git status Nov 9, 2015
awesome - change border focus color Apr 17, 2011
.ackrc ignore ctag files Dec 10, 2015
.bash_profile the linter hath been pleased Nov 9, 2015
.bashrc fzf all the things Dec 27, 2015
.commonenv allow for MacTex to work May 25, 2016
.commonfuncs script to easily navigate git stashes using fzf Jan 8, 2016
.commonprofile the linter hath been pleased Nov 9, 2015
.commonrc don't switch to a chruby automagically May 11, 2016
.ctags add yaml / salt ctags support Nov 18, 2014
.editrc enable vi mode in irb and pry May 25, 2016
.email_signature current email sig Jun 3, 2011
.gitconfig add alternative difftool programs May 18, 2016
.gitignore link for neovim Mar 15, 2016
.hgrc start of an hgrc file Oct 23, 2010
.inputrc no longer used to exit insert mode Jul 5, 2016
.irbrc silently fail to load extensions Apr 14, 2015
.mdlrc ignore angle bracket rule Apr 12, 2016
.my.cnf mysql prompt setup Aug 24, 2015 fix up the comment color in pdb++ Apr 14, 2015
.pentadactylrc shortcuts for PR lists Apr 12, 2016
.pryrc add pdb like list alias for whereami May 18, 2016
.psqlrc start of some psql settings Feb 18, 2014
.pydistutils.cfg use https to make pip stop complaining Sep 4, 2014
.pystartup make pystartup Py3 compatible Feb 15, 2015
.reviewboardrc review board is behind ssl now Sep 16, 2010
.rubocop.yml rubocop defaults Apr 12, 2016
.screenrc shortcut to match tmux to write paste buffer to file in screen Feb 28, 2014
.tmux.conf handle tmux config change gracefully May 9, 2016
.ttytterrc add ttytter config Apr 2, 2011
.vim_plugins.vim add and configure vim-test Jul 5, 2016
.vimpagerrc make it so that hjkl navigation works properly Sep 13, 2012
.vimperatorrc set up kick ass to <leader>x ( Sep 28, 2010
.vimrc handle neovim terminal window movements easier Jul 5, 2016
.xmodmaprc make control an extra caps lock in X Apr 2, 2011
.zprofile I made a crapload of changes: Apr 28, 2009
.zshenv custom zsh completions path change Apr 8, 2014
.zshprompt make prompt look less goofy May 26, 2015
.zshprompt_dos add rehash to the precmd so that new commands are always available Nov 18, 2011
.zshprompt_simple show all host entries before the domain Mar 5, 2014
.zshrc better dark / light setting for highlight May 9, 2016
README.mdown remove qs alias as it conflicts with another program Apr 18, 2016
authorized_keys dupe key May 19, 2014
config ignore powerline cache Apr 19, 2012 symlinks for neovim Mar 15, 2016 add support for alternate ssh port to rsync push Nov 26, 2012
servers add subversion servers config Nov 30, 2011



All of these confs were compiled by Clayton Parker, aka claytron. Most of the confs have comments describing why/what is happening.


I would strongly urge you not to use my confs directly. I am very picky about things, and this would certainly drive you crazy.

Another item of note is that I use vi editing mode in every place that will allow me to. This is set in the .inputrc and .zshrc. This would likely throw most people off as they are used to the emacs mode. The only issue I've run into with the vi mode is when you move from the end of the line in insert mode. When you try and go back to the end you can't without going to command mode and using a to add to the line.

A little history

To start off, here is a little background. Here in lies years of craziness all compiled into one nice little folder. I've been using the command line since 2003 when I was given a job as a systems administrator. I started on ZSH and have been using it ever since. At some point I decided to compile a set of confs that could be used with either ZSH or Bash (since most machines have at least bash).

Usage in the wild

Here is how I typically set up my shell on a new system.

$ git clone
$ .dotfiles/
linking .screenrc
linking .vimrc
linking .zshenv
linking .zshprompt
linking .zshprompt_simple
linking .zshrc
linking .inputrc
linking .bash_profile
linking .bashrc
linking .commonrc
linking .commonenv
linking .commonprofile
Remove /home/clayton/.subversion/config so that it can be linked
linking .pystartup

Notice that it says the .subversion/config is in the way. So let's fix that.

$ rm .subversion/config
$ .dotfiles/
linking config

Now we are all set. Next time we log in the confs will be updated so that any new changes are added.

$ ssh some-machine

dotfiles updated:
U .dotfiles/.bashrc
At revision 10712.

This puts the latest confs are in place and activates the changes.

$ && source ~/.zshrc

If you ever want to remove all the symlinks you can use the script by passing it the remove argument

$ .dotfiles/ unlink
Unlinked /home/clayton/.screenrc
Unlinked /home/clayton/.vimrc
Unlinked /home/clayton/.zshenv
Unlinked /home/clayton/.zshprompt
Unlinked /home/clayton/.zshprompt_simple
Unlinked /home/clayton/.zshrc
Unlinked /home/clayton/.inputrc
Unlinked /home/clayton/.bash_profile
Unlinked /home/clayton/.bashrc
Unlinked /home/clayton/.commonrc
Unlinked /home/clayton/.commonenv
Unlinked /home/clayton/.commonprofile
Unlinked /home/clayton/.commonfuncs
Unlinked /home/clayton/.subversion/config
Unlinked /home/clayton/.pystartup

In addition to the remove argument there is cleanup. This will not only remove all the symlinks, but it will also remove all the other items created by the script. This can be slightly dangerous since that includes everything, including unversioned files.