Less.js: ParseError: entrada no reconocida con «DIV {width: 500px \ 9}»

Creado en 26 sept. 2014  ·  13Comentarios  ·  Fuente: less/less.js

Analizando el éxito con:

DIV {
    width: 500px\9;
}

ParseError: entrada no reconocida con:

DIV { width: 500px\9 }

Puede encontrar esta sintaxis en https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/css/bootstrap.min.css

bug medium priority

Comentario más útil

https://github.com/less/less.js/issues/1538 ha sido un problema para mí al importar bootstrap4 css como menos referencia (bootstrap4 ya no tiene menos dist).

<strong i="7">@import</strong> (less, reference) "~bootstrap/dist/css/bootstrap.css";
 @ /node_modules/bootstrap/dist/css/bootstrap.css (line 4475, column 31)
 near lines:

   <strong i="10">@media</strong> screen and (min-width: 0\0) {
     .progress {

Esto realmente parece un error, ¿alguna estimación de cuándo podría solucionarse @ seven- phase -max

Todos 13 comentarios

Sí, esto se mencionó en el n. ° 284. Pero creo que esto debería considerarse un error ya que
500px\9 es en realidad una sintaxis CSS válida con solo un valor inválido (para los navegadores "estándar" es igual a 500px? por lo que simplemente lo ignoran) por lo que técnicamente Less debería pasarlo.

@harobed también debería importar la fuente menos dentro de bootstrap, no el css de salida

@lukeapage hay algunas razones por las que uno puede querer importar archivos de Bootstrap compilados y no sus fuentes Less. En particular, por el momento, es la única forma de obtener clases de arranque envueltas con espacio de nombres / prefijo (por ejemplo, .bs {<strong i="6">@import</strong> (less) 'bootstrap.css';} o extender ciertas clases generadas dinámicamente (ya que no se pueden extender dentro de las fuentes Less).
Aunque para estos casos particulares, la importación de bootstrap.css no minificada sería igual y será procesada por Less muy bien (ya que width: 500px\9; se compila como se esperaba). Así que supongo que este puede considerarse más como un problema estético.

Es justo que @harobed tenga una buena razón para hacerlo.
No estoy en desacuerdo, deberíamos arreglarlo ...

Sin embargo, sí analiza con la versión no minificada ...
Una forma de evitar esto sería hacer que el valor anónimo funcione sin un punto y coma.

Intenté y no logré que esto funcionara con valor anónimo.

Tenía esto ...

                var match = parserInput.$re(/^([^@+\/'"*`(;{}-]*)(;|(?=\}))/);
                if (match) {
                    return new(tree.Anonymous)(match[1].trim());
                }

pero luego cambia un poco el funcionamiento de los espacios en blanco. También obtuve lo siguiente, pero eso no funcionó.

                var match = parserInput.$re(/^(([^@+\/'"*`(;{}-\s]+|\s*?)+?)\s*(;|(?=\}))/);
                if (match && match[3]) {
                    return new(tree.Anonymous)(match[1]);
                }

Espero que ayude a un futuro implementador (oa mí mismo si lo recupero de nuevo)

@lukeapage ¿Podrías aclarar " @harobed también deberías importar la fuente menos dentro de bootstrap, no el css de salida"? Soy nuevo en Less y tengo el mismo problema con \ 9 en un tema de Bootstrap de WordPress que estoy construyendo. ¿Es esta una solución?

@harobed Bootstrap Less Las fuentes solo tienen \9; o escapan ~'\9' y estas declaraciones son compiladas por el compilador perfectamente ... Así que depende únicamente de qué y cómo estás intentando compilar.

Veo. Mi carpeta de desarrollo de temas tiene dos hijos, src y public. Bootstrap está en src / less / bootstrap con mis archivos Less personalizados en src / less. Desde mi carpeta de desarrollo de temas, compilo con lessc src / less / style.less public / style.css

Esto funcionó bien hasta hace poco. Instalé clean-css, luego lo desinstalé. Luego, la compilación comenzó a arrojar el error en \ 9. Trabajé con la gente de npm y parece que tengo una desinstalación limpia, por lo que ese no debería ser el problema.

Cualquier idea sería apreciada.

@likethegoddess

Luego, la compilación comenzó a arrojar el error en \ 9.

El mensaje de error y las líneas correspondientes a las que apunta suelen ser útiles.

Sí, por supuesto. Disculpe la omisión.

Restablecí mi style.less más reciente y la compilación está funcionando nuevamente.

Gracias por tu tiempo, @ seven-phase-max.

Ahora
DIV { left: 500px\9 }
está bien, pero
DIV { left: -500px\9 }
todavía falló

https://github.com/less/less.js/issues/1538 ha sido un problema para mí al importar bootstrap4 css como menos referencia (bootstrap4 ya no tiene menos dist).

<strong i="7">@import</strong> (less, reference) "~bootstrap/dist/css/bootstrap.css";
 @ /node_modules/bootstrap/dist/css/bootstrap.css (line 4475, column 31)
 near lines:

   <strong i="10">@media</strong> screen and (min-width: 0\0) {
     .progress {

Esto realmente parece un error, ¿alguna estimación de cuándo podría solucionarse @ seven- phase -max

¿Fue útil esta página
0 / 5 - 0 calificaciones