Saya baru saja mendapat Mac! Bagaimana saya melakukan "end", "home", "page up" dan "page down" di terminal / editor VIM saya?

8

Saya menulis banyak python di VIM saya, di terminal. Apa yang saya lakukan?

Alex
sumber
1
sebenarnya, jika Anda perlu mengajukan pertanyaan ini, Anda harus benar-benar mempertimbangkan menggunakan editor atau IDE lain untuk menulis python. Untuk masalah ini, home => ^, end => $, page up = ^ f, page down = ^ b; perhatikan bahwa Anda harus keluar dari mode edit menggunakan Esc terlebih dahulu, dan kemudian masuk lagi dengan misalnya saya atau ....
bubu
1
@ bahu bah! Saya katakan. Saya melakukan semua pengkodean dalam VIM, itu adalah editor yang sangat baik, bahkan untuk python.
Jed Daniels
1
Apakah Anda mengacu pada tombol 'home' 'end' 'page up' 'page down' pada keyboard Anda, atau apakah Anda hanya mencari perintah navigasi VIM yang tepat?
Stefan Lasiewski

Jawaban:

17

Lakukan pintasan vi standar berusia di atas 30 tahun

^f(maju == halaman ke bawah)
^b(kembali == halaman ke atas)
^(itu adalah tanda shift-6 untuk awal baris) dan
$(akhir baris)

...tidak bekerja?

Atau apakah Anda mencari tombol keyboard gaya PC untuk fungsi-fungsi itu? Untuk itu, gunakan tombol panah Fn +:

Fn + panah bawah == halaman bawah
Fn + panah atas == halaman atas
Fn + panah kiri == rumah
Fn + panah kanan == end

Spiff
sumber
4
Kombinasi tombol 'Fn + panah' tidak berfungsi untuk saya menggunakan Terminal.App dan Vim.
Stefan Lasiewski
|setara dengan HOME: keduanya menuju ke kolom ke 0 baris, bukan ke karakter non-spasi pertama di dalamnya.
intuited
Di mc pada Lion Fn + panah hanya berfungsi untuk saya. ^ f, ^ b kunci memuat file \ sebelumnya berikutnya di folder saat ini. Terima kasih
kradmiy
Terima kasih untuk ini! Bisakah saya juga memindahkan kursor saat dalam mode sisipkan? Saya dapat melakukan ini pada Windows dan Linux. Apakah Mac OS X sama baiknya dengan mereka? Koreksi minor: 0 melakukan posisi pertama pada baris saat ini, sedangkan ^ melakukan karakter nonblank pertama pada baris saat ini.
tommy.carstensen
Ini tidak menjawab pertanyaan. Untuk mendapatkan HOME dan END untuk bekerja di vim dan di shell, masukkan bind '"\e[1~":"\eOH"'dan bind '"\e[4~":"\eOF"'di $ HOME / .bashrc Anda. Lebih banyak kustomisasi bash / vim yang ramah-Mac dan ramah-Linux di github.com/sudoer/dotfiles .
Alan Porter
7

Perintah Vim (ini bukan spesifik mac):

akhir baris: $

mulai dari baris: 0

halaman bawah: ctrl + f

halaman atas: ctrl + b

Jed Daniels
sumber
2

Jika Anda melihat di pengaturan keyboard terminal - Anda dapat menukar tindakan untuk halaman atas / bawah dan menggeser halaman atas / bawah. Itu berfungsi dalam vim default dan seperti yang Anda harapkan di kotak jauh.

gg dan G adalah semua yang Anda butuhkan untuk home / end. (Saya memang menghabiskan waktu mencoba membuatnya bekerja)

Yakub
sumber
1

Untuk mendapatkan HOME dan END untuk bekerja di vim dan di shell, masukkan bind '"\e[1~":"\eOH"'dan bind '"\e[4~":"\eOF"'dalam file $ HOME / .bashrc Anda.

Lebih banyak kustomisasi bash / vim untuk Mac dan Linux yang ramah di https://github.com/sudoer/dotfiles . Di skrip bash, cari kata-kata $ OSTYPE dan "darwin". Ada blok "Darwin" yang serupa di vimrc untuk tweak vim khusus Mac.

Alan Porter
sumber