diff --git a/.gitmodules b/.gitmodules index 8b5038f..772e9c1 100644 --- a/.gitmodules +++ b/.gitmodules @@ -94,3 +94,6 @@ [submodule "vim/bundle/vim-expand-region"] path = vim/bundle/vim-expand-region url = https://github.com/terryma/vim-expand-region.git +[submodule "vim/bundle/vim-gitgutter"] + path = vim/bundle/vim-gitgutter + url = https://github.com/airblade/vim-gitgutter.git diff --git a/README.md b/README.md index 52fcda4..eeccd38 100644 --- a/README.md +++ b/README.md @@ -40,7 +40,7 @@ * **Custom Configuration**: Settings with priority over those set by darkcloud-vimconfig can be added to a file named __vimrc.user__, located in __darkcloud-vimconfig/vim/__ or any of the folders in the runtimepath. * **Custom Plugins**: Pathogen compatible plugins can be cloned or extracted to "darkcloud-vimconfig/vim/bundle.user/", or a folder named "bundle" or "bundle.user" in any of the folders in the runtimepath. * **Custom Snippets**: To add or override Emmet snippets, create __~/.vim/snippets.json__ and add your own definitions using json like shown in the [Emmet Documentation](http://docs.emmet.io/customization/snippets/). -* **File Associations**: To use the file manager in vim to run files with external programs, create "~/.vim/filetypes.vimcall" and on each line, write an association between a file extension and the program to launch files of that type that looks like: `call vimfiler#set_execute_file('mp4','xdg-open')`. +* **File Associations**: To use the file manager in vim to run files with external programs, create "~/.vim/filetypes.vim" and on each line, write an association between a file extension and the program to launch files of that type that looks like: `call vimfiler#set_execute_file('mp4','xdg-open')`. * **Update Script**: (requires: bash+git) Update the project and its submodules using the same "update" script in the root of darkcloud-vimconfig as the one used to download the plugins. * **Generate System Tags**: (requires: bash+ctags) Generate a list of ctags for your system libraries in __/usr/include__ and __/usr/local/include__ as well as any folders passed as arguments by running the __gentags__ script. * **Fix TMux Keys**: (requires: tmux): Add the following settings to tmux to ensure the colour scheme gets loaded and all the keyboard combinations work: `set -g default-terminal "screen-256color` and `set-window-option -g xterm-keys on` diff --git a/vim/colors/darkcloud.vim b/vim/colors/darkcloud.vim index 42191c3..e2d50f5 100644 --- a/vim/colors/darkcloud.vim +++ b/vim/colors/darkcloud.vim @@ -237,15 +237,17 @@ let colors_name = "darkcloud" exec "hi ".a:group." ctermfg=NONE ctermbg=".a:lcbg endif else - let l:fge = empty(a:fg) - let l:bge = empty(a:bg) + let l:fgs = substitute(a:fg, '^#', '', '') + let l:bgs = substitute(a:bg, '^#', '', '') + let l:fge = empty(l:fgs) + let l:bge = empty(l:bgs) if !l:fge && !l:bge - exec "hi ".a:group." guifg=#".a:fg." guibg=#".a:bg." ctermfg=".s:rgb(a:fg)." ctermbg=".s:rgb(a:bg) + exec "hi ".a:group." guifg=#".l:fgs." guibg=#".l:bgs." ctermfg=".s:rgb(l:fgs)." ctermbg=".s:rgb(l:bgs) elseif !l:fge && l:bge - exec "hi ".a:group." guifg=#".a:fg." guibg=NONE ctermfg=".s:rgb(a:fg)." ctermbg=NONE" + exec "hi ".a:group." guifg=#".l:fgs." guibg=NONE ctermfg=".s:rgb(l:fgs)." ctermbg=NONE" elseif l:fge && !l:bge - exec "hi ".a:group." guifg=NONE guibg=#".a:bg." ctermfg=NONE ctermbg=".s:rgb(a:bg) + exec "hi ".a:group." guifg=NONE guibg=#".l:bgs." ctermfg=NONE ctermbg=".s:rgb(l:bgs) endif endif @@ -280,72 +282,72 @@ hi SpellLocal guisp=NONE gui=NONE guifg=NONE guibg=NONE ctermfg=NONE ctermbg=NON "example:('Line','000000','f0f0f0','italic,bold',s:termBlack ,'White') "core style -call s:X("Normal","eaeaea","262626","","White",s:termBlack) +call s:X("Normal","#eaeaea","#262626","","White",s:termBlack) hi Normal ctermfg=254 ctermbg=235 -call s:X("Cursor","","262626","standout,underline,bold",s:termBlack,"White") -call s:X("CursorColumn","","303030","","",s:termBlack) +call s:X("Cursor","","#262626","standout,underline,bold",s:termBlack,"White") +call s:X("CursorColumn","","#303030","","",s:termBlack) hi CursorColumn ctermbg=236 -call s:X("CursorLine","","303030","","",s:termBlack) +call s:X("CursorLine","","#303030","","",s:termBlack) hi CursorLine ctermbg=236 -call s:X("CursorLineNr","87d7ff","303030","bold","Blue",s:termBlack) +call s:X("CursorLineNr","#87d7ff","#303030","bold","Blue",s:termBlack) hi CursorLineNr ctermbg=236 -call s:X("LineNr","4e4e4e","","bold","White",s:termBlack) +call s:X("LineNr","#4e4e4e","","bold","White",s:termBlack) hi LineNr ctermfg=239 -call s:X("Visual","","262626","standout","",s:termBlack) -call s:X("MatchParen","ffffff","","bold,underline","","") +call s:X("Visual","","#262626","standout","",s:termBlack) +call s:X("MatchParen","#ffffff","","bold,underline","","") "whitespace -call s:X("TabLine","","000000","","",s:termBlack) -call s:X("TabLineFill","","000000","","",s:termBlack) -call s:X("TabLineSel","000000","d0d0d0","",s:termBlack,"White") -call s:X("ExtraWhitespace","262626","","standout",s:termBlack,"") +call s:X("TabLine","","#000000","","",s:termBlack) +call s:X("TabLineFill","","#000000","","",s:termBlack) +call s:X("TabLineSel","#000000","#d0d0d0","",s:termBlack,"White") +call s:X("ExtraWhitespace","#262626","","standout",s:termBlack,"") "menu call -call s:X("Pmenu","87d7ff","303030","","Grey","Blue") -call s:X("PmenuSel","87d7ff","4e4e4e","bold","White","Black") +call s:X("Pmenu","#87d7ff","#303030","","Grey","Blue") +call s:X("PmenuSel","#87d7ff","#4e4e4e","bold","White","Black") "search -call s:X("Search","87d7ff","262626","standout","Blue",s:termBlack) -call s:X("IncSearch","87d7ff","262626","standout,bold","Blue",s:termBlack) +call s:X("Search","#87d7ff","#262626","standout","Blue",s:termBlack) +call s:X("IncSearch","#87d7ff","#262626","standout,bold","Blue",s:termBlack) "status line -call s:X("StatusLine","000000","d75f5f","bold",s:termBlack,"Red") -call s:X("StatusLineNC","ffffff","626262","","White","Grey") -call s:X("VertSplit","626262","626262","",s:termBlack,s:termBlack) -call s:X("WildMenu","808080","303030","","White",s:termBlack) +call s:X("StatusLine","#000000","#d75f5f","bold",s:termBlack,"Red") +call s:X("StatusLineNC","#ffffff","#626262","","White","Grey") +call s:X("VertSplit","#626262","#626262","",s:termBlack,s:termBlack) +call s:X("WildMenu","#808080","#303030","","White",s:termBlack) "folding -call s:X("Folded","87d7ff","4e4e4e","bold","Blue",s:termBlack) -call s:X("FoldColumn","87d7ff","","bold","Blue","") -call s:X("SignColumn","ffaf00","","bold","Red","") +call s:X("Folded","#87d7ff","#4e4e4e","bold","Blue",s:termBlack) +call s:X("FoldColumn","#87d7ff","","bold","Blue","") +call s:X("SignColumn","#ffaf00","","bold","Red","") hi! link ColorColumn SignColumn "syntax style -call s:X("Title","d75f5f","","underline","Red","") -call s:X("Comment","6c6c6c","","italic","Grey","") -call s:X("Constant","87d7ff","","bold","Blue","") -call s:X("Special","ffd787","","bold","Yellow","") -call s:X("Delimiter","ffffff","","","White","") -call s:X("String","ffffff","","italic","White","") -call s:X("StringDelimiter","d0d0d0","","","White","") -call s:X("Identifier","87d7ff","","bold","Blue","") -call s:X("Type","d75f5f","","bold","Red","") -call s:X("Function","87d7ff","","","Blue","") -call s:X("Label","d75f5f","","","Red","") -call s:X("Statement","ffd787","","","Yellow","") -call s:X("PreProc","ffd787","","","Yellow","") -call s:X("Keyword","ffd787","","bold","Yellow","") -call s:X("Operator","d75f5f","","","Red","") -call s:X("NonText","87d7ff","","","Blue","") -call s:X("SpecialKey","626262","","",s:termBlack,"") -call s:X("Directory","87d7ff","","","Blue","") -call s:X("Question","87d7ff","","","Blue","") -call s:X("Todo","d75f5f","","bold","Red","") +call s:X("Title","#d75f5f","","underline","Red","") +call s:X("Comment","#6c6c6c","","italic","Grey","") +call s:X("Constant","#87d7ff","","bold","Blue","") +call s:X("Special","#ffd787","","bold","Yellow","") +call s:X("Delimiter","#ffffff","","","White","") +call s:X("String","#ffffff","","italic","White","") +call s:X("StringDelimiter","#d0d0d0","","","White","") +call s:X("Identifier","#87d7ff","","bold","Blue","") +call s:X("Type","#d75f5f","","bold","Red","") +call s:X("Function","#87d7ff","","","Blue","") +call s:X("Label","#d75f5f","","","Red","") +call s:X("Statement","#ffd787","","","Yellow","") +call s:X("PreProc","#ffd787","","","Yellow","") +call s:X("Keyword","#ffd787","","bold","Yellow","") +call s:X("Operator","#d75f5f","","","Red","") +call s:X("NonText","#87d7ff","","","Blue","") +call s:X("SpecialKey","#626262","","",s:termBlack,"") +call s:X("Directory","#87d7ff","","","Blue","") +call s:X("Question","#87d7ff","","","Blue","") +call s:X("Todo","#d75f5f","","bold","Red","") "errors -call s:X("Error","d75f5f","000000","standout","Red",s:termBlack) +call s:X("Error","#d75f5f","#000000","standout","Red",s:termBlack) hi! link WarningMsg Error hi! link ErrorMsg Error hi! link MoreMsg Special @@ -353,30 +355,32 @@ hi! link Structure PreProc hi! link Number Type "vimdiff -hi! link diffRemoved Constant -hi! link diffAdded String -call s:X("DiffAdd","000000","ffd787","italic",s:termBlack,"Yellow") -call s:X("DiffDelete","000000","d75f5f","italic",s:termBlack,"Red") -call s:X("DiffChange","000000","87d7ff","italic",s:termBlack,"Blue") -call s:X("DiffText","000000","c6c6c6","italic",s:termBlack,"White") +call s:X("DiffAdd","#000000","#ffd787","italic",s:termBlack,"Yellow") +call s:X("DiffDelete","#000000","#d75f5f","italic",s:termBlack,"Red") +call s:X("DiffChange","#000000","#87d7ff","italic",s:termBlack,"Blue") +call s:X("DiffText","#000000","#c6c6c6","italic",s:termBlack,"White") "git hi! link gitconfigAssignment Label +call s:X("GitGutterAdd","#ffd787","","bold","","Yellow") +call s:X("GitGutterDelete","#d75f5f","","bold","","Red") +call s:X("GitGutterChange","#87d7ff","","bold","","Blue") +call s:X("GitGutterChangeDelete","#87d7ff","","bold","","Blue") "html -call s:X("htmlTitle","ffffff","","underline,bold","White","") -call s:X("htmlH1","d75f5f","","underline,bold","Red","") -call s:X("htmlH2","ffd787","","underline,bold","Yellow","") -call s:X("htmlH3","87d7ff","","underline,bold","Blue","") -call s:X("htmlH4","d75f5f","","underline","Red","") -call s:X("htmlH5","ffd787","","underline","Yellow","") -call s:X("htmlH6","87d7ff","","underline","Blue","") +call s:X("htmlTitle","#ffffff","","underline,bold","White","") +call s:X("htmlH1","#d75f5f","","underline,bold","Red","") +call s:X("htmlH2","#ffd787","","underline,bold","Yellow","") +call s:X("htmlH3","#87d7ff","","underline,bold","Blue","") +call s:X("htmlH4","#d75f5f","","underline","Red","") +call s:X("htmlH5","#ffd787","","underline","Yellow","") +call s:X("htmlH6","#87d7ff","","underline","Blue","") call s:X("htmlSpecialChar","","","italic","","") -call s:X("htmlArg","d75f5f","","bold","Red","") -call s:X("htmlTagName","ffd787","","bold","Yellow","") -call s:X("htmlTag","87d7ff","","bold","Blue","") -call s:X("commentURL","ffd787","","italic,underline","Yellow","") -call s:X("htmlLink","ffd787","","underline","Yellow","") +call s:X("htmlArg","#d75f5f","","bold","Red","") +call s:X("htmlTagName","#ffd787","","bold","Yellow","") +call s:X("htmlTag","#87d7ff","","bold","Blue","") +call s:X("commentURL","#ffd787","","italic,underline","Yellow","") +call s:X("htmlLink","#ffd787","","underline","Yellow","") "php hi! link phpFunctions Function @@ -400,7 +404,7 @@ hi! link javascriptDomElemFuncs javaScriptFunction hi! link coffeeRegExp javaScriptRegexpString "c -call s:X("cBraces","ffd787","","","Yellow","") +call s:X("cBraces","#ffd787","","","Yellow","") hi! link cBlock cBraces hi! link cOperator cBraces hi! link cCharacter String @@ -442,23 +446,22 @@ call s:X("rubyGlobalVariable","","","bold","","") hi! link luaOperator Conditional "vim config/vimscript -call s:X("IndentGuidesOdd","","7c7c7c","","","Grey") -call s:X("IndentGuidesEven","","1c1c1c","","",s:termBlack) +call s:X("IndentGuidesOdd","","#7c7c7c","","","Grey") +call s:X("IndentGuidesEven","","#1c1c1c","","",s:termBlack) if !exists("g:indent_guides_auto_colors") let g:indent_guides_auto_colors=0 endif -call s:X("vimOperParen","87d7ff","","","Blue","") - +call s:X("vimOperParen","#87d7ff","","","Blue","") "notes call s:X("notesRule","","","bold","","") -call s:X("WarningMsg","ffd787","2c2c2c","standout,bold","Yellow",s:termBlack) -call s:X("notesTitle","d75f5f","","underline,bold","Red","") -call s:X("notesName","ffd787","","underline,bold","Yellow","") -call s:X("notesShortHeading","ffd787","262626","standout,underline,bold","Yellow","") -call s:X("Underlined","87d7ff","","underline,bold","Blue","") -call s:X("notesInProgress","87d7ff","262626","standout,underline,bold","Blue","") -call s:X("notesRealURL","d75f5f","","underline,bold","Red","") +call s:X("WarningMsg","#ffd787","#2c2c2c","standout,bold","Yellow",s:termBlack) +call s:X("notesTitle","#d75f5f","","underline,bold","Red","") +call s:X("notesName","#ffd787","","underline,bold","Yellow","") +call s:X("notesShortHeading","#ffd787","#262626","standout,underline,bold","Yellow","") +call s:X("Underlined","#87d7ff","","underline,bold","Blue","") +call s:X("notesInProgress","#87d7ff","#262626","standout,underline,bold","Blue","") +call s:X("notesRealURL","#d75f5f","","underline,bold","Red","") hi! link notesTextURL notesRealURL hi! link notesSubtleURL notesRealURL hi! link notesListBullet FoldColumn @@ -479,15 +482,15 @@ hi! link mailHeaderKey Identifier hi! link quicktaskDatestamp Identifier hi! link quicktaskTimestamp Identifier hi! link quicktaskSection Todo -call s:X("quicktaskTimeNote","ffd787","","bold","Yellow","") -call s:X("quicktaskTask","ffffff","","bold","White","") +call s:X("quicktaskTimeNote","#ffd787","","bold","Yellow","") +call s:X("quicktaskTask","#ffffff","","bold","White","") "taglist hi! link TagListFileName Directory "syntastic -call s:X("SyntasticError","d75f5f","","standout,bold","Red","") -call s:X("SyntasticWarning","ffd787","","standout,bold","Yellow","") +call s:X("SyntasticError","#d75f5f","","standout,bold","Red","") +call s:X("SyntasticWarning","#ffd787","","standout,bold","Yellow","") hi! link SyntasticErrorLine SyntasticError hi! link SyntasticWarningLine SyntasticWarning hi! link SyntasticErrorSign Error diff --git a/vim/config/keyboard.vim b/vim/config/keyboard.vim index bc7a47b..d31233c 100644 --- a/vim/config/keyboard.vim +++ b/vim/config/keyboard.vim @@ -18,6 +18,8 @@ " p | (A) -> comment the current paragraph " | (I) -> add a close bracket following an open one " | (I) -> add a close bracket following an open one +" + | (V) -> increase the selected region +" _ | (V) -> decrease the selected region " " (surround) " S" | (V) -> surround selection with quotes @@ -119,6 +121,9 @@ " | (N) -> move a line up a half page " | (N) -> move a line down a half page " +" >> | (N) -> next difference (vimdiff/gitgutter) +" << | (N) -> previous difference (vimdiff/gitgutter) +" " (selection) " | (N) -> select all text " a | (N) -> select all text @@ -135,14 +140,6 @@ " | (V) -> select a few lines right " | (V) -> select a few lines left " -" (vimdiff) -" > | (N) -> update differences -" < | (N) -> an alt mapping to update differences -" >> | (N) -> next difference -" << | (N) -> previous difference -" >< | (N) -> replace diff in current pane with other pane -" <> | (N) -> replace diff in other pane with current pane -" " (paste functions) " p | (N) -> view the paste buffers and register contents " p | (N) -> paste in the direction entered @@ -162,14 +159,10 @@ " dd | (N) -> delete lines under and after the one below " " Filetype Specific Mappings: -" (gundo) -" | (A) -> same as normal + justify one from the left -" | (A) -> same as the left mouse -" | (A) -> same as the left mouse -" | (A) -> same as j (down) -" l | (A) -> same as j (down) -" | (A) -> same as k (up) -" h | (A) -> same as k (up) +" (vimdiff) +" <> | (N) -> update differences +" > | (N) -> replace diff in other pane with current pane +" < | (N) -> replace diff in current pane with other pane " " (help) " q | (N) -> close the dialog @@ -182,6 +175,7 @@ " | (N) -> map to l, which opens a directory " | (N) -> map to h, which goes up one directory " ' | (N) -> edit the selected file +" n | (N) -> start editing a new file " " (gundo) " | (N) -> same as normal + justify on the left @@ -388,6 +382,10 @@ vmap MoveBlockHalfPageDown nmap MoveLineHalfPageUp nmap MoveLineHalfPageDown + + "move to next/previous difference (vimdiff/gitgutter) + nmap >> ]c + nmap << [c "} "SELECTION:{ @@ -410,16 +408,6 @@ xnoremap ^ "} - "VIMDIFF:{ - "map shortcuts for vimdiff - nnoremap > ':diffu' - nnoremap < ':diffu' - nnoremap >> ]c - nnoremap << [c - nnoremap <> dp - nnoremap >< do - "} - "PASTE:{ "display contents of paste buffers nnoremap p ':reg' @@ -446,6 +434,13 @@ "}}} "FILETYPE SPECIFIC MAPPINGS: {{{ + "vimdiff + autocmd FilterWritePre * if &diff|nnoremap <> ':diffu'|endif + autocmd FilterWritePre * if &diff|nnoremap > dp|endif + autocmd FilterWritePre * if &diff|nnoremap < do|endif + autocmd FilterWritePre * if &diff|cabbrev q qall|endif + autocmd FilterWritePre * if &diff|cabbrev q! qall!|endif + "help autocmd FileType help nnoremap q ':q' autocmd FileType help nnoremap ?? ':q' @@ -460,6 +455,7 @@ autocmd FileType vimfiler nmap l autocmd FileType vimfiler nmap h autocmd FileType vimfiler nmap ' e + autocmd FileType vimfiler nmap n q "gundo autocmd FileType gundo nmap 0l @@ -481,9 +477,9 @@ "}}} "DISABLED MAPPINGS: {{{ - "remove incompatible toggles from gundo and filer + "remove incompatible toggles from specific filetypes autocmd Filetype gundo,vimfiler noremap - autocmd Filetype gundo,vimfiler noremap + autocmd Filetype gundo,vimfiler,help noremap autocmd Filetype gundo,vimfiler noremap autocmd Filetype gundo,vimfiler noremap autocmd Filetype gundo,vimfiler noremap diff --git a/vim/config/plugins.vim b/vim/config/plugins.vim index ad8859a..e44614a 100644 --- a/vim/config/plugins.vim +++ b/vim/config/plugins.vim @@ -7,11 +7,11 @@ " " "==========================" -"PATHOGEN BUNDLED EXTENSIONS PLUGIN: LOAD BUNDLED PLUGINS {{{ +"PATHOGEN BUNDLED EXTENSIONS PLUGIN: {{{ execute pathogen#infect('bundle/{}', 'bundle.user/{}') "}}} -"BREEZE: HTML TAG HIGHLIGHTING AND NAVIGATION {{{ +"BREEZE: {{{ let g:breeze_active_filetypes="*.html,*.htm,*.xhtml,*.xml,*.php,*.aspx" let g:breeze_shade_color = "String" "}}} @@ -28,7 +28,12 @@ endif "}}} -"GUNDO: UNDO SIDEBAR {{{ +"GITGUTTER: {{{ + let g:gitgutter_sign_removed = '-' + let g:gitgutter_sign_modified_removed = '~-' +"}}} + +"GUNDO: {{{ let g:gundo_right=1 let g:gundo_width=35 let g:gundo_preview_height=10 @@ -36,7 +41,7 @@ autocmd FileType gundo setlocal nocursorcolumn "}}} -"LIGHTLINE: STATUS BAR {{{ +"LIGHTLINE: {{{ let g:unite_force_overwrite_statusline = 0 let g:vimfiler_force_overwrite_statusline = 0 @@ -166,12 +171,12 @@ endif "}}} -"MARKDOWN VIM MODE: MARKDOWN IMPROVEMENTS {{{ +"MARKDOWN VIM MODE: {{{ let g:vim_markdown_folding_disabled=0 let g:vim_markdown_initial_foldlevel=2 "}}} -"SYNTASTIC: SYNTAX CHECKING {{{ +"SYNTASTIC: {{{ if !exists("g:autostartchecker") let g:autostartchecker=1 endif @@ -189,7 +194,7 @@ let g:syntastic_loc_list_height=5 "}}} -"VIM FILER: FILE MANAGER {{{ +"VIM FILER: {{{ let g:vimfiler_as_default_explorer=1 let g:vimfiler_safe_mode_by_default=0 let g:vimfiler_enable_auto_cd=1 @@ -202,8 +207,7 @@ let g:vimfiler_marked_file_icon='+' "edit files by double clicking them, and justify the cursor on the left - autocmd FileType vimfiler setlocal nonumber wrap - autocmd FileType vimfiler setlocal nocursorcolumn + autocmd FileType vimfiler setlocal nonumber nocursorcolumn "open automatically if vim was run without any files autocmd VimEnter * if !argc() | VimFiler -quit -project | endif @@ -214,7 +218,7 @@ endif "}}} -"NEOCOMPLCACHE AUTOCOMPLETION PLUGIN: AUTO COMPLETION {{{ +"NEOCOMPLCACHE AUTOCOMPLETION PLUGIN: {{{ let g:neocomplcache_enable_at_startup=1 let g:neocomplcache_enable_smart_case=1 let g:neocomplcache_min_syntax_length=3 diff --git a/vim/config/settings.vim b/vim/config/settings.vim index fdd6a8e..75a498f 100644 --- a/vim/config/settings.vim +++ b/vim/config/settings.vim @@ -70,16 +70,20 @@ autocmd BufNewFile,BufRead *tmux.conf,pacman.conf,yaourtrc setf sh autocmd BufNewFile,BufRead cjdroute.conf,ircd.conf setf javascript - "override options for specific filetypes + "misc filtype specific settings autocmd FileType gitcommit,notes,mail,notmuch,text setlocal spell autocmd FileType notes,mail,notmuch,mkd,text setlocal nonumber autocmd FileType mail,notmuch,text setlocal wrap - autocmd FileType help* wincmd L "help windows always open vertically - "disable folding by default in vimdiff - if &diff - autocmd VimEnter * windo setlocal nofoldenable - endif + "help specific settings + autocmd FileType help* wincmd L "help windows always open vertically + autocmd FileType help* vertical res 80 + autocmd FileType help* setlocal nowrap nocursorline nocursorcolumn "help windows don't wrap + + "set vimdiff settings + setlocal diffopt=foldcolumn:0,filler + autocmd VimEnter,FilterWritePre * if &diff|setlocal nofoldenable|endif + autocmd VimEnter,FilterWritePre * if &diff|wincmd L|endif "enable omnicompletion for any filetype without that has syntax highlighting if has("autocmd") && exists("+omnifunc")