GNU Emacs: Edición «rectangular» (selección vertical)

emacs

Cómo utilizar los comandos de manipulación de rectángulos de Emacs, que facilitan enormemente ciertas tareas repetitivas.

Introducción

Imagina que necesitas:

  • Indentar un trozo de código un número concreto de espacios
  • Comentar un bloque de código escrito en un lenguaje que no conoce Emacs
  • Cambiar de sitio una columna en un fichero CSV
  • Añadir asteriscos al principio de cada línea de un bloque

Todas estas tareas implican escribir o borrar lo mismo en todas las líneas que pueden ser muchas, es decir, una tarea muy poco gratificante. Pues la solución a todas ellas es la “edición de rectángulos” .

Manipulación de rectángulos

Los rectángulos son justo eso, zonas rectangulares acotadas por dos columnas y dos filas cualesquiera. Esto permite, por ejemplo, copiar, pegar, borrar o insertar columnas de texto en cualquier parte.

Lo normal para usar estos comandos es definir primero la región o rectángulo sobre el que se va a aplicar el comando. Eso se hace poniendo la marca (C-space) en una esquina y el cursor en la esquina diagonalmente opuesta.

Cortar (kill) C-x r k
Borrar (delete) C-x r d
Pegar (yank) C-x r y
Insertar espacio (open) C-x r o
Limpiar (clear) C-x r c
Insertar texto (string) C-x r t string RET

También resulta muy útil la posibilidad de definir una región “de ancho cero” cuando se inserta texto, pues de ese modo no se sobreescribe nada.

Renombrado múltiple de ficheros

Una funcionalidad que, personalmente me parece muy interesante, es utilizar los rectángulos en combinación con el modo wdired-mode (paquete emacs-goodies-el). wdired permite editar los nombres de los ficheros de un directorio como si editaras un fichero de texto. Usando los rectángulos, puedes borrar o añadir algo de todos los nombres, por ejemplo, el nombre del grupo de una lista de mp3’ses.

Referencia

Próxima entrega

La próxima semana Magmax nos contará los pasos imprescindibles para poner a punto un emacs recién instalado y sin configuración previa.

Comentarios

Opciones de visualización de comentarios

Seleccione la forma que prefiera para mostrar los comentarios y haga clic en «Guardar las opciones» para activar los cambios.
Imagen de david.villa

Un screencast sobre edición rectangular

http://www.youtube.com/watch?v=yrHki_pEgQI&feature=related

No soy portavoz de ningún colectivo, grupo o facción. Mi opinión es personal e intransferible.

font emacs

Sólo darte la enhorabuena por tus recetas (TES) sobre emacs. Llevo poco tiempo usándolo y lentamente lo voy customizando, también con tu ayuda. Gracias
Utilizo emacs sobre todo para escribir en LaTeX y Java ambos integrados con la consola. ¿Tienes algo de código lisp para el archivo .emacs que disminuya de forma sencilla el tamaño del tipo de letra que viene por defecto? Gracias de nuevo
Saludos
Jorge

Imagen de david.villa

TES somos todos

La mayoría de las recetas "TES" no son mías, yo sólo he hecho un par por ahora; las demás y la idea de hacer una entrega "semanal" son de magmax. Cualquiera puede escribir TES o cualquier otro tipo de receta, tú también. Sobre lo que preguntas de las fuentes... es buena excusa para otra receta de Emacs Eye-wink

No soy portavoz de ningún colectivo, grupo o facción. Mi opinión es personal e intransferible.

TES emacs

Pues si puedo aportar alguna receta útil la cuelgo, será un placer.
saludos