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.