Après avoir copié un "rectangle" en utilisant C-x r M-w
, en C-x r y
tirant ou en collant le rectangle. Mais cela insère le rectangle copié.
Comment puis-je coller le rectangle copié pour qu'il écrase le texte?
Exemple:
a b c d e f g
h i j k▮l m n
o p q r s t u▮
J'ai copié le rectangle inclus entre les positions du curseur ci-dessus en utilisant M-x copy-rectangle-as-kill
ou C-x r M-w
.
Maintenant, quand je le colle devant le personnage en h
utilisant M-x yank-rectangle
ou C-x r y
, je veux que le résultat ressemble à
a b c d e f g
▮l m n k l m n
s t u r s t u
au lieu 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
Comment faire l' yank-rectangle
écrasement?
C-x r y
d'écraser. J'édite ma question maintenant.Réponses:
Utilisez
M-x picture-mode
.C-c C-y
, lié à la commandepicture-yank-rectangle
, fait ce que vous voulez. (Vous pouvez utiliserC-_
pour annuler.)Ces clés associées sont également disponibles dans
picture-mode
:C-c C-k
- Effacez un rectangle et enregistrez-le (picture-clear-rectangle
)C-c C-w
- Effacez un rectangle et enregistrez-le dans un registre (picture-clear-rectangle-to-register
)C-c C-x
- CommeC-c C-y
, mais utilise le rectangle dans un registre (picture-yank-rectangle-from-register
)C-x r r
- Copier un rectangle dans un registre (copy-rectangle-to-register
)Utilisez
C-c C-c
pour quitter le mode image.Vous pouvez également utiliser les commandes du mode image sans les activer
picture-mode
, mais dans ce cas, leurs touches ne sont pas liées. Vous devrez de toute façon charger la bibliothèquepicture
.Vous pouvez donc, par exemple, faire ceci:
C-x r r
pour copier un rectangle dans un registre.M-x picture-yank-rectangle-from-register
(que vous pouvez également lier à une clé).la source
M-x picture-yank-rectangle-from-register
solution fonctionne très bien pour moi; Je dois simplement mettre(require 'picture)
moninit.el
.Une autre approche consiste à utiliser
delete-selection-mode
et à faire cela dans votre fichier init:Mais cela fait
yank-rectangle
toujours remplacer le texte au point, ce qui n'est peut-être pas ce que vous voulez.la source