Die Einbettung von Markdown in Jekyll HTML
Ich versuche nest markdown in HTML-Datei während der Verwendung von Jekyll. Gibt es eine Möglichkeit, etwas zu erreichen, wie die folgenden?
# index.html
---
layout: default
---
<p>[Stack Overflow](http://www.stackoverflow.com)</p>
Hinweis: ich bin mir bewusst, dass ich dies anstelle.
# index.html
---
layout: default
---
<p><a href="http://www.stackoverflow.com">Stack Overflow</a></p>
Du musst angemeldet sein, um einen Kommentar abzugeben.
Hier ist, wie können Sie eine markdown-block mit einem Jekyll-plugin:
(Installieren Sie dieses snippet als Plug-in, steckte es in eine
*.rb
Datei unter_plugins
- Verzeichnis Ihres source-Website-root)Dann verwenden Sie es wie diese:
BEARBEITEN: Siehe @Cristian ' s Antwort für eine bessere Lösung! Wenn Sie mit Kramdown (was wahrscheinlich der Fall ist, da Sie mit Jekyll), können Sie es verwenden, die Funktion zu erbringen markdown innerhalb
div
's mit einemmarkdown="1"
Attribut.gem install kramdown
für diese. Es scheint ein wenig hacky nicht zu verwenden, was Jekyll verwendet built-in für markdown Parsen", aber es funktioniert!Document.new(content, input: 'GFM)
ermöglichen github-flavoured markdown für Sie.super
zusuper.strip
innerhalb der render-Methode wird es erlauben, Sie zum Einrücken von code. Sonst wird der block kann nicht eingerückt werden.Wenn Sie mit Kramdown, basierend auf Ihr doc Sie dies tun können:
Und auf diese Weise der text innerhalb der
div
gerendert wird als markdown.Stellen Sie sicher, dass Sie die
.md
oder.markdown
Erweiterung für die Datei, als.html
Dateien werden nicht gesendet, um Kramdown für die Verarbeitung!<pre>
finden Sie unter github.com/gettalong/kramdown/issues/213index.html
zuindex.md
. Nahm mir waaay zu lange, um es herauszufinden.</div>
tags zu meinem code, und manchmal, es wäre nicht fertig, der code, also alles, was sonst in der Datei bekam als code behandelt, als gut. Schließlich fand ich folgende Lösung, mitcapture
zur Erfassung der code am Anfang der Datei und injizieren es in die{% highlight %}
tags unten in die Seite: stackoverflow.com/a/38819797/85309@sunny-juneja, check-out die Flüssigkeit Extension-Filter genannt
markdownify
:https://github.com/mojombo/jekyll/wiki/liquid-extensions#markdownify
Verwenden Sie es wie diese:
<p>{{ '[Stack Overflow](http://www.stackoverflow.com)' | markdownify }}</p>
In einfache oder doppelte Anführungszeichen um den string innerhalb der Ausgabe tag.
Funktioniert bei mir auf Jekyll 1.0.0beta3
<p><p><p><a href="http://www.stackoverflow.com">Stack Overflow</a></p>
.Werfen Sie einen Blick auf Paul Irish ist Gist für einen JS-code interpretieren können Abschnitte der Seite von Markdown zu HTML.
Als der aktuelle Jekyll 3.6.2 Leben kann sehr viel einfacher mit den folgenden beiden Optionen:
Hinweis: die markdown-Attribut:
markdown="1"
Arbeit auf andere Elemente, wiedisplay
oder funktioniert Sie nur in einemdiv
?<section>
,<nav>
,<main>
alle das gleiche...