2016-04-19 7 views
4

Ich habe versucht, Fußnoten in meine Hexo-Beiträge einzufügen (geschrieben in Markdown, wenn ihre Auszeichnungssprache relevant ist). Ich komme aus dem Hintergrund der Verwendung von Jekyll, um meine Websites zu betreiben, und wenn ich Jekyll verwendete, würde ich [^n] (wobei n eine positive ganze Zahl ist, dh, ∈ {1,2,3, ...}) in Text und so ähnlich hinzufügen :Wie kann ich Fußnoten effizienter in einen Hexo-Post einfügen?

[^1]: footnote #1 
[^2]: footnote #2 
[^3]: footnote #3 
... 

am Ende des Pfostens, wo footnote #1, #2, #3, usw. mit meinen eigentlichen Fußnoten ersetzt. Während mit Hexo Dinge etwas komplizierter erscheinen. Ich suchte nach einem Fußnotenplugin bei https://hexo.io/plugins/, erfolglos könnte ich hinzufügen, dann habe ich Google verwendet, um nach der Antwort zu suchen, und fand diesen Kernpunkt https://gist.github.com/kuanyui/d1728c2a526a615de56c. Ich habe versucht, dieses Gist zu verwenden, indem ich es zum Ordner script meiner Hexo-Site hinzufüge, aber das ist fehlgeschlagen (für die vollständigen Fehlerdetails siehe das Wesentliche, da ich die Details dort kommentiert habe). Ich habe dann einen HTML-Trick ausprobiert, den ich gelernt habe, indem ich den generierten Inhalt meiner Jekyll-Beiträge untersucht habe, denen Fußnoten über die oben genannte Methode hinzugefügt wurden. Das heißt, fügt hinzu:

<sup id="fnref:n"><a href="#fn:n" class="footnote">n</a></sup> 

(wo noch einmal n eine positive ganze Zahl) in Text, in dem ich meine Fußnoten erscheinen soll und:

<ol> 
    <li id="fn:1">Footnote #1.<a href="#fnref:1" class="reversefootnote">↩</a></li> 
    <li id="fn:2">Footnote #2.<a href="#fnref:2" class="reversefootnote">↩</a></li> 
    <li id="fn:3">Footnote #3.<a href="#fnref:3" class="reversefootnote">↩</a></li> 
    ... 
</ol> 

bis zum Ende der Post. Das Problem ist, dass diese Methode, obwohl effektiv, auch langwierig ist (zB pro Fußnote erfordert es viel mehr Typisierung, als ich möchte), also habe ich versucht, diese ejs-Vorlage zu erstellen (die den in-Text-Fußnoten entspricht), die ich

<sup id ="fnref:<%= n %>"><a href="#fn:<%= n %>"><%= n %></a></sup> 

und Einsetzen in meine Beiträge mit: bedeuten

<%- include('layouts/footnotes', {n:1}); %> 

aber auch nicht weiter (gescheitert ich, wenn ich meine hexo Website generierte diese in- in meinem layouts Ordner unter dem Namen footnotes.ejs platziert Text Zitat wurde völlig unformatiert gelassen).

So bin ich hier, um eine effizientere Möglichkeit zu bitten, Fußnoten in Hexo-Beiträge einzufügen. Nämlich eine, die so wenig Tipparbeit wie möglich erfordert.

+0

Haben Sie das Plugin [hexo-renderer-marked] (https://github.com/hexojs/hexo-renderer-marked) ausprobiert? Das Plugin verwendet [Markiert] (https://github.com/chjj/marked) für das Parsen von Markdown und Marked unterstützt Fußnoten über die Option 'gfm' (GitHub Flavored Markdown). – Waylan

+0

Es gibt auch das Plugin [hexo-renderer-markdown-it] (https://github.com/celsomiranda/hexo-renderer-markdown-it), welches das [Markdown-It] (https: // github. com/markdown-it/markdown-it) Markdown-Parser und unterstützt auch Fußnoten. – Waylan

Antwort

5

ich gerade ein hexo-Plugin Abschlag Fußnoten unterstützen:

Also, man muss nur das Paket installieren mit

npm install hexo-footnotes --save 

Wenn Hexo automatisch alle Plugins erkennt, ist das alles.

Wenn das nicht der Fall ist, das Plugin in Ihrer _config.yml Datei registrieren:

plugins: 
    - hexo-footnotes 

Hier ist die Syntax:

basic footnote[^1] 
here is an inline footnote[^2](inline footnote) 
and another one[^3] 
and another one[^4] 

[^1]: basic footnote content 
[^3]: paragraph 
footnote 
content 
[^4]: footnote content with some [markdown](https://en.wikipedia.org/wiki/Markdown) 

Hier ist das Ergebnis:

footnotes

Verwandte Themen