Di terminal saya bisa melakukan ini dengan menekan shift + home dan shift + end, tetapi sepertinya tidak berfungsi di vim. Tombol Home dan end hanya menggulir jendela terminal. Saya ingin melompat dalam mode edit.
Di terminal saya bisa melakukan ini dengan menekan shift + home dan shift + end, tetapi sepertinya tidak berfungsi di vim. Tombol Home dan end hanya menggulir jendela terminal. Saya ingin melompat dalam mode edit.
Jawaban:
Jawaban ini mengasumsikan Anda menggunakan vim di jendela Terminal .
Binding default untuk Home dan End sedikit berbeda dari apa yang diharapkan oleh sebuah program berdasarkan pengaturan TERM yang biasa (yaitu varian xterm). Jika Anda ingin tetap menggunakan binding standar (dan harus menggunakan varian Shifted di Terminal ), Anda dapat mencoba meletakkan sesuatu seperti ini di .vimrc
:
:" map Mac OS X Terminal.app default Home and End
:map <ESC>[H <Home>
:map <ESC>[F <End>
:imap <ESC>[H <C-O><Home>
:imap <ESC>[F <C-O><End>
:cmap <ESC>[H <Home>
:cmap <ESC>[F <End>
Jika tidak, Anda dapat mencoba menyesuaikan kode yang dikirim Terminal ketika Anda menggunakan Home dan End (tidak tergeser, jika Anda mau). Pencarian mungkin akan muncul beberapa tempat yang menggambarkan bagaimana melakukannya ( ini satu ). Ide dasarnya adalah bahwa Anda ingin memiliki Terminal mengirim ESC [1 ~ bukan ESC [H untuk Rumah dan ESC [4 ~ bukannya ESC [F untuk End (atau Shift-Home / Shift-End jika Anda ingin menyimpan Rumah / Berakhir untuk mengakses scrollback). Saya akan menjelaskan proses secara lebih rinci, tetapi saya hanya punya 10,4, dan saya tahu Terminal banyak berubah dalam 10,5 dan kemudian.
gunakan 0 dan $ untuk pindah ke awal dan akhir baris. Referensikan situs ini: http://alvinalexander.com/linux/vi-vim-editor-end-of-line .
0
dan $
.
Sebagai tambahan untuk jawaban Chris , Anda juga dapat mencapai navigasi kata (dengan Option+arrow
kunci), hanya dengan menambahkan empat baris:
:map <ESC>f el
:imap <ESC>b <C-o>b
:imap <ESC>f <C-o>el
:cmap <ESC>f el
Perhatikan o
huruf kecil, sehingga tidak akan keluar dari insert
mode untuk operasi. Anda juga dapat mengubah huruf besar O
dalam jawaban asli untuk efek yang sama.
Di MacVim, Anda dapat menggunakan Command 'Left Arrow' dan Command 'Right Arrow' untuk pergi ke awal dan akhir baris saat berada dalam mode edit.
Buka Terminal -> Preferensi -> Profil -> Keyboard dan tambahkan:
Kunci: ↖ Tindakan: \ 033OH
Kunci: ↗ Tindakan: \ 033OF