# HG changeset patch # User Steve Losh # Date 1352053884 18000 # Node ID 37efa216507c5b24d7386238cf83ad4dabc1eca7 # Parent bb3bbf24cabbd8cdacb0492f1c873ac786f1b2bb# Parent f4c88441426f8f7336b258939e704ebeda292f39 Merge. diff -r bb3bbf24cabb -r 37efa216507c .hgsubstate --- a/.hgsubstate Sun Nov 04 13:30:53 2012 -0500 +++ b/.hgsubstate Sun Nov 04 13:31:24 2012 -0500 @@ -17,13 +17,13 @@ a1433c485eb254838c1db52e087d5ec4d1e77cfd vim/bundle/nerdtree f45b4529dd282393f2e08306ae161d77de0051a0 vim/bundle/orgmode 2af074850fde676743f655775e3e151925751adf vim/bundle/powerline -49ae47e66f51c92b0f467f9817d5d8745f627132 vim/bundle/python-mode +cd6aec27d127053d18bd2a12713137e41d054208 vim/bundle/python-mode 613eb1c81261adfa5dead315089c432ff6dbbc51 vim/bundle/repeat 61a7567a3cdd68cb65ceb3061071ce66d8110e65 vim/bundle/salt eba3ea3cecc57cb3d10635a208c245d46850ddc3 vim/bundle/slimv 78ab4b3df24fa2753d3dfc1be75ed5a3df1565b8 vim/bundle/smartinput c6197a10ace82e0fe0c08e5cf5c017b7069a978e vim/bundle/sparkup -3a2ab096c039516a8f43e6acd0264d8a81cd0544 vim/bundle/splice +22feac7bc42467a8b17c8b833bd24f36b02759a4 vim/bundle/splice 6eec2c131213850ed65fd6da494dfd1a0d620a4e vim/bundle/strftimedammit 7ee7f774dd1288ea2e7c57b63cb069a07d425ca0 vim/bundle/supertab 1a73f607f8f5477d6942df2eb6e7245c4864f4d3 vim/bundle/surround diff -r bb3bbf24cabb -r 37efa216507c vim/autoload/pathogen.vim --- a/vim/autoload/pathogen.vim Sun Nov 04 13:30:53 2012 -0500 +++ b/vim/autoload/pathogen.vim Sun Nov 04 13:31:24 2012 -0500 @@ -1,16 +1,35 @@ " pathogen.vim - path option manipulation -" Maintainer: Tim Pope -" Version: 1.2 +" Maintainer: Tim Pope +" Version: 2.0 " Install in ~/.vim/autoload (or ~\vimfiles\autoload). " -" API is documented below. +" For management of individually installed plugins in ~/.vim/bundle (or +" ~\vimfiles\bundle), adding `call pathogen#infect()` to your .vimrc +" prior to `filetype plugin indent on` is the only other setup necessary. +" +" The API is documented inline below. For maximum ease of reading, +" :set foldmethod=marker if exists("g:loaded_pathogen") || &cp finish endif let g:loaded_pathogen = 1 +" Point of entry for basic default usage. Give a directory name to invoke +" pathogen#runtime_append_all_bundles() (defaults to "bundle"), or a full path +" to invoke pathogen#runtime_prepend_subdirectories(). Afterwards, +" pathogen#cycle_filetype() is invoked. +function! pathogen#infect(...) abort " {{{1 + let source_path = a:0 ? a:1 : 'bundle' + if source_path =~# '[\\/]' + call pathogen#runtime_prepend_subdirectories(source_path) + else + call pathogen#runtime_append_all_bundles(source_path) + endif + call pathogen#cycle_filetype() +endfunction " }}}1 + " Split a path into a list. function! pathogen#split(path) abort " {{{1 if type(a:path) == type([]) | return a:path | endif @@ -55,8 +74,11 @@ let i = 0 let seen = {} while i < len(a:list) - if has_key(seen,a:list[i]) + if (a:list[i] ==# '' && exists('empty')) || has_key(seen,a:list[i]) call remove(a:list,i) + elseif a:list[i] ==# '' + let i += 1 + let empty = 1 else let seen[a:list[i]] = 1 let i += 1 @@ -65,18 +87,6 @@ return a:list endfunction " }}}1 -" Returns a hash indicating which filetype features are enabled. -function! pathogen#filetype() abort " {{{1 - redir => output - silent filetype - redir END - let result = {} - let result.detection = match(output,'detection:ON') >= 0 - let result.indent = match(output,'indent:ON') >= 0 - let result.plugin = match(output,'plugin:ON') >= 0 - return result -endfunction " }}}1 - " \ on Windows unless shellslash is set, / everywhere else. function! pathogen#separator() abort " {{{1 return !exists("+shellslash") || &shellslash ? '/' : '\' @@ -93,12 +103,32 @@ return filter(pathogen#glob(a:pattern),'isdirectory(v:val)') endfunction "}}}1 -" Prepend all subdirectories of path to the rtp, and append all after +" Turn filetype detection off and back on again if it was already enabled. +function! pathogen#cycle_filetype() " {{{1 + if exists('g:did_load_filetypes') + filetype off + filetype on + endif +endfunction " }}}1 + +" Checks if a bundle is 'disabled'. A bundle is considered 'disabled' if +" its 'basename()' is included in g:pathogen_disabled[]' or ends in a tilde. +function! pathogen#is_disabled(path) " {{{1 + if a:path =~# '\~$' + return 1 + elseif !exists("g:pathogen_disabled") + return 0 + endif + let sep = pathogen#separator() + return index(g:pathogen_disabled, strpart(a:path, strridx(a:path, sep)+1)) != -1 +endfunction "}}}1 + +" Prepend all subdirectories of path to the rtp, and append all 'after' " directories in those subdirectories. function! pathogen#runtime_prepend_subdirectories(path) " {{{1 let sep = pathogen#separator() - let before = pathogen#glob_directories(a:path.sep."*[^~]") - let after = pathogen#glob_directories(a:path.sep."*[^~]".sep."after") + let before = filter(pathogen#glob_directories(a:path.sep."*"), '!pathogen#is_disabled(v:val)') + let after = filter(pathogen#glob_directories(a:path.sep."*".sep."after"), '!pathogen#is_disabled(v:val[0:-7])') let rtp = pathogen#split(&rtp) let path = expand(a:path) call filter(rtp,'v:val[0:strlen(path)-1] !=# path') @@ -113,27 +143,108 @@ function! pathogen#runtime_append_all_bundles(...) " {{{1 let sep = pathogen#separator() let name = a:0 ? a:1 : 'bundle' + if "\n".s:done_bundles =~# "\\M\n".name."\n" + return "" + endif + let s:done_bundles .= name . "\n" let list = [] for dir in pathogen#split(&rtp) if dir =~# '\"),'!isdirectory(v:val)')) && (!filereadable(dir.sep.'doc'.sep.'tags') || filewritable(dir.sep.'doc'.sep.'tags')) helptags `=dir.'/doc'` endif endfor endfunction " }}}1 -" vim:set ft=vim ts=8 sw=2 sts=2: +command! -bar Helptags :call pathogen#helptags() + +" Like findfile(), but hardcoded to use the runtimepath. +function! pathogen#runtime_findfile(file,count) "{{{1 + let rtp = pathogen#join(1,pathogen#split(&rtp)) + let file = findfile(a:file,rtp,a:count) + if file ==# '' + return '' + else + return fnamemodify(file,':p') + endif +endfunction " }}}1 + +" Backport of fnameescape(). +function! pathogen#fnameescape(string) " {{{1 + if exists('*fnameescape') + return fnameescape(a:string) + elseif a:string ==# '-' + return '\-' + else + return substitute(escape(a:string," \t\n*?[{`$\\%#'\"|!<"),'^[+>]','\\&','') + endif +endfunction " }}}1 + +function! s:find(count,cmd,file,lcd) " {{{1 + let rtp = pathogen#join(1,pathogen#split(&runtimepath)) + let file = pathogen#runtime_findfile(a:file,a:count) + if file ==# '' + return "echoerr 'E345: Can''t find file \"".a:file."\" in runtimepath'" + elseif a:lcd + let path = file[0:-strlen(a:file)-2] + execute 'lcd `=path`' + return a:cmd.' '.pathogen#fnameescape(a:file) + else + return a:cmd.' '.pathogen#fnameescape(file) + endif +endfunction " }}}1 + +function! s:Findcomplete(A,L,P) " {{{1 + let sep = pathogen#separator() + let cheats = { + \'a': 'autoload', + \'d': 'doc', + \'f': 'ftplugin', + \'i': 'indent', + \'p': 'plugin', + \'s': 'syntax'} + if a:A =~# '^\w[\\/]' && has_key(cheats,a:A[0]) + let request = cheats[a:A[0]].a:A[1:-1] + else + let request = a:A + endif + let pattern = substitute(request,'/\|\'.sep,'*'.sep,'g').'*' + let found = {} + for path in pathogen#split(&runtimepath) + let path = expand(path, ':p') + let matches = split(glob(path.sep.pattern),"\n") + call map(matches,'isdirectory(v:val) ? v:val.sep : v:val') + call map(matches,'expand(v:val, ":p")[strlen(path)+1:-1]') + for match in matches + let found[match] = 1 + endfor + endfor + return sort(keys(found)) +endfunction " }}}1 + +command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Ve :execute s:find(,'edit',,0) +command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vedit :execute s:find(,'edit',,0) +command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vopen :execute s:find(,'edit',,1) +command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vsplit :execute s:find(,'split',,1) +command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vvsplit :execute s:find(,'vsplit',,1) +command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vtabedit :execute s:find(,'tabedit',,1) +command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vpedit :execute s:find(,'pedit',,1) +command! -bar -bang -range=1 -nargs=1 -complete=customlist,s:Findcomplete Vread :execute s:find(,'read',,1) + +" vim:set et sw=2: diff -r bb3bbf24cabb -r 37efa216507c vim/bundle/potion/syntax/potion.vim --- a/vim/bundle/potion/syntax/potion.vim Sun Nov 04 13:30:53 2012 -0500 +++ b/vim/bundle/potion/syntax/potion.vim Sun Nov 04 13:31:24 2012 -0500 @@ -10,16 +10,15 @@ syntax match potionComment "\v#.*$" -syntax match potionOperatorBar "\v\*" +syntax match potionOperator "\v\*" +syntax match potionOperator "\v/\=" +syntax match potionOperator "\v\+" +syntax match potionOperator "\v-" +syntax match potionOperator "\v/" syntax match potionOperator "\v\*\=" -" syntax match potionOperator "\v/\=" -" syntax match potionOperator "\v\+\=" -" syntax match potionOperator "\v-\=" -" syntax match potionOperator "\v/" -" syntax match potionOperator "\v\+" -" syntax match potionOperator "\v-" -" syntax match potionOperator "\v\?" -" syntax match potionOperatorBaz "\v\=" +syntax match potionOperator "\v\+\=" +syntax match potionOperator "\v-\=" +syntax match potionOperator "\v\?" syntax region potionString start=/\v"/ skip=/\v\\./ end=/\v"/ syntax region potionString start=/\v'/ skip=/\v\\./ end=/\v'/ diff -r bb3bbf24cabb -r 37efa216507c vim/bundle/restdammit/doc/restdammit.txt --- a/vim/bundle/restdammit/doc/restdammit.txt Sun Nov 04 13:30:53 2012 -0500 +++ b/vim/bundle/restdammit/doc/restdammit.txt Sun Nov 04 13:31:24 2012 -0500 @@ -198,7 +198,7 @@ what Definition lists associate a term with a definition. - *how* + how The term is a one-line phrase, and the definition is one or more paragraphs or body elements, indented relative to the term. Blank lines are not allowed between term and definition. @@ -208,7 +208,7 @@ what Definition lists associate a term with a definition. - *how* + how The term is a one-line phrase, and the definition is one or more paragraphs or body elements, indented relative to the term. Blank lines are not allowed between term and definition. @@ -225,7 +225,7 @@ An example:: Whitespace, newlines, blank lines, and all kinds of markup - (like *this* or \this) is preserved by literal blocks. + (like this or \this) is preserved by literal blocks. Lookie here, I've dropped an indentation level (but not far enough) @@ -236,7 +236,7 @@ An example:: Whitespace, newlines, blank lines, and all kinds of markup - (like *this* or \this) is preserved by literal blocks. + (like this or \this) is preserved by literal blocks. Lookie here, I've dropped an indentation level (but not far enough) diff -r bb3bbf24cabb -r 37efa216507c vim/custom-dictionary.utf-8.add --- a/vim/custom-dictionary.utf-8.add Sun Nov 04 13:30:53 2012 -0500 +++ b/vim/custom-dictionary.utf-8.add Sun Nov 04 13:31:24 2012 -0500 @@ -94,3 +94,16 @@ iPhone monospaced programatically +autoload +autoloading +bugfix +fabfile +Plugin +plugin +autoloaded +plugins +Vimscript +copyleft +filetype +filetypes +Bitbucket diff -r bb3bbf24cabb -r 37efa216507c vim/vimrc --- a/vim/vimrc Sun Nov 04 13:30:53 2012 -0500 +++ b/vim/vimrc Sun Nov 04 13:31:24 2012 -0500 @@ -8,7 +8,7 @@ " Preamble ---------------------------------------------------------------- {{{ filetype off -call pathogen#runtime_append_all_bundles() +call pathogen#infect() filetype plugin indent on set nocompatible @@ -272,7 +272,7 @@ silent '<,'>w !pbcopy endfunction noremap p :silent! set paste"*p:set nopaste -noremap P :silent! set paste"*P:set nopaste +noremap p :r!pbpaste vnoremap y :call g:FuckingCopyTheTextPlease() " I constantly hit "u" in visual mode when I mean to "y". Use "gu" for those rare occasions. @@ -309,7 +309,30 @@ nnoremap vaa ggvGg_ nnoremap Vaa ggVG -" Change case +" "Uppercase word" mapping. +" +" This mapping allows you to press in insert mode to convert the current +" word to uppercase. It's handy when you're writing names of constants and +" don't want to use Capslock. +" +" To use it you type the name of the constant in lowercase. While your +" cursor is at the end of the word, press to uppercase it, and then +" continue happily on your way: +" +" cursor +" v +" max_connections_allowed| +" +" MAX_CONNECTIONS_ALLOWED| +" ^ +" cursor +" +" It works by exiting out of insert mode, recording the current cursor location +" in the z mark, using gUiw to uppercase inside the current word, moving back to +" the z mark, and entering insert mode again. +" +" Note that this will overwrite the contents of the z mark. I never use it, but +" if you do you'll probably want to use another mark. inoremap mzgUiw`za " Panic Button @@ -925,6 +948,8 @@ au FileType python inoremap _(u'') au FileType python inoremap """""" + + au FileType python iabbrev afo assert False, "Okay" augroup END " }}} @@ -1199,6 +1224,7 @@ let g:pymode_options_indent = 0 let g:pymode_options_fold = 0 let g:pymode_options_other = 0 +let g:pymode_options = 0 let g:pymode_rope = 1 let g:pymode_rope_global_prefix = "R"