Finalización de argumentos para python


9

¿Hay alguna manera de completar el argumento para python?

Actualmente estoy usando una combinación de ctags, python-mode y YouCompleteMe, pero me falta una función para completar automáticamente los argumentos de una función (o mostrarlos al menos).

¿Hay un complemento que lo soporte?

Estoy usando vim / gvim 7.4 y Ubuntu 14.04

Respuestas:


10

De forma predeterminada, (con un vimrc mínimo y sin complementos instalados), esto ya es posible.

Vim se envía con múltiples complementos de tipo de archivo y algunos de estos complementos ofrecen omni-terminación desde el primer momento. Por ejemplo, python viene con pythoncomplete.vim.

Si usa el pythoncomplete.vim predeterminado que se incluye con Vim (es decir, sin YouCompleteMe, sin modo de python, sin jedi-vim), obtendrá una ventana de vista previa cuando complete una función, que muestre los argumentos de las palabras clave.

Todo lo que necesitas es Vim con +pythonfunción ( :echo has('python')muestra 1). Si lo hace, esto es todo lo que se necesita para habilitar la omni-finalización de Python predeterminada con su vimrc:

filetype plugin indent on

Después de buscar muchas otras soluciones de finalización para python (jedi, python-mode), me ha gustado pythoncomplete.vim que se envía con Vim mucho más. Es simple y lo más importante para mí, es muy estable, especialmente en comparación con soluciones como jedi-vim / python-mode y YouCompleteMe.

Así es como se ve la solución predeterminada. No ofrece la finalización de argumentos, sino que solo los muestra en la ventana de vista previa para que le resulte fácil completar los argumentos de palabras clave de la siguiente manera:

ingrese la descripción de la imagen aquí


2
@ lcd047: ¿De qué manera esto no responde la pregunta? La pregunta era encontrar una solución para "autocompletar los argumentos de una función (o mostrarlos al menos)". Sugerí una solución que mostrara los argumentos de una función. Usted propuso completar los argumentos, yo propuse mostrarlos. El interlocutor puede elegir su preferencia. No veo el problema aquí.
akshay

Quiero encontrar más información sobre este complemento. ¿Como lo usas? ¿Necesito etiquetas para ello?
Neaţu Ovidiu Gabriel

@ NeaţuOvidiuGabriel: este complemento está integrado en Vim, no necesita nada más que lo que mi respuesta le dice.
akshay
Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.