У меня есть файл css, и я хочу добавить пустую строку после каждого }.
Как я могу сделать это в Vim?
Ответ 1
Подстановка будет работать красиво.
:%s/}/\0\r/g
Замените } на все совпадение \0 и новый символ строки \r.
или
:%s/}/&\r/g
Где & также является альтернативой для всего матча, выглядит немного забавным, хотя, на мой взгляд. Vim golfers нравится, потому что это экономит их нажатие клавиши:)
\0 или & в замещающей части замены действует как специальный символ. Во время подстановки вся строка, которая была сопоставлена, заменяет символ \0 или & в подстановке.
Мы можем продемонстрировать это с помощью более сложного поиска и замены -
Which witch is which?
Применить подстановку -
:s/[wW][ih][ti]ch/The \0/g
Дает -
The Which The witch is The which?
Ответ 2
Ответ :%s/}/}\r/ Я думаю.
Ответ 3
:%s/pre/cur\r/g
%: работать со всем буфером.
pre (предыдущий шаблон): какой шаблон будет изменен.
cur (текущий шаблон): с помощью которого будет изменен предыдущий шаблон.
\r: новая строка.
g: повторить для каждого совпадения в строке (по умолчанию нужно просто заменить первое).