Завершение аргумента для python


9

Есть ли способ получить завершение аргумента для Python?

В настоящее время я использую комбинацию ctags, python-mode и YouCompleteMe, но мне не хватает функции для автозаполнения аргументов функции (или, по крайней мере, их показа).

Есть ли плагин, который поддерживает это?

Я использую vim / gvim 7.4 и Ubuntu 14.04

Ответы:


10

По умолчанию (с минимальным vimrc и без установленных плагинов) это уже возможно.

Vim поставляется с несколькими подключаемыми модулями файловых типов, и некоторые из этих подключаемых модулей предлагают omni-complete прямо из коробки. Например, python поставляется с pythoncomplete.vim.

Если вы используете pythoncomplete.vim по умолчанию, который поставляется с Vim (т.е. без YouCompleteMe, без python-mode, без jedi-vim), вы получите окно предварительного просмотра, когда завершите функцию, которая показывает аргументы ключевого слова.

Все, что вам нужно, это Vim с +pythonфункцией ( :echo has('python')показывает 1). Если вы это сделаете, то это все, что нужно, чтобы включить омни-завершение Python по умолчанию с вашим vimrc:

filetype plugin indent on

После поиска многих других завершающих решений для python (jedi, python-mode), я полюбил pythoncomplete.vim, который поставляется с Vim намного больше. Это просто, и самое главное для меня, это очень стабильно, особенно по сравнению с такими решениями, как jedi-vim / python-mode и YouCompleteMe.

Вот как выглядит стандартное решение. Он не предлагает завершение аргументов, а просто показывает их в окне предварительного просмотра, поэтому вам легко заполнить ключевые аргументы примерно так:

введите описание изображения здесь


2
@ lcd047: Каким образом это не отвечает на вопрос? Вопрос заключался в том, чтобы найти решение «автозаполнения аргументов функции (или показать их хотя бы.)». Я предложил решение, которое бы показывало аргументы функции. Вы предложили довод до конца, я предложил показать их. Спрашивающий может выбрать свое предпочтение. Я не вижу здесь проблемы.
Акшай

Я хочу найти больше информации об этом плагине. Как вы используете его? Нужны ли для этого ctags?
Неау Овидиу Габриэль

@ NeaţuOvidiuGabriel: этот плагин встроен в Vim, вам не нужно ничего, кроме того, что говорит мой ответ.
Акшай
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.