| Artículos | 01 SEP 2003

Emacs, más que un editor

Tags: Histórico
Alvaro Ortiz.
A la hora de desarrollar, y a menos que se establezca una línea a seguir por todo el equipo, cada programador se decide por un editor o entorno distinto de entre las muchas posibilidades que ofrece el mercado. Ya sea en Linux o en Windows, Emacs se presenta como una de las mejores opciones en estos casos. Su potencia y facilidad de uso, que no resulta muy obvia al principio, lo sitúan sin duda en los primeros puestos.

Personalizaciones clave en Emacs
No se trata de un simple editor ASCII ni mucho menos. Emacs aporta toda una serie de facilidades que agilizan enormemente la tarea del programador. Desde las indentaciones automáticas y coloreado sintáctico dependientes del lenguaje de programación, hasta las utilidades más comunes como la búsqueda de patrones, carga de múltiples buffers, etc. La mayoría de estas características podemos definirlas con Emacs abierto a base de pulsar Alt+x+<comando_específico> (esto lo veremos después) pero lo más lógico y cómodo es definir estas personalizaciones en el fichero de configuración de nombre .emacs. Este fichero suele encontrarse en el directorio home de cada usuario. De no ser así, para tener uno funcional nos bastará con crear uno desde cero con las siguientes líneas:

(custom-set-variables
;; Mostrar numero de linea y columna
‘(line-number-mode t)
‘(column-number-mode t)
;; Tamaño fila = 80
‘(fill-column 80)
;; Parear parentesis
‘(show-paren-mode t nil (paren))
;; Colorear por sintaxis
‘(global-font-lock-mode t)
;; Reemplazar texto seleccionado
‘(delete-selection-mode t)
;; Mostrar fecha y hora
‘(display-time-24hr-format t)
‘(display-time-day-and-date t)
‘(display-time) )

Con esto obtendremos las utilidades esenciales para la edición de código fuente y algún detalle extra, como visualizar fecha y hora en todo momento.

Comandos en Emacs
En emacs casi toda funcionalidad es accesible por las combinaciones de teclas Alt+x (reflejada en la línea inferior como M–x) y Ctrl+x (reflejada en la línea inferior como C–x). Tras pulsar cualquiera de estas combinaciones, y después de teclear las primeras letras de algún posible comando, el tabulador nos completa o muestra las posibilidades de completitud como sucede en la shell. Así por ejemplo, la opción vista (line-number-mode t), se establecería en ejecución pulsando M-x line-number-mode, o simplemente M-x line y entonces el tabulador. Sin duda el tabulador resulta clave a la hora de conocer todas las posibles acciones a acometer con emacs. Otra opción para irnos familiarizando con este editor, de forma sencilla y por nuestra cuenta, es teclear M-x help y entonces completar con el tabulador. En la lista de posibles comandos vemos help-with-tutorial que, como en el propio nombre apreciamos, se trata de un tutorial centrado principalmente en el manejo básico de emacs. También podemos pulsar C-h y a continuación ? para ver las combinaciones de teclas que habilitan las distintas acciones y comandos.

Emacs o Terminal
Emacs proporciona acceso a comandos del sistema, por lo que se debería denominar entorno más que simplemente editor. Así, por ejemplo, podemos teclear M-x y entonces diff para ejecutar este comando comentado el mes pasado. Del mismo modo, podemos teclear M-x compile y tras presionar Enter indicar el comando del sistema que utilizamos para compilar nuestros proyectos, ya sea éste make -k o directamente una invocación al compilador C o C++, o al que corresponda.
La potencia de emacs es tal que, abusando tal vez un poco de su uso, podemos convertirlo en nuestro entorno absoluto de trabajo del que no salgamos más que quizá para cambiar la música de fondo que tenemos en xmms. ¿Por qué decimos algo así? Pues porque hasta podemos abrir una shell dentro de él y por ejemplo invocar programas como el sqlplus para conectarnos a Oracle o cualquier otra cosa que podamos hacer desde la shell. El comando que ofrece esta posibilidad es sencillo, simplemente M-x shell. Con esto obtenemos las ventajas propias de emacs, como por ejemplo buscar a golpe de C-s (Ctrl+s) un patrón en la ingente cantidad de líneas que ha generado una compilación. Echémosle imaginación. Pero desde luego es también cierto que la shell abierta en emacs no se comporta como un terminal cualquiera y aspectos como el borrado de pantalla con clear, o la muestra de caracteres especiales, no dan el resultado que cabría esperar.

Contenidos recomendados...

Comentar
Para comentar, es necesario iniciar sesión
Se muestran 0 comentarios
X

Uso de cookies

Esta web utiliza cookies técnicas, de personalización y análisis, propias y de terceros, para facilitarle la navegación de forma anónima y analizar estadísticas del uso de la web. Consideramos que si continúa navegando, acepta su uso. Obtener más información