Estoy usando gVim en Windows. Mi código muestra ^M
caracteres al final de las líneas. Utilicé :set ff=dos
inútilmente. Los caracteres ^M
permanecen para las líneas existentes, pero no aparecen para las líneas nuevas que ingreso. Cambié los modos a Mac (muestra ^J
caracteres) y Unix (también muestra ^M
caracteres) y regreso a dos. ¿Alguien más ha visto esto?gVim que muestra el retorno de carro (^ M) incluso cuando el modo de archivo es explícitamente DOS
gVim que muestra el retorno de carro (^ M) incluso cuando el modo de archivo es explícitamente DOS
Respuesta
Esto sucede cuando tiene una mezcla de terminaciones de línea de Windows y Unix. Si tiene 100 líneas, 99 son \ r \ n y una es \ n, verá 99^M caracteres. La solución es encontrar esa línea y reemplazarla. O ejecuta dos2unix en el archivo. Puede reemplazar los finales de línea de Windows con:
:%s/\r\(\n\)/\1/g
que suelen utilizar los siguientes para la limpieza de mis finales de línea:
:g/^M$/s///
Para obtener el Ctrl-M por lo general pulse Ctrl-Q, entonces ctrl-M y lo pone en. (En algunos entornos puede ser ctrl-V luego ctrl-M.) No sé por qué, pero me parece más fácil de recordar que rq.
No olvides hacer :set ff=dos
también, o terminarás ahorrando con los finales de línea de UNIX todavía.
Sí, normalmente usa la^^ versión con Ctrl-Q y todo eso. Pero es más difícil de explicar ;-) y la versión de coincidencia de grupo es amigable con el copy paste. – richq
sé que esto ya ha sido contestada, pero un truco que utilizo es
:%s/\r/\r/g
Esto reemplaza los saltos de UNIX con el CRLF ventanas. Acaba de agregarse en caso de que alguien más tuviera problemas.
esto funciona genial !! – Gordon
En realidad lo que funcionó para mí (en Windows de 64 bits, gVim: 7,2):
:set ffs=dos
no sólo: ff
Ejecución de Vim 7.3 en Windows 7. He utilizado el siguiente comando:
:%s/^M/\r/g
Para crear el^MI escrito en CTRL + Q y luego CTRL + M.
Esto es probablemente un poco simple para muchos de ustedes, pero por si acaso es útil.
Basado en la respuesta de richq, encontré que estos son útiles en mi vimrc. Tenga en cuenta que el segundo comentario está comentado normalmente porque hace que dd sea un poco confuso ya que Vim esperará a que funcione otro golpe de tecla si se trata del comando ex mapeado.
function! D2u() execute '%s/\r\(\n\)/\1/g' endfunction "map d2u :%s/\r\(\n\)/\1/g
El primero se ejecuta escribiendo call D2u()
en ex y la segunda pulsando D2u
en modo de edición.
¡Puede ignorar estos caracteres!
poner esto en su vimrc
partido Ignorar/\ R $/
Es bueno saber que está ahí, pero ¿existe un buen caso de uso para dejar terminaciones de línea no coincidentes en un archivo? Parece que está buscando problemas. – Jerph
Esto es más de lo que necesitaba (cambiar el archivo no siempre es recomendable cuando causa cambios masivos en un archivo que aparece en algunos sistemas de control de revisiones) – RunHolt
Desafortunadamente, esto cambia las terminaciones de línea tan pronto como guarde el archivo. Por lo tanto, produce exactamente estos grandes cambios no deseados en espacios en blanco, solo sin mostrarte. Al menos para mi. :( –
Estos son los finales de línea CR adicionales por lo general a causa de un utilizando un archivo en sistemas UNIX/DOS mixtos.
Posible la respuesta más corta a eliminar un solo^M desde el final de cada línea, y lo que yo uso, es decir:
:%s/\r
que es equivalente a:
:%s/\r//
pero el fin no se requieren barras (se supone).
probado un montón de cosas, pero la siguiente trabajaron
:%s/\r/\r/g
Nota: El uso g si desea que el efecto sobre todo el archivo
- 1. Conservar el retorno de carro cuando se usa XDocument.Parse
- 2. Cómo reemplazar el retorno de carro
- 3. MySQL: retorno de carro en consulta
- 4. Inserte el carácter de retorno de carro en vim
- 5. ¿El retorno de carro de Windows \ r \ n consta de dos caracteres o un carácter?
- 6. ¿Podemos agregar retorno de carro ('\ n') al archivo resx en el teléfono de Windows?
- 7. ¿Cómo bloquear el ingreso de retorno de carro en textarea?
- 8. Cómo implementar el retorno de carro en XSLT
- 9. SSRS 2008 R2 Retorno de carro Problema
- 10. vba userforms comportamiento de retorno de carro
- 11. ^M El carácter se muestra en clojure slime-repl
- 12. Hacer que Ctrl + F11 inicie el proyecto de Android incluso cuando está en el archivo XML
- 13. Nokogiri to_xml sin retorno de carro
- 14. Python file.write creación de retorno de carro adicional
- 15. XML Codificación de retorno de carro
- 16. RichTextBox no procesando nuevos caracteres de retorno de línea/carro
- 17. Expresión regular con retorno de carro
- 18. Cómo buscar retorno de carro en Eclipse
- 19. Forzar un retorno de carro en textarea
- 20. ¿Qué son el retorno de carro, el salto de línea y el avance de formulario?
- 21. Cómo eliminar el retorno de carro de una cadena mientras pegue contenido en el archivo de Excel
- 22. Añadir retorno de carro a una cadena
- 23. git status muestra un archivo que he enumerado explícitamente en mi archivo .gitignore
- 24. consulta SQL para un retorno de carro en una cadena y en última instancia, la eliminación de retorno de carro
- 25. En Sublime Text 2 ¿Cómo ver el retorno de carro y el avance de línea?
- 26. Cómo crear un archivo .exe ejecutable desde el archivo .m
- 27. ¿Cómo puedo usar gvim para agregar un retorno de carro (también conocido como ENTER) a un patrón?
- 28. Añadir retorno de carro al recurso de cadena en WPF
- 29. RhinoMocks: simulando un método cuyo valor de retorno cambia (incluso cuando pasó el mismo parámetro) con llamadas múltiples
- 30. ¿Cómo enviar un retorno de carro a través de telnet?
Ver http://vim.wikia.com/wiki/File_format para una explicación completa de los finales de línea en vim/gvim. Este enlace también explica cómo solucionar el problema. – axiopisty