2013-02-28 32 views
5

Sto cercando di ottenere il suggerimento del codice (la casella a discesa) per suggerire correttamente.Sublime Text 2: completamento del codice Python

Al momento no. Suggerisce solo, più o meno, identificatori e moduli che si trovano già nel file che si sta modificando (che significa scope nel file). Se, ad esempio, provo questo:

import numpy < --- numpy non è consigliato mentre lo digito.

numpy.a < --- E qui, non viene suggerito nulla che inizi con "a".

Ho implementato una serie di cose suggerite in vari siti, compreso quanto segue, ma senza successo nell'ottenere suggerimenti code-complete corrette a comparire, o, talvolta, ad apparire a tutti:

- Installed SublimeRope 
- "use_simple_completion": true (in SublimeRope.sublime-settings) 
- "auto_complete_triggers": [ {"selector": "source.python - string - comment - constant.numeroc", "characters": "."} ] (in Pyhon.sublime-settings) 
- etc. 

Mi manca qualcosa (ovviamente sono :)). Apprezzo i suggerimenti.

+1

Sta funzionando come dovrebbe. Sublime Text non completa automaticamente i nomi dei moduli arbitrari o il loro contenuto, per quanto ne so - anche in Python. – Ryan

+0

Come diceva minitech, non hai fatto nulla di sbagliato, se non che pensi a SublimeText come a qualche IDE. È un editor di testo con un'interfaccia piacevole. Anche geany è migliore (ma l'autocompleto fa schifo). Se hai bisogno di "esplorare" la funzione dal pacchetto/moduli, prova dreampie come shell (puoi copiare/incollare codice) o un vero IDE (SPE, Ninja, Eric, Aptana, NetBeans, PyCharm ...) – cox

+0

Grazie a minitech3 e Cox. Io uso "Komodo" e "Wing IDE" già come IDE Python completo (soprattutto con Wing IDE in particolare); e dal tty uso il "bpython" basato su curses (che è eccellente, e ha il completamento automatico completo). Speravo che SublimeText sarebbe stato un bel incrocio tra la leggerezza di bython e l'esperienza più pesante di Wing/Komodo. Ma immagino non al momento in cui scrivo. Comunque, mi piace SublimeText e lo userò. Apprezzo le risposte. :) –

risposta

11

Il completamento automatico di Sublime è inteso per corrispondere all'interno del file corrente.

Se si desidera avere il completamento del codice sulla base di caratteristiche sintattiche del linguaggio, hai molte opzioni, ma vorrei suggerire una combinazione dei seguenti elementi:

Speranza che aiuta.

+0

Grazie. Lo fa.In realtà avevo provato CodeIntel che è ciò che mi ha avvicinato a quello che volevo, anche se lotta ancora per auto-suggerire correttamente (e rallenta le cose - come qualsiasi altro plug-in naturalmente - altre ancora come altre). Il tuo commento mi ha fatto sapere che stavo andando nella giusta direzione (con la miriade di impostazioni che ci sono). Eviterei la tua risposta (perché è corretta), ma ho solo un misero 6 punti. :) –