Completamento argomento per Python


9

C'è un modo per ottenere il completamento dell'argomento per Python?

Attualmente sto usando una combinazione di tag, modalità pitone e YouCompleteMe, ma mi manca una funzione per completare automaticamente gli argomenti di una funzione (o almeno mostrarli).

C'è un plugin che lo supporta?

Sto usando vim / gvim 7.4 e Ubuntu 14.04

Risposte:


10

Per impostazione predefinita, (con un vimrc minimo e nessun plug-in installato), questo è già possibile.

Vim viene fornito con più plug-in di tipo di file e alcuni di questi plug-in offrono un completamento completo immediato. Ad esempio, python viene fornito con pythoncomplete.vim.

Se si utilizza pythoncomplete.vim predefinito fornito con Vim, (ovvero senza YouCompleteMe, senza modalità Python, senza jedi-vim), quando si completa una funzione viene visualizzata una finestra di anteprima che mostra gli argomenti delle parole chiave.

Tutto ciò che serve è Vim con +pythonfunzionalità ( :echo has('python')mostra 1). Se lo fai, allora è tutto ciò che serve per abilitare l'omni-completamento di Python predefinito con il tuo vimrc:

filetype plugin indent on

Dopo aver cercato molte altre soluzioni di completamento per Python (jedi, modalità Python), sono arrivato a pythoncomplete.vim che viene spedito con Vim molto di più. È semplice e, cosa più importante per me, è molto stabile, soprattutto rispetto a soluzioni come jedi-vim / python-mode e YouCompleteMe.

Ecco come appare la soluzione predefinita. Non offre il completamento degli argomenti, ma li mostra solo nella finestra di anteprima, quindi è facile compilare gli argomenti delle parole chiave in questo modo:

inserisci qui la descrizione dell'immagine


2
@ lcd047: in che modo questo non risponde alla domanda? La domanda era trovare una soluzione per "completare automaticamente gli argomenti di una funzione (o mostrarli almeno.)". Ho suggerito una soluzione che mostrasse gli argomenti di una funzione. Hai proposto il completamento degli argomenti, ho proposto di mostrarli. L'interrogante può scegliere la sua preferenza. Non vedo il problema qui.
akshay,

Voglio trovare maggiori informazioni su questo plugin. Come lo usi? Ho bisogno di tag per questo?
Neaţu Ovidiu Gabriel,

@ NeaţuOvidiuGabriel: questo plugin è integrato in Vim, non hai bisogno di nient'altro che ciò che la mia risposta ti dice.
akshay,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.