diff --git a/autoload/jedi.vim b/autoload/jedi.vim index 95e11cf..870fdb7 100644 --- a/autoload/jedi.vim +++ b/autoload/jedi.vim @@ -187,6 +187,7 @@ function! jedi#complete_string(is_popup_on_dot) end endfunction + function! jedi#complete_opened() if pumvisible() && g:jedi#popup_select_first && stridx(&completeopt, 'longest') > -1 " only go down if it is visible, user-enabled and the longest option is set diff --git a/test/completions.vim b/test/completions.vim index 8e2b579..cd57da9 100644 --- a/test/completions.vim +++ b/test/completions.vim @@ -32,8 +32,20 @@ describe 'completions' end it 'cycling through entries' + " testing select_first doesn't seem to work in ex mode execute "normal oraise impX\\\" Expect getline('.') == 'raise ImportWarning' + let g:jedi#popup_select_first = 0 + execute "normal oraise impX\\\" + Expect getline('.') == 'raise ImportWarning' + let g:jedi#popup_select_first = 1 + + " -longest completes the first one + set completeopt -=longest + execute "normal oraise baseX" + Expect getline('.') == 'raise BaseException' + set completeopt +=longest + end end