Blog del Podcast
podcast    GitHub    Twitter  Telegram

Reemplazar texto de uno o varios archivos con dired en Emacs

Cuando hay un error de sincronización con las notas en [[https://play.google.com/store/apps/details?idorg.eu.thedoc.zettelnotes&hles&glUS][Zettel Notes]], aparece en la línea con error el siguiente símbolo ~~=.

Hay un modo de ir renombrando todas las palabras que aparecen en una nota a la vez con un solo comando. Pero si esto te sucede en todas las notas de un directorio, también podemos hacerlo utilizando el explorador de archivos dired que incluye Emacs.

Vamos a ver como hacerlo de los 2 modos.

Cambiar palabras en un archivo de texto

Para ir reemplazando palabra a palabra en un archivo de texto que hayamos abierto con Emacs y te vaya preguntando cada palabra que coincida, pulsamos el atajo M-%.

Para reemplazar todas las palabras en el archivo de texto abierto con Emacs de una vez y que no te pregunte introduciremos el comando:


M-x replace-regexp

Utilizar dired para reemplazar texto en multimples archivos

Marcando archivos con dired de Emacs

Utiliza dired con Emacs y visualiza los archivos de un directorio. Para abrir dired podemos hacerlo con el atajo C-x d.

Cambiar según patrón de nombre de archivo o extensión

Puedes seleccionar seleccionar varios archivos que cumplan un patrón e común. Por ejemplo los archivos .md, utilizaremos % m.


m .md$

Reemplazando el texto de los archivos

Una vez marcados los archivos dentro de dired, introduciremos el siguiente comando.


M-x dired-do-query-replace-regexp

Emacs te pedirá que escribas el texto fuente que quieres reemplazar y cuando pulses Enter, pedirá introducir el nuevo texto a reemplazar.

A partir de ese momento, Emacs comenzará a abrir los archivos que contengan el texto fuente y te pregunatará si deseas reemplazarlo. Para reemplazarlo tenemos varias opciones:

Para guardar todos los nuevos cambios, sin salir de Emacs.


M-x save-some-buffers

Fuentes




Powered by org-bash-blog

Written in OrgMode with Emacs and converted to HTML with Pandoc

Licencia de Creative Commons
Este obra está bajo una licencia de Creative Commons Reconocimiento-NoComercial-CompartirIgual 4.0 Internacional.