Wie lautet die Syntax zum Speichern eines Kommentars in einer Markdown-Datei, z. B. eines CVS $ Id $ -Kommentars oben in der Datei? Ich habe nichts auf dem Markdown-Projekt gefunden .
1402
Wie lautet die Syntax zum Speichern eines Kommentars in einer Markdown-Datei, z. B. eines CVS $ Id $ -Kommentars oben in der Datei? Ich habe nichts auf dem Markdown-Projekt gefunden .
Antworten:
Ich glaube, dass alle zuvor vorgeschlagenen Lösungen (mit Ausnahme derjenigen, die bestimmte Implementierungen erfordern) dazu führen, dass die Kommentare in den Ausgabe-HTML-Code aufgenommen werden, auch wenn sie nicht angezeigt werden.
Wenn Sie einen Kommentar wünschen, der ausschließlich für Sie selbst bestimmt ist (Leser des konvertierten Dokuments sollten ihn selbst mit "Quelltext anzeigen" nicht sehen können), können Sie (ab) die Linkbezeichnungen (zur Verwendung mit Links im Referenzstil) verwenden verfügbar in der Kern-Markdown-Spezifikation:
http://daringfireball.net/projects/markdown/syntax#link
Das ist:
Oder Sie könnten noch weiter gehen:
Um die Plattformkompatibilität zu verbessern (und einen Tastendruck zu speichern), ist es auch möglich,
#
(was ein legitimes Hyperlink-Ziel ist) anstelle von<>
:Für maximale Portabilität ist es wichtig, vor und nach dieser Art von Kommentaren eine Leerzeile einzufügen, da einige Markdown-Parser nicht richtig funktionieren, wenn Definitionen mit normalem Text verglichen werden. Die jüngsten Untersuchungen mit Babelmark zeigen, dass Leerzeilen davor und danach wichtig sind. Einige Parser geben den Kommentar aus, wenn zuvor keine Leerzeile vorhanden ist, und einige Parser schließen die folgende Zeile aus, wenn danach keine Leerzeile vorhanden ist.
Im Allgemeinen sollte dieser Ansatz mit den meisten Markdown-Parsern funktionieren, da er Teil der Kernspezifikation ist. (Auch wenn das Verhalten, wenn mehrere Links definiert sind oder wenn ein Link definiert, aber nie verwendet wird, nicht genau angegeben ist).
quelle
[//]: # "Comment"
und[//]: # (Comment)
scheinen an einer größeren Vielfalt von Implementierungen zu arbeiten, da dies#
eine gültige relative URI ist. GitHub lehnt beispielsweise ab<>
und die gesamte Zeile wird sichtbar. Es ist auch erwähnenswert, dass Link-Labels häufig durch eine Leerzeile von anderen Inhalten getrennt werden müssen.Ich verwende Standard-HTML-Tags wie
Beachten Sie den dreifachen Strich. Der Vorteil ist, dass es beim Generieren von TeX- oder HTML-Ausgaben mit Pandoc funktioniert . Weitere Informationen finden Sie in der Pandoc-Diskussionsgruppe .
quelle
Diese kleine Forschung beweist und verfeinert die Antwort von Magnus
Die plattformunabhängigste Syntax ist
Beide Bedingungen sind wichtig:
#
(und nicht<>
)Die strenge Markdown-Spezifikation CommonMark funktioniert nur wie vorgesehen mit dieser Syntax (und nicht mit
<>
und / oder einer Leerzeile).Um dies zu beweisen, verwenden wir das Babelmark2 von John MacFarlane. Dieses Tool überprüft das Rendern eines bestimmten Quellcodes in 28 Markdown-Implementierungen.
(
+
- hat den Test bestanden,-
- hat nicht bestanden,?
- hinterlässt Müll, der in gerendertem HTML nicht angezeigt wird).<>
13+, 15-<>
20+, 8-<>
20+, 8-#
13+ 1? 14-#
23+ 1? 4-#
23+ 1? 4-Dies beweist die obigen Aussagen.
Diese Implementierungen schlagen alle 7 Tests fehl. Es gibt keine Möglichkeit, ausgeschlossene Kommentare beim Rendern mit ihnen zu verwenden.
quelle
#
das für alle außer GFM und<>
für GFM funktioniert, aber nicht für ein paar andere. Schade, dass GFM sowohl ein Eckfall als auch ein sehr beliebter Geschmack ist.#
21. Januar 2016 funktioniert. Cebe geht immer noch nicht damit um.(...)
bricht der Kommentar, wenn er von selbst enthält , ihn. Zumindest unter Visual Studio Code 1.19.%s/^\(.*\)$/[comment]: # (\1)/g
Wenn Sie Jekyll oder Octopress verwenden, funktioniert das Folgende ebenfalls.
Die Liquid-Tags
{% comment %}
werden zuerst analysiert und entfernt, bevor der MarkDown-Prozessor überhaupt darauf zugreift. Besucher werden nicht sehen, wenn sie versuchen, die Quelle in ihrem Browser anzuzeigen.quelle
{#
mehrzeilige Kommentare hier#}
Eine Alternative besteht darin, Kommentare in stilisierte HTML-Tags einzufügen. Auf diese Weise können Sie die Sichtbarkeit nach Bedarf umschalten. Definieren Sie beispielsweise eine Kommentarklasse in Ihrem CSS-Stylesheet.
.comment { display: none; }
Dann das folgende erweiterte MARKDOWN
We do <span class="comment">NOT</span> support comments
erscheint in einem BROWSER wie folgt
We do support comments
quelle
Dies funktioniert auf GitHub:
Das resultierende HTML sieht aus wie folgt:
Welches ist im Grunde ein leerer Link. Natürlich können Sie das in der Quelle des gerenderten Textes lesen, aber Sie können das trotzdem auf GitHub tun.
quelle
some text [](hidden text) blah blah
.[](Comment text goes here)
Vim Instant-Markdown- Benutzer müssen verwenden
quelle
Siehe auch Critic Markup, das von einer zunehmenden Anzahl von Markdown-Tools unterstützt wird.
http://criticmarkup.com/
quelle
Wie wäre es, wenn Sie die Kommentare in einen R-Block ohne Auswertung und ohne Echo einfügen? dh
Scheint gut für mich zu funktionieren.
quelle
cat("# Some Header")
in den "auskommentierten" Codeblöcken tun und verwendenresults = "asis"
, und Sie können Ihrem Code ganze auskommentierte Abschnitte hinzufügen, die durch Umschalten ein-eval = FALSE
und ausgeschaltet werden können , da die R-Auswertung vor dem erfolgt Pandoc-Zusammenstellung. Danke für die Idee!Offenlegung: Ich habe das Plugin geschrieben.
Da in der Frage keine bestimmte Markdown-Implementierung angegeben ist, möchte ich das Kommentar-Plugin für Python-Markdown erwähnen , das denselben oben erwähnten Pandoc-Kommentierungsstil implementiert.
quelle
Funktioniert nicht in Pandoc Markdown (Pandoc 1.12.2.1). Kommentare erschienen immer noch in HTML. Folgendes hat funktioniert:
Verwenden Sie dann die + Fußnotenerweiterung. Es ist im Wesentlichen eine Fußnote, auf die nie verwiesen wird.
quelle
[#]:
.Das Folgende funktioniert sehr gut
Diese Methode nutzt die Syntax, um Links über eine Referenz zu erstellen,
da die mit erstellte
[1]: http://example.org
Linkreferenz nicht gerendert wird. Ebenso wird auch keine der folgenden Methoden gerendertquelle
pandoc
als auch für aktuelle Online-Instanzen von Gitlab und GitHub .Für Pandoc ist es eine gute Möglichkeit, Kommentare zu blockieren, einen Yaml-Metablock zu verwenden, wie vom Pandoc-Autor vorgeschlagen . Ich habe bemerkt , dass dies die richtige Syntax - Hervorhebung der Kommentare gibt im Vergleich zu vielen anderen Lösungen vorgeschlagen, zumindest in meiner Umgebung (
vim
,vim-pandoc
, undvim-pandoc-syntax
).Ich verwende Yaml-Blockkommentare in Kombination mit HTML-Inline-Kommentaren, da HTML-Kommentare nicht verschachtelt werden können . Leider gibt es keine Möglichkeit, Kommentare innerhalb des yaml-Metablocks zu blockieren , sodass jede Zeile einzeln kommentiert werden muss. Glücklicherweise sollte ein Softwrapped-Absatz nur eine Zeile enthalten.
In meinem habe
~/.vimrc
ich benutzerdefinierte Verknüpfungen für Blockkommentare eingerichtet:Ich benutze
,
als<Leader>
-key, also,b
und,v
kommentiere bzw. kommentiere einen Absatz. Wenn ich mehrere Absätze kommentieren muss, ordne ichj,b
(normalerweiseQ
) einem Makro zu und führe es aus<number-of-paragraphs><name-of-macro>
(z3Q
. B. ( ). Dasselbe gilt für das Kommentieren von Kommentaren .quelle
kramdown - die Ruby-basierte Markdown-Engine, die die Standardeinstellung für Jekyll und damit für GitHub Pages ist - verfügt über eine integrierte Kommentarunterstützung durch die Erweiterungssyntax :
Dies hat den Vorteil, dass Inline-Kommentare zulässig sind, hat jedoch den Nachteil, dass es nicht auf andere Markdown-Engines portierbar ist.
quelle
Du kannst es versuchen
quelle
Sie können dies tun (YAML-Block):
Ich habe es nur mit Latexausgabe versucht, bitte für andere bestätigen.
quelle