Jedi-vim автоматически вставляет только соответствующий параметр (необходимо отключить его)

Проблема в том, что когда jedi-vim находит только одно совпадение для автозаполнения, оно автоматически вставляет это совпадение. Мне нужно как-то отключить эту функцию.

Что я уже пробовал:

  • let g:jedi#smart_auto_mappings = 0, но это только отключает авто from ... import ... вставки;
  • let g:jedi#popup_on_dot = 0, но он также отключает всплывающее окно на точечные параметры (поэтому мне нужно набрать <C-space> чтобы увидеть это).
  • let g:jedi#popup_select_first = 0 также не поможет, поскольку отключает только выбор первого совпадения во всплывающем меню, но не предотвращает автоматическую вставку только совпадения.

Также у меня не установлены другие плагины автозаполнения. Если это поможет, это мой файл.vimrc

Есть ли способ отключить автоматическую вставку только соответствующей функции, но держать всплывающее окно на точке?

PS вы можете воссоздать это поведение в следующем примере:

class A(InvisibleClass):
    i = 1

Затем, когда вы печатаете A и нажмите точку i будет вставлен автоматически.

1 ответ

Решение

Это поведение контролируется Vim's completeopt вариант. джедай-вим устанавливает его menuone,longest,preview так как вы не изменили его ( начиная здесь). Вы должны явно установить его в своем .vimrc включать noinsert,

Документы Вима говорят, что noinsert не имеет эффекта, если longest присутствует, но это не соответствует поведению, которое я на самом деле вижу (NVIM 0.0.0-alpha+201510011522 (compiled Oct 5 2015 14:55:04)).

Другие вопросы по тегам