tl;dr: Ir al ganador.
No hace mucho emprendí una cruzada en búsqueda del editor de texto para programación o IDE definitivo. Supongo que todos acabamos haciendo esto alguna vez. Bueno, todos salvo los que nacen atados a Visual Studio y .NET.
Estos eran mis requisitos. No son muchos:
- Software libre.
- Multiplataforma.
- Soporte para todos los lenguajes con los que suelo trabajar.
Hay 3 enfoques diferentes para abordar esto, con sus pros y sus contras:
IDE
Probé Eclipse (mastodonte heterogéneo con un hambre insaciable de RAM), NetBeans (genial pero sin soporte para Python) y jEdit (ligero pero insuficiente), y al final llegué a la conclusión de que están bien, pero su principal error es tratar de abarcar todos los campos. Sencillamente no puedes hacerlo bien todo. Quien mucho abarca poco aprieta.
Ojo, para desarrollo PHP, NetBeans me parece fabuloso. Si tuviera Python, probablemente sería el ganador.
Editores a la vieja usanza
Visto que una solución integral era poco viable, pensé en usar la filosofía Unix: que haga una cosa y la haga bien: "Si quiero control de versiones, debug, etc., puedo hacerlo con otros programas separados especializados. Necesito un buen editor. Vayamos a los clásicos."
Probé nano (cómodo para cosas rápidas por SSH, pero insuficiente), Vim (no me acostumbro a eso de tener que activar el modo edición) y Emacs (acabas dedicándole más tiempo a tu editor de texto que a editar texto).
Tienen la ventaja de funcionar por SSH bien, pero lamentablemente nací en la era del Ctrl+C y Ctrl+V, y soy muy eficiente con mis queridos atajos de teclado estilo GUI de siempre. Tener que volver a aprender de cero me parecía una tarea costosa y, francamente, insuficientemente remunerada.
Me topé con ErgoEmacs, que es un proyecto que intenta hacer el aterrizaje en Emacs más potable. Me pareció un proyecto estupendo, pero al final acabé dedicando tantísimo tiempo a escribir lisp (un lenguaje horroroso que no me sirve para otra cosa) que me aburrí. Al menos sí me di cuenta de que saber extender tu propio editor es algo muy valioso.
Así que pensé: "probemos con los editores de texto visuales".
Editores GUI
Probé Gedit, Kate y Notepad++, a cada cual más completo, pero no cumplían demasiado bien mi requisito de ser multiplataforma. Quiero decir que puedes usar versiones de Gedit y Kate en Windows, o Notepad++ con Wine, pero se nota que no fueron creados con esa mentalidad.
Entonces surgió la gran pregunta: ¿No habrá un buen editor de texto, multiplataforma, libre, que soporte muchos lenguajes, que no intente hacer más de lo que puede, que sea extensible... en definitiva, que tenga lo mejor de todas las opciones?
El ganador
De repente encontré Enki. La breve pero sencilla descripción de sus características principales que tenéis en ese enlace me enamoró. La traduzco aquí:
- Fácil para el usuario. Interfaz intuitiva. Funciona bien sin configurar nada. No necesita leer toneladas de documentación.
- Fácil para programadores. Programe lo más rápido que pueda. Sin ratón.
- Ligero. Algunos IDE muestran una pantalla de bienvenida. Enki nunca lo hará. Simplemente arranca rápido.
- Extensible. Los sistemas operativos están diseñados para ejecutar aplicaciones. Enki está diseñado para ejecutar extensiones.
- Multiplataforma. Usa tu editor habitual en cualquier sistema operativo. Actualmente se ha probado en Linux, MacOS X y Windows.
- De alta calidad. No tiene una larga lista de características maravillosas, pero lo que hace, lo hace bien.
- De código libre. Esta es nuestra religión.
En pocas palabras, exactamente lo que buscaba, y creado expresamente para solucionar mi problema.
Hay que tener en cuenta que es un proyecto muy joven, que carece de una gran comunidad de usuarios o desarrolladores, pero es realmente digno de probar y contribuir, y tiene unas ideas fantásticas. Y si tienes que programarte tus personalizaciones, al menos aquí usas Python.