2009-10-18 43 views
73

Estoy editando un marco de protocolo de red almacenado en Unix (\n líneas nuevas). Necesito insertar el carácter de retorno de carro (U+000D aka \r). Cuando trato de pegar desde el portapapeles ("+p) o escribirla usando Ctrl +Shift +u - 000d, se inserta el salto de línea (U+000A).Inserte el carácter de retorno de carro en vim

¿Cuál es la forma correcta de hacerlo?

+1

:% s/\\ n/\\ r/g no funciona? – LB40

+0

No. Supongo que su escape puede ser incorrecto. ¿Podría proponer otra solución (funcional) basada en expresiones regulares? :) –

Respuesta

127

Tipo: ctrl - vctrl - m

En Windows Uso: ctrl - qctrl - m

Ctrl - V le dice a vi que el siguiente carácter escrito debe insertarse literalmente y ctrl - m es la pulsación de tecla para un retorno de carro.

+9

Gracias, esto funciona para mí. La ayuda se puede encontrar usando ': help ins-special-keys'. –

+1

Si está utilizando la instalación predeterminada de Windows, entonces reemplace CTRL + V por CTRL + Q ya que CTRL + V está reasignado para 'pegar'. –

+8

Después de mucho headbanging, estoy agregando esto aquí aunque es una vieja pregunta: para insertar un carácter CR literal desde un comando: s, debe precederlo con una barra invertida o de lo contrario vim (7.1.314) lo convertirá al final del carácter de línea apropiado para la configuración del formato de archivo. es decir, ingrese ': s /.../\^ V^M/g'. – DerfK

Cuestiones relacionadas