Estoy tratando de reemplazar un personaje, digamos ;, con una nueva línea usando replace-stringy / o replace-regexpen Emacs.
He intentado los siguientes comandos:
M-x
replace-stringRET;RET\nEsto reemplazará
;con 2 caracteres:\n.M-x
replace-regexRET;RET\nEsto da como resultado el siguiente error (que se muestra en el minibúfer):
Uso no válido de `\ 'en el texto de reemplazo.
¿Qué hay de malo en usar replace-stringpara esta tarea? ¿Hay alguna otra forma de hacerlo?
Gracias.

quote-insertque cita al siguiente personaje.C-jes un0x0acódigo de control literal , frente alRetcual es la clave junto a su cotización y envíos0x0d. en.wikipedia.org/wiki/C0_and_C1_control_codesC-jen emacs , mientras queC-men vim .Hay cuatro formas en que he encontrado para poner una nueva línea en el minibúfer.
C-o
C-q C-j
C-q
12(12 es el valor octal de nueva línea)C-x oa la ventana principal, elimine una nueva línea con C-k, luego C-x oregrese al minibúfer, tírelo conC-y
fuente
C-o! Un golpe de tecla menos en comparación conC-q C-j. No había pensado en usar eso antes.C-ono mueve el punto después de insertar la nueva línea en el minibúfer, por lo que también debe presionar la tecla de flecha derecha si desea insertar algo después de la nueva línea en la cadena de reemplazo.C-oingresaré una nueva línea en la ventana principal cuando utilizo la búsqueda, mientrasC-q C-jque ingresaré la nueva línea en el minibúfer.C-ofunciona con consulta - sin embargo, reemplace.No olvides que siempre puedes cortar y pegar en el minibúfer.
Por lo tanto, puede copiar un carácter de nueva línea (o cualquier cadena) de su búfer y luego tirarlo cuando se le solicite el texto de reemplazo.
fuente
Más explícitamente:
Para reemplazar el carácter de punto y coma (;) con una nueva línea, siga estos pasos exactos.
Un poco más de lo que dice la explicación original.
fuente
Cambiar al modo de texto
Resaltar bloque para sangrar
Sangrar
Regrese a cualquier modo.
fuente
solo en línea:
C-M-S-%(si las teclas de enlace siguen siendo predeterminadas)replace-string^Jfuente