Commits

Steve Losh committed 3ebf2dc Merge

Merge.

Comments (0)

Files changed (33)

-mercurial/hg-prompt       = [hg]https://bitbucket.org/sjl/hg-prompt
-mercurial/histedit        = [hg]https://bitbucket.org/durin42/histedit
-mercurial/templates       = [hg]https://bitbucket.org/sjl/mercurial-cli-templates
-vim/bundle/AnsiEsc.vim    = [git]git://github.com/sjl/AnsiEsc.vim.git
-vim/bundle/ack            = [git]git://github.com/mileszs/ack.vim.git
-vim/bundle/badwolf        = [hg]https://bitbucket.org/sjl/badwolf/
-vim/bundle/clam           = [hg]https://bitbucket.org/sjl/clam.vim/
-vim/bundle/commentary     = [git]git://github.com/tpope/vim-commentary.git
-vim/bundle/ctrlp          = [git]git://github.com/kien/ctrlp.vim.git
-vim/bundle/fireplace      = [git]git://github.com/tpope/vim-fireplace.git
-vim/bundle/fugitive       = [git]git://github.com/tpope/vim-fugitive.git
-vim/bundle/gundo          = [hg]https://bitbucket.org/sjl/gundo.vim/
-vim/bundle/html5          = [git]git://github.com/othree/html5.vim.git
-vim/bundle/indent-object  = [git]git://github.com/michaeljsmith/vim-indent-object.git
-vim/bundle/javascript     = [git]git://github.com/pangloss/vim-javascript.git
-vim/bundle/linediff       = [git]git://github.com/AndrewRadev/linediff.vim.git
-vim/bundle/markdown       = [git]git://github.com/tpope/vim-markdown.git
-vim/bundle/nerdtree       = [git]git://github.com/scrooloose/nerdtree.git
-vim/bundle/orgmode        = [git]git://github.com/jceb/vim-orgmode.git
-vim/bundle/paredit        = [hg]https://bitbucket.org/kovisoft/paredit
-vim/bundle/powerline      = [git]git://github.com/Lokaltog/vim-powerline.git
-vim/bundle/python-mode    = [git]git://github.com/klen/python-mode.git
-vim/bundle/rainbow-parens = [git]git://github.com/kien/rainbow_parentheses.vim.git
-vim/bundle/repeat         = [git]git://github.com/tpope/vim-repeat.git
-vim/bundle/smartinput     = [git]git://github.com/kana/vim-smartinput.git
-vim/bundle/sparkup        = [git]git://github.com/sjl/vim-sparkup.git
-vim/bundle/splice         = [hg]https://bitbucket.org/sjl/splice.vim
-vim/bundle/strftimedammit = [hg]https://bitbucket.org/sjl/strftimedammit.vim/
-vim/bundle/supertab       = [git]git://github.com/ervandew/supertab.git
-vim/bundle/surround       = [git]git://github.com/tpope/vim-surround.git
-vim/bundle/syntastic      = [git]git://github.com/scrooloose/syntastic.git
-vim/bundle/tslime         = [git]git://github.com/sjl/tslime.vim.git
-vim/bundle/vim-clojure-static = [git]git://github.com/guns/vim-clojure-static.git
-vim/bundle/vitality       = [hg]https://bitbucket.org/sjl/vitality.vim
-vim/bundle/yankring       = [git]git://github.com/vim-scripts/YankRing.vim.git
+mercurial/hg-prompt              = [hg]https://bitbucket.org/sjl/hg-prompt
+mercurial/histedit               = [hg]https://bitbucket.org/durin42/histedit
+mercurial/templates              = [hg]https://bitbucket.org/sjl/mercurial-cli-templates
+vim/bundle/AnsiEsc.vim           = [git]git://github.com/sjl/AnsiEsc.vim.git
+vim/bundle/ack                   = [git]git://github.com/mileszs/ack.vim.git
+vim/bundle/badwolf               = [hg]https://bitbucket.org/sjl/badwolf/
+vim/bundle/clam                  = [hg]https://bitbucket.org/sjl/clam.vim/
+vim/bundle/clojure-static        = [git]git://github.com/guns/vim-clojure-static.git
+vim/bundle/commentary            = [git]git://github.com/tpope/vim-commentary.git
+vim/bundle/ctrlp                 = [git]git://github.com/kien/ctrlp.vim.git
+vim/bundle/dispatch              = [git]git://github.com/tpope/vim-dispatch.git
+vim/bundle/fireplace             = [git]git://github.com/tpope/vim-fireplace.git
+vim/bundle/fugitive              = [git]git://github.com/tpope/vim-fugitive.git
+vim/bundle/gundo                 = [hg]https://bitbucket.org/sjl/gundo.vim/
+vim/bundle/html5                 = [git]git://github.com/othree/html5.vim.git
+vim/bundle/indent-object         = [git]git://github.com/michaeljsmith/vim-indent-object.git
+vim/bundle/javascript            = [git]git://github.com/pangloss/vim-javascript.git
+vim/bundle/linediff              = [git]git://github.com/AndrewRadev/linediff.vim.git
+vim/bundle/markdown              = [git]git://github.com/tpope/vim-markdown.git
+vim/bundle/maven                 = [git]git://github.com/sjl/vim-maven-plugin.git
+vim/bundle/nerdtree              = [git]git://github.com/scrooloose/nerdtree.git
+vim/bundle/paredit               = [hg]https://bitbucket.org/kovisoft/paredit/
+vim/bundle/pgsql                 = [git]git://github.com/exu/pgsql.vim.git
+vim/bundle/powerline             = [git]git://github.com/Lokaltog/vim-powerline.git
+vim/bundle/python-mode           = [git]git://github.com/klen/python-mode.git
+vim/bundle/rainbow-parentheses   = [git]git://github.com/kien/rainbow_parentheses.vim.git
+vim/bundle/repeat                = [git]git://github.com/tpope/vim-repeat.git
+vim/bundle/scala                 = [git]git://github.com/derekwyatt/vim-scala.git
+vim/bundle/smartinput            = [git]git://github.com/kana/vim-smartinput.git
+vim/bundle/sparkup               = [git]git://github.com/sjl/vim-sparkup.git
+vim/bundle/splice                = [hg]https://bitbucket.org/sjl/splice.vim
+vim/bundle/strftimedammit        = [hg]https://bitbucket.org/sjl/strftimedammit.vim/
+vim/bundle/supertab              = [git]git://github.com/ervandew/supertab.git
+vim/bundle/surround              = [git]git://github.com/tpope/vim-surround.git
+vim/bundle/syntastic             = [git]git://github.com/scrooloose/syntastic.git
+vim/bundle/tslime                = [git]git://github.com/sjl/tslime.vim.git
+vim/bundle/vitality              = [hg]https://bitbucket.org/sjl/vitality.vim
+vim/bundle/yankring              = [git]git://github.com/vim-scripts/YankRing.vim.git
 f183a345a0c10caed7684d07dabae33e007c7590 vim/bundle/ack
 b8e07a24e77d3bad16a89bde409f97ccc307486a vim/bundle/badwolf
 8533fffd9fbb690dfc8e334f91a10c72e35a6dce vim/bundle/clam
+949adf73ae1a82c48cd951677c055bd38a30af99 vim/bundle/clojure-static
 dc349bb7d30f713d770fc1fa0fe209e6aab82dc8 vim/bundle/commentary
 c1646e3c28d75bcc834af4836f4c6e12296ba891 vim/bundle/ctrlp
+ffbd5eb50c9daf67657b87fd767d1801ac9a15a7 vim/bundle/dispatch
 4f6b8e52376dc9973ca0478b750578b681681b55 vim/bundle/fireplace
 cff78c3ab4605d490e6be8d8af02f1e7efd25c95 vim/bundle/fugitive
-8c570a493d260890242cbdc5a22d8500dc4604cb vim/bundle/gundo
+eb9fc8676b8959c3c2c95bf6b6e8f0f44317c5c0 vim/bundle/gundo
 34b407d2344a3c2a94b56e9d443e18e01e8544d9 vim/bundle/html5
 78fffa609b3e6b84ef01ee4c9aba6d7435d7b18e vim/bundle/indent-object
 395f8901b34cc871c9576886938a6efda0eb7268 vim/bundle/javascript
 78646801aac4d3d85e7c4e9570deccfce81a50e7 vim/bundle/linediff
 dcdab0cd55da5e0b8655c000d99d96624cd6404c vim/bundle/markdown
+5258393bb12428c59bce8b28c9726d0326805dcf vim/bundle/maven
 a1433c485eb254838c1db52e087d5ec4d1e77cfd vim/bundle/nerdtree
-f45b4529dd282393f2e08306ae161d77de0051a0 vim/bundle/orgmode
 b6b7d8b1982b67a0bba936c198041f6f3a2286a4 vim/bundle/paredit
+f84e170fce4f6cb60b6d1b4baa30076f2b372f1e vim/bundle/pgsql
 2af074850fde676743f655775e3e151925751adf vim/bundle/powerline
 1b4b8f1a8f1c88d8caae6c1b12c22c52ef418f32 vim/bundle/python-mode
-eb8baa5428bde10ecc1cb14eed1d6e16f5f24695 vim/bundle/rainbow-parens
+eb8baa5428bde10ecc1cb14eed1d6e16f5f24695 vim/bundle/rainbow-parentheses
 613eb1c81261adfa5dead315089c432ff6dbbc51 vim/bundle/repeat
+c81f87ca6786142b531e66a948effacc03a02184 vim/bundle/scala
 78ab4b3df24fa2753d3dfc1be75ed5a3df1565b8 vim/bundle/smartinput
 c6197a10ace82e0fe0c08e5cf5c017b7069a978e vim/bundle/sparkup
 01e68795c7a14b97ec2ebbd70b0fcb42d1adac61 vim/bundle/splice
 1a73f607f8f5477d6942df2eb6e7245c4864f4d3 vim/bundle/surround
 0a7b21d6021a3a565db066e7b8f7f158c918037c vim/bundle/syntastic
 2dee007ddae8156735cbae7f0cd4e0a24ba7287b vim/bundle/tslime
-949adf73ae1a82c48cd951677c055bd38a30af99 vim/bundle/vim-clojure-static
 84365f56fc87c11f1f04eed487d256cf8b128f7c vim/bundle/vitality
 a884f3a161fa3cd8c996eb53a3d1c68631f60c21 vim/bundle/yankring
 ensure_link "lib/dotfiles/dotjs"               ".js"
 ensure_link "lib/dotfiles/dotcss"              ".css"
 ensure_link "lib/dotfiles/hgignore"            ".hgignore"
+ensure_link "lib/dotfiles/gitignore"           ".gitignore"
 ensure_link "lib/dotfiles/ffignore"            ".ffignore"
 ensure_link "lib/dotfiles/ctags"               ".ctags"
 ensure_link "lib/dotfiles/grc"                 ".grc"

bin/figlet-find-font

+#!/usr/bin/env bash
+
+ls /usr/local/share/figlet/fonts/ | grep -e 'fl[fc]' | xargs -J FONT -n1 figlet-out FONT "$@"
+#!/usr/bin/env bash
+
+echo
+echo ====================================================================
+FONT=$1
+echo $FONT
+shift
+figlet -w 1000 -f $FONT "$@"
+#!/usr/bin/env bash
+
+set -e
+
+mvn "$@" | grcat ~/.grc/conf.maven
 --exclude=closure-library
 
 --langmap=Lisp:+.clj
+
+--langdef=scala
+--langmap=scala:.scala
+--regex-scala=/^[ \t]*((abstract|final|sealed|implicit|lazy)[ \t]*)*(private|protected)?[ \t]*class[ \t]+([a-zA-Z0-9_]+)/\4/c,classes/
+--regex-scala=/^[ \t]*((abstract|final|sealed|implicit|lazy)[ \t]*)*(private|protected)?[ \t]*object[ \t]+([a-zA-Z0-9_]+)/\4/c,objects/
+--regex-scala=/^[ \t]*((abstract|final|sealed|implicit|lazy)[ \t]*)*(private|protected)?[ \t]*case class[ \t]+([a-zA-Z0-9_]+)/\4/c,case classes/
+--regex-scala=/^[ \t]*((abstract|final|sealed|implicit|lazy)[ \t]*)*(private|protected)?[ \t]*case object[ \t]+([a-zA-Z0-9_]+)/\4/c,case objects/
+--regex-scala=/^[ \t]*((abstract|final|sealed|implicit|lazy)[ \t]*)*(private|protected)?[ \t]*trait[ \t]+([a-zA-Z0-9_]+)/\4/t,traits/
+--regex-scala=/^[ \t]*type[ \t]+([a-zA-Z0-9_]+)/\1/T,types/
+--regex-scala=/^[ \t]*((abstract|final|sealed|implicit|lazy)[ \t]*)*def[ \t]+([a-zA-Z0-9_]+)/\3/m,methods/
+--regex-scala=/^[ \t]*((abstract|final|sealed|implicit|lazy)[ \t]*)*val[ \t]+([a-zA-Z0-9_]+)/\3/l,constants/
+--regex-scala=/^[ \t]*((abstract|final|sealed|implicit|lazy)[ \t]*)*var[ \t]+([a-zA-Z0-9_]+)/\3/l,variables/
+--regex-scala=/^[ \t]*package[ \t]+([a-zA-Z0-9_.]+)/\1/p,packages/ 

dotcss/simple.com.css

-#intro-progress { display: none; }
-.badge.showing { display: none; }
 syntax:literal
 .DS_Store
+
+syntax:regex
+^./target$
 function eg; vim ~/.gitconfig; end
 function es; vim ~/.slate; end
 
+function sjoin -d "Join input lines into a single line with spaces"; tr '\n' ' '; end
+
+function pj
+    python -m json.tool | pygmentize -l json
+end
+
 function vup
     set -x VAGRANT_LOG debug
     vagrant up $argv
     ~/lib/t/t.py --task-dir="~/Dropbox/tasks" --list=pack.txt $argv
 end
 
+function s
+    ~/lib/t/t.py --task-dir="~/.simple-tasks" --list=tasks.txt $argv
+    set -g T_TASK_COUNT (count_t_tasks)
+end
+
 # }}}
 # Bind Keys {{{
 
 prepend_to_path "/usr/local/bin"
 prepend_to_path "/usr/local/share/python"
 prepend_to_path "/usr/local/sbin"
+prepend_to_path "/usr/local/share/npm/bin"
 prepend_to_path "$HOME/bin"
 prepend_to_path "$HOME/lib/dotfiles/bin"
 prepend_to_path "/opt/local/bin"
 prepend_to_path "$HOME/Library/Haskell/bin"
 prepend_to_path "/usr/local/Cellar/ruby/1.9.3-p194/bin"
 prepend_to_path "/Applications/Postgres.app/Contents/MacOS/bin"
+prepend_to_path "$HOME/.rbenv/shims"
 
 set BROWSER open
 
 set -g -x VIM_BINARY "/usr/local/bin/vim"
 set -g -x MVIM_BINARY "/usr/local/bin/mvim"
 
+set -g -x DRIP_SHUTDOWN 30
+
+set -g -x MAVEN_OPTS "-Xmx512M -XX:MaxPermSize=512M"
+
 # }}}
 # Python variables {{{
 
 . ~/.config/fish/virtualenv.fish
 
 # }}}
+# Rubby {{{
+
+/usr/local/bin/rbenv rehash 2>/dev/null
+
+# }}}
 # Z {{{
 
 . ~/src/z-fish/z.fish
 # Local Settings {{{
 
 if test -s $HOME/.config/fish/local.fish
-    source $HOME/.config/fish/local.fish
+    . $HOME/.config/fish/local.fish
 end
 
 # }}}
     branches = branch -a
     remotes = remote -v
 
-    make-the-fucking-branch-point-at-the-fucking-commit = !sh -c "git checkout $1 && git reset --hard $2" -
+    point-the-fucking-branch-at = "!sh -c 'git checkout $1 && git reset --hard $2' -"
     root = rev-parse --show-toplevel
 
     graft = cherry-pick -x
 
     sl = "!sh -c 'git show --color=always $1 | less -R' -"
 
+    find-merge = "!sh -c 'git log $1..master --merges -n1' -"
+
+    fuck-up-history-from = pull --rebase
+
 [push]
     default = current
 
 
 [web]
     browser = open
+
+[include]
+    path = ~/.gitconfig_local
+dependency-reduced-pom.xml
+tags
+tags1
+tags2
+tags.bak
+regexp=.+ FAILURE!$
+colours=red bold
+=======
+regexp=^Expected: .+$
+colours=magenta
+=======
+regexp=^     got: .+$
+colours=magenta
+=======
+regexp=^     but: .+$
+colours=magenta
+=======
+regexp= T E S T S
+colours=cyan bold
+=======
+regexp=^Running \w+$
+colours=cyan bold
+=======
+regexp=^Tests run: \d+,
+colours=cyan bold
+=======
+regexp=^Failed tests:
+colours=red bold
+=======
+regexp=Skipped: \d+,
+colours=yellow bold
+=======
+regexp=(Failures|Errors): \d+,
+colours=red bold
+=======
+regexp=Skipped: 0,?
+colours=green bold
+=======
+regexp=(Failures|Errors): 0,
+colours=green bold
+=======
+regexp=^\[INFO\] .*$
+colours=black bold
+=======
+regexp=.*logback.classic pattern.*
+colours=black bold
+=======
+regexp=^\[INFO\] BUILD SUCCESS$
+colours=green bold
+=======
+regexp=^\[INFO\] BUILD FAILURE$
+colours=red bold
+=======
+regexp=^\[debug\] .*$
+colours=black bold
+=======
+regexp=^SLF4J: .*$
+colours=black bold
+=======
+regexp=^log4j:.*$
+colours=black bold
 .DS_Store
 *.pyc
 tags
+tags.bak
 ignore = ![ -n "$@" ] && echo '$@' >> `$HG root`/.hgignore && \
           $HG commit `$HG root`/.hgignore -Am 'Add "$@" to .hgignore.'
 
-# Show in MacVim
-vshow = !$HG show $@ | mvim -c ':AnsiEsc' -c 'setlocal buftype=nofile' -
+# Show in Vim
+vshow = !$HG show $@ | vim -c ':AnsiEsc' -c 'setlocal buftype=nofile' -
+vdiff = !$HG diff -p --color=always $@ | vim -c ':AnsiEsc' -c 'setlocal buftype=nofile' -
 
 # Ack for non-ignored files
 ack = !$HG locate "set:not ignored()" | xargs ack $@
 
 set sidebar_delim   = '  │'
 set sidebar_visible = yes
-set sidebar_width   = 24
+set sidebar_width   = 26
 color sidebar_new color221 color233
 bind index,pager <down>   sidebar-next
 bind index,pager <up>     sidebar-prev
 bind index,pager <right>  sidebar-open
+set sidebar_format = "%B %> %S"
 
 # }}}
 # Status Bar {{{
 unset record
 
 # }}}
-# Account Hooks {{{
-
-# folder-hook steve-stevelosh.com/* source ~/.mutt/steve-stevelosh.com.muttrc
-
-# }}}
 # Key Bindings {{{
 
 # Index {{{
 macro index M "<save-message>?<toggle-mailboxes>" "move a message to a mailbox"
 
 # Quickly change mailboxes
-macro index \' "<change-folder>+steve-stevelosh.com/INBOX<enter>"   "go to stevelosh/INBOX"
-macro index \" "<change-folder>+steve-stevelosh.com/archive<enter>" "go to stevelosh/archive"
+macro index \' "<change-folder>+simple/INBOX<enter>"   "go to INBOX"
+macro index \" "<change-folder>+simple/archive<enter>" "go to archive"
 
 # Search with notmuch
-macro index S "<enter-command>unset wait_key<enter><shell-escape>mutt-notmuch-py -G ~/.mail/temporary/search<enter><change-folder-readonly>+temporary/search<enter>" "search mail (using notmuch)"
+macro index S "<enter-command>unset wait_key<enter><shell-escape>mutt-notmuch-py -G ~/.mail/search<enter><change-folder-readonly>+search<enter>" "search mail (using notmuch)"
 
 # Unlimit (show [a]ll)
 macro index a "<limit>all\n" "show all messages (undo limit)"
 macro pager s "<pipe-message>cat > ~/Desktop/"  "save message as"
 
 # Quickly change mailboxes
-macro pager \' "<exit><change-folder>+steve-stevelosh.com/INBOX<enter>"   "go to stevelosh/INBOX"
-macro pager \" "<exit><change-folder>+steve-stevelosh.com/archive<enter>" "go to stevelosh/archive"
+macro pager \' "<exit><change-folder>+steve-stevelosh.com/INBOX<enter>"   "go to INBOX"
+macro pager \" "<exit><change-folder>+steve-stevelosh.com/archive<enter>" "go to archive"
 
 # }}}
 # Compose {{{
 # }}}
 
 # }}}
+# Local Settings {{{
+    source `FILE=$HOME/.mutt-local; if [ ! -s "$FILE" ]; then FILE=/dev/null;fi;echo "$FILE"`
+# }}}
 [general]
 ui = TTY.TTYUI
-accounts = SteveLosh
+accounts = Simple
 pythonfile=~/.mutt/offlineimap.py
 fsync = False
 
-[Account SteveLosh]
-localrepository = SteveLosh-Local
-remoterepository = SteveLosh-Remote
+# [Account SteveLosh]
+# localrepository = SteveLosh-Local
+# remoterepository = SteveLosh-Remote
+# status_backend = sqlite
+# postsynchook = notmuch new
+# 
+# [Repository SteveLosh-Local]
+# type = Maildir
+# localfolders = ~/.mail/steve-stevelosh.com
+# nametrans = lambda folder: {'drafts':  '[Gmail]/Drafts',
+#                             'sent':    '[Gmail]/Sent Mail',
+#                             'flagged': '[Gmail]/Starred',
+#                             'trash':   '[Gmail]/Trash',
+#                             'archive': '[Gmail]/All Mail',
+#                             }.get(folder, folder)
+# 
+# [Repository SteveLosh-Remote]
+# maxconnections = 1
+# type = Gmail
+# remoteuser = steve@stevelosh.com
+# remotepasseval = get_keychain_pass(account="steve@stevelosh.com", server="imap.gmail.com")
+# realdelete = no
+# nametrans = lambda folder: {'[Gmail]/Drafts':    'drafts',
+#                             '[Gmail]/Sent Mail': 'sent',
+#                             '[Gmail]/Starred':   'flagged',
+#                             '[Gmail]/Trash':     'trash',
+#                             '[Gmail]/All Mail':  'archive',
+#                             }.get(folder, folder)
+# folderfilter = lambda folder: folder not in ['[Gmail]/Trash',
+#                                              'Nagios',
+#                                              'Django',
+#                                              'Flask',
+#                                              '[Gmail]/Important',
+#                                              '[Gmail]/Spam',
+#                                              ]
+
+[Account Simple]
+localrepository = Simple-Local
+remoterepository = Simple-Remote
 status_backend = sqlite
 postsynchook = notmuch new
 
-[Repository SteveLosh-Local]
+[Repository Simple-Local]
 type = Maildir
-localfolders = ~/.mail/steve-stevelosh.com
+localfolders = ~/.mail/simple
 nametrans = lambda folder: {'drafts':  '[Gmail]/Drafts',
                             'sent':    '[Gmail]/Sent Mail',
                             'flagged': '[Gmail]/Starred',
                             'archive': '[Gmail]/All Mail',
                             }.get(folder, folder)
 
-[Repository SteveLosh-Remote]
+[Repository Simple-Remote]
 maxconnections = 1
 type = Gmail
-remoteuser = steve@stevelosh.com
-remotepasseval = get_keychain_pass(account="steve@stevelosh.com", server="imap.gmail.com")
+remoteuser = sjl@simple.com
+remotepasseval = get_keychain_pass(account="sjl@simple.com", server="imap.gmail.com")
 realdelete = no
 nametrans = lambda folder: {'[Gmail]/Drafts':    'drafts',
                             '[Gmail]/Sent Mail': 'sent',
                             '[Gmail]/All Mail':  'archive',
                             }.get(folder, folder)
 folderfilter = lambda folder: folder not in ['[Gmail]/Trash',
-                                             'Nagios',
-                                             'Django',
-                                             'Flask',
                                              '[Gmail]/Important',
                                              '[Gmail]/Spam',
                                              ]
 # Only really makes sense if you have your parens bound to shifts like me.
 bind -r ( select-window -t :-
 bind -r ) select-window -t :+
+bind-key -r H swap-window -t -1
+bind-key -r L swap-window -t +1
 
 # 256 colors please
 set -g default-terminal "screen-256color"

vim/after/plugin/fireplace-map-unfucking.vim

+" These are all out here in the middle of goddamned nowhere because Fireplace is
+" an asshole and won't let you disable mappings like any other plugin.
+
+augroup unmap_fireplace_bullshit
+    au!
+
+    au Filetype clojure nunmap <buffer> cp
+    au Filetype clojure nunmap <buffer> cpp
+
+    au Filetype clojure nunmap <buffer> c!
+    au Filetype clojure nunmap <buffer> c!!
+
+    au Filetype clojure nunmap <buffer> cq
+    au Filetype clojure nunmap <buffer> cqq
+
+    au Filetype clojure nunmap <buffer> cqp
+    au Filetype clojure nunmap <buffer> cqc
+
+    au Filetype clojure nunmap <buffer> cpr
+
+    au Filetype clojure nunmap <buffer> K
+    au Filetype clojure nunmap <buffer> [d
+    au Filetype clojure nunmap <buffer> ]d
+
+    au Filetype clojure nunmap <buffer> [<c-d>
+    au Filetype clojure nunmap <buffer> ]<c-d>
+
+    au Filetype clojure nunmap <buffer> <c-w><c-d>
+    au Filetype clojure nunmap <buffer> <c-w>d
+    au Filetype clojure nunmap <buffer> <c-w>gd
+augroup END
+
+augroup map_good_fireplace_keys
+    au!
+
+    " [M]an (get documentation)
+    au Filetype clojure nmap <buffer> M <Plug>FireplaceK
+
+    " Go to Definition
+    au Filetype clojure nmap <buffer> <c-]> <Plug>FireplaceDjumpmzzvzz15<c-e>'z:Pulse<cr>
+    au Filetype clojure nmap <buffer> <c-\> <c-w>v<Plug>FireplaceDjumpmzzMzvzz15<c-e>'z:Pulse<cr>
+
+    " Require
+    au Filetype clojure nnoremap <buffer> <localleader>r :Require<cr>
+
+    " Require Harder
+    au Filetype clojure nnoremap <buffer> <localleader>R :Require!<cr>
+
+    " Get [S]ource
+    au Filetype clojure nmap <buffer> <localleader>s <Plug>FireplaceSource
+
+    " Eval Buffer
+    au Filetype clojure nnoremap <buffer> <localleader>eb :%Eval<cr>
+
+    " Eval Form
+    au Filetype clojure nmap <buffer> <localleader>ef <Plug>FireplacePrintab
+
+    " Eval Top-Level Form
+    au Filetype clojure nmap <buffer> <localleader>ee mz$:call PareditFindDefunBck()<cr><Plug>FireplacePrintab'z
+
+    " Open clojure command line editor client window thing
+    au Filetype clojure exe 'nmap <buffer> <localleader>E <Plug>FireplacePrompt' . &cedit . 'i'
+augroup END

vim/ftplugin/clojure/folding.vim

 endif
 let loaded_clojurefolding=1
 
-let folded_forms = [
+if !exists('g:clojure_fold_extra')
+    let g:clojure_fold_extra = []
+endif
+
+let s:folded_forms = [
             \ 'def',
             \ 'defn',
             \ 'defn-',
-            \ 'defform',
-            \ 'defform-',
-            \ 'defrule',
             \ 'defprotocol',
-            \ 'defparser',
             \ 'defmacro',
             \ 'defmethod',
             \ 'defmulti',
             \ 'defonce',
-            \ 'defpage',
-            \ 'defmigration',
-            \ 'defsketch',
             \ 'defspec',
-            \ 'defremote',
             \ 'defrecord',
-            \ 'defrec',
             \ 'defpartial',
             \ 'extend-type',
             \ 'extend-protocol',
-            \ 'defgauge',
-            \ 'defmeter',
-            \ 'defhistogram',
-            \ 'defcounter',
-            \ 'deftimer',
             \ 'deftest',
-            \ 'defroutes',
-            \ 'defentity',
-            \ 'defaspect',
-            \ 'add-aspect',
-            \ 'defdb',
-            \ 'defproject',
-            \ 'defsynth',
-            \ 'definst',
             \ 'ns'
-            \ ]
-let s:form_re      = '\v^\((' . join(folded_forms, '|') . ')\s'
-let s:form_re_bare = '\v^\((' . join(folded_forms, '|') . ')$'
+            \ ] + g:clojure_fold_extra
+
+let s:form_re      = '\v^\((' . join(s:folded_forms, '|') . ')\s'
+let s:form_re_bare = '\v^\((' . join(s:folded_forms, '|') . ')$'
 
 function! s:NextNonBlankLineContents(start)
     let lnum = a:start
 set showbreak=↪
 set splitbelow
 set splitright
-set fillchars=diff:⣿,vert:│
 set autowrite
 set autoread
 set shiftround
 set spellfile=~/.vim/custom-dictionary.utf-8.add
 set colorcolumn=+1
 
+" iTerm2 is currently slow as ball at rendering the nice unicode lines, so for
+" now I'll just use ascii pipes.  They're ugly but at least I won't want to kill
+" myself when trying to move around a file.
+" set fillchars=diff:⣿,vert:│
+set fillchars=diff:⣿,vert:\|
+
 " Don't try to highlight lines longer than 800 characters.
 set synmaxcol=800
 
     let @z = old_z
 endfunction
 noremap <leader>p :silent! set paste<CR>"*p:set nopaste<CR>
-noremap <leader>p :r!pbpaste<cr>
+" noremap <leader>p mz:r!pbpaste<cr>`z
 vnoremap <leader>y :<c-u>call g:FuckingCopyTheTextPlease()<cr>
 
 " I constantly hit "u" in visual mode when I mean to "y". Use "gu" for those rare occasions.
 " I never use l as a macro register anyway.
 nnoremap ql gqq
 
-" Easier linewise reselection
+" Easier linewise reselection of what you just pasted.
 nnoremap <leader>V V`]
 
+" Indent/dedent/autoindent what you just pasted.
+nnoremap <lt>> V`]<
+nnoremap ><lt> V`]>
+nnoremap =- V`]=
+
 " Keep the cursor in place while joining lines
 nnoremap J mzJ`z
 
 nnoremap Vab vabV
 nnoremap VaB vaBV
 
-" Toggle "keep current line in the center of the screen" mode
-nnoremap <leader>C :let &scrolloff=999-&scrolloff<cr>
-
 " Directional Keys {{{
 
 " It's 2013.
 " }}}
 " Clojure {{{
 
+let g:clojure_fold_extra = [
+            \ 'defgauge',
+            \ 'defmeter',
+            \ 'defhistogram',
+            \ 'defcounter',
+            \ 'deftimer',
+            \
+            \ 'defdb',
+            \ 'defentity',
+            \ 'defaspect',
+            \ 'add-aspect',
+            \ 'defmigration',
+            \
+            \ 'defsynth',
+            \ 'definst',
+            \ 'defproject',
+            \
+            \ 'defroutes',
+            \
+            \ 'defrec',
+            \
+            \ 'defparser',
+            \
+            \ 'defform',
+            \ 'defform-',
+            \
+            \ 'defpage',
+            \ 'defsketch'
+            \
+            \ ]
+
 augroup ft_clojure
     au!
 
     au BufNewFile,BufRead riemann.config set filetype=clojure
+    au FileType clojure silent! call TurnOnClojureFolding()
+    au FileType clojure compiler clojure
+    au FileType clojure setlocal report=100000
 
-    au FileType clojure silent! call TurnOnClojureFolding()
+    au FileType clojure RainbowParenthesesActivate
+    au syntax clojure RainbowParenthesesLoadRound
+    au syntax clojure RainbowParenthesesLoadSquare
+    au syntax clojure RainbowParenthesesLoadBraces
 
     " Friendlier Paredit mappings.
     au FileType clojure noremap <buffer> () :<c-u>call PareditWrap("(", ")")<cr>
     au FileType clojure noremap <buffer> (s :<c-u>call PareditSplit()<cr>
     au FileType clojure noremap <buffer> [ :<c-u>call PareditSmartJumpOpening(0)<cr>
     au FileType clojure noremap <buffer> ] :<c-u>call PareditSmartJumpClosing(0)<cr>
-    " ))))))))
+    " )))
 
     " Indent top-level form.
-    au FileType clojure nmap <buffer> <localleader>= mz:call PareditFindDefunBck()<cr>=ab'z
+    au FileType clojure nmap <buffer> <localleader>= mz99[(v%='z
+    " ])
 augroup END
 
 " }}}
 augroup END
 
 " }}}
+" Postgresql {{{
+
+augroup ft_postgres
+    au!
+
+    au BufNewFile,BufRead *.sql set filetype=pgsql
+    au FileType pgsql set foldmethod=indent
+    au FileType pgsql set softtabstop=2 shiftwidth=2
+augroup END
+
+" }}}
 " Puppet {{{
 
 augroup ft_puppet
 augroup END
 
 " }}}
+" Scala {{{
+
+augroup ft_scala
+    au!
+    au Filetype scala setlocal foldmethod=indent
+    au Filetype scala compiler maven
+    au Filetype scala let b:dispatch = 'mvn -B package install'
+augroup END
+
+" }}}
 " stevelosh.com Blog Entries {{{
 
 augroup ft_steveloshcom
 let g:ctrlp_user_command = ['.git/', my_ctrlp_ffind_command, my_ctrlp_ffind_command]
 
 " }}}
+" Dispatch {{{
+
+nnoremap <leader>d :Dispatch<cr>
+nnoremap <leader>m :Dispatch<cr>
+
+" }}}
 " Fugitive {{{
 
+let g:fugitive_github_domains = ['github.banksimple.com']
+
 nnoremap <leader>gd :Gdiff<cr>
 nnoremap <leader>gs :Gstatus<cr>
 nnoremap <leader>gw :Gwrite<cr>
 nnoremap \| :call MakeGreen('')<cr>
 
 " }}}
+" Maven {{{
+
+let g:maven_disable_mappings = 1
+
+" }}}
 " NERD Tree {{{
 
 noremap  <F2> :NERDTreeToggle<cr>
 
 let g:syntastic_enable_signs = 1
 let g:syntastic_check_on_open = 1
-let g:syntastic_disabled_filetypes = ['html', 'rst']
+let g:syntastic_java_checker = 'javac'
+let g:syntastic_mode_map = {
+            \ "mode": "active",
+            \ "active_filetypes": [],
+            \ "passive_filetypes": ['java', 'html', 'rst', 'scala']
+            \ }
 let g:syntastic_stl_format = '[%E{%e Errors}%B{, }%W{%w Warnings}]'
 let g:syntastic_jsl_conf = '$HOME/.vim/jsl.conf'
 
+nnoremap <leader>C :SyntasticCheck<cr>
+
 " }}}
 " Splice {{{
 
     diffupdate
 endfunc
 
-nnoremap <leader>dw :call ToggleDiffWhitespace()<CR>
+nnoremap <leader>W :call ToggleDiffWhitespace()<CR>
 
 " }}}
 " Error Toggles {{{

weechat/alias.conf

 #
-# alias.conf -- WeeChat v0.3.8
+# alias.conf -- weechat v0.4.1
 #
 
 [cmd]

weechat/aspell.conf

 #
-# aspell.conf -- weechat v0.3.7
+# aspell.conf -- weechat v0.4.1
 #
 
 [look]
 commands = "ame,amsg,away,command,cycle,kick,kickban,me,msg,notice,part,query,quit,topic"
 default_dict = "en"
 during_search = off
+enabled = off
 real_time = off
+suggestions = -1
 word_min_length = 2
 
 [dict]

weechat/buffers.conf

 #
-# buffers.conf -- WeeChat v0.3.8
+# buffers.conf -- weechat v0.4.1
 #
 
 [color]

weechat/charset.conf

 #
-# charset.conf -- WeeChat v0.3.8
+# charset.conf -- weechat v0.4.1
 #
 
 [default]

weechat/logger.conf

 #
-# logger.conf -- WeeChat v0.3.8
+# logger.conf -- weechat v0.4.1
 #
 
 [look]
 info_lines = off
 mask = "$plugin.$name.weechatlog"
 name_lower_case = on
+nick_prefix = ""
+nick_suffix = ""
 path = "%h/logs/"
 replacement_char = "_"
 time_format = "%Y-%m-%d %H:%M:%S"

weechat/plugins.conf

 #
-# plugins.conf -- WeeChat v0.3.8
+# plugins.conf -- weechat v0.4.1
 #
 
 [var]
 fifo.fifo = "on"
+lua.check_license = "off"
 perl.buffers.color_current = "black,green"
 perl.buffers.color_default = "default"
 perl.buffers.color_hotlist_highlight = "lightmagenta"

weechat/relay.conf

 #
-# relay.conf -- WeeChat v0.3.8
+# relay.conf -- weechat v0.4.1
 #
 
 [look]
 raw_messages = 256
 
 [color]
+client = cyan
 status_active = lightblue
 status_auth_failed = lightred
 status_connecting = yellow
 allowed_ips = ""
 bind_address = ""
 compression_level = 6
+ipv6 = on
 max_clients = 5
 password = ""
+ssl_cert_key = "%h/ssl/relay.pem"
+websocket_allowed_origins = ""
+
+[irc]
+backlog_max_minutes = 1440
+backlog_max_number = 256
+backlog_since_last_disconnect = on
+backlog_tags = "irc_privmsg"
+backlog_time_format = "[%H:%M] "
 
 [port]

weechat/rmodifier.conf

 #
-# rmodifier.conf -- WeeChat v0.3.8
+# rmodifier.conf -- weechat v0.4.1
 #
 
 [look]

weechat/script.conf

+#
+# script.conf -- weechat v0.4.1
+#
+
+[look]
+columns = "%s %n %V %v %u | %d | %t"
+diff_color = on
+diff_command = "auto"
+display_source = on
+quiet_actions = on
+sort = "p,n"
+translate_description = on
+use_keys = on
+
+[color]
+status_autoloaded = cyan
+status_held = white
+status_installed = lightcyan
+status_obsolete = lightmagenta
+status_popular = yellow
+status_running = lightgreen
+status_unknown = lightred
+text = default
+text_bg = default
+text_bg_selected = red
+text_date = default
+text_date_selected = white
+text_delimiters = darkgray
+text_description = default
+text_description_selected = white
+text_extension = default
+text_extension_selected = white
+text_name = cyan
+text_name_selected = lightcyan
+text_selected = white
+text_tags = brown
+text_tags_selected = yellow
+text_version = magenta
+text_version_loaded = default
+text_version_loaded_selected = white
+text_version_selected = lightmagenta
+
+[scripts]
+autoload = on
+cache_expire = 60
+dir = "%h/script"
+hold = ""
+url = "http://www.weechat.org/files/plugins.xml.gz"

weechat/urlgrab.conf

 #
-# urlgrab.conf -- WeeChat v0.3.8
+# urlgrab.conf -- weechat v0.4.1
 #
 
 [color]

weechat/weechat.conf

 #
-# weechat.conf -- WeeChat v0.3.8
+# weechat.conf -- weechat v0.4.1
 #
 
 [debug]
 command_before_plugins = ""
 display_logo = on
 display_version = on
+sys_rlimit = ""
 
 [look]
 align_end_of_lines = message
 bar_more_right = ">>"
 bar_more_up = "--"
 buffer_notify_default = all
-buffer_time_format = "%H:%M:%S"
+buffer_time_format = "%H:%M"
 color_basic_force_bold = off
 color_inactive_buffer = off
 color_inactive_message = on
 color_inactive_prefix_buffer = on
 color_inactive_time = off
 color_inactive_window = off
+color_nick_offline = off
 color_pairs_auto_reset = 5
 color_real_white = off
 command_chars = ""
 day_change_time_format = "%a, %d %b %Y"
 eat_newline_glitch = off
 highlight = "sjl"
-highlight_regex = "(sjl|^all[,:])"
+highlight_regex = "(sjl|^all[,:]|backend(ia?)|slj|clojerks)"
 highlight_tags = ""
 hotlist_add_buffer_if_away = on
 hotlist_buffer_separator = ", "
 item_time_format = "%H:%M"
 jump_current_to_previous_buffer = on
 jump_previous_buffer_when_closing = on
+jump_smart_back_to_buffer = on
 mouse = off
 mouse_timer_delay = 100
-nickmode = on
-nickmode_empty = off
+nick_prefix = ""
+nick_suffix = ""
 paste_bracketed = off
 paste_bracketed_timer_delay = 10
 paste_max_lines = 3
 prefix_align_max = 15
 prefix_align_min = 0
 prefix_align_more = "+"
+prefix_align_more_after = on
 prefix_buffer_align = right
 prefix_buffer_align_max = 0
 prefix_buffer_align_more = "+"
+prefix_buffer_align_more_after = on
 prefix_error = "=!="
 prefix_join = "✔"
 prefix_network = "--"
 separator_vertical = ""
 set_title = on
 time_format = "%a, %d %b %Y %T"
+window_separator_horizontal = on
+window_separator_vertical = on
 
 [palette]
 
 chat_inactive_window = darkgray
 chat_nick = lightcyan
 chat_nick_colors = "226,208,136,206,081,082,099,068,048,112"
+chat_nick_offline = darkgray
+chat_nick_offline_highlight = default
+chat_nick_offline_highlight_bg = darkgray
 chat_nick_other = cyan
+chat_nick_prefix = green
 chat_nick_self = white
+chat_nick_suffix = green
 chat_prefix_action = white
 chat_prefix_buffer = brown
 chat_prefix_buffer_inactive_buffer = darkgray
 nicklist.conditions = "nicklist"
 nicklist.filling_left_right = vertical
 nicklist.filling_top_bottom = columns_vertical
-nicklist.hidden = off
+nicklist.hidden = on
 nicklist.items = "buffer_nicklist"
 nicklist.position = right
 nicklist.priority = 200

weechat/xfer.conf

 #
-# xfer.conf -- WeeChat v0.3.8
+# xfer.conf -- weechat v0.4.1
 #
 
 [look]
 [file]
 auto_accept_chats = off
 auto_accept_files = off
+auto_accept_nicks = ""
 auto_rename = on
 auto_resume = on
 convert_spaces = on
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.