Ответ 1
Да, вы можете ввести
:%foldc
Что закрывает один уровень складок (снаружи внутри).
У меня есть длинный файл кода с синтаксисом, складывающимся в Vim.
Я знаю, как открыть все складки (zR) или закрыть все складки (zM), и я знаю, как увеличить или уменьшить уровень сложения (zm, zr).
Однако, когда я увеличиваю складной уровень, большинство внутренних складок закрыты; вместо этого я хочу, чтобы внешняя большая складка была закрыта, а внутренняя часть развернута. Это можно сделать вручную, открыв все сгибы и закрыв каждый верхний уровень, сбрасывая вручную невероятно утомительно, особенно с длинными файлами, которые я открываю быстро, чтобы получить обзор кода.
Есть ли какой-либо ключевой ярлык для этого? Или мне нужно сделать какую-то функцию Vim для этого? И если да, то как?
Да, вы можете ввести
:%foldc
Что закрывает один уровень складок (снаружи внутри).
Я думаю, вы хотите добавить set foldnestmax=1
к своему $MYVIMRC
.
Как говорит Карл, настройка foldnestmax
, вероятно, вы хотите.
zO
(т.е. capital-letter-o) открывает все вложенные складки.
Я также считаю, что zx
и zv
очень полезны.
Когда я использую foldmethod=expr
с пользовательским выражением fold, я часто изменяю выражение так, чтобы оно только сбрасывало то, что я хочу, чтобы оно складывалось.