Js-beautify: HTML Beautify: YAML-Vorderseite nicht formatieren

Erstellt am 15. Aug. 2014  ·  5Kommentare  ·  Quelle: beautify-web/js-beautify

Statische Site-Generatoren wie Assemble oder Middleman oder Jekyll unterstützen YAML-Frontmaterie oben in einer Vorlage. Wenn html verschönern auf diesen Vorlagen ausgeführt wird, wird die Titelseite durcheinander gebracht.

Also diese Yaml-Vorderseite:

title: Test
is-test: true

---

konvertiert zu:

--- title: Test is-test: true ---

Ich würde vorschlagen, alles zu ignorieren, was zwischen drei Bindestrichen "umbrochen" ist, oder eine zusätzliche Option hinzuzufügen.

Weitere Informationen: http://assemble.io/docs/YAML.html oder http://middlemanapp.com/basics/frontmatter/

html templating fixed?

Hilfreichster Kommentar

Ich glaube, dass Beautifier einen Parameter wie preservenewlines haben sollte. Wenn es bereits vorhanden ist, behalten Sie neue Zeilen im Text bei. Es ist nicht nur eine Frage der Titelsache. Nehmen wir zum Beispiel an, es gibt HTML-Code und einige Leute arbeiten in VS Code und andere in MidnightCommander direkt auf dem Server. Deshalb ist der gesamte Text so formatiert.

<p>
    This is multiple
    line text, that is
    easy to read in 
    MC
</p>

Dies funktioniert direkt, wenn HTML gerendert wird und auch in MC sichtbar ist. Aber wenn jemand es mit Beautifier formatiert, ist das weg.

Also neue Zeilen im Text beibehalten wäre genial.

Alle 5 Kommentare

Es gibt so viele Templating-Systeme, die die Leute mit js, html und css verwenden können.
@einars , @evocateur hast du irgendwelche Gedanken/Meinungen darüber, ob (oder wie) die Verschönerer modifiziert werden können, damit wir keine Sonderfälle in den gesamten Kerncode einfügen, um mit all diesen fertig zu werden?

Abgesehen von einem dramatischen Refactoring mit einem robusten AST-Parser (z. B. Esprima ), dem Bereitstellen einer Plugin-Schnittstelle, um ein benutzerdefiniertes Pochen eines solchen AST zu ermöglichen, und somit dem Verlassen der Python-Version, sehe ich dies nicht. (Und fast alle AST-Codegeneratoren, wie escodegen, erzeugen eine Ausgabe, die extrem schwierig anzupassen ist.)

Um es vielleicht etwas direkter zu sagen, dieses Projekt sollte nicht mehr tun, als JS zu verschönern. Beachten Sie, dass ich HTML und CSS weggelassen habe, aber wenn sie bleiben müssen, dann sollten sie nur CSS und HTML verschönern. Es ist zeitraubende Torheit zu versuchen, unseren statischen Parser zu verzerren, um den missgebildeten "Zucker" der Syntax jedes Vor- und Nachprozessors zu berücksichtigen.

Wir verschönern weder YAML noch Markdown/LESS/SASS/React/Go/Ruby/Brainfuck. Groll beiseite, die zunehmende Komplexität, jedes seltsame Meta-Syntax-Fieber zu unterstützen, von dem unsere seltsam schöne Gemeinschaft von Front-End-Handwerkern träumt, ist einfach verrückt. Heutzutage gibt es andere Verschönerer, die versuchen, den AST-Winkel einzubeziehen (obwohl die Plugin-APIs, wenn sie überhaupt existieren, dazu neigen, sehr unausgereift zu sein).

Sehr vernünftig. Gleiches Prinzip wie "Beautifier ist kein Allzweck-Formatierer".

Der js-Verschönerer bietet eine einfache API, um ihn in einen anderen Verschönerer zu packen. Genau das macht der HTML-Beautifier. Wenn es auf Javascript trifft, übergibt der HTML-Beautifier die Kontrolle an den js-Beautifier und integriert dann die Ausgabe. Die Benutzer sind herzlich eingeladen, die von diesem Projekt bereitgestellten Komponenten zu verpacken oder zu modifizieren, um ihre eigenen zu erstellen. Wenn Menschen interessiert und bereit sind, Verantwortung zu übernehmen/teilen, können sie ihre Projekte zu einem Teil von beautify-web machen.

Kurzfristig sollten wir wahrscheinlich anfangen, Fehleranfragen außerhalb von HTML, CSS und Javascript zu markieren und dann entscheiden, wie wir von dort aus weitermachen.

Ich glaube, dass Beautifier einen Parameter wie preservenewlines haben sollte. Wenn es bereits vorhanden ist, behalten Sie neue Zeilen im Text bei. Es ist nicht nur eine Frage der Titelsache. Nehmen wir zum Beispiel an, es gibt HTML-Code und einige Leute arbeiten in VS Code und andere in MidnightCommander direkt auf dem Server. Deshalb ist der gesamte Text so formatiert.

<p>
    This is multiple
    line text, that is
    easy to read in 
    MC
</p>

Dies funktioniert direkt, wenn HTML gerendert wird und auch in MC sichtbar ist. Aber wenn jemand es mit Beautifier formatiert, ist das weg.

Also neue Zeilen im Text beibehalten wäre genial.

Ich denke das ist behoben. Braucht nur einen Test.

War diese Seite hilfreich?
0 / 5 - 0 Bewertungen