Penempatan Tangan untuk Navigasi Vim

12

Saya pengguna Vim baru, dan saya ingin mengajukan pertanyaan yang agak mendasar ini untuk memastikan saya mulai belajar Vim dengan cara yang benar dan tidak mengembangkan kebiasaan buruk.

Ketika Anda menggunakan Vim, bagaimana Anda memposisikan tangan kanan Anda? Saya merasa lebih alami untuk memulai dengan jari-jari saya pada jkl;tombol, tetapi kemudian saya menemukan diri saya kehilangan hkunci pada saat saya menavigasi. Sebaliknya, jika saya memposisikan jari saya di atas hjklmaka saya mendapati diri saya salah mengetik kata karena ini bukan posisi saya dilatih untuk menjaga tangan saya pada keyboard, dan saya menemukan toggling jktombol dengan jari tengah dan ketiga saya menjadi canggung.

Danny
sumber
6
Tetap pertahankan jari Anda j,k,l,;. Pertama, Anda akan belajar memukul hdengan cepat. Kedua, ketika Anda tahu vim lebih baik, Anda tidak akan menggunakan hsemua itu terlalu banyak. Ketiga, keybind sebagian besar didefinisikan dengan posisi tangan itu dalam pikiran, jadi Anda hanya akan menukar satu masalah untuk satu set masalah lain dalam jangka panjang.
PhilippFrank
3
Jangan repot-repot. Vim mendapat perintah gerak kursor yang jauh lebih baik daripada hjkl. Lihat :help navigation.
romainl

Jawaban:

12

Pertama-tama saya akan menganggap bahwa Anda menggunakan keyboard QWERTY. Jawaban saya tidak didasarkan pada preferensi pribadi saya, saya hanya merumuskan kembali bagian dari Vim Praktis yang menakjubkan yang ditulis oleh Drew Neil.

TL; DR Vim dioptimalkan untuk pengetik sentuh sehingga tangan Anda harus tetap berada di tempat Anda belajar meletakkannya: tangan kiri asdf dan tangan kanan menyalajkl;

Neil mengatakan bahwa meletakkan tangan kanan hjkladalah hal yang sangat buruk untuk dilakukan. Alasan utama adalah bahwa memindahkan kursor Anda dengan tombol hjkladalah sesuatu yang harus sangat sesekali karena vim memberikan gerakan lebih cepat kata-bijak atau gerak pencarian karakter ( w, b, f, t, /...).

Saya juga akan langsung mengutip bagian ini:

Saya menggunakan tombol hdan luntuk kesalahan off-by-one, ketika saya hampir kehilangan target saya. Selain itu, saya hampir tidak menyentuh mereka. Mengingat betapa sedikit saya menggunakan htombol, saya senang harus meregangkannya pada keyboard Qwerty. Di sisi lain, saya sering menggunakan perintah pencarian karakter, jadi saya senang bahwa; kunci terletak dengan nyaman di bawah jari kelingking saya.

Bonus: Bahkan jika itu tampaknya bukan kasus Anda di sini adalah tip untuk menghilangkan kebiasaan buruk pemula yang terdiri dari menggunakan tombol panah untuk bergerak: Cukup tambahkan baris berikut ke Anda .vimrcuntuk menonaktifkan sepenuhnya tombol panah:

noremap <Up>    <Nop>
noremap <Down>  <Nop>
noremap <Left>  <Nop>
noremap <Right> <Nop>

( <Nop>singkatan dari "No Operation")

statox
sumber
5
The "kunci hjkl digunakan, tombol panah jahat" -dogma adalah salah satu yang kuat dalam masyarakat Vi / Vim, tetapi dalam banyak hal juga yang konyol. Terlepas dari kenyataan bahwa saya sama sekali tidak yakin itu sebenarnya lebih cepat di semua skenario, bahkan jika itu akan terjadi, apakah ini benar - benar hal yang paling penting tentang belajar Vim? Atau adakah hal-hal lain yang akan menghemat lebih banyak waktu Anda (seperti gerakan, berurusan dengan tanda, register, dasar-dasar VimScript, dll.) .... Seluruh "hjkl" - semuanya tampak seperti optimalisasi mikro yang terbaik.
Martin Tournoij
4
Saya telah menggunakan komputer selama ~ 30 tahun. Setiap 5 tahun sekali saya memperbarui usaha saya untuk belajar mengetik "dengan benar". Sejauh ini, setiap kali saya melakukan itu, saya juga mengalami gejala sindrom carpal tunnel akut dalam beberapa hari pertama. Dan setiap kali gejalanya hilang segera setelah saya menyerah dan kembali ke kebiasaan lama saya. Saya juga telah melakukan seni bela diri selama ~ 40 tahun, dan tidak pernah memiliki masalah sendi. Kebiasaan saya termasuk menggunakan tombol panah, dan banyak menggerakkan tangan saat mengetik. Hal hjklitu tidak pernah membantu saya. Apa yang membantu adalah membeli keyboard mekanik berkualitas baik. FWIW.
lcd047
Saya menjawab pertanyaan karena saya membaca ini beberapa waktu yang lalu dan saya merasa itu cocok dengan kebutuhan OP. Pada topik penempatan tangan, Perancis saya am menggunakan keyboard AZERTY jadi pertanyaannya tidak benar-benar ada: tangan kiri saya adalah di hjklkarena kunci di sebelah kanan lyaitu myang cukup berguna. Tentang pengoptimalan menggunakan tombol-tombol ini untuk bernavigasi, saya mencoba memaksa diri saya untuk menggunakan gerakan sebanyak yang saya bisa tapi saya masih sering menggunakan hjkl, saya masih merasa ini lebih cepat daripada tombol panah tapi saya rasa itu topik yang cukup subyektif.
statox
Saya ingin menyeimbangkan komentar @ lcd047 dengan mengatakan bahwa saya memiliki pengalaman sebaliknya yang lengkap. Saya telah semacam setengah cara menyentuh mengetik selama beberapa tahun, terus tergelincir kembali ke kebiasaan lama, sampai saya mulai menggunakan vim. Bagi saya, salah satu manfaat menggunakan vim adalah bahwa sistem navigasi dan perintah dengan tombol sederhana, misalnya jkl;, memaksa Anda untuk menjaga tangan Anda tetap stabil dalam posisi pengetikan sentuh yang baik untuk menavigasi teks. Saya sekarang sebagai pengetik yang lebih cepat dan lebih akurat.
Andreas