Js-beautify: No formatea correctamente los archivos SVG

Creado en 14 sept. 2016  ·  3Comentarios  ·  Fuente: beautify-web/js-beautify

Descripción

La biblioteca no maneja los archivos SVG correctamente; hace algo, pero no lo que debería.

Aporte

Este código antes del embellecimiento (lo he simplificado y arruinado la sangría intencionalmente; era lo mismo con el marcado original / completo):

<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
     viewBox="0 0 36 36" style="enable-background:new 0 0 36 36;" xml:space="preserve">
                    <rect id="XMLID_20_" x="-7" 
                          class="st0" 
                          width="49" height="36"/>
</svg>

Rendimiento esperado

No estoy seguro de cómo debería verse. Tal vez así si permitimos / retenemos saltos de línea entre los atributos de las etiquetas.

<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
     viewBox="0 0 36 36" style="enable-background:new 0 0 36 36;" xml:space="preserve">
     <rect id="XMLID_20_" x="-7" 
           class="st0"
           width="49" height="36"/>
</svg>

... o si deben eliminarse

<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 36 36" style="enable-background:new 0 0 36 36;" xml:space="preserve">
     <rect id="XMLID_20_" x="-7" class="st0" width="49" height="36"/>
</svg>

Salida real

El código en realidad se veía así después del embellecimiento:

<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px" viewBox="0 0 36 36" style="enable-background:new 0 0 36 36;" xml:space="preserve">
                    <rect id="XMLID_20_" x="-7" 
                          class="st0" 
                          width="49" height="36"/>
</svg>

Tenga en cuenta que solo se eliminó el salto de línea en la etiqueta de apertura <svg> (entre atributos) (no se hizo nada sobre los saltos de línea en <rect> ). No cambió las sangrías en absoluto.

Ambiente

SO: Windows 10 Pro de 64 bits

Ajustes

Defecto.

Comentario adicional

Intenté cambiar la extensión del archivo a XML y ejecutar beautify nuevamente, esta fue mi solución hasta hace poco, pero el resultado fue el mismo que se muestra arriba (funcionó correctamente en el pasado). Parece que hay algo mal con el embellecimiento de XML (supongo que la misma parte de la biblioteca está manejando SVG y XML).

Informado anteriormente en https://github.com/brackets-beautify/brackets-beautify/issues/223

fixed? bug

Comentario más útil

¿Cualquier progreso? ¿Cómo puedo embellecer el svg en línea?

Todos 3 comentarios

Esto no se formatea en absoluto: <svg><defs><path></path></defs></svg>

¿Cualquier progreso? ¿Cómo puedo embellecer el svg en línea?

Esto parece haber sido resuelto por v1.8.0-rc14. Estoy escribiendo pruebas y presentaré un PR al final de la hora.

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