vim
складчатость
Поиск…
замечания
Складывание приводит к свертыванию нескольких строк текста и отображению в виде одной строки. Это полезно для сокрытия частей документа, которые считаются несущественными для текущей задачи. Складывание - это просто визуальное изменение документа: сложенные линии все еще присутствуют и остаются неизменными.
Сгибание является постоянным. После создания складку можно открывать и закрывать без необходимости ее повторного создания. Когда закрыты, складки могут перемещаться или дергаться и помещаться так, как если бы они были одной строкой, хотя основная операция будет действовать на весь текст под слоем
Настройка метода Fold
:set foldmethod={method}
устанавливает метод fold для текущего окна. Это определяет, как сгибы манипулируются внутри этого окна. Допустимыми параметрами для метода являются:
-
manual
(складки вручную создаются и уничтожаются пользователем) -
indent
(складываются для строк с одинаковым отступом) -
marker
(маркеры подстроки используются для указания начала и конца складки) -
syntax
(элементыsyntax
синтаксиса определяют складки) -
expr
(выражение Vimscript оценивается в строке для определения его уровня сгиба) -
diff
(смена текста не изменяется при сложенном виде)
По умолчанию используется manual
.
Создание палитры вручную
-
zf{motion}
создает складку, которая покрывает текст, который будет охватывать «движение». -
{count}zF
создает{count}zF
которое охватывает строки «count». -
{range}fo[ld]
создает складку для линий в указанном диапазоне.
Все три команды действительны только тогда, когда foldmethod
установлен на manual
или marker
. В случае прежнего метода складки вновь созданные складки немедленно закрываются.
Открытие, закрытие и переключение складки
-
zo
открывает фрейм под курсором. -
zO
открывает все складки под курсором, рекурсивно. -
zc
закрывает складку под курсором. -
zC
закрывает все складки под курсором, рекурсивно. -
za
переключает сгиб под курсором (закрывается закрытая складка, закрывается открытая складка). -
zM
закрывает все складки в буфере. -
zR
открывает все складки в буфере. -
zm
закрывает уровень сброса в буфере. -
zr
открывает уровень сброса в буфере.
Отображение строки, содержащей курсор
zv
гарантирует, что строка, содержащая курсор, не складывается. Будет открыто минимальное количество сгибов, необходимых для отображения строки курсора.
Складные C-блоки
Это наш буфер:
void write_buffer(size_t size, char ** buffer)
{
char * buf = *buffer;
size_t iter;
for(iter = 0; iter < size; iter++)
{
putc(*(buf + iter));
}
}
Курсор находится в [1] [1] ([линия] [col]). Переместите курсор к скобке curl цикла for:
/for<Enter>j
курсор - [6] [2].
Теперь введите zf%
(создайте фальцовку, перейдите к соответствующей скобке). Вы успешно создали первую складку.
Теперь введите :2<Enter>_
, курсор теперь находится в [2] [1] и zf%
: полное тело функции сложен.
Вы можете открыть все сводки, которые вы только что создали, используя zO
и повторно закрыть их с помощью zC
.