scriptencoding utf-8 " Vim settings " " Maintainer: DeaR " Last Change: 08-Jun-2015. " License: MIT License {{{ " Copyright (c) 2013 DeaR " " Permission is hereby granted, free of charge, to any person obtaining a " copy of this software and associated documentation files (the " "Software"), to deal in the Software without restriction, including " without limitation the rights to use, copy, modify, merge, publish, " distribute, sublicense, and/or sell copies of the Software, and to permit " persons to whom the Software is furnished to do so, subject to the " following conditions: " " The above copyright notice and this permission notice shall be included " in all copies or substantial portions of the Software. " " THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS " OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF " MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. " IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY " CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT " OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR " THE USE OR OTHER DEALINGS IN THE SOFTWARE. " }}} "============================================================================== " Pre Init: {{{ " Encoding if has('multi_byte') set encoding=utf-8 if &term == 'win32' && !has('gui_running') set termencoding=cp932 endif scriptencoding utf-8 endif if has('win32') " Language if has('multi_lang') language japanese language time C endif " Shell let s:default_shell = \ [&shell, &shellslash, &shellcmdflag, &shellquote, &shellxquote] " set shell=sh " set shellslash " Unix like runtime set runtimepath^=~/.vim set runtimepath+=~/.vim/after endif " Local runtime set runtimepath^=~/.local/.vim set runtimepath+=~/.local/.vim/after " Singleton if isdirectory($HOME . '/.local/bundle/singleton') set runtimepath+=~/.local/bundle/singleton let g:singleton#opener = 'drop' call singleton#enable() endif "------------------------------------------------------------------------------ " Variable: {{{ " let g:mapleader = ';' let g:maplocalleader = ',' " Gips let s:gips_enable = 0 " Command line window let s:cmdwin_enable = 0 " Ignore pattern let s:ignore_ext = [ \ 'git', 'hg', 'bzr', 'svn', 'drive.r', \ 'o', 'obj', 'a', 'lib', 'so', 'dll', 'dylib', 'exe', 'bin', \ 'swp', 'swo', 'bak', 'lc', 'elc', 'fas', 'pyc', 'luac', 'zwc'] let s:ignore_ft = [ \ 'gitcommit', 'gitrebase', 'hgcommit'] " AlterCommand let s:altercmd_define = {} " NeoComplete and NeoComplCache let s:neocompl_dictionary_filetype_lists = { \ 'default' : ''} let s:neocompl_vim_completefuncs = { \ 'SQLSetType' : 'SQL_GetList'} let s:neocompl_omni_patterns = { \ 'CucumberComplete' : '\h\w*', \ 'adacomplete#Complete' : '\h\w*', \ 'clojurecomplete#Complete' : '\h\w*', \ 'csscomplete#CompleteCSS' : '\h\w*\|[@!]', \ 'sqlcomplete#Complete' : '\h\w*'} let s:neocompl_force_omni_patterns = { \ 'ccomplete#Complete' : '\%(\.\|->\|::\)\h\w*', \ 'htmlcomplete#CompleteTags' : '<[^>]*', \ 'javascriptcomplete#CompleteJS' : '\.\h\w*', \ 'phpcomplete#CompletePHP' : '\%(->\|::\)\h\w*', \ 'xmlcomplete#CompleteTags' : '<[^>]*'} if has('python3') call extend(s:neocompl_force_omni_patterns, { \ 'python3complete#Complete' : '\.\h\w*'}) endif if has('python') call extend(s:neocompl_force_omni_patterns, { \ 'pythoncomplete#Complete' : '\.\h\w*'}) endif if has('ruby') call extend(s:neocompl_force_omni_patterns, { \ 'rubycomplete#Complete' : '\%(\.\|::\)\h\w*'}) endif " VCvarsall.bat if has('win32') && !exists('$VCVARSALL') let s:save_ssl = &shellslash set noshellslash if exists('$VS120COMNTOOLS') let $VCVARSALL = shellescape($VS120COMNTOOLS . '..\..\VC\vcvarsall.bat') elseif exists('$VS110COMNTOOLS') let $VCVARSALL = shellescape($VS110COMNTOOLS . '..\..\VC\vcvarsall.bat') elseif exists('$VS100COMNTOOLS') let $VCVARSALL = shellescape($VS100COMNTOOLS . '..\..\VC\vcvarsall.bat') elseif exists('$VS90COMNTOOLS') let $VCVARSALL = shellescape($VS90COMNTOOLS . '..\..\VC\vcvarsall.bat') elseif exists('$VS80COMNTOOLS') let $VCVARSALL = shellescape($VS80COMNTOOLS . '..\..\VC\vcvarsall.bat') endif let &shellslash = s:save_ssl unlet s:save_ssl let s:save_isi = &isident set isident+=(,) let s:programfiles = expand(exists('$PROGRAMFILES(X86)') ? \ '$PROGRAMFILES(X86)' : '$PROGRAMFILES') if isdirectory(s:programfiles . '\Microsoft SDKs\Windows\v7.1A\Include') let $SDK_INCLUDE_DIR = s:programfiles . '\Microsoft SDKs\Windows\v7.1A\Include' elseif isdirectory(s:programfiles . '\Microsoft SDKs\Windows\v7.1\Include') let $SDK_INCLUDE_DIR = s:programfiles . '\Microsoft SDKs\Windows\v7.1\Include' endif let &isident = s:save_isi unlet s:save_isi endif "}}} "------------------------------------------------------------------------------ " Common: {{{ " Vimrc autocmd group augroup MyVimrc autocmd! augroup END " Script ID function! s:SID_PREFIX() let s:_SID_PREFIX = get(s:, '_SID_PREFIX', \ matchstr(expand(''), '\d\+_\zeSID_PREFIX$')) return s:_SID_PREFIX endfunction " Check Vim version function! s:has_patch(major, minor, patch) let l:version = (a:major * 100 + a:minor) return has('patch-' . a:major . '.' . a:minor . '.' . a:patch) || \ (v:version > l:version) || \ (v:version == l:version && 'patch' . a:patch) endfunction " Check vimproc function! s:has_vimproc() if !exists('s:exists_vimproc') try call vimproc#version() let s:exists_vimproc = 1 catch let s:exists_vimproc = 0 endtry endif return s:exists_vimproc endfunction " Cached executable let s:_executable = {} function! s:executable(expr) let s:_executable[a:expr] = get(s:_executable, a:expr, executable(a:expr)) return s:_executable[a:expr] endfunction " Check Android OS let s:is_android = has('unix') && \ ($HOSTNAME ==? 'android' || $VIM =~? 'net\.momodalo\.app\.vimtouch') " Check japanese let s:is_lang_ja = has('multi_lang') && v:lang =~? '^ja' " Check NeoBundle let s:has_neobundle = isdirectory($HOME . '/.local/bundle/neobundle') "}}} "------------------------------------------------------------------------------ " NeoBundle: {{{ if s:has_neobundle set runtimepath+=~/.local/bundle/neobundle let g:neobundle#enable_name_conversion = 1 let g:neobundle#enable_tail_path = 1 let g:neobundle#install_max_processes = \ exists('$NUMBER_OF_PROCESSORS') ? str2nr($NUMBER_OF_PROCESSORS) : 1 if s:is_android let g:neobundle#types#git#default_protocol = 'ssh' let g:neobundle#types#hg#default_protocol = 'ssh' endif call neobundle#begin($HOME . '/.local/bundle') NeoBundleLazy 'h1mesuke/vim-alignta', { \ 'autoload' : { \ 'commands' : ['Align', 'Alignta'], \ 'mappings' : [['nvo', '(operator-alignta)']], \ 'unite_sources' : 'alignta'}} NeoBundleLazy 'tyru/vim-altercmd', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'AlterCommand', \ 'complete' : 'command'}, \ {'name' : 'NAlterCommand', \ 'complete' : 'command'}, \ {'name' : 'VAlterCommand', \ 'complete' : 'command'}, \ {'name' : 'XAlterCommand', \ 'complete' : 'command'}, \ {'name' : 'SAlterCommand', \ 'complete' : 'command'}, \ {'name' : 'OAlterCommand', \ 'complete' : 'command'}, \ {'name' : 'IAlterCommand', \ 'complete' : 'command'}, \ {'name' : 'CAlterCommand', \ 'complete' : 'command'}, \ {'name' : 'LAlterCommand', \ 'complete' : 'command'}]}} autocmd MyVimrc User CmdlineEnter \ NeoBundleSource altercmd NeoBundleLazy 'kana/vim-altr', { \ 'autoload' : { \ 'mappings' : [['nvoi', '(altr-']]}} autocmd MyVimrc User CmdlineEnter \ NeoBundleSource altr NeoBundleLazy 'osyo-manga/vim-anzu', { \ 'autoload' : { \ 'commands' : [ \ 'AnzuClearSearchStatus', 'AnzuClearSearchCache', \ 'AnzuUpdateSearchStatus', 'AnzuUpdateSearchStatusOutput', \ 'AnzuSignMatchLine', 'AnzuClearSignMatchLine'], \ 'mappings' : [ \ ['n', \ '(anzu-', \ '(anzu-jump-n)(anzu-', \ '(anzu-jump-N)(anzu-']]}} NeoBundleLazy 'gist:iori-yja/1615430', { \ 'name' : 'arm', \ 'script_type' : 'syntax', \ 'autoload' : { \ 'filetypes' : 'arm'}} NeoBundleLazy 'autodate.vim', { \ 'autoload' : { \ 'commands' : ['Autodate', 'AutodateON', 'AutodateOFF']}} autocmd MyVimrc BufNewFile,BufRead * \ NeoBundleSource autodate NeoBundleLazy 'vim-jp/autofmt' NeoBundleLazy 'h1mesuke/vim-benchmark' NeoBundleLazy 'mattn/benchvimrc-vim', { \ 'autoload' : { \ 'commands' : 'BenchVimrc'}} if s:executable('clang-format') NeoBundleLazy 'rhysd/vim-clang-format', { \ 'autoload' : { \ 'commands' : ['ClangFormat', 'ClangFormatEchoFormattedCode'], \ 'mappings' : [['nvo', '(operator-clang-format)']]}} endif NeoBundleLazy 'rhysd/clever-f.vim', { \ 'autoload' : { \ 'mappings' : [['nvo', '(clever-f-']], \ 'insert' : 1}} NeoBundleLazy 'deris/columnjump', { \ 'autoload' : { \ 'commands' : ['ColumnJumpForward', 'ColumnJumpBackward'], \ 'mappings' : [['nvo', '(columnjump-']], \ 'insert' : 1}} NeoBundleLazy 'Shougo/context_filetype.vim' NeoBundleLazy 'vim-jp/cpp-vim', { \ 'autoload' : { \ 'filetypes' : [ \ 'c', 'ch', 'cpp', 'cuda', 'cynlib', 'cynpp', 'dtrace', 'esqlc', \ 'kwt', 'objc', 'objcpp', 'rpcgen', 'splint', 'xs']}} NeoBundleLazy 'hail2u/vim-css3-syntax', { \ 'autoload' : { \ 'filetypes' : [ \ 'aspperl', 'aspvbs', 'cf', 'css', 'dtml', 'groovy', 'gsp', 'haml', \ 'html', 'htmlcheetah', 'htmldjango', 'htmlm4', 'htmlos', 'jsp', \ 'markdown', 'mason', 'msql', 'php', 'plp', 'phtml', 'sass', 'scss', \ 'smarty', 'spyce', 'tt2html', 'webmacro', 'wml', 'xhtml']}} NeoBundleLazy 'pekepeke/vim-csvutil' NeoBundleLazy 'JesseKPhillips/d.vim', { \ 'autoload' : { \ 'filetypes' : 'd'}} NeoBundleLazy 'tpope/vim-dispatch', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'Dispatch', \ 'complete' : 'custom,dispatch#command_complete'}, \ {'name' : 'FocusDispatch', \ 'complete' : 'custom,dispatch#command_complete'}, \ {'name' : 'Start', \ 'complete' : 'custom,dispatch#command_complete'}, \ {'name' : 'Make', \ 'complete' : 'file'}, \ 'Copen']}} call extend(s:neocompl_vim_completefuncs, { \ 'Dispatch' : 'dispatch#command_complete', \ 'FocusDispatch' : 'dispatch#command_complete', \ 'Start' : 'dispatch#command_complete'}) NeoBundleLazy 'Shougo/echodoc.vim', { \ 'autoload' : { \ 'commands' : ['EchoDocEnable', 'EchoDocDisable'], \ 'insert' : 1}} NeoBundleLazy 'mattn/emmet-vim', { \ 'autoload' : { \ 'commands' : 'Emmet', \ 'mappings' : [['nvi', '']]}} NeoBundleLazy 'tyru/eskk.vim', { \ 'autoload' : { \ 'filetypes' : 'skkdict', \ 'commands' : [ \ 'EskkMap', 'EskkForgetRegisteredWords', \ 'EskkReload', 'EskkUpdateDictionary', \ {'name' : 'EskkFixDictionary', \ 'complete' : 'file'}], \ 'mappings' : [['i', '(eskk:']]}} autocmd MyVimrc User CmdlineEnter \ NeoBundleSource eskk if s:executable('go') NeoBundleFetch 'mattn/files', { \ 'build' : { \ 'others' : 'go get -u github.com/mattn/files'}} endif NeoBundleLazy 'kana/vim-filetype-haskell', { \ 'autoload' : { \ 'filetypes' : 'haskell'}} NeoBundleLazy 'thinca/vim-ft-clojure', { \ 'autoload' : { \ 'filetypes' : 'clojure'}} NeoBundleLazy 'thinca/vim-ft-diff_fold', { \ 'autoload' : { \ 'filetypes' : 'diff'}} NeoBundleLazy 'google/vim-ft-go', { \ 'autoload' : { \ 'filetypes' : 'go'}} NeoBundleLazy 'thinca/vim-ft-help_fold', { \ 'autoload' : { \ 'filetypes' : 'help'}} NeoBundleLazy 'thinca/vim-ft-markdown_fold', { \ 'autoload' : { \ 'filetypes' : 'markdown'}} NeoBundleLazy 'thinca/vim-ft-vim_fold', { \ 'autoload' : { \ 'filetypes' : 'vim'}} if has('lua') || s:executable('lua') NeoBundleLazy 'xolox/vim-lua-ftplugin', { \ 'name' : 'ft_lua', \ 'autoload' : { \ 'filetypes' : 'lua', \ 'commands' : ['LuaCheckSyntax', 'LuaCheckGlobals']}, \ 'depends' : 'xolox/vim-misc'} endif NeoBundleLazy 'tpope/vim-fugitive', { \ 'autoload' : { \ 'commands' : [ \ 'Git', 'Gcd', 'Glcd', 'Gstatus', 'Gcommit', 'Ggrep', 'Glgrep', \ 'Glog', 'Gllog', 'Ge', 'Gedit', 'Gpedit', 'Gsplit', 'Gvsplit', \ 'Gtabedit', 'Gread', 'Gwrite', 'Gw', 'Gwq', \ 'Gdiff', 'Gvdiff', 'Gsdiff', 'Gbrowse']}} NeoBundleLazy 'kana/vim-gf-user', { \ 'autoload' : { \ 'commands' : 'GfUserDefaultKeyMappings', \ 'mappings' : [['nv', '(gf-user-']]}, \ 'depends' : [ \ 'sgur/vim-gf-autoload', \ 'kana/vim-gf-diff']} NeoBundleLazy 'eagletmt/ghcmod-vim', { \ 'autoload' : { \ 'filetypes' : 'haskell'}} NeoBundleLazy 'yomi322/vim-gitcomplete' NeoBundleLazy 'gregsexton/gitv', { \ 'autoload' : { \ 'commands' : 'Gitv'}, \ 'depends' : 'tpope/vim-fugitive'} NeoBundleLazy 'vim-jp/vim-go-extra', { \ 'autoload' : { \ 'filetypes' : 'go'}} if s:executable('go') NeoBundleFetch 'nsf/gocode', { \ 'build' : { \ 'others' : 'go get -u github.com/nsf/gocode'}} endif if s:executable('go') NeoBundleFetch 'golang/lint', { \ 'name' : 'golint', \ 'build' : { \ 'others' : 'go get -u github.com/golang/lint/golint'}} endif NeoBundleLazy 'kana/vim-grex', { \ 'autoload' : { \ 'commands' : ['Gred', 'Grey'], \ 'mappings' : [['nvo', '(operator-grex-']]}} " NeoBundleLazy 'rbtnn/hexript.vim', { " \ 'autoload' : { " \ 'commands' : [ " \ {'name' : 'HexriptToBinaryFile', " \ 'complete' : 'file'}]}} NeoBundleLazy 'cohama/vim-hier', { \ 'autoload' : { \ 'filetypes' : 'qf', \ 'commands' : ['HierUpdate', 'HierClear', 'HierStart', 'HierStop']}} NeoBundleLazy 'othree/html5.vim', { \ 'autoload' : { \ 'filetypes' : [ \ 'aspperl', 'aspvbs', 'cf', 'dtml', 'eruby', 'groovy', 'gsp', \ 'haml', 'html', 'htmlcheetah', 'htmldjango', 'htmlm4', 'htmlos', \ 'javascript', 'jsp', 'liquid', 'markdown', 'mason', 'msql', \ 'php', 'phtml', 'plp', 'smarty', 'spyce', 'tt2html', 'tt2js', \ 'webmacro', 'wml', 'xhtml']}} NeoBundleLazy 'HybridText', { \ 'autoload' : { \ 'filetypes' : ['hybrid', 'text']}} NeoBundleLazy 'kamichidu/vim-javaclasspath' NeoBundleLazy 'kamichidu/vim-javalang' NeoBundleLazy 'basyura/J6uil.vim', { \ 'autoload' : { \ 'commands' : [ \ 'J6uilReconnect', 'J6uilDisconnect', \ {'name' : 'J6uil', \ 'complete' : 'custom,J6uil#complete#room'}], \ 'mappings' : [['n', '(J6uil_']], \ 'function_prefix' : 'J6uil', \ 'unite_sources' : ['J6uil/rooms', 'J6uil/members']}} call extend(s:neocompl_vim_completefuncs, { \ 'J6uil' : 'J6uil#complete#room'}) NeoBundleLazy 'jelera/vim-javascript-syntax', { \ 'autoload' : { \ 'filetypes' : ['javascript', 'tt2js']}} if has('python') || has('python3') NeoBundleLazy 'davidhalter/jedi-vim', { \ 'autoload' : { \ 'filetypes' : ['pyrex', 'python'], \ 'commands' : [ \ {'name' : 'Pyimport', \ 'complete' : 'custom,jedi#py_import_completions'}]}} call extend(s:neocompl_vim_completefuncs, { \ 'Pyimport' : 'jedi#py_import_completions'}) endif NeoBundleLazy 'elzr/vim-json', { \ 'autoload' : { \ 'filetypes' : 'json'}} if s:executable('go') NeoBundleFetch 'mattn/jvgrep', { \ 'build' : { \ 'others' : 'go get -u github.com/mattn/jvgrep'}} endif NeoBundleLazy 'kwbdi.vim', { \ 'autoload' : { \ 'mappings' : [['nvo', 'Kwbd']], \ 'commands' : 'Kwbd'}} NeoBundleLazy 'dbakker/vim-lint' NeoBundle 'thinca/vim-localrc' NeoBundleLazy 'https://raw.githubusercontent.com/januswel/dotfiles/master/.vim/syntax/mayu.vim', { \ 'name' : 'mayu', \ 'script_type' : 'syntax', \ 'autoload' : { \ 'filetypes' : 'mayu'}} if has('unix') && !has('gui_running') NeoBundle 'gist:DeaR/5560785', { \ 'name' : 'map-alt-keys', \ 'script_type' : 'plugin'} endif NeoBundleLazy 'gist:DeaR/5558981', { \ 'name' : 'maplist', \ 'script_type' : 'plugin', \ 'autoload' : { \ 'commands' : [ \ 'MapList', 'NMapList', 'OMapList', \ 'VMapList', 'XMapList', 'SMapList', \ 'IMapList', 'CMapList', 'LMapList']}} if s:executable('clang') NeoBundleLazy 'osyo-manga/vim-marching', { \ 'autoload' : { \ 'filetypes' : ['c', 'cpp'], \ 'commands' : [ \ 'MarchingBufferClearCache', 'MarchingDebugLog'], \ 'mappings' : [['i', '(marching_']]}} endif if !has('win32') && s:executable('go') NeoBundleFetch 'laurent22/massren', { \ 'build' : { \ 'other' : 'go get -u github.com/laurent22/massren'}} endif if s:executable('go') NeoBundleLazy 'peco/migemogrep', { \ 'rtp' : 'misc/vim', \ 'autoload' : { \ 'commands' : ['MigemoGrep']}, \ 'build' : { \ 'others' : 'go get -u github.com/peco/migemogrep'}} endif NeoBundleLazy 'xolox/vim-misc', { \ 'autoload' : { \ 'function_prefix' : 'xolox'}} NeoBundle 'tomasr/molokai' NeoBundleLazy 'kana/vim-narrow', { \ 'autoload' : { \ 'commands' : ['Narrow', 'Widen'], \ 'mappings' : [['nvo', '(operator-narrow)']]}} NeoBundleFetch 'Shougo/neobundle.vim' call extend(s:neocompl_vim_completefuncs, { \ 'NeoBundleSource' : 'neobundle#complete_lazy_bundles', \ 'NeoBundleDisable' : 'neobundle#complete_bundles', \ 'NeoBundleInstall' : 'neobundle#complete_bundles', \ 'NeoBundleUpdate' : 'neobundle#complete_bundles', \ 'NeoBundleClean' : 'neobundle#complete_deleted_bundles', \ 'NeoBundleReinstall' : 'neobundle#complete_bundles'}) if has('lua') && s:has_patch(7, 3, 885) NeoBundleLazy 'Shougo/neocomplete.vim', { \ 'autoload' : { \ 'commands' : [ \ 'NeoCompleteEnable', 'NeoCompleteDisable', \ 'NeoCompleteLock', 'NeoCompleteUnlock', \ 'NeoCompleteToggle', 'NeoCompleteClean', \ 'NeoCompleteTagMakeCache', \ {'name' : 'NeoCompleteSetFileType', \ 'complete' : 'filetype'}, \ {'name' : 'NeoCompleteBufferMakeCache', \ 'complete' : 'file'}, \ {'name' : 'NeoCompleteDictionaryMakeCache', \ 'complete' : 'customlist,neocomplete#filetype_complete'}, \ {'name' : 'NeoCompleteIncludeMakeCache', \ 'complete' : 'buffer'}, \ {'name' : 'NeoCompleteSyntaxMakeCache', \ 'complete' : 'customlist,neocomplete#filetype_complete'}], \ 'unite_sources' : ['file_include', 'neocomplete'], \ 'insert' : 1}, \ 'depends' : [ \ 'Shougo/echodoc', \ 'hrsh7th/vim-neco-calc', \ 'eagletmt/neco-ghc', \ 'ujihisa/neco-look', \ 'Shougo/neosnippet.vim']} call extend(s:neocompl_vim_completefuncs, { \ 'NeoCompleteDictionaryMakeCache' : 'neocomplete#filetype_complete', \ 'NeoCompleteSyntaxMakeCache' : 'neocomplete#filetype_complete'}) else NeoBundleLazy 'Shougo/neocomplcache.vim', { \ 'autoload' : { \ 'commands' : [ \ 'NeoComplCacheEnable', 'NeoComplCacheDisable', \ 'NeoComplCacheLock', 'NeoComplCacheLockSource', \ 'NeoComplCacheUnlock', 'NeoComplCacheUnlockSource', \ 'NeoComplCacheToggle', 'NeoComplCacheClean', \ 'NeoComplCacheCachingTags', \ {'name' : 'NeoComplCacheSetFileType', \ 'complete' : 'filetype'}, \ {'name' : 'NeoComplCacheCachingBuffer', \ 'complete' : 'file'}, \ {'name' : 'NeoComplCachePrintSource', \ 'complete' : 'buffer'}, \ {'name' : 'NeoComplCacheOutputKeyword', \ 'complete' : 'buffer'}, \ {'name' : 'NeoComplCacheDisableCaching', \ 'complete' : 'buffer'}, \ {'name' : 'NeoComplCacheEnableCaching', \ 'complete' : 'buffer'}, \ {'name' : 'NeoComplCacheCachingDictionary', \ 'complete' : 'customlist,neocomplcache#filetype_complete'}, \ {'name' : 'NeoComplCacheCachingInclude', \ 'complete' : 'buffer'}, \ {'name' : 'NeoComplCacheCachingSyntax', \ 'complete' : 'customlist,neocomplcache#filetype_complete'}], \ 'unite_sources' : ['file_include', 'neocomplcache'], \ 'insert' : 1}, \ 'depends' : [ \ 'Shougo/echodoc', \ 'hrsh7th/vim-neco-calc', \ 'eagletmt/neco-ghc', \ 'ujihisa/neco-look', \ 'Shougo/neosnippet.vim']} call extend(s:neocompl_vim_completefuncs, { \ 'NeoComplCacheCachingDictionary' : 'neocomplcache#filetype_complete', \ 'NeoComplCacheCachingSyntax' : 'neocomplcache#filetype_complete'}) endif NeoBundle 'Shougo/neomru.vim' NeoBundleLazy 'Shougo/neosnippet.vim', { \ 'autoload' : { \ 'filetypes' : 'snippet', \ 'commands' : [ \ {'name' : 'NeoSnippetEdit', \ 'complete' : 'customlist,neosnippet#edit_complete'}, \ {'name' : 'NeoSnippetMakeCache', \ 'complete' : 'customlist,neosnippet#filetype_complete'}, \ {'name' : 'NeoSnippetSource', \ 'complete' : 'file'}, \ 'NeoSnippetClearMarkers'], \ 'mappings' : [['vi', '(neosnippet_']], \ 'unite_sources' : [ \ 'snippet', 'snippet/target', \ 'neosnippet/user', 'neosnippet/runtime']}} call extend(s:neocompl_vim_completefuncs, { \ 'NeoSnippetEdit' : 'neosnippet#edit_complete', \ 'NeoSnippetMakeCache' : 'neosnippet#filetype_complete'}) NeoBundleLazy 'evanmiller/nginx-vim-syntax', { \ 'autoload' : { \ 'filetypes' : 'nginx'}} NeoBundleLazy 'Shougo/vim-nyaos', { \ 'autoload' : { \ 'filetypes' : 'nyaos'}} if has('python') && (exists('$VCVARSALL') || s:executable('xbuild')) NeoBundleLazy 'nosami/Omnisharp', { \ 'autoload' : { \ 'filetypes' : 'cs'}, \ 'build' : { \ 'windows' : \ $VCVARSALL . ' ' . $PROCESSOR_ARCHITECTURE . ' & ' . \ 'msbuild server/OmniSharp.sln /p:Platform="Any CPU"', \ 'others' : \ 'xbuild server/OmniSharp.sln /p:Platform="Any CPU"'}} endif NeoBundleLazy 'tyru/open-browser.vim', { \ 'autoload' : { \ 'commands' : [ \ 'OpenBrowser', \ {'name' : 'OpenBrowserSearch', \ 'complete' : 'customlist,openbrowser#_cmd_complete'}, \ {'name' : 'OpenBrowserSmartSearch', \ 'complete' : 'customlist,openbrowser#_cmd_complete'}], \ 'mappings' : [['nv', '(openbrowser-']]}} call extend(s:neocompl_vim_completefuncs, { \ 'OpenBrowserSearch' : 'openbrowser#_cmd_complete', \ 'OpenBrowserSmartSearch' : 'openbrowser#_cmd_complete'}) NeoBundleLazy 'thinca/vim-openbuf' NeoBundleLazy 'tyru/operator-camelize.vim', { \ 'autoload' : { \ 'mappings' : [ \ ['nvo', \ '(operator-camelize)', '(operator-decamelize)', \ '(operator-camelize-toggle)']]}} NeoBundleLazy 'tyru/operator-html-escape.vim', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-html-']]}} NeoBundleLazy 'rhysd/vim-operator-filled-with-blank', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-filled-with-blank)']]}} NeoBundleLazy 'sgur/vim-operator-openbrowser', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-openbrowser)']]}, \ 'depends' : 'tyru/open-browser.vim'} NeoBundleLazy 'kana/vim-operator-replace', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-replace)']]}} NeoBundleLazy 'tyru/operator-reverse.vim', { \ 'autoload' : { \ 'commands' : 'OperatorReverseLines', \ 'mappings' : [['nvo', '(operator-reverse-']]}} NeoBundleLazy 'osyo-manga/vim-operator-search', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-search)']]}} NeoBundleLazy 'thinca/vim-operator-sequence', { \ 'autoload' : { \ 'functions' : 'operator#sequence#map'}, \ 'depends' : 'tyru/operator-camelize.vim'} NeoBundleLazy 'pekepeke/vim-operator-shuffle', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-shuffle)']]}} NeoBundleLazy 'emonkak/vim-operator-sort', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-sort)']]}} NeoBundleLazy 'tyru/operator-star.vim', { \ 'autoload' : { \ 'mappings' : [ \ ['nvo', \ '(operator-*)', '(operator-g*)', \ '(operator-#)', '(operator-g#)']]}, \ 'depends' : 'thinca/vim-visualstar'} NeoBundleLazy 'yomi322/vim-operator-suddendeath', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-suddendeath)']]}} NeoBundleLazy 'rhysd/vim-operator-surround', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-surround-']]}, \ 'depends' : 'osyo-manga/vim-textobj-multiblock'} NeoBundleLazy 'pekepeke/vim-operator-tabular', { \ 'autoload' : { \ 'mappings' : [ \ ['nvo', \ '(operator-tabular-', \ '(operator-tabularize)', '(operator-untabularize)']]}} NeoBundleLazy 'rhysd/vim-operator-trailingspace-killer', { \ 'autoload' : { \ 'mappings' : [['nvo', '(operator-trailingspace-killer)']]}} NeoBundleLazy 'kana/vim-operator-user', { \ 'autoload' : { \ 'mappings' : [ \ ['nvo', '(operator-grep)', '(operator-justify)']], \ 'function_prefix' : 'operator'}} NeoBundleLazy 'deris/parajump', { \ 'autoload' : { \ 'mappings' : [['nvo', '(parajump-']], \ 'insert' : 1}} NeoBundleLazy 'thinca/vim-partedit', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'Partedit', \ 'complete' : 'customlist,partedit#complete'}]}} call extend(s:neocompl_vim_completefuncs, { \ 'Partedit' : 'partedit#complete'}) NeoBundleLazy 'vim-perl/vim-perl', { \ 'autoload' : { \ 'filetypes' : [ \ 'perl', 'perl6', 'pod', 'tt2', 'tt2html', 'tt2js', 'xs']}} NeoBundleLazy 'y-uuki/perl-local-lib-path.vim', { \ 'autoload' : { \ 'commands' : 'PerlLocalLibPath'}} if s:executable('perl') NeoBundleLazy 'c9s/perlomni.vim', { \ 'autoload' : { \ 'filetypes' : 'perl'}} endif NeoBundleLazy 'shawncplus/phpcomplete.vim', { \ 'autoload' : { \ 'filetypes' : 'php'}} NeoBundleLazy '2072/PHP-Indenting-for-VIm', { \ 'name' : 'PHPIndent', \ 'autoload' : { \ 'filetypes' : 'php'}} NeoBundle 'osyo-manga/vim-precious' NeoBundleLazy 'thinca/vim-prettyprint', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'PrettyPrint', \ 'complete' : 'expression'}, \ {'name' : 'PP', \ 'complete' : 'expression'}], \ 'functions': ['PrettyPrint', 'PP']}} NeoBundleLazy 'kannokanno/previm', { \ 'autoload' : { \ 'filetypes' : 'markdown'}, \ 'depends' : 'tyru/open-browser.vim'} NeoBundleLazy 'thinca/vim-qfreplace', { \ 'autoload' : { \ 'filetypes' : ['qf', 'unite']}} NeoBundleLazy 'dannyob/quickfixstatus', { \ 'autoload' : { \ 'filetypes' : 'qf', \ 'commands' : ['QuickfixStatusEnable', 'QuickfixStatusDisable']}} NeoBundleLazy 't9md/vim-quickhl', { \ 'autoload' : { \ 'commands' : [ \ 'QuickhlManualEnable', 'QuickhlManualDisable', \ 'QuickhlManualList', 'QuickhlManualColors', \ 'QuickhlManualAdd', 'QuickhlManualDelete', \ 'QuickhlManualLock', 'QuickhlManualLockWindow', \ 'QuickhlManualUnlock', 'QuickhlManualLockToggle', \ 'QuickhlManualReset', 'QuickhlManualLockWindowToggle', \ 'QuickhlCwordEnable', 'QuickhlTagEnable', \ 'QuickhlCwordDisable', 'QuickhlTagDisable', \ 'QuickhlCwordToggle', 'QuickhlTagToggle'], \ 'mappings' : [ \ ['nv', '(quickhl-'], \ ['nvo', '(operator-quickhl-']]}} NeoBundleLazy 'thinca/vim-quickrun', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'QuickRun', \ 'complete' : 'customlist,quickrun#complete'}], \ 'mappings' : [ \ ['nv', '(quickrun)'], \ ['n', '(quickrun-op)']]}, \ 'depends' : [ \ 'osyo-manga/quickrun-hook-vcvarsall', \ 'osyo-manga/shabadou.vim', \ 'osyo-manga/vim-watchdogs']} call extend(s:neocompl_vim_completefuncs, { \ 'QuickRun' : 'quickrun#complete'}) NeoBundleLazy 'osyo-manga/vim-reanimate', { \ 'autoload' : { \ 'commands' : [ \ 'ReanimateSave', 'ReanimateSaveInput', 'ReanimateSaveCursorHold', \ 'ReanimateLoad', 'ReanimateLoadInput', 'ReanimateLoadLatest', \ 'ReanimateSwitch', 'ReanimateUnload', 'ReanimateEditVimrcLocal'], \ 'unite_sources' : 'reanimate'}} NeoBundleLazy 'thinca/vim-ref', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'Ref', \ 'complete' : 'customlist,ref#complete'}], \ 'mappings' : [['nv', '(ref-keyword)']], \ 'unite_sources' : 'ref'}, \ 'depends' : 'ujihisa/ref-hoogle'} call extend(s:neocompl_vim_completefuncs, { \ 'Ref' : 'ref#complete'}) NeoBundleLazy 'deris/vim-rengbang', { \ 'autoload' : { \ 'commands' : ['RengBang', 'RengBangUsePrev', 'RengBangConfirm'], \ 'mappings' : [ \ ['nvo', '(operator-rengbang)', '(operator-rengbang-']]}} NeoBundleLazy 'tpope/vim-repeat' NeoBundleLazy 'osyo-manga/vim-reunions' NeoBundleLazy 'vim-ruby/vim-ruby', { \ 'autoload' : { \ 'filetypes' : ['eruby', 'haml', 'ruby']}} NeoBundleLazy 'thinca/vim-scouter', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'Scouter', \ 'complete' : 'file'}]}} NeoBundleLazy 'DeaR/vim-scratch', { \ 'autoload' : { \ 'commands' : ['ScratchOpen', 'ScratchClose', 'ScratchEvaluate'], \ 'mappings' : [['nvo', '(scratch-']]}} NeoBundleLazy 'jiangmiao/simple-javascript-indenter', { \ 'autoload' : { \ 'filetypes' : 'javascript'}} if has('clientserver') NeoBundleFetch 'thinca/vim-singleton' endif NeoBundleLazy 'kana/vim-smartword', { \ 'autoload' : { \ 'mappings' : [['nvo', '(smartword-']], \ 'insert' : 1}} if s:executable('clang') && has('python') NeoBundleLazy 'osyo-manga/vim-snowdrop', { \ 'autoload' : { \ 'filetypes' : ['c', 'cpp'], \ 'commands' : [ \ 'SnowdropVerify', 'SnowdropEchoClangVersion'], \ 'unite_sources' : ['snowdrop/includes', 'snowdrop/outline']}} endif NeoBundleLazy 'AndrewRadev/switch.vim', { \ 'autoload' : { \ 'commands' : ['Switch', 'SwitchIncrement', 'SwitchDecrement']}} if has('python') && s:executable('node') NeoBundleLazy 'marijnh/tern_for_vim', { \ 'name' : 'tern', \ 'autoload' : { \ 'filetypes' : 'javascript'}, \ 'build' : { \ 'others' : 'npm install'}} endif NeoBundleLazy 'tomtom/tcomment_vim', { \ 'name' : 'tcomment', \ 'autoload' : { \ 'commands' : [ \ {'name' : 'TComment', \ 'complete' : 'customlist,tcomment#CompleteArgs'}, \ {'name' : 'TCommentAs', \ 'complete' : 'customlist,tcomment#Complete'}, \ {'name' : 'TCommentRight', \ 'complete' : 'customlist,tcomment#CompleteArgs'}, \ {'name' : 'TCommentBlock', \ 'complete' : 'customlist,tcomment#CompleteArgs'}, \ {'name' : 'TCommentInline', \ 'complete' : 'customlist,tcomment#CompleteArgs'}, \ {'name' : 'TCommentMaybeInline', \ 'complete' : 'customlist,tcomment#CompleteArgs'}], \ 'mappings' : [ \ ['nvo', '(operator-tcomment)', '(operator-tcomment-']]}} call extend(s:neocompl_vim_completefuncs, { \ 'TComment' : 'tcomment#CompleteArgs', \ 'TCommentAs' : 'tcomment#Complete', \ 'TCommentRight' : 'tcomment#CompleteArgs', \ 'TCommentBlock' : 'tcomment#CompleteArgs', \ 'TCommentInline' : 'tcomment#CompleteArgs', \ 'TCommentMaybeInline' : 'tcomment#CompleteArgs'}) NeoBundleLazy 't9md/vim-textmanip', { \ 'autoload' : { \ 'mappings' : [ \ ['nv', '(textmanip-'], \ ['nvo', '(operator-textmanip-']]}} NeoBundleLazy 'thinca/vim-textobj-between', { \ 'autoload' : { \ 'commands' : 'TextobjBetweenDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-between-']]}} NeoBundleLazy 'thinca/vim-textobj-comment', { \ 'autoload' : { \ 'commands' : 'TextobjCommentDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-comment-']]}} NeoBundleLazy 'rhysd/vim-textobj-continuous-line', { \ 'autoload' : { \ 'commands' : 'TextobjContinuousDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-continuous-']]}} NeoBundleLazy 'kana/vim-textobj-datetime', { \ 'autoload' : { \ 'commands' : 'TextobjDatetimeDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-datetime-']]}} NeoBundleLazy 'kana/vim-textobj-diff', { \ 'autoload' : { \ 'commands' : 'TextobjDiffDefaultKeyMappings', \ 'mappings' : [['nvo', '(textobj-diff-']]}} NeoBundleLazy 'deris/vim-textobj-enclosedsyntax', { \ 'autoload' : { \ 'commands' : 'TextobjEnclosedsyntaxDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-enclosedsyntax-']]}} NeoBundleLazy 'kana/vim-textobj-entire', { \ 'autoload' : { \ 'commands' : 'TextobjEntireDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-entire-']]}} NeoBundleLazy 'kana/vim-textobj-fold', { \ 'autoload' : { \ 'commands' : 'TextobjFoldDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-fold-']]}} NeoBundleLazy 'kana/vim-textobj-function', { \ 'autoload' : { \ 'commands' : 'TextobjFunctionDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-function-']]}, \ 'depends' : [ \ 'thinca/vim-textobj-function-javascript', \ 'thinca/vim-textobj-function-perl', \ 't9md/vim-textobj-function-ruby']} NeoBundleLazy 'anyakichi/vim-textobj-ifdef', { \ 'autoload' : { \ 'commands' : 'TextobjIfdefDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-ifdef-']]}} NeoBundleLazy 'glts/vim-textobj-indblock', { \ 'autoload' : { \ 'commands' : 'TextobjIndblockDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-indblock-']]}} NeoBundleLazy 'kana/vim-textobj-indent', { \ 'autoload' : { \ 'commands' : 'TextobjIndentDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-indent-']]}} NeoBundleLazy 'kana/vim-textobj-jabraces', { \ 'autoload' : { \ 'commands' : 'TextobjJabracesDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-jabraces-']]}} NeoBundleLazy 'kana/vim-textobj-line', { \ 'autoload' : { \ 'commands' : 'TextobjLineDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-line-']]}} NeoBundleLazy 'hchbaw/textobj-motionmotion.vim', { \ 'autoload' : { \ 'commands' : 'TextobjMotionmotionDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-motionmotion-']]}} NeoBundleLazy 'osyo-manga/vim-textobj-multiblock', { \ 'autoload' : { \ 'commands' : 'TextobjMultiblockDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-multiblock-']]}} NeoBundleLazy 'osyo-manga/vim-textobj-multitextobj', { \ 'autoload' : { \ 'commands' : 'TextobjMultitextobjDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-multitextobj-']], \ 'functions' : [ \ 'textobj#multitextobj#mapexpr_a', \ 'textobj#multitextobj#mapexpr_i']}, \ 'depends' : 'kana/vim-textobj-jabraces'} NeoBundleLazy 'sgur/vim-textobj-parameter', { \ 'autoload' : { \ 'commands' : 'TextobjParameterDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-parameter-']]}} NeoBundleLazy 'akiyan/vim-textobj-php', { \ 'autoload' : { \ 'commands' : 'TextobjPhpDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-php-']]}} NeoBundleLazy 'bps/vim-textobj-python', { \ 'autoload' : { \ 'commands' : 'TextobjPythonDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-python-']]}} NeoBundleLazy 'rhysd/vim-textobj-ruby', { \ 'autoload' : { \ 'commands' : 'TextobjRubyDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-ruby-']]}} NeoBundleLazy 'vimtaku/vim-textobj-sigil', { \ 'autoload' : { \ 'commands' : 'TextobjSigilDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-sigil-']]}} NeoBundleLazy 'saihoooooooo/vim-textobj-space', { \ 'autoload' : { \ 'commands' : 'TextobjSpaceDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-space-']]}} NeoBundleLazy 'kana/vim-textobj-syntax', { \ 'autoload' : { \ 'commands' : 'TextobjSyntaxDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-syntax-']]}} NeoBundleLazy 'mattn/vim-textobj-url', { \ 'autoload' : { \ 'commands' : 'TextobjUrlDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-url-']]}} NeoBundleLazy 'kana/vim-textobj-user', { \ 'autoload' : { \ 'function_prefix' : 'textobj'}} NeoBundleLazy 'DeaR/vim-textobj-wiw', { \ 'autoload' : { \ 'commands' : 'TextobjWiwDefaultKeyMappings', \ 'mappings' : [['nvo', '(textobj-wiw-']]}} NeoBundleLazy 'rhysd/textobj-word-column.vim', { \ 'autoload' : { \ 'commands' : 'TextobjWordcolumnDefaultKeyMappings', \ 'mappings' : [['nvo', '(textobj-wordcolumn-']]}} NeoBundleLazy 'akiyan/vim-textobj-xml-attribute', { \ 'autoload' : { \ 'commands' : 'TextobjXmlattributeDefaultKeyMappings', \ 'mappings' : [['vo', '(textobj-xmlattribute-']]}} if has('win32') || s:executable('aclocal') NeoBundleFetch 'ggreer/the_silver_searcher', { \ 'build' : { \ 'windows' : \ 'mingw32-make -f ~/.vim/tools/the_silver_searcher/Makefile.w32', \ 'others' : \ './build.sh && sudo make install'}} endif NeoBundleLazy 'zaiste/tmux.vim', { \ 'autoload' : { \ 'filetypes' : 'tmux'}} NeoBundleLazy 'mbbill/undotree', { \ 'autoload' : { \ 'commands' : 'UndotreeToggle', \ 'functions' : 'UndotreeToggle'}} NeoBundle 'Shougo/unite.vim' call extend(s:neocompl_vim_completefuncs, { \ 'Unite' : 'unite#complete_source', \ 'UniteWithCurrentDir' : 'unite#complete_source', \ 'UniteWithBufferDir' : 'unite#complete_source', \ 'UniteWithCursorWord' : 'unite#complete_source', \ 'UniteWithInput' : 'unite#complete_source', \ 'UniteWithInputDirectory' : 'unite#complete_source', \ 'UniteResume' : 'unite#complete_buffer_name'}) NeoBundleLazy 'Shougo/unite-build', { \ 'autoload' : { \ 'unite_sources' : 'build'}} NeoBundleLazy 'osyo-manga/unite-filetype', { \ 'autoload' : { \ 'unite_sources' : 'filetype'}} NeoBundleLazy 'osyo-manga/unite-fold', { \ 'autoload' : { \ 'unite_sources' : 'fold'}} NeoBundleLazy 'ujihisa/unite-haskellimport', { \ 'autoload' : { \ 'commands' : 'Haskellimport', \ 'unite_sources' : 'haskellimport'}} NeoBundleLazy 'tsukkee/unite-help', { \ 'autoload' : { \ 'unite_sources' : 'help'}} NeoBundleLazy 'thinca/vim-unite-history', { \ 'autoload' : { \ 'unite_sources' : ['history/command', 'history/search']}} NeoBundleLazy 'KamunagiChiduru/unite-javaimport', { \ 'autoload' : { \ 'unite_sources' : 'javaimport'}} NeoBundleLazy 'ujihisa/unite-locate', { \ 'autoload' : { \ 'unite_sources' : 'locate'}} NeoBundleLazy 'tacroe/unite-mark', { \ 'autoload' : { \ 'unite_sources' : 'mark'}} NeoBundleLazy 'Shougo/unite-outline', { \ 'autoload' : { \ 'unite_sources' : 'outline'}} NeoBundleLazy 'y-uuki/unite-perl-module.vim', { \ 'autoload' : { \ 'unite_sources' : ['perl/global', 'perl/local']}} NeoBundleLazy 'osyo-manga/unite-quickfix', { \ 'autoload' : { \ 'unite_sources' : ['location_list', 'quickfix']}} NeoBundleLazy 'osyo-manga/unite-quickrun_config', { \ 'autoload' : { \ 'unite_sources' : 'quickrun_config'}, \ 'depends' : 'thinca/vim-quickrun'} if has('clientserver') NeoBundleLazy 'mattn/unite-remotefile', { \ 'autoload' : { \ 'unite_sources' : 'remotefile'}} endif NeoBundleLazy 'rhysd/unite-ruby-require.vim', { \ 'autoload' : { \ 'unite_sources' : 'ruby/require'}} NeoBundleLazy 'Shougo/unite-ssh', { \ 'autoload' : { \ 'unite_sources' : 'ssh'}, \ 'depends' : 'Shougo/vimfiler.vim'} autocmd MyVimrc User VimrcPost \ if has('vim_starting') && filter(argv(), 'v:val =~# "^ssh:"') != [] | \ NeoBundleSource unite-ssh | \ endif NeoBundleLazy 'Shougo/unite-sudo', { \ 'autoload' : { \ 'unite_sources' : 'sudo'}, \ 'depends' : 'Shougo/vimfiler.vim'} autocmd MyVimrc User VimrcPost \ if has('vim_starting') && filter(argv(), 'v:val =~# "^sudo:"') != [] | \ NeoBundleSource unite-sudo | \ endif NeoBundleLazy 'tsukkee/unite-tag', { \ 'autoload' : { \ 'unite_sources' : 'tag'}} NeoBundleLazy 'pasela/unite-webcolorname', { \ 'autoload' : { \ 'unite_sources' : 'webcolorname'}} NeoBundleLazy 'vbnet.vim', { \ 'autoload' : { \ 'filetypes' : 'vbnet'}} if has('iconv') NeoBundleLazy 'koron/verifyenc-vim', { \ 'autoload' : { \ 'commands' : 'VerifyEnc'}} autocmd MyVimrc BufReadPre * \ NeoBundleSource verifyenc endif NeoBundleLazy 'Shougo/vim-vcs', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'Vcs', \ 'complete' : 'customlist,vcs#complete'}]}} call extend(s:neocompl_vim_completefuncs, { \ 'Vcs' : 'vcs#complete'}) NeoBundleLazy 'rbtnn/vimconsole.vim', { \ 'autoload' : { \ 'commands' : [ \ 'VimConsoleOpen', 'VimConsoleClose', 'VimConsoleToggle', \ 'VimConsoleTest', 'VimConsoleClear', 'VimConsoleRedraw', \ 'VimConsoleDump', \ {'name' : 'VimConsole', \ 'complete' : 'expression'}, \ {'name' : 'VimConsoleLog', \ 'complete' : 'expression'}, \ {'name' : 'VimConsoleWarn', \ 'complete' : 'expression'}, \ {'name' : 'VimConsoleError', \ 'complete' : 'expression'}]}} call extend(s:neocompl_vim_completefuncs, { \ 'VimConsoleLog' : 'expression', \ 'VimConsoleWarn' : 'expression', \ 'VimConsoleError' : 'expression'}) if has('multi_lang') NeoBundleLazy 'vim-jp/vimdoc-ja', { \ 'autoload' : { \ 'filetypes' : 'help'}} endif NeoBundleLazy 'Shougo/vimfiler.vim', { \ 'autoload' : { \ 'commands' : [ \ 'VimFilerDetectDrives', 'VimFilerClose', \ {'name' : 'VimFiler', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'VimFilerDouble', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'VimFilerCurrentDir', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'VimFilerBufferDir', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'VimFilerCreate', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'VimFilerSimple', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'VimFilerSplit', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'VimFilerTab', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'VimFilerExplorer', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'Edit', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'Read', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'Source', \ 'complete' : 'customlist,vimfiler#complete'}, \ {'name' : 'Write', \ 'complete' : 'customlist,vimfiler#complete'}], \ 'unite_sources' : [ \ 'vimfiler/drive', 'vimfiler/execute', 'vimfiler/history', \ 'vimfiler/mask', 'vimfiler/popd', 'vimfiler/sort'], \ 'explorer' : 1}} call extend(s:neocompl_vim_completefuncs, { \ 'VimFiler' : 'vimfiler#complete', \ 'VimFilerDouble' : 'vimfiler#complete', \ 'VimFilerCurrentDir' : 'vimfiler#complete', \ 'VimFilerBufferDir' : 'vimfiler#complete', \ 'VimFilerCreate' : 'vimfiler#complete', \ 'VimFilerSimple' : 'vimfiler#complete', \ 'VimFilerSplit' : 'vimfiler#complete', \ 'VimFilerTab' : 'vimfiler#complete', \ 'VimFilerExplorer' : 'vimfiler#complete', \ 'Edit' : 'vimfiler#complete', \ 'Read' : 'vimfiler#complete', \ 'Source' : 'vimfiler#complete', \ 'Write' : 'vimfiler#complete'}) NeoBundleLazy 'syngan/vim-vimlint' NeoBundleLazy 'ynkdir/vim-vimlparser' NeoBundleLazy 'Shougo/vimproc.vim', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'VimProcBang', \ 'complete' : 'shellcmd'}, \ {'name' : 'VimProcRead', \ 'complete' : 'shellcmd'}]}, \ 'build' : { \ 'windows' : $VCVARSALL . ' ' . $PROCESSOR_ARCHITECTURE . ' & ' . \ 'nmake -f Make_msvc.mak nodebug=1', \ 'others' : 'make'}} NeoBundleLazy 'Shougo/vimshell.vim', { \ 'autoload' : { \ 'filetypes' : 'vimshrc', \ 'commands' : [ \ 'VimShellSendString', 'VimShellSendBuffer', \ {'name' : 'VimShell', \ 'complete' : 'customlist,vimshell#complete'}, \ {'name' : 'VimShellCreate', \ 'complete' : 'customlist,vimshell#complete'}, \ {'name' : 'VimShellTab', \ 'complete' : 'customlist,vimshell#complete'}, \ {'name' : 'VimShellPop', \ 'complete' : 'customlist,vimshell#complete'}, \ {'name' : 'VimShellCurrentDir', \ 'complete' : 'customlist,vimshell#complete'}, \ {'name' : 'VimShellBufferDir', \ 'complete' : 'customlist,vimshell#complete'}, \ {'name' : 'VimShellExecute', \ 'complete' : 'customlist,vimshell#vimshell_execute_complete'}, \ {'name' : 'VimShellInteractive', \ 'complete' : 'customlist,vimshell#vimshell_execute_complete'}, \ {'name' : 'VimShellTerminal', \ 'complete' : 'customlist,vimshell#vimshell_execute_complete'}], \ 'unite_sources' : ['vimshell/external_history', 'vimshell/history']}, \ 'depends' : [ \ 'yomi322/vim-gitcomplete', \ 'ujihisa/vimshell-ssh']} call extend(s:neocompl_vim_completefuncs, { \ 'VimShell' : 'vimshell#complete', \ 'VimShellCreate' : 'vimshell#complete', \ 'VimShellPop' : 'vimshell#complete', \ 'VimShellTab' : 'vimshell#complete', \ 'VimShellCurrentDir' : 'vimshell#complete', \ 'VimShellBufferDir' : 'vimshell#complete', \ 'VimShellExecute' : 'vimshell#vimshell_execute_complete', \ 'VimShellInteractive' : 'vimshell#vimshell_execute_complete', \ 'VimShellTerminal' : 'vimshell#vimshell_execute_complete'}) if has('python') || has('python3') " NeoBundleLazy 'Shougo/vinarise.vim', { " \ 'autoload' : { " \ 'commands' : [ " \ {'name' : 'Vinarise', " \ 'complete' : 'customlist,vinarise#complete'}, " \ {'name' : 'VinariseDump', " \ 'complete' : 'customlist,vinarise#complete'}, " \ {'name' : 'VinariseScript2Hex', " \ 'complete' : 'customlist,vinarise#complete'}], " \ 'unite_sources' : 'vinarise/analysis'}, " \ 'depends' : 'rbtnn/hexript.vim'} " call extend(s:neocompl_vim_completefuncs, { " \ 'Vinarise' : 'vinarise#complete', " \ 'VinariseDump' : 'vinarise#complete', " \ 'VinariseScript2Hex' : 'vinarise#complete'}) NeoBundleLazy 'Shougo/vinarise.vim', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'Vinarise', \ 'complete' : 'customlist,vinarise#complete'}, \ {'name' : 'VinariseDump', \ 'complete' : 'customlist,vinarise#complete'}], \ 'unite_sources' : 'vinarise/analysis'}} call extend(s:neocompl_vim_completefuncs, { \ 'Vinarise' : 'vinarise#complete', \ 'VinariseDump' : 'vinarise#complete'}) endif NeoBundleLazy 'thinca/vim-visualstar', { \ 'autoload' : { \ 'mappings' : [['nvo', '(visualstar-']]}} NeoBundleLazy 'taku25/vim-visualstudio', { \ 'autoload' : { \ 'commands' : [ \ 'VSFindResult1', 'VSFindResult2', \ 'VSBuild', 'VSBuildNoWait', \ 'VSReBuild', 'VSReBuildNoWait', \ 'VSClean', 'VSCleanNoWait', \ 'VSCompile', 'VSCompileNoWait', \ 'VSOpenFile', 'VSGetFile', \ 'VSOutput', 'VSErorrList', \ 'VSAddBreakPoint']}} NeoBundleFetch 'taku25/VisualStudioController' NeoBundle 'vim-jp/vital.vim' NeoBundleLazy 'osyo-manga/vim-watchdogs', { \ 'autoload' : { \ 'commands' : [ \ {'name' : 'WatchdogsRun', \ 'complete' : 'customlist,quickrun#complete'}, \ {'name' : 'WatchdogsRunSilent', \ 'complete' : 'customlist,quickrun#complete'}, \ 'WatchdogsRunSweep']}, \ 'depends' : [ \ 'dbakker/vim-lint', \ 'thinca/vim-quickrun', \ 'syngan/vim-vimlint', \ 'ynkdir/vim-vimlparser']} autocmd MyVimrc BufNewFile,BufRead * \ NeoBundleSource watchdogs call extend(s:neocompl_vim_completefuncs, { \ 'WatchdogsRun' : 'quickrun#complete', \ 'WatchdogsRunSilent' : 'quickrun#complete'}) NeoBundleLazy 'mattn/webapi-vim' call neobundle#end() execute 'set runtimepath+=' . \ join(map(filter(split(glob($HOME . '/.vim/bundle-settings/*'), '\n'), \ 'neobundle#is_installed(fnamemodify(v:val, ":t"))'), \ 'escape(v:val, " ,")'), ',') autocmd MyVimrc User VimrcPost \ call neobundle#call_hook('on_source') endif "}}} "}}} "============================================================================== " General Settings: {{{ "------------------------------------------------------------------------------ " System: {{{ " GUI options if has('gui_running') set guioptions+=M endif " Message set shortmess+=a set title set confirm " Use beep set errorbells set novisualbell set t_vb= " VimInfo if s:is_android set viminfo+=n/data/data/net.momodalo.app.vimtouch/files/vim/.viminfo elseif isdirectory($HOME . '/.local') set viminfo+=n~/.local/.viminfo endif set history=100 " Backup set nobackup set swapfile set undofile set undodir^=~/.local/.vimundo autocmd MyVimrc BufNewFile,BufRead * \ let &l:undofile = (index(copy(s:ignore_ft), &filetype) < 0) " ClipBoard set clipboard=unnamed " Timeout set timeout set timeoutlen=3000 set ttimeoutlen=10 set updatetime=1000 " Hidden buffer set hidden " Multi byte charactor width set ambiwidth=double " Wild menu set wildmenu execute 'set wildignore+=' . \ join(map(copy(s:ignore_ext), '''*.'' . escape(v:val, ''\,'')'), ',') " Mouse set mouse=a set nomousefocus set nomousehide "}}} "------------------------------------------------------------------------------ " Display: {{{ " Don't redraw which macro executing set lazyredraw " Line number, Ruler, Wrap set number set ruler set wrap set display=lastline set scrolloff=5 " Match set showmatch set matchtime=1 " Command line set cmdheight=2 set laststatus=2 set showcmd " Display NonText set list set listchars=eol:$,tab:>-,extends:>,precedes:< set fillchars=vert:\| " Help set helpheight=999 " Conceal if has('conceal') set conceallevel=2 set concealcursor=nc endif "}}} "------------------------------------------------------------------------------ " Search: {{{ " Options set ignorecase set smartcase set incsearch set wrapscan " Highlight if &t_Co > 2 set hlsearch endif " Grep if (s:has_neobundle && neobundle#is_installed('jvgrep')) || \ s:executable('jvgrep') set grepprg=jvgrep\ -n elseif (s:has_neobundle && neobundle#is_installed('the_silver_searcher')) || \ s:executable('ag') set grepprg=ag\ --line-numbers\ --nocolor\ --nogroup\ --hidden elseif s:executable('grep') set grepprg=grep\ -Hn else set grepprg=internal endif "}}} "------------------------------------------------------------------------------ " Editing: {{{ " Complete set completeopt=menu,menuone silent! set completeopt+=noselect " Format set nrformats=hex set formatoptions+=m set formatoptions+=B " Free cursor set virtualedit=block " Cursor can move to bol & eol set backspace=indent,eol,start " Ctags set showfulltag " Default file format set fileformat=unix set fileformats=unix,dos,mac " Indent set shiftwidth=2 set softtabstop=2 set expandtab set autoindent set smartindent set copyindent set cinoptions=:0,l1,g0,(0,U1,Ws,j1,J1,)20 " Folding set foldenable set foldmethod=marker set foldcolumn=2 set foldlevelstart=99 "}}} "------------------------------------------------------------------------------ " Status Line: {{{ set statusline=%<%f\ %m%r[ if has('multi_byte') set statusline+=%{&fenc!=''?&fenc:&enc}: endif set statusline+=%{&ff}]%y%= if has('multi_byte') set statusline+=\ [U+%04B] endif set statusline+=\ (%v,%l)/%L if s:is_lang_ja set statusline+=\ %4P else set statusline+=\ %3P endif "}}} "------------------------------------------------------------------------------ " File Encodings: {{{ if has('multi_byte') let s:enc_jisx0213 = has('iconv') && \ iconv("\x87\x64\x87\x6a", 'cp932', 'euc-jisx0213') ==# "\xad\xc5\xad\xcb" let &fileencodings = \ (has('guess_encode') ? 'guess,' : '') . \ (s:enc_jisx0213 ? 'iso-2022-jp-3,' : 'iso-2022-jp,') . \ 'cp932,' . \ (s:enc_jisx0213 ? 'euc-jisx0213,' : '') . \ 'euc-jp,ucs-bom' let s:last_enc = &encoding augroup MyVimrc autocmd EncodingChanged * \ if s:last_enc !=# &encoding | \ let &runtimepath = iconv(&runtimepath, s:last_enc, &encoding) | \ let s:last_enc = &encoding | \ endif autocmd BufReadPost * \ if &modifiable && !search('[^\x00-\x7F]', 'cnw') | \ setlocal fileencoding= | \ endif augroup END endif "}}} "------------------------------------------------------------------------------ " Colors: {{{ " Cursor line & column if has('gui_running') || &t_Co > 255 set cursorline set cursorcolumn " No cursor line & column at other window augroup MyVimrc autocmd BufWinEnter,WinEnter * \ let [&l:cursorline, &l:cursorcolumn] = \ [!get(b:, 'nocursorline'), !get(b:, 'nocursorcolumn')] autocmd BufWinLeave,WinLeave * \ setlocal nocursorline nocursorcolumn augroup END endif " Enable plugin filetype plugin indent on " Syntax highlight syntax on " Colorscheme if &t_Co > 255 silent! colorscheme molokai endif "}}} "}}} "============================================================================== " Mappings: {{{ "------------------------------------------------------------------------------ " Multi Mode Mapping: {{{ command! -complete=mapping -nargs=* \ NVmap \ nmap | vmap command! -complete=mapping -nargs=* \ NXmap \ nmap | xmap command! -complete=mapping -nargs=* \ NSmap \ nmap | smap command! -complete=mapping -nargs=* \ NOmap \ nmap | omap command! -complete=mapping -nargs=* \ VOmap \ vmap | omap command! -complete=mapping -nargs=* \ XOmap \ xmap | omap command! -complete=mapping -nargs=* \ SOmap \ smap | omap command! -complete=mapping -nargs=* \ NXOmap \ nmap | xmap | omap command! -complete=mapping -nargs=* \ NSOmap \ nmap | smap | omap command! -complete=mapping -nargs=* \ NVnoremap \ nnoremap | vnoremap command! -complete=mapping -nargs=* \ NXnoremap \ nnoremap | xnoremap command! -complete=mapping -nargs=* \ NSnoremap \ nnoremap | snoremap command! -complete=mapping -nargs=* \ NOnoremap \ nnoremap | onoremap command! -complete=mapping -nargs=* \ VOnoremap \ vnoremap | onoremap command! -complete=mapping -nargs=* \ XOnoremap \ xnoremap | onoremap command! -complete=mapping -nargs=* \ SOnoremap \ snoremap | onoremap command! -complete=mapping -nargs=* \ NXOnoremap \ nnoremap | xnoremap | onoremap command! -complete=mapping -nargs=* \ NSOnoremap \ nnoremap | snoremap | onoremap "}}} "------------------------------------------------------------------------------ " Common: {{{ " NXOnoremap NXOnoremap " Prefix NXOnoremap ; NXOnoremap , NXOnoremap s NXOnoremap S NXOnoremap m NXOnoremap M NOnoremap cnoremap " Split Nicely NXnoremap (split-nicely) \ myvimrc#split_nicely_expr() ? 's' : 'v' "}}} "------------------------------------------------------------------------------ " Command Line: {{{ if s:cmdwin_enable noremap : q: noremap / q/ noremap ? q? else noremap : myvimrc#cmdline_enter(':') noremap / myvimrc#cmdline_enter('/') noremap ? myvimrc#cmdline_enter('?') endif NXmap ;; : NXmap : : NXmap / / NXmap ? ? NXnoremap ;: myvimrc#cmdline_enter(':') NXnoremap ;/ myvimrc#cmdline_enter('/') NXnoremap ;? myvimrc#cmdline_enter('?') cnoremap / getcmdtype() == '/' ? '\/' : '/' cnoremap ? getcmdtype() == '?' ? '\?' : '?' augroup MyVimrc autocmd CmdwinEnter * \ call myvimrc#cmdwin_enter() autocmd CmdwinLeave * \ call myvimrc#cmdwin_leave() autocmd CmdwinEnter / \ inoremap / \/ autocmd CmdwinEnter ? \ inoremap ? \? augroup END "}}} "------------------------------------------------------------------------------ " Escape Key: {{{ nnoremap myvimrc#escape_key() "}}} "------------------------------------------------------------------------------ " Gips: {{{ if s:gips_enable noremap noremap noremap noremap noremap noremap noremap noremap endif "}}} "------------------------------------------------------------------------------ " Moving: {{{ " Insert-mode & Command-line-mode noremap! noremap! noremap! noremap! " Insert-mode inoremap w inoremap b inoremap e inoremap ge inoremap W inoremap B inoremap E inoremap gE inoremap f inoremap F inoremap t inoremap T inoremap ; inoremap , inoremap ( inoremap ) inoremap { inoremap } " Command-line-mode cnoremap cnoremap cnoremap cnoremap " Jump NXOnoremap ' ` NXOnoremap ` ' nnoremap " Mark NXOnoremap mj ]` NXOnoremap mk [` " Diff NXOnoremap ]c NXOnoremap [c " Command-line cnoremap \ getcmdtype() == '@' && getcmdpos() == 1 && getcmdline() == '' ? \ '' : '' cnoremap \ getcmdtype() == '@' && getcmdpos() == 1 && getcmdline() == '' ? \ '' : '' "}}} "------------------------------------------------------------------------------ " Window Control: {{{ NXnoremap s NXnoremap v NXnoremap j NXnoremap k NXnoremap h NXnoremap l NXnoremap J NXnoremap K NXnoremap H NXnoremap L NXnoremap = NXnoremap - NXnoremap + NXnoremap _ NXnoremap < NXnoremap > > NXnoremap "}}} "------------------------------------------------------------------------------ " Leader Prefix: {{{ NXnoremap c :close NXnoremap C :only NXnoremap :tabclose NXnoremap :tabonly NXnoremap w :update NXnoremap W :wall NXnoremap q :bdelete NXnoremap ! :shell NXnoremap B :buffers NXnoremap E :Explorer NXnoremap T :tabs NXnoremap j :jumps NXnoremap J :changes NXnoremap :pwd NXnoremap