Saya sering salah mengetik "_" sebagai "-" saat melakukan quick isearch-forward
.
Misalnya saya mencari snake_case
dan tidak sengaja mengetik C-s snake-case
dan tidak mendapatkan hasil. Kasing terbaik saya perhatikan cukup cepat dan tidak harus menghapus terlalu banyak istilah penelusuran, kasing terburuk pada dasarnya saya harus mengetiknya lagi.
Apakah ada cara untuk menghubungkan isearch-forward
untuk mengubah kueri saya menjadi isearch-forward-regexp
sejenis snake[-_]case
?
Saya perlu benar-benar lisp-case
cukup sering mencari yang hanya mengubah "-" menjadi "_" akan menyebabkan lebih banyak masalah daripada memecahkannya.
M-e
untuk melompat ke buffer mini untuk mengedit string pencarian saat isearch aktif. KemudianC-e M-b BKSPC _
danC-s
untuk melanjutkan pencarian.isearch
?Jawaban:
Saya tidak dapat membayangkan perilaku otomatis semacam itu yang tidak membuat Anda sakit ketika itu bukan yang Anda inginkan.
Menurut saya, rekomendasi kaushalmodi M-eadalah jawaban terbaik - membuatnya mudah untuk memperbaiki masalah tampaknya lebih baik daripada mencoba membuat isearch membaca pikiran Anda.
Perhatikan bahwa isearch cukup pintar untuk mencatat karakter pertama di mana pencarian gagal, dan M-emenempatkan kursor pada posisi itu secara otomatis, bahkan ketika Anda terus mengetik karakter berikutnya, urutan tombol khas untuk memperbaiki pola dan melanjutkan pencarian hanya akan menjadi:
M-eC-d_C-s
sumber
M-e
menempatkan kursor pada posisi itu secara otomatisM-e
, itu tentu membuat segalanya lebih mudah, terutama karena ia kembali ke kesalahan ketik.Jika Anda menggunakan swiper dan mencari
snake case
, itu akan cocok dengan keduanyasnake_case
dansnake-case
.swiper
adalahisearch
alternatif baru yang memberi Anda gambaran umum dalam minibuffer saat Anda mencari.Pada gambar di atas, inputnya adalah
ivy m
yang diterjemahkan ke regexivy.*m
. Ada 36 pertandingan untuk regex ini. Anda dapat menavigasi di antara mereka dengan C-s/ C-r atau C-n/ C-p.Anda dapat menginstal
swiper
dengan M-xpackage-install
. Ini tersedia di MELPA dan GNU ELPA.sumber
C-w
danM-e
harus dilakukan? Anda dapat memposting di github.com/abo-abo/swiper/issues jika Anda ingin saya menambahkan sesuatu.M-e
untuk swiper, itu sudah diM-e
. Dan untuk memahami masalahnya, tekanM-n
. Belum ada cara untuk mengembangkannya, tetapi Anda bisa terus mengetik.