Trong vim, tôi thường đặt foldmethod
để indent
cho hầu hết các loại tập tin. Nói chung, tôi thích các tệp để mở với tất cả các lần mở. Tuy nhiên, thật hữu ích khi bắt đầu ngay lập tức bằng cách sử dụng zmđể bắt đầu đóng các nếp gấp trên toàn cầu, mỗi lần một cấp, cho phép tôi xem cấu trúc tổng thể của tệp mà không cần thông tin chi tiết.
Giải pháp chung duy nhất tôi tìm thấy là đặt foldlevelstart
ở một số rất cao, ví dụ 99, để đảm bảo rằng tất cả các tệp (lưu ý các tệp khác nhau sẽ có mức độ thụt tối đa khác nhau) bắt đầu hoàn toàn mở ra. Tuy nhiên, sau đó tôi phải sử dụng zmnhiều lần để giảm foldlevel
xuống mức độ gấp tối đa của tệp, thường là dưới 99, rất cồng kềnh và không thực tế. Tôi có thể đặt foldlevel
thủ công bằng cách sử dụng dòng lệnh vim, nhưng tôi vẫn cần biết thụt lề tối đa trong tệp.
Có cách nào thực tế để mở một tệp foldlevel
được đặt thành chính xác nhiều hơn mức thụt / gập tối đa hiện tại trong chính tệp không?
Ví dụ: đưa ra tệp sau:
a
b
c
d1
d2
e
f1
f2
Phím nhấn đầu tiên của zmsẽ hiển thị điều này:
a
b
c
+-- 2 lines: d1------
e
+-- 2 lines: f1------
(Tuy nhiên, lưu ý rằng nó sẽ hoạt động trong trường hợp chung trong đó độ thụt tối đa ban đầu của tệp có thể là bất kỳ giá trị nào).
zm
= gấp nhiều hơn (trừ Foldlevel) và zr
= gấp ít hơn (thêm Foldlevel)
zr
vớizm
; cái sau làm giảm nếp gấp.