Pergi ke awal baris tanpa membuka baris baru di VI


231

Untuk usia sekarang saya telah menggunakan SHIFTOdan SHIFT$untuk berpindah ke awal dan akhir baris di vi.

Namun SHIFTOlebih untuk membuka baris baru di atas kursor.

Apakah ada perintah yang hanya membawa Anda ke awal baris?


9
Selain jawaban di bawah ini, ketik: bantu gerakan kiri-kanan di Vim untuk banyak info.
— ngm

buku yang bagus untuk vim: berlatihlah dalam vim. ^ 0
— 陈思秀

Jawaban:


428

Anda dapat menggunakan ^atau 0(Nol) dalam mode normal untuk pindah ke awal baris.

^memindahkan kursor ke karakter non-kosong pertama dari garis
0selalu memindahkan kursor ke "kolom pertama"

Anda juga dapat menggunakan Shiftiuntuk bergerak dan beralih ke mode Sisipkan.


5
Juga Shift + A dan Shift + I masing-masing ke akhir dan awal baris dan juga beralih ke Sisipkan Model
— bibstha

7
Bagi saya, menekan ^biasanya tidak semudah menekan 0dan terus wmenerus.
— DXDXY

33

Sederhana 0akan membawa Anda ke awal baris.

:help 0 untuk informasi lebih lanjut



12

Anda dapat menggunakan 0atau ^untuk pindah ke awal baris.
Dan dapat menggunakan Shift+ Iuntuk pindah ke awal dan beralih ke mode pengeditan ( Sisipkan ).


Jawaban Anda sebagian besar benar tetapi ada peringatan kecil. Shift+Iatau ^akan memindahkan kursor ke awal teks pada baris. Jika garis memiliki ntab di awal, itu akan memindahkan kursor ke n*tabstop + 1kolom th. Sementara 0memindahkan kursor ke kolom paling pertama dari garis.
— narendra-choudhary

10

Ada cara lain:

|

Itu adalah "pipa" - simbol yang ditemukan di bawah backspace dalam tata letak ANSI .

Vim quickref ( :help quickref) menggambarkannya sebagai:

N      |      to column N (default: 1)

Bagaimana dengan garis yang dibungkus?

Jika Anda telah mengaktifkan garis pembungkus, 0dan |tidak akan lagi membawa Anda ke awal garis layar. Dalam hal ini gunakan:

g0

Lagi, vim quickref doc:

 g0   to first character in screen line (differs from "0"
      when lines wrap)

Sekarang saya mengerti mengapa itu berhasil. Terima kasih. Aku ingin tahu. Saya pikir ini lebih baik daripada 0karena |dan $berada pada tombol yang sama.
— WesternGun


6

Pindahkan kursor ke awal atau akhir dengan mode insert

  • I - Memindahkan kursor ke karakter non blank pertama pada baris saat ini dan memungkinkan mode penyisipan.
  • A - Memindahkan kursor ke karakter terakhir pada baris saat ini dan memungkinkan mode penyisipan.

Di sini Isetara dengan ^+ i. Demikian pula Adengan $+ a.

Hanya memindahkan kursor ke awal atau akhir

  • ^ - Memindahkan kursor ke karakter non blank pertama pada baris saat ini
  • 0 - Memindahkan kursor ke karakter pertama pada baris saat ini
  • $ - Memindahkan kursor ke karakter terakhir pada baris saat ini

5

Saya baru saja menemukan 0 (nol) dan shift + 0 bekerja pada vim.


5
shift+0itu ), yang merupakan kalimat berikutnya
— mihai

Shift+0lebih baik, ^menunjukkan karakter dan itu menjengkelkan. Terima kasih
— calbertts

1

0 Membawa Anda ke awal baris

Shift 0 Membawa Anda ke akhir baris


Shift-0 (')') tidak akan membawa Anda ke awal baris
— Boris Churzin

@Devenv: Itu benar! 0 akan
— Sagar Jain

1
Shift-0 (")") adalah "kalimat maju" bukan "akhir dari garis" (itulah yang saya maksudkan)
— Boris Churzin
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.