Saya baru saja menemukan C-x 8 RET
cara memasukkan karakter Unicode dengan nama Unicode atau kode hex. Saya belum (belum?) Menghafal semua nama karakter Unicode, jadi saya tidak selalu menemukan karakter yang tepat.
Ada, misalnya, karakter "SNOW CAPPED MOUNTAIN". Jika saya mengetik "GUNUNG" saja, karakter ini tidak akan muncul dalam daftar penyelesaian. Saya harus ingat untuk mencari "SNOW" untuk melihat karakter khusus ini dalam daftar penyelesaian.
Sebagai seseorang yang telah menjadi tergantung pada IDO untuk apa pun yang melibatkan penyelesaian, kurangnya fleksibilitas ini agak mengerikan. Saya menggunakan ido-ubiquitous-mode
.
Bagaimana saya bisa menggunakan pencocokan mirip IDO untuk input Unicode? Bagaimana saya bisa menggunakan penyelesaian fleksibel untuk SEMUA HAL ?
(Saya akan baik-baik saja dengan meninggalkan mode IDO jika ada sesuatu yang lebih baik.)
sumber
C-q SPC mountain TAB
. Itu akan cocok dengan nama karakter apa pun dengan "gunung" sebagai kata pertama.*cap*mou TAB
, maka Anda mendapatkan seluruh penyelesaiannya.Jawaban:
Seperti yang disarankan @wasamasa, Anda
ido-ubiquitous
harus menyelesaikannya saatinsert-char
digunakan. Ada laporan bug yang ditutup pada 2013 , tapi saya masih melihat perilaku ini dengan Emacs 24.4 danido-ubiquitous
versi 20140904.1547, jadi saya mengajukan laporan bug lain .EDIT:
Pemelihara
ido-ubiquitous
menulis ini:Memang,
(setq ido-ubiquitous-max-items 50000)
memperbaikinya.sumber
ido-completing-read+
, gunakan(setq ido-cr+-max-items 50000)
untuk memperbaiki kesalahan ini.Untuk
snow capped mountain
disertakan saat Anda mengetikmount
, Anda mungkin ingin melakukan:Sebenarnya, mungkin
substring
gaya ini harus diaktifkan secara default untuk nama unicode, seperti itu untuk nama buffer. Mungkin Anda harus melobi untuk itu viaM-x report-emacs-bug
.sumber
Jika Anda menggunakan Icicles maka
C-x 8 RET
Anda dapat menggunakan substring atau regexp atau pencocokan fuzzy selama penyelesaian. Dan Anda dapat menggunakan penyelesaian progresif , untuk mencocokkan dengan beberapa pola (misalnya sederhana).Selain itu, jika opsi
icicle-read-char-by-name-multi-completion-flag
ini bukannil
, yang mana merupakan default, maka Anda dapat menggunakan multi-penyelesaian untuk mencocokkan dengan kombinasi ini:Kandidat penyelesaian yang Anda lihat di buffer
*Completions*
berisi semua komponen ini - WYSIWYG.Mengapa Anda ingin mencocokkan dengan karakter itu sendiri? Untuk melihat poin kode Unicode dan nama karakter yang sesuai, termasuk nama lama apa pun. Misalnya, untuk karakter
`
(aksen kubur) Anda mendapatkan dua kandidat penyelesaian:sumber
Anda dapat menggunakan perintah
apropos-char
di pustakaapu.el
untuk menampilkan semua karakter Unicode yang namanya cocok dengan regexp atau daftar kata yang Anda ketikkan. Secara default, kata-kata dicocokkan sebagai substring.Dalam daftar kecocokan, Anda dapat menekan
^
untuk memasukkan karakter yang ditunjukkan pada baris saat ini ke buffer di mana Anda dipanggilapropos-char
, pada titik. Atau Anda dapat menekanC-y
untuk menyalin arang itu ke ring bunuh (atauM-y
menyalinnya ke pilihan sekunder ). (HitRET
untuk melihat info lebih lanjut tentang char.)sumber