|  |  | @ -19,9 +19,13 @@ Plug 'scrooloose/nerdtree', { 'on': 'NERDTreeToggle' } | 
			
		
	
		
			
				
					|  |  |  | Plug 'Xuyuanp/nerdtree-git-plugin', { 'on': 'NERDTreeToggle' } | 
			
		
	
		
			
				
					|  |  |  | Plug 'scrooloose/nerdcommenter' | 
			
		
	
		
			
				
					|  |  |  | "Plug 'myusuf3/numbers.vim' | 
			
		
	
		
			
				
					|  |  |  | Plug 'Shougo/neocomplete.vim' | 
			
		
	
		
			
				
					|  |  |  | Plug 'Shougo/neosnippet.vim' | 
			
		
	
		
			
				
					|  |  |  | Plug 'Shougo/neosnippet-snippets' | 
			
		
	
		
			
				
					|  |  |  | if has("nvim") | 
			
		
	
		
			
				
					|  |  |  |     Plug 'Shougo/deoplete.nvim', { 'do': ':UpdateRemotePlugins' } | 
			
		
	
		
			
				
					|  |  |  | else | 
			
		
	
		
			
				
					|  |  |  |     Plug 'Shougo/neocomplete.vim' | 
			
		
	
		
			
				
					|  |  |  |     Plug 'Shougo/neosnippet.vim' | 
			
		
	
		
			
				
					|  |  |  |     Plug 'Shougo/neosnippet-snippets' | 
			
		
	
		
			
				
					|  |  |  | endif | 
			
		
	
		
			
				
					|  |  |  | Plug 'easymotion/vim-easymotion' | 
			
		
	
		
			
				
					|  |  |  | Plug 'bling/vim-airline' | 
			
		
	
		
			
				
					|  |  |  | Plug 'tpope/vim-ragtag' | 
			
		
	
	
		
			
				
					|  |  | @ -78,7 +82,8 @@ Plug 'Rip-Rip/clang_complete', { 'for': ['c', 'cpp'], 'do': 'make install' } | 
			
		
	
		
			
				
					|  |  |  | let g:clang_library_path='/usr/lib/llvm-4.0/lib/libclang-4.0.so.1' | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " PHP | 
			
		
	
		
			
				
					|  |  |  | Plug 'shawncplus/phpcomplete.vim', { 'for': 'php', 'do': 'curl -Ss http://vim-php.com/phpctags/install/phpctags.phar > ~/bin/phpctags && chmod +x ~/bin/phpctags' } | 
			
		
	
		
			
				
					|  |  |  | "Plug 'shawncplus/phpcomplete.vim', { 'for': 'php', 'do': 'curl -Ss http://vim-php.com/phpctags/install/phpctags.phar > ~/bin/phpctags && chmod +x ~/bin/phpctags' } | 
			
		
	
		
			
				
					|  |  |  | Plug 'lvht/phpcd.vim', { 'for': 'php', 'do': 'composer install' } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " Python | 
			
		
	
		
			
				
					|  |  |  | Plug 'python-mode/python-mode', { 'for': 'python' } | 
			
		
	
	
		
			
				
					|  |  | @ -206,96 +211,108 @@ let g:neocomplete#sources#omni#input_patterns.tex = | 
			
		
	
		
			
				
					|  |  |  | 			\ . ')' | 
			
		
	
		
			
				
					|  |  |  | "}}} | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " N E O C O M P L E T E {{{ | 
			
		
	
		
			
				
					|  |  |  | "Note: This option must be set in .vimrc(_vimrc).  NOT IN .gvimrc(_gvimrc)! | 
			
		
	
		
			
				
					|  |  |  | " Disable AutoComplPop. | 
			
		
	
		
			
				
					|  |  |  | let g:acp_enableAtStartup = 0 | 
			
		
	
		
			
				
					|  |  |  | " Use neocomplete. | 
			
		
	
		
			
				
					|  |  |  | let g:neocomplete#enable_at_startup = 1 | 
			
		
	
		
			
				
					|  |  |  | " Use smartcase. | 
			
		
	
		
			
				
					|  |  |  | let g:neocomplete#enable_smart_case = 1 | 
			
		
	
		
			
				
					|  |  |  | " Set minimum syntax keyword length. | 
			
		
	
		
			
				
					|  |  |  | let g:neocomplete#sources#syntax#min_keyword_length = 3 | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " Define dictionary. | 
			
		
	
		
			
				
					|  |  |  | let g:neocomplete#sources#dictionary#dictionaries = { | 
			
		
	
		
			
				
					|  |  |  | " Completion {{{ | 
			
		
	
		
			
				
					|  |  |  | if !has("nvim") | 
			
		
	
		
			
				
					|  |  |  |     "Note: This option must be set in .vimrc(_vimrc).  NOT IN .gvimrc(_gvimrc)! | 
			
		
	
		
			
				
					|  |  |  |     " Disable AutoComplPop. | 
			
		
	
		
			
				
					|  |  |  |     let g:acp_enableAtStartup = 0 | 
			
		
	
		
			
				
					|  |  |  |     " Use neocomplete. | 
			
		
	
		
			
				
					|  |  |  |     let g:neocomplete#enable_at_startup = 1 | 
			
		
	
		
			
				
					|  |  |  |     " Use smartcase. | 
			
		
	
		
			
				
					|  |  |  |     let g:neocomplete#enable_smart_case = 1 | 
			
		
	
		
			
				
					|  |  |  |     " Set minimum syntax keyword length. | 
			
		
	
		
			
				
					|  |  |  |     let g:neocomplete#sources#syntax#min_keyword_length = 3 | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     " Define dictionary. | 
			
		
	
		
			
				
					|  |  |  |     let g:neocomplete#sources#dictionary#dictionaries = { | 
			
		
	
		
			
				
					|  |  |  |                 \ 'default' : '', | 
			
		
	
		
			
				
					|  |  |  |                 \ 'vimshell' : $HOME.'/.vimshell_hist', | 
			
		
	
		
			
				
					|  |  |  |                 \ 'scheme' : $HOME.'/.gosh_completions' | 
			
		
	
		
			
				
					|  |  |  |                 \ } | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " Define keyword. | 
			
		
	
		
			
				
					|  |  |  | if !exists('g:neocomplete#keyword_patterns') | 
			
		
	
		
			
				
					|  |  |  |     " Define keyword. | 
			
		
	
		
			
				
					|  |  |  |     if !exists('g:neocomplete#keyword_patterns') | 
			
		
	
		
			
				
					|  |  |  |         let g:neocomplete#keyword_patterns = {} | 
			
		
	
		
			
				
					|  |  |  | endif | 
			
		
	
		
			
				
					|  |  |  | let g:neocomplete#keyword_patterns['default'] = '\h\w*' | 
			
		
	
		
			
				
					|  |  |  |     endif | 
			
		
	
		
			
				
					|  |  |  |     let g:neocomplete#keyword_patterns['default'] = '\h\w*' | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " Plugin key-mappings. | 
			
		
	
		
			
				
					|  |  |  | inoremap <expr><C-g>     neocomplete#undo_completion() | 
			
		
	
		
			
				
					|  |  |  | inoremap <expr><C-l>     neocomplete#complete_common_string() | 
			
		
	
		
			
				
					|  |  |  |     " Plugin key-mappings. | 
			
		
	
		
			
				
					|  |  |  |     inoremap <expr><C-g>     neocomplete#undo_completion() | 
			
		
	
		
			
				
					|  |  |  |     inoremap <expr><C-l>     neocomplete#complete_common_string() | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " Recommended key-mappings. | 
			
		
	
		
			
				
					|  |  |  | " <CR>: close popup and save indent. | 
			
		
	
		
			
				
					|  |  |  | inoremap <silent> <CR> <C-r>=<SID>my_cr_function()<CR> | 
			
		
	
		
			
				
					|  |  |  | function! s:my_cr_function() | 
			
		
	
		
			
				
					|  |  |  |     " Recommended key-mappings. | 
			
		
	
		
			
				
					|  |  |  |     " <CR>: close popup and save indent. | 
			
		
	
		
			
				
					|  |  |  |     inoremap <silent> <CR> <C-r>=<SID>my_cr_function()<CR> | 
			
		
	
		
			
				
					|  |  |  |     function! s:my_cr_function() | 
			
		
	
		
			
				
					|  |  |  |         return (pumvisible() ? "\<C-y>" : "" ) . "\<CR>" | 
			
		
	
		
			
				
					|  |  |  |         " For no inserting <CR> key. | 
			
		
	
		
			
				
					|  |  |  |         "return pumvisible() ? "\<C-y>" : "\<CR>" | 
			
		
	
		
			
				
					|  |  |  | endfunction | 
			
		
	
		
			
				
					|  |  |  | " <TAB>: completion. | 
			
		
	
		
			
				
					|  |  |  | inoremap <expr><TAB>  pumvisible() ? "\<C-n>" : "\<TAB>" | 
			
		
	
		
			
				
					|  |  |  | " <C-h>, <BS>: close popup and delete backword char. | 
			
		
	
		
			
				
					|  |  |  | inoremap <expr><C-h> neocomplete#smart_close_popup()."\<C-h>" | 
			
		
	
		
			
				
					|  |  |  | inoremap <expr><BS> neocomplete#smart_close_popup()."\<C-h>" | 
			
		
	
		
			
				
					|  |  |  | " Close popup by <Space>. | 
			
		
	
		
			
				
					|  |  |  | "inoremap <expr><Space> pumvisible() ? "\<C-y>" : "\<Space>" | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " AutoComplPop like behavior. | 
			
		
	
		
			
				
					|  |  |  | "let g:neocomplete#enable_auto_select = 1 | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " Shell like behavior(not recommended). | 
			
		
	
		
			
				
					|  |  |  | "set completeopt+=longest | 
			
		
	
		
			
				
					|  |  |  | "let g:neocomplete#enable_auto_select = 1 | 
			
		
	
		
			
				
					|  |  |  | "let g:neocomplete#disable_auto_complete = 1 | 
			
		
	
		
			
				
					|  |  |  | "inoremap <expr><TAB>  pumvisible() ? "\<Down>" : "\<C-x>\<C-u>" | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " Enable omni completion. | 
			
		
	
		
			
				
					|  |  |  | autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS | 
			
		
	
		
			
				
					|  |  |  | autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags | 
			
		
	
		
			
				
					|  |  |  | autocmd FileType javascript setlocal omnifunc=tern#Complete | 
			
		
	
		
			
				
					|  |  |  | autocmd FileType python setlocal omnifunc=pythoncomplete#Complete | 
			
		
	
		
			
				
					|  |  |  | autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " Enable heavy omni completion. | 
			
		
	
		
			
				
					|  |  |  | if !exists('g:neocomplete#sources#omni#input_patterns') | 
			
		
	
		
			
				
					|  |  |  |     endfunction | 
			
		
	
		
			
				
					|  |  |  |     " <TAB>: completion. | 
			
		
	
		
			
				
					|  |  |  |     inoremap <expr><TAB>  pumvisible() ? "\<C-n>" : "\<TAB>" | 
			
		
	
		
			
				
					|  |  |  |     " <C-h>, <BS>: close popup and delete backword char. | 
			
		
	
		
			
				
					|  |  |  |     inoremap <expr><C-h> neocomplete#smart_close_popup()."\<C-h>" | 
			
		
	
		
			
				
					|  |  |  |     inoremap <expr><BS> neocomplete#smart_close_popup()."\<C-h>" | 
			
		
	
		
			
				
					|  |  |  |     " Close popup by <Space>. | 
			
		
	
		
			
				
					|  |  |  |     "inoremap <expr><Space> pumvisible() ? "\<C-y>" : "\<Space>" | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     " AutoComplPop like behavior. | 
			
		
	
		
			
				
					|  |  |  |     "let g:neocomplete#enable_auto_select = 1 | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     " Shell like behavior(not recommended). | 
			
		
	
		
			
				
					|  |  |  |     "set completeopt+=longest | 
			
		
	
		
			
				
					|  |  |  |     "let g:neocomplete#enable_auto_select = 1 | 
			
		
	
		
			
				
					|  |  |  |     "let g:neocomplete#disable_auto_complete = 1 | 
			
		
	
		
			
				
					|  |  |  |     "inoremap <expr><TAB>  pumvisible() ? "\<Down>" : "\<C-x>\<C-u>" | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     " Enable omni completion. | 
			
		
	
		
			
				
					|  |  |  |     autocmd FileType css setlocal omnifunc=csscomplete#CompleteCSS | 
			
		
	
		
			
				
					|  |  |  |     autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags | 
			
		
	
		
			
				
					|  |  |  |     autocmd FileType javascript setlocal omnifunc=tern#Complete | 
			
		
	
		
			
				
					|  |  |  |     autocmd FileType python setlocal omnifunc=pythoncomplete#Complete | 
			
		
	
		
			
				
					|  |  |  |     autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     " Enable heavy omni completion. | 
			
		
	
		
			
				
					|  |  |  |     if !exists('g:neocomplete#sources#omni#input_patterns') | 
			
		
	
		
			
				
					|  |  |  |         let g:neocomplete#sources#omni#input_patterns = {} | 
			
		
	
		
			
				
					|  |  |  | endif | 
			
		
	
		
			
				
					|  |  |  | "let g:neocomplete#sources#omni#input_patterns.php = '[^. \t]->\h\w*\|\h\w*::' | 
			
		
	
		
			
				
					|  |  |  | "let g:neocomplete#sources#omni#input_patterns.c = '[^.[:digit:] *\t]\%(\.\|->\)' | 
			
		
	
		
			
				
					|  |  |  | "let g:neocomplete#sources#omni#input_patterns.cpp = '[^.[:digit:] *\t]\%(\.\|->\)\|\h\w*::' | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " For perlomni.vim setting. | 
			
		
	
		
			
				
					|  |  |  | " https://github.com/c9s/perlomni.vim | 
			
		
	
		
			
				
					|  |  |  | let g:neocomplete#sources#omni#input_patterns.perl = '\h\w*->\h\w*\|\h\w*::' | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " Plugin key-mappings. | 
			
		
	
		
			
				
					|  |  |  | imap <C-k>     <Plug>(neosnippet_expand_or_jump) | 
			
		
	
		
			
				
					|  |  |  | smap <C-k>     <Plug>(neosnippet_expand_or_jump) | 
			
		
	
		
			
				
					|  |  |  | xmap <C-k>     <Plug>(neosnippet_expand_target) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " SuperTab like snippets behavior. | 
			
		
	
		
			
				
					|  |  |  | "imap <expr><TAB> | 
			
		
	
		
			
				
					|  |  |  | " \ pumvisible() ? "\<C-n>" : | 
			
		
	
		
			
				
					|  |  |  | " \ neosnippet#expandable_or_jumpable() ? | 
			
		
	
		
			
				
					|  |  |  | " \    "\<Plug>(neosnippet_expand_or_jump)" : "\<TAB>" | 
			
		
	
		
			
				
					|  |  |  | smap <expr><TAB> neosnippet#expandable_or_jumpable() ? | 
			
		
	
		
			
				
					|  |  |  |     endif | 
			
		
	
		
			
				
					|  |  |  |     "let g:neocomplete#sources#omni#input_patterns.php = '[^. \t]->\h\w*\|\h\w*::' | 
			
		
	
		
			
				
					|  |  |  |     "let g:neocomplete#sources#omni#input_patterns.c = '[^.[:digit:] *\t]\%(\.\|->\)' | 
			
		
	
		
			
				
					|  |  |  |     "let g:neocomplete#sources#omni#input_patterns.cpp = '[^.[:digit:] *\t]\%(\.\|->\)\|\h\w*::' | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     " For perlomni.vim setting. | 
			
		
	
		
			
				
					|  |  |  |     " https://github.com/c9s/perlomni.vim | 
			
		
	
		
			
				
					|  |  |  |     let g:neocomplete#sources#omni#input_patterns.perl = '\h\w*->\h\w*\|\h\w*::' | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     " Plugin key-mappings. | 
			
		
	
		
			
				
					|  |  |  |     imap <C-k>     <Plug>(neosnippet_expand_or_jump) | 
			
		
	
		
			
				
					|  |  |  |     smap <C-k>     <Plug>(neosnippet_expand_or_jump) | 
			
		
	
		
			
				
					|  |  |  |     xmap <C-k>     <Plug>(neosnippet_expand_target) | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     " SuperTab like snippets behavior. | 
			
		
	
		
			
				
					|  |  |  |     "imap <expr><TAB> | 
			
		
	
		
			
				
					|  |  |  |     " \ pumvisible() ? "\<C-n>" : | 
			
		
	
		
			
				
					|  |  |  |     " \ neosnippet#expandable_or_jumpable() ? | 
			
		
	
		
			
				
					|  |  |  |     " \    "\<Plug>(neosnippet_expand_or_jump)" : "\<TAB>" | 
			
		
	
		
			
				
					|  |  |  |     smap <expr><TAB> neosnippet#expandable_or_jumpable() ? | 
			
		
	
		
			
				
					|  |  |  |                 \ "\<Plug>(neosnippet_expand_or_jump)" : "\<TAB>" | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | " For conceal markers. | 
			
		
	
		
			
				
					|  |  |  | if has('conceal') | 
			
		
	
		
			
				
					|  |  |  |     " For conceal markers. | 
			
		
	
		
			
				
					|  |  |  |     if has('conceal') | 
			
		
	
		
			
				
					|  |  |  |         set conceallevel=2 concealcursor=niv | 
			
		
	
		
			
				
					|  |  |  |     endif | 
			
		
	
		
			
				
					|  |  |  |     let g:neosnippet#snippets_directory = '~/.dotfiles/vim/neosnippets' | 
			
		
	
		
			
				
					|  |  |  | else | 
			
		
	
		
			
				
					|  |  |  |     " Use deoplete. | 
			
		
	
		
			
				
					|  |  |  |     let g:deoplete#enable_at_startup = 1 | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     " Use TAB to cycle between matches | 
			
		
	
		
			
				
					|  |  |  |     inoremap <silent><expr><tab> pumvisible() ? "\<c-n>" : "\<tab>" | 
			
		
	
		
			
				
					|  |  |  |     inoremap <silent><expr><s-tab> pumvisible() ? "\<c-p>" : "\<s-tab>" | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  |     let g:deoplete#ignore_sources = get(g:, 'deoplete#ignore_sources', {}) | 
			
		
	
		
			
				
					|  |  |  |     let g:deoplete#ignore_sources.php = ['omni'] | 
			
		
	
		
			
				
					|  |  |  | endif | 
			
		
	
		
			
				
					|  |  |  | let g:neosnippet#snippets_directory = '~/.dotfiles/vim/neosnippets' | 
			
		
	
		
			
				
					|  |  |  | "}}} | 
			
		
	
		
			
				
					|  |  |  | 
 | 
			
		
	
		
			
				
					|  |  |  | set foldmethod=marker" |