Me gustaría cambiar todas las apariciones de una cadena (digamos string1) con otra cadena (digamos string2) y viceversa. Para ser precisos, tengo un documento largo y estas cadenas ocurren muchas veces. Lo que hago actualmente es reemplazar string1 -> string3, luego string2 -> string1 y finalmente string3 -> string2.
Me pregunto si ya hay una función en emacs que haga esto. Otras soluciones son bienvenidas.
Editar : esto es en realidad un duplicado de la pregunta vinculada en el comentario. Pero el problema es que la respuesta aceptada de esa pregunta no siempre funciona (vea el comentario a continuación). Creo que es mejor esperar hasta que el autor de esa respuesta aceptada corrija su respuesta o salga alguna otra solución. En segundo lugar, antes de publicar mi pregunta, busqué en Google la pregunta y esa pregunta no apareció. Creo que a veces es útil tener dos preguntas duplicadas, ya que usan una redacción diferente y si un usuario encuentra la duplicada, puede encontrar la correcta.
Edición 2: la respuesta aceptada de la función Buscar / reemplazar como para intercambiar texto parece estar bien ahora.
backwards
y region-noncontiguous-p
) en la llamada de perform-replace
hace que funcione aquí (emacs 24.3). Lo probaré en emacs 25 cuando tenga una ocasión antes de editar la otra respuesta.