Как удалить пустые строки в Vim

Работая с текстами в Vim, часто возникает задача очистки — удалить пустые строки, которые появляются после форматирования или как артефакты экспорта.

Делать это вручную долго и неэффективно. К счастью, Vim предлагает мощные инструменты для автоматической обработки.

Основной метод использует команду глобального поиска с удалением. Её структура: :[диапазон]g/шаблон/команда. Для удаления всех пустых строк (включая содержащие пробелы или табуляцию) во всём файле используется:

 :%g/^\s*$/d

Разберём эту команду:

% — диапазон «весь файл».

g — команда global, выполняет действие для каждой строки, соответствующей шаблону.

/^\s$/ — шаблон поиска. ^ обозначает начало строки, \s — ноль или более пробельных символов (пробел, таб), $ — конец строки. Итог: строка, которая пуста или состоит только из пробелов.

d — команда delete на удаление найденной строки.

Есть полезные вариации этой команды. Если нужно удалить только абсолютно пустые строки, без учёта пробелов:

 :%g/^$/d

Для работы не во всём файле, а в выделенной области, перейдите в визуальный режим (V), выделите строки и введите:

 :'<,'>g/^\s*$/d

Часто требуется обратное действие — удалить всё, кроме пустых строк. Для этого используйте команду v (обратный глобальный поиск):

 :%v/^\s*$/d

Все изменения, как и обычно в Vim, можно отменить клавишей u. Эти команды — яркий пример силы подхода Vim: одна короткая строка заменяет сотни ручных кликов, делая редактирование быстрым и предсказуемым.


Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *


Unlix.ru © Все права защищены 2015 - 2026

Копирование материалов с сайта Unlix.ru без указания полной ссылки на источник ЗАПРЕЩЕНО!