2012-02-24 22 views
7

Esistono opzioni intellisense per linguaggi come Ruby, Ruby on Rails, Python, ecc.?Intellisense per Ruby, Ruby on Rails, Python

Questo potrebbe includere un IDE, se necessario. Sto cercando qualcosa come C# di Visual Studio o java intellisense di Eclipse.

+0

Prova http://www.jetbrains.com - hanno IDE per Ruby, Python e altri – PinnyM

+1

sarei particolarmente interessato _Free_ quelli. Aptana è di solito il mio go-to per Ruby/Rails (anche se non ho usato per un po '), ma IIRC suo completamento automatico ha alcuni problemi con la natura dinamica dei soci e dei tipi. – Chowlett

risposta

3

A causa della natura dinamica di queste lingue, attuando le cose come auto-completamento è abbastanza difficile, e funziona solo per alcuni casi.

Esempi di Python: pydev (plug-in Eclipse), rope (questa è una libreria refactoring che può essere facilmente utilizzato in emacs), anyting with ipython (di nuovo, una modalità emacs).

Ad ogni modo, non aspettatevi che siano potenti quanto gli strumenti che avete per Java o C#.

Corda, ad esempio, esegue un po 'di inferenza di tipo per capire i tipi di parametri per fornire suggerimenti di completamento. Questo potrebbe richiedere molto tempo per le codebases di grandi dimensioni, rendendo così la funzione inutile su tali codebase.

anyting with ipython d'altra parte genera in realtà un processo in background python che importa il modulo corrente e tutti i moduli a cui fa riferimento, e verifica il runtime su entità (classi, funzioni, variabili globali ...) in quei moduli. Poiché non esegue l'inferenza del tipo, non può fornire alcun suggerimento di completamento automatico per le variabili passate come parametri o variabili locali.

0

Utilizzare vim con dot files che include evidenziazione della sintassi, rientro intelligente, completamento automatico per Ruby tra le altre funzioni. Sebbene sia stato utilizzato per MacOS, puoi adattarti facilmente al tuo sistema operativo se ne stai utilizzando altri.

Un'altra opzione include Aptana per Eclipse o Jetbrains RubyMine. Quindi prova tutte le soluzioni e decidi quale sia la soluzione più adatta alle tue esigenze.

0

Il mio vim setup utilizza i plug-in super-completamento, snipmate e python-mode per il completamento principalmente intellisense.

E 'finestre centric, perché è quello che ho sviluppato, ma basta modificare i percorsi nel file vimrc dopo la clonazione e si dovrebbe essere attivo e funzionante.

0

Sublime Text 2 supporta anche questo in misura limitata. Il completamento automatico è molto difficile per i linguaggi dinamici, quindi questo mostrerà le variabili/metodi di uso recente e qualsiasi altra cosa che si trova nelle vicinanze che corrisponde al filtro di testo fuzzy.