Wie zu unterdrücken leere Zeile in Jekyll?
Benutze ich GitHub-Seiten für meinen blog, und bin laufen in ein problem mit Jekyll. Meine post.html hat ein block wie diesem:
{% for testpost in site.posts %}
{% four %}
{% lines of %}
{% processing %}
{% goes here %}
{% endfor %}
Den Teil in der Mitte ist egal. Der wichtige Teil ist das Ende der Linie, die sich außerhalb der {% %}
markup, und ist daher gerendert in den html-Code. Da dies in einer Schleife, es bringt über 1000 leere Zeilen in der Mitte von der HTML-Seite. Es hat keinen Einfluss auf die Anzeige, aber es macht einen View/Source lästig.
Irgendwelche Ideen auf, wie zu vermeiden, die zusätzliche leere Zeilen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Seit
Liquid v4
(imJekyll
ausv3.5
) es ist einWhitespace control
, die endlich gelöst Fall mit Leerzeilen, Leerzeichen, usw.Link zur Dokumentation: https://shopify.github.io/liquid/basics/whitespace/
Es ist ein netter workaround, den ich gefunden habe in https://github.com/plusjade/jekyll-bootstrap/blob/master/_includes/JB/setup, und die ist kompatibel mit github pages.
Nur schließen Sie die Schleife in einem capture-Anweisung, und das zuweisen von null zu der resultierenden var.
Wie etwa
header.html
?{% capture header %}{% include header.html %}{% endcapture %}{{ header | strip_newlines }}
Es ist Jekyll-plugin, entfernt die Leerzeichen.
Können Sie es direkt von seinem Github-repository. Also im Grunde wickeln Sie Ihren code mit
{% strip %}{% endstrip %}
. Auch wenn diese nicht zu Ihnen passen muss, können Sie leicht ändern Sie das ruby-Skript.Beispiel:
Bitte Bedenken Sie jedoch, der Natur der Jekyll-plugins, die Sie nicht ausführen können Sie auf der Github-Seiten-server.
Zitat von Jekyll Doccumentation:
Tatsächlich gibt es eine neue Lösung für dieses problem, die funktioniert ohne plugin.
http://jch.penibelst.de/
Wenn Sie - aus irgendeinem Grund - nicht benutzen wollen, dies hier ist ein schöner Artikel, der beschreibt einige Problemumgehungen:
Komprimieren der Flüssigkeit generierte code - sylvain durand