четверг, 11 февраля 2010 г.

Поиск и замена в VIM

Эта команда сэкономила мне тучу времени.
Чтобы найти слово или словосочетание в vim и заменить его на другое нужно использовать :
:%s/\<что_ищем\>/на_что_заменяем/gc

Красота. Вим сам находит нужное слово, заменяет на нужно. Все красиво и аккуратно.

Что означают элементы этой команды:
Команда состоит из:
:
Вход в командный режим

%
Выполнить эту команду на всех строках (% - синоним "от первой до последней строки".)

s
Сокращенная форма команды :substitute.

/\<что_ищем\>/
Здесь указываем нужный текст или слово, которое в последствии придется заменять. \ указывает на начало слова и \> - указывает на конец.

/на_что_заменяем/
здесь вводим тект, на который мы и будем заменять

gc
Флаги
g
Глобально -- Заменяет каждое вхождение, не используя "с начала и до конце" на каждой строке
c

Подтверждение -- Спрашивать перед каждой заменой


Чтобы не подтверждать замену каждого слова можно использовать эту команду без "с" в конце. Тогда vim заменит все вхождения слова в файле.

4 комментария: