Editores para Ruby on Rails
Muchos principiantes de Rails observan los screencast en la página rubyonrails.org y quedan impresionados, entre otras cosas, por la facilidad con que el editor de texto auxilia al programador completando el código y permitiendo cosas como el uso de snippets, tabulación entre parámetros de métodos, coloración de sintaxis, salto entre controladores, modelos y vistas, etc. El editor en cuestión es TextMate, y está diseñado entre otras cosas para dar envidia a quienes no tienen una Mac ni 40 dólares para comprar el editor. Pero el mundo del software libre está lleno de opciones interesantes; la conclusión adelantada es que no se necesita tenerle envidia a TextMate. O, como atinadamente lo expone la descripción de rails.vim, "TextMate es la última moda entre programadores de Rails, pero Vim es eterno". Echemos un vistazo a las opciones de editores de texto para Rails.
TextMate es el editor de texto para Rails por excelencia. Es aparentemente el compañero ideal para Rails: es un editor "joven", de creación reciente, pero que ha hecho muchas olas y ha puesto a editores más establecidos a temblar, por sus características dinámicas, modernas y amigables. Tiene dos desventajas importantes: funciona exclusivamente en equipos Mac, y es software comercial y propietario.
Existen algunas excelentes alternativas en el mundo del software libre. Estas pueden ser útiles para quien busque un editor libre para comenzar a trabajar en Rails. Otras alternativas comprenden expansión de editores "clásicos" y establecidos, lo que permite a gente muy acostumbrada a dichos editores su utilización para adentrarse en el desarrollo de Rails y mantenerse a la vanguardia con herramientas familiares.
En general casi cualquier editor maneja la sintaxis del lenguaje Ruby; el problema viene al incluir los archivos .yaml y .rhtml en la ecuación. Se requiere un editor que pueda comprender estos, en particular los híbridos .rhtml, y mostrarlos de manera que se facilite su comprensión. También es importante poder manejar la gran cantidad de archivos que se generan en un proyecto Rails, y navegar inteligentemente entre ellos (por ejemplo, de un método de un controlador a su correspondiente vista; así como interactuar con las herramientas que componen el proyecto: servidor web de pruebas, el comando script, las pruebas unitarias, funcionales y de integración y el comando rake.
Una opción "bonita" es RadRails, basado en el famoso Eclipse; RadRails se puede conseguir independientemente o bien como un "agregado" para Eclipse. Recordemos que Eclipse constituye un IDE (Ambiente de Desarrollo Integrado) y como tal tiene control sobre todos los aspectos del ambiente de desarrollo, desde la edición de código inteligente, con conocimiento de la estructura de archivos de Rails, hasta manejo de la base de datos e interacción con el servidor web para pruebas (habitualmente Mongrel o WeBRICK". Las ventajas de RadRails son su facilidad de uso y su aspecto gráfico vistoso; aunque la desventaja es que es un poco demandante en cuanto a recursos.
jEdit es un editor de texto muy maduro y representa la frontera entre los editores "vistosos" y los editores tradicionales en modo texto. jEdit está escrito en Java, lo que permite utilizarlo en cualquier plataforma con una JVM, pero lo mismo lo hace un tanto pesado y engorroso. Utilizar jEdit es una cuestión de preferencias, pero de utilizarse, jEdit está completamente preparado para manejo de Rails.
e busca ser un clon de Textmate para Windows. Proporciona las ventajas de Textmate bajo Windows, aunque también su principal desventaja, el ser software propietario y comercial.
Los editores "religiosos" y clásicos, Vim y Emacs, no se han quedado atrás y están tambien en la revolución de Rails.
El clásico Vim es un editor muy poderoso y expandible; esto está evidenciado por su longevidad que ha sobrepasado el advenimiento de varios lenguajes "de moda" y se ha adaptado elegantemente a
todos ellos. Vim está disponible para un sinfín de plataformas, comenzando por casi cualquier variante de Unix, incluyendo a Mac OS X, DOS, Windows y sistemas realmente raros como la Sharp Zaurus y RiscOS. Aprender Vim no es fácil, pero es un talento que rendirá frutos por su gran portabilidad y omnipresencia.
Para Rails, Vim ofrece un script muy completo que proporciona coloración de sintaxis, abreviaciones inteligentes, sensibilidad al contexto, integración con el comando script, extracción automática de parciales y muchas características útiles. Recordemos que Vim ya incluye manejo de sintaxis para el lenguaje Ruby por sí solo.
Un par de scripts útiles son project , que nos brinda la clásica ventana a la izquierda, mostrando el árbol de directorios y la estructura del proyecto, y permitiendo abrir cualquier archivo únicamente señalándolo; y mini buffer explorer, que emula las "pestañas" mostrando todos los archivos que se tienen abiertos en ese momento.
Vim incluso tiene un coloreador de sintaxis e indentación para Haml , disponible aquí .
Así, si bien Vim no es un editor particularmente vistoso, estos aditamentos lo convierten en una herramienta práctica y poderosa para desarrollo con Rails.
emacs-railsEl poderoso Emacs tiene el impresionante Emacs on Rails , del cual está disponible un video demostrando sus características donde nos queda claro que no le pide nada a TextMate. Emacs es también un editor multiplataforma de modo que puede utilizarse prácticamente donde sea. El proyecto Emacs on Rails proporciona una descarga única con todos los scripts necesarios para su funcionamiento e instrucciones de instalación.
Gracias al auge que han cobrado Ruby y Rails, prácticamente cualquier editor de programación nos brindará soporte para estas tecnologías. Ya sea que se prefiera un editor simple, como jEdit o Vim; un editor más potente como Textmate o Emacs; o un ambiente de desarrollo integrado completo del nivel de Eclipse/RadRails, en materia de editores de texto, la herramienta principal del programador, Ruby on Rails está cubierto.