From 3ce655f4280f45dfb4151fe651d088b64b28d57f Mon Sep 17 00:00:00 2001 From: David Halter Date: Wed, 28 Aug 2013 15:42:02 +0430 Subject: [PATCH] autocomplete function simplified, #136 --- autoload/jedi.vim | 18 ++++++++++++++++++ ftplugin/python/jedi.vim | 15 +++++++++------ 2 files changed, 27 insertions(+), 6 deletions(-) diff --git a/autoload/jedi.vim b/autoload/jedi.vim index d74e114..982dac8 100644 --- a/autoload/jedi.vim +++ b/autoload/jedi.vim @@ -169,6 +169,24 @@ function! jedi#_vim_exceptions(str, is_eval) return l:result endfunction + +function! jedi#auto_complete_string() + if pumvisible() + return "\" + else + return "\\\=jedi#auto_complete_opened()\" + end +endfunction + +function! jedi#auto_complete_opened() + if pumvisible() + return "\" + end + return "" +endfunction + + + " ------------------------------------------------------------------------ " deprecations " ------------------------------------------------------------------------ diff --git a/ftplugin/python/jedi.vim b/ftplugin/python/jedi.vim index 42d6ba9..fccdfc3 100644 --- a/ftplugin/python/jedi.vim +++ b/ftplugin/python/jedi.vim @@ -14,11 +14,14 @@ if g:jedi#auto_initialization " map ctrl+space for autocompletion if g:jedi#completions_command == "" " in terminals, sometimes equals - inoremap pumvisible() \|\| &omnifunc == '' ? - \ "\C-n>" : - \ "\C-x>\C-o>=pumvisible() ?" . - \ "\"\\c-n>\\c-p>\\c-n>\" :" . - \ "\" \\bs>\\C-n>\"\" + " + "if g:jedi#popup_select_first + "inoremap pumvisible() ? + " \ "" : + " \ "=pumvisible() ?" . + " \ "\"\\c-n>\\c-p>\\c-n>\" :" . + " \ "\" \\bs>\\C-n>\"\" + inoremap jedi#auto_complete_string() endif if g:jedi#completions_command != "" execute "inoremap ".g:jedi#completions_command." " @@ -59,7 +62,7 @@ end if g:jedi#popup_on_dot if stridx(&completeopt, 'longest') > -1 if g:jedi#popup_select_first - inoremap . .=jedi#do_popup_on_dot() ? "\C-X>\C-O>\C-N>" : "" + inoremap . .=jedi#do_popup_on_dot() ? "\C-X>\C-O>\Down>" : "" else inoremap . .=jedi#do_popup_on_dot() ? "\C-X>\C-O>" : "" end