Info dasar
Vim tidak menampilkan baris baru terbaru dalam buffer tetapi sebenarnya vim selalu menempatkan EOL di akhir file ketika Anda menulisnya, karena standar untuk file teks dalam sistem Unix. Anda dapat menemukan informasi lebih lanjut tentang ini di sini . Singkatnya Anda tidak perlu khawatir tentang tidak adanya baris baru di akhir file di vim.
Eksperimen 1
Anda dapat melakukan percobaan kecil ini untuk memeriksa perilaku ini. Di terminal jalankan:
$ vim test_test
Masukkan karakter 1dan simpan file :wq.
Anda hanya memiliki satu karakter dalam file, bukan? Sebenarnya tidak :) Anda sekarang memiliki file 1dan LFkarakter Anda. Mari kita periksa, dengan utilitas hexdump:
$ hexdump test_test
0000000 31 0a
0000002
31adalah kode ASCII untuk karakter 1, dan 0akode ASCII untuk LFkarakter non-cetak yang untuk UNIX karena Anda mungkin sudah tahu kode untuk end of line.
Eksperimen 2
Tetapi bagaimana jika kita akan membuka file yang tidak memiliki eolsimbol di akhir file. Mari kita periksa juga. Mari kita buat file tanpa eol di akhir, misalnya seperti ini:
$ echo -n "1" > test_without_eol
Kemudian lagi mari kita lihat di dalamnya dengan hexdump:
$ hexdump test_without_eol
000000 31
0000001
Jadi tidak ada eolkarakter di sini. Mari kita buka file ini dalam vim:
$ vim test_without_eol
Di bagian bawah editor Anda akan melihat:
"test_without_eol" [noeol] 1L, 1C
Dan jika Anda akan menyimpan eolkarakter file ini akan dimasukkan secara otomatis.
Apa yang bisa kita lakukan tentang ini?
Jika Anda benar-benar perlu melihat ujung file. Coba gunakan perintah ini:
:set listchars=eol:$
itu akan menampilkan semua eolkarakter sebagai $tanda.