Saya ingin belajar sendiri menggunakan hjkl lebih dari menggunakan tombol panah agar tetap di baris rumah. Dan ya, saya sangat sadar bahwa seseorang seharusnya tidak menggunakan hjkl sebagai tombol navigasi utama. Namun kebiasaan saya cukup kuat dan saya bahkan tidak menyadari bahwa itu membuat gerakan tangan ke tombol panah dan saya ingin melepaskannya.
Untuk menghentikan kebiasaan itu: Bagaimana saya bisa menonaktifkan tombol panah sehingga saya terpaksa menggunakan hjkl atau metode navigasi lainnya?
Sebagai bonus, akan sangat membantu jika ada pesan yang ditampilkan Dont't use this!
bahwa itu tidak wajib. Jika mereka tidak berhasil, itu akan cukup membingungkan bagi saya untuk memikirkan kembali kebiasaan saya.
key-bindings
cursor-movement
cursor-motions
k0pernikus
sumber
sumber
w
untuk kata berikutnya,}
untuk paragraf berikutnya,n
untuk pertandingan hasil pencarian berikutnya,fz
untuk kemunculan berikutnyaz
pada baris saat ini, dll.) Daripada bergerak lebih banyak granular oleh karakter tunggal. Saya pasti setuju dengan ini. Namun, HJKL jelas lebih baik daripada tombol panah karena Anda tidak perlu memindahkan tangan dari baris rumah. Saya akan sering mengetik sesuatu sepertijA
, yang jauh lebih cepat daripada<Down>A
, dan tidak bisa dikalahkan oleh gerakan apa pun.Jawaban:
Anda dapat menginstal plugin hardmode dan
.vimrc
memasukkannya ke dalamJika Anda tidak ingin menggunakan plugin, penggunaan (yang mungkin menjadi pilihan yang lebih baik, karena Anda bisa menyesuaikan segalanya sendiri!)
nnoremap
,vnoremap
Daninoremap
pada<Left>
,<Right>
,<Up>
,<Down>
,<PageUp>
dan<PageDown>
, misalnya:sumber
<nop>
jika Anda ingin menonaktifkan keymap sama sekali:nnoremap h <nop>
.Jika Anda, atau orang lain membaca topik ini, hanya ingin menonaktifkan gerakan kunci tanpa peringatan teks masukkan baris berikut di .vimrc
Perintah hanya akan menonaktifkan gerakan tombol dalam mode normal. Mereka masih bekerja dalam mode sisipkan. Jika Anda menggunakan inoremap, gerakan panah juga akan dihapus dari mode insert.
Topik populer besar-besaran ini berkaitan dengan perbedaan antara noremap, nnoremap, inoremap dll: Memetakan kembali dalam Vim
Gagasan umum dengan memetakan kembali seperti ini:
Jadi, dalam contoh-contoh lain yang diberikan Anda remap perintah kiri Anda ke prompt teks yang secara tidak sengaja menghapus tindakan sebenarnya memindahkan kursor. Contoh yang saya berikan di atas hanya memetakan kembali tindakan yang tidak melakukan apa-apa, bukan sesuatu yang lain. Pertimbangkan untuk menghapus, alih-alih mengganti, fungsi vim.
sumber
Anda bisa menambahkan ini ke Anda
.vimrc
untuk menonaktifkan tombol panah di Command, Insert, Normal dan Visual Mode:Catatan: Checkout
:help map-overview
untuk detail lebih lanjut tentang berbagai jenis pemetaansumber
noremap ... ...
(untuk mode normal, visual, pilih dan operator-tertunda) dannoremap! ... ...
(untuk mode penyisipan dan baris perintah).noremaps
akan membantu seseorang yang ingin menyesuaikan mode apa yang terpengaruh