Archivo: Emacs | Picando Código - Part 2

Spacemacs: entorno integrado eficiente y sofisticado para Emacs

Viernes, 12 de julio de 2019
Spacemacs

Desde hace unos 2 años vengo usando Spacemacs como editor de texto para programar, escribir y más. Lo he mencionado varias veces en el blog particularmente en posts sobre Emacs, pero nunca escribí al respecto. Es un proyecto que me ha dado mucho y me gustaría compartir lo que he aprendido, y con suerte animar a alguien más a probar Spacemacs. Así que ¡hablemos de Spacemacs! ¿Qué es Spacemacs? Spacemacs es una "distribución" de Emacs. Emacs es un editor de texto extensible y personalizable. Cada uno puede crear su propia "distribución" agregando funciones, paquetes y distintas configuraciones en archivos Elisp […]

Emacs Boostrap: Entornos de desarrollo para Emacs al vuelo

Miércoles, 26 de junio de 2019
Emacs Bootstrap

Emacs Bootstrap es un sitio que te permite generar entornos de desarrollo en Emacs para distintos lenguajes de programación: Python, Ruby, Go, PHP, JavaScript, Web, Haskell, Elixir, Rust, Racket y C. Desde la página elegimos qué lenguages queremos usar con Emacs y va a generar las configuraciones necesarias para empezar a escribir código. También nos permite elegir entre 3 temas distintos: solarized-emacs, zenburn-emacs y spacemacs y qué motor de autocompletado preferimos entre ivy y helm. Esto nos genera un archivo con el directorio .emacs.d ya listo para ubicar en nuestro directorio home, ejecutar Emacs, esperar que se bajen los paquetes […]

Profiling de Emacs e instalación Emacs 26

Viernes, 28 de septiembre de 2018
Emacs

Editando un archivo relativamente largo de código, me empecé a frustrar porque el desplazamiento y renderizado de código andaba lento. Lo primero que tenía que hacer era encontrar el culpable de la lentitud. Por suerte Emacs tiene incorporado un profiler. Para activarlo tenemos que usar M-x profiler-start y seleccionar si queremos hacer profiling de cpu, memoria o ambos. Mi problema parecía de cpu porque se trancaba en momentos que intentaba desplazarme rápido por varias líneas de código. Con M-x profiler-report, podemos ver un buffer nuevo que nos muestra los resultados. Y un test bastante corto mostró cuál era el problema: […]

Emacs y personas: un post "personal"

Miércoles, 16 de mayo de 2018
Emacs

Hace poco vi un artículo compartido en reddit sobre "Usuarios famosos de Emacs (que no son famosos por usar Emacs)". Entre ellos se encuentran Martin Fowler, Yukihiro "Matz" Matsumoto (creador de Ruby 🙌), Guido van Rossum (creador de Python), Julian Assange, Linus Torvalds, Donal Knuth, Eric Raymond, Richard Stallman, y más. En los comentarios un usuario menciona a su profesor de sistemas operativos como alguien que debería estar en la lista. Esto me hizo pensar en personas con las que compartí el uso de Emacs que fueron importantes en mi experiencia. Generalmente agregan más valor que los "famosos" que conozcamos, […]

Emacs Anywhere: Ejecuta Emacs para insertar texto en cualquier aplicación

Martes, 13 de marzo de 2018
Emacs

Emacs Anywhere es un script que nos permite crear un atajo de teclado para iniciar una ventana temporal de Emacs. El texto es luego instertado (copiado y pegado) automáticamente en la aplicación que estemos usando. Funciona mediante un script bash que nos permite iniciar una ventana temporal de Emacs. El texto es luego insertado automáticamente en la aplicación que estemos usando. Es una forma fácil de "integrar" Emacs a nuestro sistema sin tener que andar configurando distribuciones de teclado a nivel GTK o aplicaciones. Elegimos un atajo de teclado que crea un frame y buffer temporales, escribimos el texto, y […]

fireplace - una estufa para Emacs

Lunes, 21 de diciembre de 2015
fireplace.el

El modo fireplace para Emacs tiene una funcionalidad única y básica: Animar el fuego de una estufa en nuestro buffer de Emacs. Para instalarlo, hay que descargar el archivo fireplace.el y moverlo a al directorio desde donde carguemos nuestros paquetes de Emacs como .emacs.d. Ahí, ya dentro de Emacs ejecutamos M-x byte-compile-file e ingresamos la ruta al archivo fireplace.el para compilarlo en un archivo elc (compilado de Elisp). Este paso es necesario porque hay una diferencia de rendimiento importante entre la versión compilada y la versión sin compilar. Se está trabajando en incluir el paquete en MELPA para que pueda […]

Emacs - Personalizando el mode line

Jueves, 6 de agosto de 2015
Emacs

En Emacs existe el Mode Line, una barra que describe lo que está pasando en el buffer actual. Por defecto, la línea tiene un formato bastante gris con información que puede o no sernos útil: Los primeros guiones pertenecen al character set, seguidos de unos asteriscos si el archivo tiene cambios que no guardamos, nombre del buffer, posición, número de línea, información de los modos, etc. En general por lo menos en mi caso no le daba mucha importancia, más allá del nombre del archivo que estaba editando. Hasta ahora lo único que le había agregado a mi Mode Line […]

Mi entorno de desarollo con Emacs

Jueves, 16 de julio de 2015
Emacs conf

Como comentaba en el post anterior sobre Emacs, arranqué mi archivo de configuración de Emacs de cero. Antes que nada comentar que si les interesa verlo, pueden encontrar mi configuración de Emacs en GitHub. Tengo organizado el proyecto con un directorio .emacs.d y adentro el archivo init.el que es el iniciador de todo el resto. Los paquetes y demás archivos están en un directorio packages. Ahí tengo por ejemplo programming.el donde guardo todas las configuraciones y personalizaciones de modos relacionados a programación. También tengo el archivo key-bindings.el donde seteo alias (ejemplo que 'll' sea un alias de 'goto-line') y combinaciones […]

Emacs, mi editor de texto

Martes, 14 de julio de 2015
Emacs

Hace varios años que vengo jugando con Emacs como editor de texto preferido, pero se puede decir que recién en 2012 cuando empecé a trabajar 100% con Ruby arranqué a usarlo en serio. Desde entonces me he ido familiarizando cada vez más con la forma de usar Emacs y hoy por hoy lo uso todos los días prácticamente para todo. Uno de los aspectos más importante de Emacs (y editores de texto con las mismas características de personalización y extensibilidad) es que si bien tiene una forma básica de uso, en cierto punto uno empieza a "adueñarse" de la herramienta. […]

eww - Navegador web en Emacs

Viernes, 28 de noviembre de 2014
eww-emacs

A partir de la versión 24.4 de Emacs, se incluye con el programa Emacs Web Wowser, o eww. Se trata de un navegador web escrito en elisp que puede abrir, parsear y mostrar sitios web. Soporta algunas cosas CSS y HTML5, y puede mostrar imágenes, por lo que no es tan old-school como un navegador 100% texto como Lynx. Siendo usuario de Emacs, es interesante probarlo por dos razones: Podemos usar los comandos a los que estamos acostumbrados en Emacs y que (en mi caso) muchas veces intentamos por accidente en el navegador tradicional. Me pasa seguido cuando estoy editando […]

Emacs es Sexy

Jueves, 13 de marzo de 2014
Emacs.sexy

Con la disponibilidad de los nuevos TLD .sexy, hace poco salió en La Internet el sitio vim.sexy. Tiene pinta de ser una respuesta paródica al editor de texto hipster del momento Atom (Como si no hubiera suficiente de eso ya en la comunidad de desarrolladores, funciona exclusivamente en Mac OS X). Si bien es una parodia graciosa, vim.sexy no aporta mucho (en mi humilde opinión). Supuse que alguien habría hecho algo similar para Emacs, por la eterna relación entre Emacs y Vim. Al ver que no era así, registré el dominio e intenté crear un sitio que sumara un poco […]

Nyan Mode - Nyan Cat en Emacs

Miércoles, 24 de abril de 2013
Nyanmacs

Hace un tiempo descubrí Nyan Cat RSPec Formatter, mi "formateador" preferido a la hora de correr tests con RSpec. Recientemente El Cuervo me dió a conocer Nyan Mode, un modo para Emacs para tener un Nyan Cat en mi editor de texto favorito. ¡Cómo no usarlo! El modo no hace más que mostrarnos nuestra posición en el buffer, yendo el gato de atrás para adelante segun avancemos o retrocedamos en el buffer. Lo único que no incluye es la música de Nyan Cat, pero la podemos imaginar en nuestra mente mientras editamos código. Por defecto el gato se muestra con […]

Emacs Rocks: Screencasts con trucos y sugerencias para Emacs

Miércoles, 25 de julio de 2012
Emacs Rocks

Ayer conocí este sitio por Twitter y me resultó bastante interesante. Emacs Rocks es un sitio web con screencasts de trucos y sugerencias en Emacs. El responsable del sitio, Magnar Sveen, decidió compartir lo que iba aprendiendo con el editor a través de estos videos. Por ahora son 11 episodios que demuestran por qué Emacs rockea, además de 5 videos de una edición especial donde demuestra cómo extender Emacs. Otro sitio interesante que conocí a través de Emacs Rocks es VimGolf: Presenta desafíos para usuarios de Vim, donde hay que realizar ciertas tareas con la menor cantidad de golpes de […]

Tazas de referencia Emacs

Martes, 10 de julio de 2012
Taza Emacs

La tienda de la Free Software Foundation volvió a agregar a su stock tazas con una guía de referencia para Emacs. Están muy buenas, además del logo traen una lista de comandos básicos de cómo usarlo. Al comprarla se ayuda a la FSF, una organización sin fines de lucro que lucha por la libertad de los usuarios de software. También están por sacar el manual de Emacs 24, así que los manuales de las versiones 22 y 23.3 se encuentran rebajados a U$S 15 y U$S 30 respectivamente. De repente aprovecho la oportunidad de una nueva edición del manual para comprarlo y ponerme […]

Razones prácticas para usar Emacs

Miércoles, 13 de enero de 2010
emacs

Obtuve este texto en EmacsWiki, y me pareció interesante reproducirlo acá. Por cierto, también creé una página dedicada a Emacs en Picando Código, donde iré actualizando mi .emacs y mi guía de referencia para Emacs. A continuación el texto, razones prácticas para usar Emacs. Si todavía no están convencidos de empezar a usarlo, a lo mejor alguna de estas los convence: Emacs es software libre, eres libre para usarlo como quieras. El 90% de lo que hacemos delante de un ordenador es editar texto (escribir correo, programar, escribir documentos, escribir a través de la web, …), si podemos usar un […]

Toasty!