GNU Emacs uno de los mejores programas que uso
Es un editor de texto software libre además de ser longevo teniendo una base bastante estable, tiene varios detalles que me gustan bastante como por ejemplo una gran expansibilidad mediante el lenguaje Emacs Lisp también conocido como Elisp, es un lenguaje tipo Lisp, de hecho una vez en Reddit leí algo de que cuando se dice que Emacs es un interprete de este lenguaje si se referían a algo como markdown o HTML, ja, nada de eso a diferencia de los archivos JSON usados para configurar Visual Studio Code, elisp es un lenguaje de programación completo que te permite crear funciones y hacer lo que haces en un lenguaje de programación por lo que tus capacidades para configurar el editor son extraordinariamente más poderosas que en VSCode de hecho, por eso si tienes tiempo y quieres un entorno que se adapte a ti lo recomiendo con Emacs no solo vas a poder escribir código, usar tecnologías como LSP, sino qué gracias al modo Org y otros paquetes vas a poder organizar tareas, y proyectos enteros, e incluso escribir ensayos, libros, también es posible leer correos electrónicos y demás, además hay un montón más de cosas que se pueden hacer para automatizar el flujo de trabajo. Y el editor está bastante bien documentado, incluso tiene un tutorial que también está disponible en español.
¿Que es Emacs Lisp?
Bueno como se puede deducir por lo que he escrito arriba es un lenguaje de programación tipo Lisp, y que tienen de peculiar estos lenguajes pues los paréntesis que llevan por ejemplo esto de aquí es un ejemplo de un código en Emacs Lisp para mostrar un hola mundo en el minibuffer la parte más abajo del editor debajo de donde pone el nombre del archivo, el message box crea un cuadro de diálogo con el texto que quieres
(message "Hola burto")
(message-box "Hola")
Sin embargo, tal y como he comentado es posible hacer cosas más complejas
como esta función que tengo en mi configuración de Emacs, esta función
nos permite añadir un archivo al fichero .gitignore
de nuestro
proyecto git es fácil escojamos el archivo y abrimos en un buffer él
archivo gitignore que normalmente está en la carpeta raíz del proyecto
de Git voy al final del fichero e inserto un salto de línea más él
fichero que quiero guardo los cambios y ya está. O sea bien a lo mejor
Intellij o VScode ya dan esto porque al trabajar en un proyecto pues
puede ser necesario hacer eso para ir más rápido, pero es casi seguro que
si no lo proporcionaran no tendrías tantas facilidades para añadir la
funcionalidad al menos si no contamos con las extensiones, aquí puedes o
usar algo ya hecho por otros o hacértelo tú mismo.
(defun append-to-gitignore (file)
"Añade archivos al gitignore"
(interactive "fSelect a file to append in the gitignore: ")
(with-current-buffer (find-file-noselect (expand-file-name ".gitignore" (vc-root-dir)))
(end-of-buffer)
(insert (format "\n%s" file))
(save-buffer)))
Y literalmente se puede hacer más incluso yo he arañado bastante la
superficie de todo lo que se puede llegar por ejemplo con el archivo
.dirs-locale.el
para definir variables a nivel de un directorio,
actualmente yo uso GNU Emacs con diversos paquetes para proporcionar una
experiencia más chulo uno de ellos son por ejemplo los ef-themes de
Protesilaos muy
recomendados que además pueden hacer que Emacs se vea espectacular.
Conclusiones
GNU Emacs es un editor maravilloso que nos permite hacer de todo sin embargo siendo realistas en comparación con editores como Intellij o VSCode no tiene todo tan fuera de caja y a veces incluso el debugeo de código en lenguajes como Python y así es algo más complejo, con Java no estoy pudiendo hacer mucho aunque debería ponerme en esencia a intentar hacer algo si estas trabajando y necesitas algo fuera de caja que cumpla tus requerimientos inmediatos a lo mejor no es lo mejor pero si te gusta, te he picado el gusanillo y tienes tiempo pues ponerte a aprender esto y armarte tu config pues es algo interesante. Es un editor que yo recomiendo bastante de hecho este mismo articulo hice con el modo Org gracias a pandoc o a la propia herramienta que tiene Emacs para exportar archivos Org si la tienes configurada a tal efecto permite exportar a un buffer en Markdown y desde ahí bueno copio y pego en la pagina de sopa de letras y ya esta el articulo lo chulo de GNU Emacs al usarlo con Org es que puedo por ejemplo plegar títulos quedan bonitos tengo buena corrección ortográfica y además de todo eso puedo usar paquetes como Logos de Protesilaos junto con Olivetti para tener un modo sin distracciones lo que me permite escribir de forma más eficiente y xcómoda para mi además al ser un editor de texto puedo guardar los cambios en mi ordenador y demás con un nombre en una carpeta especifica para acordarme mejor de lo que era, lo cual facilita bastante el proceso de escritura o de si tengo varios artículos pendientes poder tener ahí los prototipos de articulo mejor manera