Insira o caractere de retorno de carro no vim

101

Estou editando um quadro de protocolo de rede armazenado em um arquivo Unix ( \nnovas linhas). Preciso inserir o caractere de retorno de carro ( U+000Dtambém conhecido como \r). Quando tento colá-lo da área de transferência ( "+p) ou digitá-lo usando Ctrl+ Shift+ u- 000d, o feed de linha é inserido ( U+000A).

Qual é a maneira certa de fazer isso?

Andrey Vlasovskikh
fonte
Não. Eu acho que sua fuga pode estar errada. Você poderia propor outra solução (funcional) baseada em regexp? :)
Andrey Vlasovskikh,

Respostas:

168

Tipo: ctrl- v ctrl-m

No Windows, use: ctrl- q ctrl-m

Ctrl- Vdiz ao vi que o próximo caractere digitado deve ser inserido literalmente e ctrl- mé o pressionamento de tecla para um retorno de carro.

R Samuel Klatchko
fonte
10
Obrigado, isso funciona para mim. A ajuda pode ser encontrada usando :help ins-special-keys.
Andrey Vlasovskikh,
1
Se você estiver usando a instalação padrão do Windows, substitua CTRL + V por CTRL + Q, pois CTRL + V é refeito para 'colar'.
Cyber ​​Oliveira
9
Depois de muito bater cabeça, estou adicionando isso aqui, embora seja uma questão antiga: para inserir um caractere CR literal de um comando: s, você deve precedê-lo com uma barra invertida ou então o vim (7.1.314) irá convertê-lo no final de caractere de linha apropriado para sua configuração de formato de arquivo. ou seja, entre :s/.../\^V^M/g.
DerfK de
6
Que tal Ctrl+Vseguido por Enter? Percebo que também é inserido ^Mno texto
Braden Best
2
Observe que isso também funciona para ESC: primeiro, vá para o modo INSERT (i), depois Ctrl + V ESC, e você terá um caractere ESC.
Christopher Schultz,