" Use neocomplete. let g:neocomplete#enable_at_startup = 1 " Use neocomplete over other plugins let g:neocomplete#force_overwrite_completefunc = 1 " Use smartcase. let g:neocomplete#enable_smart_case = 1 " Set minimum syntax keyword length. let g:neocomplete#sources#syntax#min_keyword_length = 3 let g:neocomplete#lock_buffer_name_pattern = '\*ku\*' let g:neocomplete#text_mode_filetypes = { \ 'text': 1, \ 'tex': 1, \ 'markdown': 1, \ 'mmd': 1, \ 'gitcommit': 1, \ } " Define dictionary. let g:neocomplete#sources#dictionary#dictionaries = { \ 'default' : '', \ } " Define keyword. if !exists('g:neocomplete#keyword_patterns') let g:neocomplete#keyword_patterns = {} endif let g:neocomplete#keyword_patterns['default'] = '\h\w*' let g:neocomplete#keyword_patterns['gosh-repl'] = "[[:alpha:]+*/@$_=.!?-][[:alnum:]+*/@$_:=.!?-]*" " Plugin key-mappings. inoremap neocomplete#undo_completion() inoremap neocomplete#complete_common_string() inoremap neocomplete#close_popup() inoremap neocomplete#cancel_popup() " Easily disable (the unimpaired way) nnoremap [oC :NeoCompleteEnable nnoremap ]oC :NeoCompleteDisable " Enable omni completion. if !exists('g:neocomplete#force_omni_input_patterns') let g:neocomplete#force_omni_input_patterns = {} endif let g:neocomplete#force_omni_input_patterns.java = '\k\.\k*' autocmd FileType css,scss setlocal omnifunc=csscomplete#CompleteCSS autocmd FileType html,markdown setlocal omnifunc=htmlcomplete#CompleteTags autocmd FileType javascript setlocal omnifunc=javascriptcomplete#CompleteJS autocmd FileType python setlocal omnifunc=pythoncomplete#Complete autocmd FileType xml setlocal omnifunc=xmlcomplete#CompleteTags