Perintah apa yang bisa saya jalankan untuk menghapus baris kosong di Vim?
674
:g/^$/d
:g
akan menjalankan perintah pada baris yang cocok dengan regex. Regex adalah 'baris kosong' dan perintahnya adalah :d
(hapus)
:%!cat -s
mungkin menjadi pilihan ..Ditemukan, ini:
Sumber: Kekuatan g di vim wikia
sumber
atau
atau
sumber
Berikut ini dapat digunakan untuk menghapus hanya beberapa baris kosong (kurangi menjadi satu baris kosong) dan biarkan satu baris kosong utuh:
sumber
\_$
berarti end-of-line yang dapat digunakan di dalam suatu pola ($
hanya dapat digunakan pada akhir pola.) Sama dengan\_^
itu berarti awal dari sebuah garis dan dapat digunakan di mana saja di dalam pola. Jadi, polanya cocok dengan garis kosong, baris baru, dan lagi garis kosong. Lihat halaman bantuan regex Vim .:g/^$/,/./-j
cara menghapus semua baris kosong
(lakukan ini beberapa kali menggunakan semua baris kosong hilang)
cara menghapus semua baris kosong meninggalkan SINGLE baris kosong
(lakukan ini beberapa kali)
cara menghapus semua baris kosong meninggalkan DUA baris kosong PADA MAKSIMUM,
(lakukan ini beberapa kali)
untuk memasukkan ^ M, saya harus mengontrol-Q dan kontrol-M di windows
sumber
\r
sebagai penggantiCtrl-M
.Bagaimana tentang:
sumber
bekerja dengan perl di vim:
:%!perl -pi -e s/^\s*$//g
sumber
chomp
juga melakukan pekerjaan?Ini bekerja untuk saya
:%s/^\s*$\n//gc
sumber
:%s/^\n//gc
Fungsi ini hanya menghapus dua atau lebih baris kosong, letakkan baris di bawah ini di vimrc Anda, lalu gunakan \ d untuk memanggil fungsi
sumber
Saya mencoba beberapa jawaban di halaman ini, tetapi banyak dari mereka tidak bekerja untuk saya. Mungkin karena saya menggunakan Vim pada Windows 7 (jangan mengejek, kasihan padaku: p)?
Inilah yang termudah yang saya temukan yang berfungsi pada Vim di Windows 7:
Berikut jawaban yang lebih panjang di Vim Wikia: http://vim.wikia.com/wiki/Remove_unwanted_empty_lines
sumber
tempel
di .vimrc Anda, lalu mulai ulang vim Anda. jika Anda menggunakan perintah: 5,12DBL itu akan menghapus semua baris kosong antara baris ke-5 dan ke-12. Saya pikir jawaban saya adalah jawaban terbaik!
sumber
Jika ada sesuatu yang menggandakan garis teks Anda maka perintah ini akan menghapus spasi ganda dan menggabungkan garis kosong berulang yang sudah ada menjadi satu baris kosong. Ini menggunakan pembatas sementara ^^^ pada awal baris jadi jika ini berbenturan dengan konten Anda pilih yang lain. Baris yang hanya berisi spasi putih dianggap kosong.
sumber
Tekan deletetombol dalam mode sisipkan untuk menghapus garis kosong.
sumber
Ini bekerja untuk saya:
Ini pada dasarnya menghapus semua baris yang tidak memiliki angka atau huruf. Karena semua item dalam daftar saya memiliki surat, itu menghapus semua baris kosong.
sumber