Как я могу использовать gvim для добавления возврата каретки (иначе ENTER) к шаблону? - PullRequest
11 голосов
/ 02 апреля 2009

Что такое синтаксис vi / gvim для замены шаблона на шаблон, включающий <ENTER>? Я знаю, что это возможно, но никогда не хотелось погружаться в документацию слишком глубоко, чтобы знать, как это сделать.

Примерно так:

 :s/\(word\)/\1<ENTER>/

Но правильно :)

Спасибо

Ответы [ 3 ]

17 голосов
/ 02 апреля 2009

Используйте кодировку "escape":

:s/\(word\)/\1\r/

См. Документацию Vim для пробелов в шаблоне Escape.

9 голосов
/ 02 апреля 2009
:s/\(word\)/\1\r/

В качестве альтернативы используйте Ctrl+V или Ctrl+Q, чтобы заключить в кавычку (экранировать) клавишу Enter:

:s/\(word\)\1^QENTER/

Где ^Q - Ctrl+Q, а ENTER - клавиша ввода.

Уточнение: в зависимости от вашей установки, или ^Q или ^V должны работать. Символ цитирования отличается на некоторых платформах.

(Это полезный побочный эффект - вставка соответствующего символа конца строки для любой используемой вами платформы, исключая CR против LF против. CRLF проблема.)

0 голосов
/ 02 апреля 2009

Просто для пояснения, теперь, когда мы говорим о возврате каретки, следует отметить, что клавиши RETURN и ENTER не совпадают, или было бы правильнее сказать, что они не должны совпадать.

Я уже некоторое время не пользуюсь настольной клавиатурой, но клавиша ENTER, как правило, расположена внизу справа, а клавиша RETURN - большая посередине.

Клавиша RETURN используется для ввода возврата каретки, а клавиша ENTER - для ввода команд. Я помню старый редактор DOS EDT, в котором клавиша RETURN была для перевода строки, а клавиша ENTER - для подачи команд. Вы не можете дать команду с возвратом. Я думаю, что ENTER также дал ^ 1 (перевод строки).

Сегодня эта разница несколько утрачена, хотя я все еще время от времени сталкиваюсь с редактором, который его уважает.

2 примера: Один , два и еще более очевидный три

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...