Después de copiar un "rectángulo" usando C-x r M-w
, haciendo C-x r y
yanks o pegando el rectángulo. Pero eso inserta el rectángulo copiado.
¿Cómo puedo pegar el rectángulo copiado para que sobrescriba el texto?
Ejemplo:
a b c d e f g
h i j k▮l m n
o p q r s t u▮
Copié el rectángulo encerrado entre las posiciones del cursor que se muestran arriba usando M-x copy-rectangle-as-kill
o C-x r M-w
.
Ahora, cuando lo pego frente al personaje h
usando M-x yank-rectangle
o C-x r y
, quiero que el resultado se vea como
a b c d e f g
▮l m n k l m n
s t u r s t u
en vez de
a b c d e f g
▮l m n h i j k l m n
s t u o p q r s t u
¿Cómo puedo hacer la yank-rectangle
sobrescritura?
C-x r y
sobrescribir. Estoy editando mi pregunta ahora.Respuestas:
Uso
M-x picture-mode
.C-c C-y
, obligado a ordenarpicture-yank-rectangle
, hace lo que quieras. (Puede usarC-_
para deshacer).Estas claves relacionadas también están disponibles en
picture-mode
:C-c C-k
- Borrar un rectángulo y guardarlo (picture-clear-rectangle
)C-c C-w
- Borrar un rectángulo y guardarlo en un registro (picture-clear-rectangle-to-register
)C-c C-x
- Me gustaC-c C-y
, pero usa el rectángulo en un registro (picture-yank-rectangle-from-register
)C-x r r
- Copiar un rectángulo a un registro (copy-rectangle-to-register
)Use
C-c C-c
para salir del modo de imagen.También puede usar los comandos del modo de imagen sin activar
picture-mode
, pero en ese caso sus teclas no están vinculadas. De todos modos, deberá cargar la bibliotecapicture
.Entonces puedes, por ejemplo, hacer esto:
C-x r r
para copiar un rectángulo a un registro.M-x picture-yank-rectangle-from-register
(que también puede vincular a una clave).fuente
M-x picture-yank-rectangle-from-register
solución funciona muy bien para mí; Simplemente necesito poner(require 'picture)
en miinit.el
.Otro enfoque es usar
delete-selection-mode
y hacer esto en su archivo init:Pero eso hace que
yank-rectangle
siempre reemplace el texto en el punto, que podría no ser lo que desea.fuente