Saya mencoba mengganti karakter - katakan ;
- dengan baris baru menggunakan replace-string
dan / atau replace-regexp
di Emacs.
Saya sudah mencoba perintah berikut:
M-x
replace-string
RET;
RET\n
Ini akan menggantikan
;
dengan 2 karakter:\n
.M-x
replace-regex
RET;
RET\n
Ini menghasilkan kesalahan berikut (ditunjukkan dalam minibuffer):
Penggunaan `\ 'dalam teks pengganti tidak valid.
Apa yang salah dengan menggunakan replace-string
untuk tugas ini? Apakah ada cara lain untuk melakukannya?
Terima kasih.
quote-insert
yang mengutip karakter selanjutnya.C-j
adalah0x0a
kode kontrol literal , dibandingkanRet
yang merupakan kunci di sebelah kutipan dan kirim Anda0x0d
. en.wikipedia.org/wiki/C0_and_C1_control_codesC-j
di emacs , saatC-m
di vim .Ada empat cara yang saya temukan untuk memasukkan baris baru ke minibuffer.
C-o
C-q C-j
C-q
12
(12 adalah nilai oktal dari baris baru)C-x oke jendela utama, bunuh baris baru dengan C-k, lalu C-x okembali ke minibuffer, tarik denganC-y
sumber
C-o
! Satu stroke kunci kurang dibandingkan denganC-q C-j
. Tidak terpikir untuk menggunakan yang sebelumnya.C-o
tidak memindahkan titik setelah memasukkan baris baru di minibuffer, jadi Anda masih perlu menekan tombol panah kanan juga jika Anda ingin memasukkan sesuatu setelah baris baru di string pengganti.C-o
akan memasukkan baris baru di jendela utama saat menggunakan pencarian, sementaraC-q C-j
akan memasukkan baris baru di minibuffer.C-o
tidak bekerja dengan permintaan - ganti sekalipun.Jangan lupa bahwa Anda selalu dapat memotong dan menempel ke minibuffer.
Jadi, Anda bisa menyalin karakter baris baru (atau string apa pun) dari buffer Anda, lalu mencabutnya saat diminta untuk teks pengganti.
sumber
Lebih eksplisit:
Untuk mengganti karakter titik koma (;) dengan baris baru, ikuti langkah-langkah tepat ini.
Sedikit lebih dari yang dikatakan penjelasan aslinya.
sumber
Beralih ke mode teks
Sorot blok ke indent
Indentasi
Beralih kembali ke mode apa pun ..
sumber
hanya sebaris:
C-M-S-%
(jika kunci mengikat masih default) darireplace-string
^Jsumber