Возврат каретки против новой строки в vim

В vim, когда я открыл файл, я хотел добавить две пустые строки в конце каждой текущей строки. Я использовал следующий переключатель:

%s/$/\n\n/ 

По-видимому, это не работает, но что делает работа:

 %s/$/\r\r/ 

Я думал, что \ r является функцией Windows? Кто-нибудь сможет объяснить немного больше.

2 Solutions collect form web for “Возврат каретки против новой строки в vim”

Из vim документов по шаблонам :

\ r соответствует <CR>

\ n соответствует концу строки – при сопоставлении в строке вместо текста буфера сопоставляется буквенный символ новой строки.

Источник: https://stackoverflow.com/questions/71417/why-is-ra-newline-for-vim

Поскольку @MartinvonWittich заявил, что вы хотите использовать \r . Вы также можете использовать комбинацию клавиш:

Ctrl + v + M, которые обычно отображаются на дисплее как ^M при вводе.

 %s/$/^M^M/ 

Вот еще полезная информация о vim отношении поиска и замены:

При поиске:

  • . , * , \, [ , ] , ^ и $ являются метасимволами.
  • + ? , |, { , } , ( , и ) должны быть экранированы, чтобы использовать их специальную функцию.
  • \/ is / (используйте обратную косую черту + косую черту для поиска косой черты)
  • \t – вкладка, \s – пробел
  • \n – новая строка, \r – CR (возврат каретки = Ctrl-M = ^ M)
  • \{#\} используется для повторения. /foo.\{2\} будет соответствовать foo и двум следующим символам. \ The \ не требуется при закрытии}, так что / /foo.\{2} будет делать то же самое.
  • \(foo\) делает backreference для foo. Скобки без побегов буквально совпадают. Здесь \ требуется для закрытия \ ).

При замене:

  • \r – новая строка, \n – нулевой байт (0x00).
  • \& ampersand (& – текст, соответствующий шаблону поиска).
  • \1 вставляет текст первой обратной ссылки. \2 вставляет вторую обратную ссылку и т. Д.

Рекомендации

  • Vim: \ n против \ r
  • Почему \ n новая линия для Vim?
  • Поиск и замена
  • Symlink везде
  • Можно ли добавить ci "(или ci ', ci {и т. Д.) В режим vi в bash?
  • Как сохранить файл с помощью Vim, а затем выполнить команду в bash
  • Vim и унифицированные разности
  • Почему синтаксис «установить» не работает для выделения синтаксиса в vim?
  • Как правильно избежать этого слова на vim?
  • Есть ли эквивалент для vim \ zs в sed или perl?
  • Выделите escape-символы Vim, например \ n
  • Команда Vim для вставки символа
  • Коды клавиш для клавиш Caps Lock, Shift, Left Control и FN?
  • Как отключить колокола / визуальные звонки в vim?
  • Linux и Unix - лучшая ОС в мире.