Что такое синтаксис vi
/gvim
для замены шаблона с шаблоном, который включает <ENTER>
? Я знаю, что это возможно, но никогда не чувствовал, что погружение слишком глубоко в документации, чтобы знать, как это сделать.
Что-то вроде этого:
:s/\(word\)/\1<ENTER>/
Но правильно:)
Спасибо
Ответ 1
Используйте кодировку "escape":
:s/\(word\)/\1\r/
См. документацию Vim для пробел шаблона.
Ответ 2
:s/\(word\)/\1\r/
В качестве альтернативы используйте Ctrl+V
или Ctrl+Q
для цитирования (escape) клавиши Enter
:
:s/\(word\)\1^QENTER/
Где ^Q
есть Ctrl+Q
, а Enter
- клавиша Enter.
Разъяснение. В зависимости от вашей установки должны работать либо ^Q
, либо ^V
. Символьный символ отличается на некоторых платформах.
(У этого есть полезный побочный эффект вставки соответствующего символа конца строки для любой используемой вами платформы, устраняя проблему CR
vs. LF
и CRLF
.)
Ответ 3
Как раз для разъяснения, теперь, когда мы говорим о возврате каретки, следует отметить, что RETURN и ENTER не совпадают, или было бы правильнее сказать, что они не должны быть одинаковыми.
Я не использовал настольную клавиатуру в течение некоторого времени, но клавиша ENTER обычно имеет правую сторону справа, а клавиша RETURN - большая в середине.
Кнопка RETURN - это та, которая должна использоваться для ввода возврата каретки, а клавиша ENTER - клавиша, которая должна использоваться для ввода команд. Я помню старый редактор DOS EDT, в котором ключ RETURN был для новой строки, а клавиша ENTER - для предоставления команд. Вы не могли дать команду с RETURN. Я думаю, что ENTER также дал ^ 1 (line feed).
Сегодня эта разница несколько потеряна, хотя я все же время от времени сталкиваюсь с редактором, который его уважает.
2 примера:
Один, два и еще более очевидный три