Как одновременно открыть все папки, содержащие шаблон поиска?

У меня есть файл, состоящий примерно из сотни абзацев, каждый из которых сворачивается в соответствии с третьим примером в разделе :help fold-expr, который делает сворачивание абзацев, разделенных пустыми строками:

set foldmethod=expr
set foldexpr=getline(v:lnum)=~'^\\s*$'&&getline(v:lnum+1)=~'\\S'?'<1':1

Предположим, я запускаю шаблон поиска, например.

/Item 014

Этот узор можно найти в 7 различных складках.

Я знаю, что могу просто нажать "n" 6 раз, чтобы последовательно открыть все папки, задействованные в поиске.

Но я бы хотел, чтобы 7 складок открывались одним движением, чтобы иметь быстрый обзор.

я попробовал макрос

qu n q

тогда

/Item 014
100@u

но не удалось.

Как мне поступить?


person ThG    schedule 14.09.2013    source источник


Ответы (1)


Выполнив поиск /Item 014, вы можете использовать следующую команду, чтобы открыть все складки, содержащие шаблон:

:g//foldopen

При этом используется тот факт, что команда :g повторно использует последний шаблон поиска, если он оставлен пустым. Таким образом, команда Ex :foldopen выполняется для всех совпадающих строк: она открывает складку в текущей строке.

person glts    schedule 14.09.2013
comment
Красиво... и быстро! Спасибо большое - person ThG; 14.09.2013