Código de Visual Studio: cómo mostrar finales de línea

211

¿Cómo puedo mostrar lineendings (CR, LF) en Visual Studio Code (no en Visual Studio)?

Uso las siguientes configuraciones, pero ninguna de ellas muestra los finales de línea.

"editor.renderWhitespace": true,
"editor.renderControlCharacters": true,
"editor.renderIndentGuides": true

¿Hay una configuración para los lineendings?

Edición 1: abrí un problema en GitHub: https://github.com/Microsoft/vscode/issues/12223

Edición 2: Soham Kamani hizo una extensión para esto: code-eol

tonka
fuente
16
He hecho extensiones para esto en caso de que aún lo necesite: marketplace.visualstudio.com/…
Soham Kamani
@SohamKamani Su comentario debe ser la respuesta aceptada a la pregunta.
Nicolas Seiller
Esa extensión es inútil: en realidad no muestra si los caracteres son retornos de carro o avances de línea, solo hace glifos al final de las líneas que coinciden con lo que vscode dice que es el archivo. No ayuda a identificar archivos con estilos mixtos de fin de línea. (Eso o vscode está normalizando automáticamente los EOL de los archivos, por lo que cualquier extensión a este efecto es inútil.)
Tustin2121

Respuestas:

341

AFAIK no hay forma de ver visualmente los finales de línea en el espacio del editor, pero en la esquina inferior derecha de la ventana hay un indicador que dice "CLRF" o "LF" que le permitirá establecer los finales de línea para un archivo en particular . Al hacer clic en el texto, también podrá cambiar las terminaciones de línea.

ingrese la descripción de la imagen aquí

Llewey
fuente
15
¿Puedes cambiar el valor predeterminado para esto? En este momento, cada vez que abro un archivo, tengo que hacer clic manualmente en este.
David Martinez
16
@DavidMartinez Sí. En la configuración del usuario o del espacio de trabajo: // El carácter predeterminado de final de línea. "files.eol": "\ r \ n",
Llewey
44
@Llewey Pero este es un cambio global, ¿verdad? ¿Puedo configurarlo de alguna manera solo para .sharchivos?
Kostas Demiris
@KostasDemiris No he probado esto, pero podrías intentar hacerlo "[sh]": { "files.eol": "\n" }. No todas las configuraciones se pueden configurar para un idioma específico y no estoy seguro de si es posible, pero vale la pena intentarlo.
Michael Dorst
91

Si desea establecerlo en LF como predeterminado, puede ir a Archivo-> Preferencias-> Configuración y en la configuración del usuario puede pegar esta línea debajo de sus otras configuraciones de usuario.

"files.eol": "\ n"

Por ejemplo.

"git.confirmSync": false,
"window.zoomLevel": -1,
"workbench.activityBar.visible": true,
"editor.wordWrap": true,
"workbench.iconTheme": "vscode-icons",
"window.menuBarVisibility": "default",
"vsicons.projectDetection.autoReload": true,
"files.eol": "\n"
Isak La Fleur
fuente
13
He hecho esto, pero cada vez que abro un archivo todavía se abre con CRLF y tengo que cambiarlo manualmente.
pixelwiz
1
@pixelwiz si guarda el archivo, ¿cambia a LF? github.com/Microsoft/vscode/issues/26626 github.com/Microsoft/vscode/issues/2957 Cambié a mac, por lo que ya no tengo este problema al desarrollar mis propios proyectos. Así que no puedo verificar, lo siento.
Isak La Fleur
55
Lo mismo para mí en Windows: configurando los archivos de configuración de usuario de eol a "\ n" pero los archivos aún se informan como CLRF
Marko
Trabajando para mí en Windows 7 con VS Code 1.18.0
darkwing
1
Acabo de probar esto con éxito con Win 10 y VS Code 1.20.1. ¡Se creó un nuevo archivo con salto de línea LF!
iaforek
18

Hay una extensión que muestra los finales de línea. Puede configurar el color utilizado, los caracteres que representan CRLF y LF y un booleano que lo activa y desactiva.

Name: Line endings 
Id: jhartell.vscode-line-endings 
Description: Display line ending characters in vscode 
Version: 0.1.0 
Publisher: Johnny Härtell 

VS Marketplace Link

Shanimal
fuente
3
En la actualidad, esta extensión no hace lo que pretende. En un archivo de terminaciones de línea mixtas, muestra las terminaciones de línea como si fueran todas consistentes, según lo que el Código VS afirma que el archivo sigue.
Andrew Arnott
@AndrewArnott gracias por la actualización, tendremos que ver el problema que ha enviado ... github.com/jhartell/vscode-line-endings/issues/1
Shanimal
@AndrewArnott, ¿podrías decir por qué no funciona para ti ?, para mí funciona perfecto, solo los iconos son pequeños
John Balvin Arias
@JohnBalvinArias El problema que presenté al que Shanimal se vinculó describe el problema: en realidad no revela terminaciones de línea mixtas. Siempre los muestra como si fueran consistentemente cualesquiera que sean las preferencias de VS Code.
Andrew Arnott
1
@AndrewArnott Esto se debe a que VSCode en sí no admite terminaciones de línea mixtas. github.com/Microsoft/vscode/issues/127
Chev