Setelah menyalin menggunakan "persegi panjang" C-x r M-w
, melakukan C-x r y
menyentak atau menempelkan persegi panjang. Tapi itu memasukkan persegi panjang yang disalin.
Bagaimana saya bisa menempel persegi panjang yang disalin sehingga menimpa teks?
Contoh:
a b c d e f g
h i j k▮l m n
o p q r s t u▮
Saya menyalin persegi panjang terlampir di antara posisi kursor yang ditunjukkan di atas menggunakan M-x copy-rectangle-as-kill
atau C-x r M-w
.
Sekarang ketika saya menempelkannya di depan karakter h
menggunakan M-x yank-rectangle
atau C-x r y
, saya ingin hasilnya terlihat seperti
a b c d e f g
▮l m n k l m n
s t u r s t u
dari pada
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
Bagaimana saya bisa membuat yank-rectangle
penulisan ulang?
C-x r y
menimpa. Saya sedang mengedit pertanyaan saya sekarang.Jawaban:
Gunakan
M-x picture-mode
.C-c C-y
, terikat perintahpicture-yank-rectangle
, melakukan apa yang Anda inginkan. (Anda dapat menggunakanC-_
untuk membatalkan.)Kunci terkait ini juga tersedia di
picture-mode
:C-c C-k
- Bersihkan persegi panjang dan simpan (picture-clear-rectangle
)C-c C-w
- Bersihkan persegi panjang dan simpan dalam register (picture-clear-rectangle-to-register
)C-c C-x
- SukaC-c C-y
, tetapi menggunakan persegi panjang dalam register (picture-yank-rectangle-from-register
)C-x r r
- Salin persegi panjang ke register (copy-rectangle-to-register
)Gunakan
C-c C-c
untuk keluar dari mode gambar.Anda juga dapat menggunakan perintah mode gambar tanpa menyalakan
picture-mode
, tetapi dalam kasus itu kunci mereka tidak terikat. Anda tetap harus memuat perpustakaanpicture
.Jadi, Anda dapat, misalnya, melakukan ini:
C-x r r
untuk menyalin persegi panjang ke register.M-x picture-yank-rectangle-from-register
(yang juga bisa Anda ikat ke kunci).sumber
M-x picture-yank-rectangle-from-register
solusi karya besar bagi saya; Saya hanya perlu untuk dimasukkan ke(require 'picture)
dalam sayainit.el
.Pendekatan lain adalah menggunakan
delete-selection-mode
dan melakukan ini di file init Anda:Tapi itu membuat
yank-rectangle
selalu mengganti teks pada titik, yang mungkin bukan yang Anda inginkan.sumber