salto original linea data content bootstrap javascript gulp eslint line-endings

javascript - original - Se esperaba que los saltos de línea fueran ''LF'' pero se encontró al estilo de salto de línea ''CRLF''



salto de linea jquery (7)

Al usar eslint en el proyecto gulp, he encontrado un problema con un error como este
Expected linebreaks to be ''LF'' but found ''CRLF'' linebreak-style y estoy usando el entorno de Windows para el trago en ejecución y el registro de errores completo se muestra a continuación

Kiran (master *) Lesson 4 $ gulp Using gulpfile c:/Users/Sai/Desktop/web-build-tools/4/ gulpfile.js Starting ''styles''... Finished ''styles'' after 17 ms Starting ''lint''... ''lint'' errored after 1.14 s ESLintError in plugin ''gulp-eslint'' sage: Expected linebreaks to be ''LF'' but found ''CRLF''. ails: fileName: c:/Users/Sai/Desktop/web-build-tools/4/js/extra.js $>Users/Sai/Desktop/web-build-tools/4/js/extra.js error Expected linebreaks to be ''LF'' but found ''CRLF'' linebreak-style

También he incluido el archivo extra.js como el error que indica un posible error.

function getWindowHeight() { return window.innerHeight; } getWindowHeight();


Acabo de hacer que autocrlf param en el archivo .gitconfig sea false y recloné el código. ¡Funcionó!

[core] autocrlf = false


Compruebe si tiene la regla de linebreak-style salto de línea configurada como se muestra a continuación, ya sea en su .eslintrc o en el código fuente:

/*eslint linebreak-style: ["error", "unix"]*/

Como está trabajando en Windows, es posible que desee utilizar esta regla en su lugar:

/*eslint linebreak-style: ["error", "windows"]*/

Consulte la documentation de linebreak-style :

Cuando se desarrolla con muchas personas que tienen editores, aplicaciones VCS y sistemas operativos diferentes, puede ocurrir que las terminaciones de línea diferentes sean escritas por cualquiera de los mencionados (puede ocurrir especialmente cuando se usan las versiones de Windows y Mac de SourceTree juntas).

Los saltos de línea (nuevas líneas) utilizados en el sistema operativo Windows suelen ser retornos de carro (CR) seguidos de un salto de línea (LF), lo que lo convierte en un salto de línea de retorno de carro (CRLF), mientras que Linux y Unix usan un salto de línea simple (LF). Las secuencias de control correspondientes son "/n" (para LF) y "/r/n" para (CRLF).

Esta es una regla que se puede corregir automáticamente. La opción --fix en la línea de comando corrige automáticamente los problemas reportados por esta regla.

Pero si desea conservar las terminaciones de línea CRLF en su código (ya que está trabajando en Windows), no use la opción de fix .


Lo encontré útil (donde quería ignorar los avances de línea y no cambiar ningún archivo) para ignorarlos en el .eslintrc usando linebreak-style según esta respuesta: https://.com/a/43008668/1129108

module.exports = { extends: ''google'', quotes: [2, ''single''], globals: { SwaggerEditor: false }, env: { browser: true }, rules:{ "linebreak-style": 0 } };


Si está usando vscode y está en Windows, le recomendaría que haga clic en la opción en la parte inferior derecha de la ventana y la configure en LF desde CRLF . Porque no debemos apagar la configuración solo por eliminar errores en Windows

Si no ve LF / CLRF, haga clic derecho en la barra de estado y seleccione Editor Fin de línea.


Si está utilizando WebStorm y está en Windows, le recomendaría que haga clic en configuración / editor / estilo de código / pestaña general y seleccione "ventanas (/ r / n) en el menú desplegable. Estos pasos también se aplicarán a Rider.


Si está utilizando vscode, le recomendaría que haga clic en la opción en la parte inferior derecha de la ventana y la configure en LF desde CRLF ... esto solucionó mis errores


Sucedió conmigo porque ejecuté git config core.autocrlf true y olvidé volver atrás.

Después de eso, cuando pago / extraigo un nuevo código, todo LF (línea de corte en Unix) fue reemplazado por CRLF (línea de corte en Windows).

Ejecuté linter, y todos los mensajes de error son Expected linebreaks to be ''LF'' but found ''CRLF''

Para solucionar el problema, verifiqué el valor de autocrlf ejecutando git config --list | grep autocrlf git config --list | grep autocrlf y obtuve:

core.autocrlf=true core.autocrlf=false

Edité la configuración global de GIT ~/.gitconfig y reemplacé autocrlf = true por autocrlf = false .

Después de eso, fui a mi proyecto y hice lo siguiente (asumiendo el código en src/ folder):

CURRENT_BRANCH=$(git branch | grep /* | cut -d '' '' -f2); rm -rf src/* git checkout $CURRENT_BRANCH src/