Apakah ada perintah untuk membagi garis di Vim?


Jawaban:


16

Tidak, tidak ada perintah bawaan untuk itu.

Ketika saya ingin membagi pada <Space>, saya lakukan r<CR>.

--- EDIT ---

Komentar @ keith-nicholas mengingatkan saya tentang pertanyaan ini. FWIW saya datang dengan metode semoga "universal" untuk sementara waktu:

function! BreakHere()
    s/^\(\s*\)\(.\{-}\)\(\s*\)\(\%#\)\(\s*\)\(.*\)/\1\2\r\1\4\6
    call histdel("/", -1)
endfunction

nnoremap <key> :<C-u>call BreakHere()<CR>

4
Menggunakannya r<CR>cukup pintar! Terima kasih!
Marcelo

1
itu keren! super menjengkelkan masuk ke menyisipkan garis
Keith Nicholas

Saya menemukan s<CR>terus lekukan sedangkan r<CR>tidak.
toxefa

5

a Enter Escuntuk membagi ke kanan kursor, atau i Enter Escuntuk membagi ke kiri.


1
Hanya itu saja. Cukup masukkan satu baris baru. Atau: gunakan r + <return> untuk mengganti karakter di bawah kursor dengan baris baru. Akan menyenangkan untuk memiliki perintah huruf tunggal untuk itu, tetapi sejauh yang saya tahu tidak ada satu.
Tonny

2

Cara termudah yang saya temukan untuk memisahkan garis dalam Vim adalah perintah mode normal gq(ketikkan kedua huruf dalam suksesi cepat dalam mode normal atau visual):

  • Dalam mode visual, itu akan membagi apa pun yang dipilih.
  • Dalam mode normal, Anda mengikuti gqdengan gerakan.

Misalnya, gqlakan membagi satu baris dengan lebar yang saat ini ditetapkan. Untuk mengatur lebar garis yang dipisah agar berbeda dari pengaturan Anda saat ini, Anda dapat menggunakan

:set textwidth=<n>

Di mana n = jumlah karakter yang Anda inginkan dalam satu baris, mis. 10, dan ubah kembali ke lebar normal Anda ketika Anda selesai.

Dapatkan informasi ini dari video Youtube oleh Kholidfu yang menunjukkan cara bergabung dan memecah garis dalam mode normal menggunakan gerakan: Vim Tutorial - Bergabung dan Garis Perpecahan .


1

Anda bisa menentukan sendiri menggunakan peta. Untuk mendefinisikan z sebagai perintah misalnya:

:map z i<CTRL+m>

0

Anda dapat merekam makro:

dalam mode normal ketik "q +" untuk memulai catatan. tekan "i", makro yang ingin Anda rekam. lalu tekan "q" lagi untuk berhenti merekam.

untuk menggunakan makro, masuk ke mode normal dan ketik "@ + huruf".

dalam kasus saya, saya menggunakan "b" untuk menggunakan makro ini: untuk merekam ketik dalam mode normal "qbiq" untuk menggunakan ketik dalam mode normal "@b"

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.