Dalam vim, saya biasanya diatur foldmethod
untuk indent
untuk sebagian besar jenis file. Secara umum, saya suka file dibuka dengan semua lipatan terbuka. Namun, penting untuk segera mulai menggunakan zmuntuk mulai menutup lipatan secara global di seluruh file, satu tingkat pada suatu waktu, memungkinkan saya untuk melihat keseluruhan struktur file tanpa detail yang menghalangi.
Satu-satunya solusi umum yang saya temukan adalah mengatur foldlevelstart
ke angka yang sangat tinggi, misalnya 99, untuk memastikan bahwa semua file (dengan mengingat file yang berbeda akan memiliki tingkat indentasi maksimum yang berbeda) mulai dibuka sepenuhnya. Namun, saya kemudian harus menggunakan zmberulang kali untuk mengurangi foldlevel
ke tingkat lipatan maksimum file, biasanya jauh lebih sedikit dari 99, yang rumit dan tidak praktis. Saya dapat mengatur foldlevel
secara manual menggunakan baris perintah vim, tetapi saya masih perlu mengetahui indentasi maksimum dalam file.
Apakah ada cara praktis untuk membuka file dengan foldlevel
set ke tepat satu lebih dari level indent / fold maksimum saat ini dalam file itu sendiri?
Misalnya, diberikan file berikut:
a
b
c
d1
d2
e
f1
f2
Tekan tombol pertama zmakan menunjukkan ini:
a
b
c
+-- 2 lines: d1------
e
+-- 2 lines: f1------
(Namun, perlu diketahui bahwa ini harus berfungsi untuk kasus umum di mana indentasi maksimum awal file dapat berupa nilai apa pun).
zm
= lipat lebih banyak (kurangi foldlevel) dan zr
= lipat lebih sedikit (add foldlevel)
zr
denganzm
; yang terakhir mengurangi tingkat lipat.