¿Qué significa el carácter ^M en Vim?
Sigo teniendo el ^M
personaje en mi .vimrc
y rompe mi configuración.
Unix usa 0xA para un carácter de nueva línea. Windows usa una combinación de dos caracteres: 0xD 0xA. 0xD es el carácter de retorno de carro. ^M
Sucede que es la forma en que vim muestra 0xD (0x0D = 13, M es la decimotercera letra del alfabeto inglés).
Puede eliminar todos los ^M
caracteres ejecutando lo siguiente:
:%s/^M//g
Donde ^M
se ingresa manteniendo presionado Ctrly escribiendo vseguido de my luego soltando Ctrl. A veces se abrevia como ^V^M
, pero tenga en cuenta que debe ingresarlo como se describe en la oración anterior, en lugar de escribirlo literalmente.
Esta expresión reemplazará todas las apariciones de ^M
con la cadena vacía (es decir, nada). Lo uso para deshacerme ^M
de archivos copiados de Windows a Unix (Solaris, Linux, OSX).
:%s/\r//g
funcionó para mí hoy. Pero mi situación puede haber sido ligeramente diferente.
Para traducir la nueva línea en lugar de eliminarla:
:%s/\r/\r/g
Probablemente significa que tienes retornos de carro (diferentes sistemas operativos usan diferentes formas de señalar el final de la línea).
Úselo dos2unix
para arreglar los archivos o configurar los formatos de archivo en vim:
set ffs=unix,dos