Menggunakan tanda dengan kunci mati


9

Saya menggunakan tata letak keyboard di mana backtick ( `) adalah kunci mati .

Ini berarti bahwa ketika saya mengetik backtick diikuti oleh vokal (misalnya `a) apa yang dilihat Vim adalah karakter beraksen ( à). Jadi jika saya menetapkan tanda dengan masaya dapat melompat ke garis tanda dengan 'a. Tetapi melompat ke lokasi spesifik tanda `atidak akan berfungsi.

Saya menemukan solusi untuk ini: ketika mengetikkan kunci mati saya bisa membuat Vim menerima backtick dengan memukul backtick dan kemudian spasi. Jadi jika saya ingin pergi ke tanda asaya ketik `␣a.

Apakah ada cara untuk melompat ke sasaran tanpa harus menyerang ruang ekstra itu? Tanpa efek samping?


Tidak dapat menggunakan backtick tipe 2 untuk mendapatkan backtick? Atau konfigurasikan OS Anda untuk melakukan itu? Itu masih merupakan keystoke tambahan, tetapi lebih baik daripada `+ space ...
Martin Tournoij

@Carpetsmoker No. Mengetik dua backticks biasanya menghasilkan `` untuk saya. Tetapi dalam mode Normal sepertinya hal lain terjadi: Saya mengetikkan `` a dan Vim mengatakan "E78: Tanda tidak dikenal." Dari showcmdsaya pikir Vim mengerti ini sebagai `à. Saya juga ingin membuat perilaku OS independen. maptampaknya melakukan pekerjaan.
Gonçalo Ribeiro

Jawaban:


12

Coba buat pemetaan:

" Mapping dead keys in normal mode
nmap á 'a

Dengan begitu, ketika Vim mendapatkan aksen, ia menafsirkannya sebagai `+a

Penggunaan nmapmemungkinkan ini terjadi dalam mode normal saja; dalam mode sisipkan atau mode perintah, Anda akan mendapatkan aksen aseperti yang Anda harapkan.

Dimungkinkan untuk menerapkan ini pada kunci lain:

nmap à `a
nmap Á 'A
nmap À `A
nmap ç 'c
nmap Ç 'C
nmap é 'e
nmap è `e
nmap É 'E
nmap È `E
nmap í 'i
nmap ì `i
nmap Í 'I
nmap Ì `I
nmap ó 'o
nmap ò `o
nmap Ó 'O
nmap Ò `O
nmap ú 'u
nmap ù `u
nmap Ú 'U
nmap Ù `U

Ini berhasil. Dan tanpa efek samping. Saya harus belajar menggunakan peta. Terima kasih.
Gonçalo Ribeiro

Sama-sama. Senang bisa membantu.
John O'M.

Bagaimana dengan ^ (karakter lembut pertama dari baris)? Karena ini adalah perintah mandiri, apa yang bisa dilakukan? Apakah OS menyimpan kunci mati sampai tombol lain ditekan?
Spidey
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.