Js-beautify: SVG-Dateien können nicht richtig formatiert werden

Erstellt am 14. Sept. 2016  ·  3Kommentare  ·  Quelle: beautify-web/js-beautify

Beschreibung

Die Bibliothek verarbeitet SVG-Dateien nicht richtig - sie tut etwas, aber nicht das, was sie soll.

Eingang

Dieser Code vor der Verschönerung (ich habe ihn vereinfacht und die Einrückung absichtlich durcheinander gebracht; es war das gleiche mit dem ursprünglichen / vollständigen Markup):

<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>

Erwartete Ausgabe

Ich bin mir nicht ganz sicher, wie es aussehen soll. Vielleicht so, wenn wir Zeilenumbrüche zwischen Tag-Attributen zulassen / beibehalten.

<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>

...oder wenn sie entfernt werden sollen

<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>

Tatsächliche Leistung

Der Code sah nach der Verschönerung tatsächlich so aus:

<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>

Beachten Sie, dass nur der eine Zeilenumbruch im öffnenden <svg> Tag (zwischen Attributen) entfernt wurde (hat nichts gegen Zeilenumbrüche in <rect> ). Habe die Einrückungen überhaupt nicht verändert.

Umgebung

Betriebssystem: Windows 10 Pro 64bit

die Einstellungen

Standard.

Zusatzkommentar

Ich habe versucht, die Dateierweiterung in XML zu ändern und beautify erneut auszuführen - dies war bis vor kurzem meine Problemumgehung - aber das Ergebnis war das gleiche wie oben gezeigt (es funktionierte in der Vergangenheit ordnungsgemäß). Es scheint, dass mit der XML-Verschönerung etwas nicht stimmt (ich gehe davon aus, dass derselbe Teil der Bibliothek SVG und XML verarbeitet).

Zuvor berichtet in https://github.com/brackets-beautify/brackets-beautify/issues/223

fixed? bug

Hilfreichster Kommentar

Irgendein Fortschritt? Wie kann ich Inline-Svg verschönern?

Alle 3 Kommentare

Dies wird überhaupt nicht formatiert: <svg><defs><path></path></defs></svg>

Irgendein Fortschritt? Wie kann ich Inline-Svg verschönern?

Dies scheint durch v1.8.0-rc14 behoben worden zu sein. Ich schreibe Tests dafür und werde bis zum Ende der Stunde eine PR einreichen.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen