Wenn Sie hier suchen: http://en.wikipedia.org/wiki/Stack_Overflow
Sie werden feststellen, dass es einen kleinen Abschnitt "Inhalt" gibt. Wenn Sie auf einen der Links klicken, werden Sie zu einem bestimmten Abschnitt auf der Seite weitergeleitet.
Wie mache ich das im GitHub-Wiki? Mit Markdown oder was auch immer sie verwenden?
Antworten:
Dies wird im Inhaltsverzeichnis des Markdown-Cheatsheets gut demonstriert .
Wenn Sie den Mauszeiger über einen Header in einer GitHub Markdown-Datei bewegen, wird links davon ein kleiner Link angezeigt. Sie können diesen Link auch verwenden. Das Format für diesen Link ist
<project URL#<header name>
. Das<header name>
muss alles in Kleinbuchstaben sein.quelle
__TOC__
direkt verwenden. Die zugrunde liegende Autogenerationslogik ist eindeutig vorhanden. Die Funktionalität scheint jedoch nicht in ihrem Markdown-Bearbeitungsstil verfügbar zu sein. Sehr unglücklich. Lassen Sie uns alle anfangen, Feature-Anfragen dafür zu senden, und vielleicht schalten sie es ein.#Headers
statt verwendet#headers
. Ich dachte, es wäre ein Tippfehler in Ihrer Antwort. Vielleicht können Sie Ihrer Antwort diese Informationen hinzufügen.Eine mögliche (halbautomatische) Lösung ist die von Eugene Kalinin
github-markdown-toc
. Dieses ToolREADME.md
durchsucht im Wesentlichen Ihre Datei und entfernt die#
Überschriften, um ein Inhaltsverzeichnis zu erstellen.Füttere dein
README.md
mit dem Skript (wie in Eugenes vermerktREADME.md
)Katze README.md | Bash Github-Markdown-Toc
Schneiden Sie das generierte Inhaltsverzeichnis aus, fügen Sie es ein und platzieren Sie es oben in Ihrer
README.md
DateiBeachten Sie, dass dies
bash
Implementierung nur unter Linux funktioniert (soweit ich das beurteilen kann).Als Randnotiz gibt es eine Golang- Implementierung und es ist wahrscheinlich schwieriger , sich an die Arbeit zu machen.
quelle
https://github.com/jonschlinkert/markdown-toc
git clone your-repo.wiki.git
(Fügen Sie das.wiki
Recht hinzu, bevor Sie.git
das Wiki klonennpm i -g markdown-toc
<!-- toc -->
(Groß- und Kleinschreibung beachten ) in den Markdown Ihres Wikis einmarkdown-toc -i my-wiki-markdown.md
(-i
wird es an Ort und Stelle bearbeiten)Update: Ich denke, vielleicht ist https://github.com/thlorenz/doctoc jetzt beliebter.
quelle
Da Github nicht
TOC
direkt verwenden kann, haben wir aber andere Alternativen.Sie können das Inhaltsverzeichnis automatisch über das Online-Tool generieren :
Generieren Sie das Inhaltsverzeichnis des Inhaltsverzeichnisses aus GitHub Markdown oder Wiki Online
oder über das lokale Tool:
github-markdown-toc
quelle
Derzeit ist dies mit der Markdown-Syntax ( ) nicht möglich
.md
. Es gibt eine inoffizielle Diskussion über das automatische Generieren eines Inhaltsverzeichnisses für Inhaltsverzeichnisse in gerenderten Markdown-Dateien, inREADME.md
denen einige der Ideen aufgelistet sind.Es gibt jedoch einige andere Problemumgehungen wie:
Verwenden Sie
AsciiDoc
stattdessen gemäß dem Vorschlag aus diesem Kommentar . Beispielsweise:Überprüfen Sie das Beispiel unter
littlebits/react-popover
(README.adoc
) .Online- Inhaltsverzeichnis-Generator ( Raychenon / Play-Inhaltsverzeichnis )
quelle
Wenn Sie nicht in der Lage sind, bei Markdown zu bleiben , können Sie wie folgt vorgehen :
Verwendung jedoch Markdown - Dateien in GitHub / repo , können Sie es bekommen GitHub Seiten wie in Wikipedia
quelle
Visual Studio-Code
Wenn Sie Visual Studio Code verwenden , gibt es eine benutzerfreundliche Erweiterung namens Markdown All in One , mit der das Inhaltsverzeichnis für jede MD-Datei sofort erstellt werden kann.
Öffnen Sie einfach die Befehlspalette (
Ctrl-Shift-P
) ->Markdown: Create Table of Contents
Das automatische Update bringt Ihr bearbeitetes Inhaltsverzeichnis durcheinander?
Als zusätzlichen Tipp möchten Sie möglicherweise die Option "Automatische Inhaltsverzeichnisaktualisierungen beim Speichern" mit deaktivieren
in Ihren Visual Studio-Einstellungen (Befehlspalette -> Einstellungen: Einstellungen öffnen (JSON)).
quelle
Sie können den Bearbeitungsmodus "MediaWiki" wählen, der ein Token für die Header generiert, z
quelle
Aufgrund der Tatsache, dass Github seine eigene Methode hat, um id = ".." - Attribute in h1, h2, h3 usw. zu generieren id = "slug") Es ist praktisch, das Rad nicht neu zu erfinden und eine Bibliothek zu verwenden, die diesen Prozess rückgängig gemacht hat.
Ich habe eine ziemlich gute Bibliothek für diese Aufgabe gefunden, Markdown-toc .
Für mich scheint es die beste Lösung zu sein, da ich immer einen Knoten auf meinem Computer installiert habe.
Führen Sie einfach npx markdown-toc -i file.md aus .
Und es sieht so aus, als wäre es eines der beliebtesten Tools für diese Aufgabe - zumindest im Ökosystem von node.j.
Ausgabe:
quelle