ToC oder Sidebar im GitHub Wiki

85

Wie erstelle ich ein ToC oder ein Seitenleistenmenü in einem GitHub-Wiki?

Ich habe einige Erwähnungen davon gesehen und gollum das Backend scheint es zu unterstützen, aber wie mache ich das in einem aktuellen GitHub-Projekt?

Es sollte am besten auf den Überschriften basieren, die ich automatisch auf der Seite habe.

Diese Links erwähnen es alle, zeigen aber nicht, wie es geht:

  • https://gist.github.com/379469 - einige JavaScript-Hack
  • https://github.com/blog/774-git-powered-wikis-improved - GitHub erwähnt es:

    "GitHub-Wikis verfügen über eine wenig dokumentierte Funktion für Fußzeilen und Seitenleisten, mit der einige unserer Git-basierten Wiki-Autoren vertraut sind. Mit dem neuen Wiki-Editor können Sie die Fußzeilen und Seitenleisten auf Ihrer Website nur eingeschränkt webbasiert bearbeiten. ""

wolle
quelle
3
Ich habe GitHub Wikifier entwickelt: Ein Git-Hook vor dem Festschreiben, der das gesamte Inhaltsverzeichnis generiert, das Sie jemals benötigen werden. Schreiben Sie einfach Ihren Inhalt und lassen Sie ihn übernehmen. Kann einen Scheck wert sein. github.com/kuroir/GitHub-Wikifier
MarioRicalde
Auf Isaacs: github.com/isaacs/github/issues/504
Ciro Santilli 30 冠状 病 六四 事件 30
@MarioRicaldes Code wurde auf github.com/hybridgroup/GitHub-Wikifier
Jonny

Antworten:

76

Während Ihre Lösung funktioniert, gibt es eine einfachere Möglichkeit, dies über die Weboberfläche von GitHub zu tun. Sie können einfach eine Seite mit dem Namen _Sidebarund / oder erstellen _Footer.

Ausführliche Anweisungen finden Sie im Menü-Builder der Github Wiki-Seitenleiste mit mehreren Ebenen .

Bearbeiten Der Originalartikel ist weg und ich kann ihn nicht im Cache finden, daher habe ich den Link aktualisiert.

Nicerobot
quelle
7
@ CodeSherpa sie sind zugänglich bei https://github.com/[user]/[repo]/wiki/_Sidebar/_editundhttps://github.com/[user]/[repo]/wiki/_Footer/_edit
nicerobot
1
Der Artikel war großartig, enthält aber falsche (oder veraltete) Informationen darüber, wie man die URL des Wikis erhält. Falls Sie so verloren sind wie ich, müssen Sie die URL https://github.com/<username>/<projectname>.wiki.gitoder SSH verwenden [email protected]:<username>/<projectname>.wiki.git.
NightOwl888
1
Diese detaillierten Anweisungen sind ziemlich schlecht. Was ist ein [[link]]? Wenn Sie dort eine URL eingeben, wird die gesamte URL angezeigt.
Pithikos
3
@Pithikos es ist Github Markdown sprechen. Die Anweisungen sind nicht da, um Ihnen Markdown beizubringen. Sie sind da, um Seitenleisten zu erklären.
Nicerobot
2
@nicerobot und der beste Weg, um etwas zu erklären, ist anhand eines konkreten Beispiels ..
Pithikos
25

In Ordnung. Lassen Sie mich sehen, ob ich das richtig verstehe:

  1. Klonen Sie Ihr GitHub-Wiki. (Es gibt einen Git-Abschnitt im Wiki. Sie können Ihren Wiki-ähnlichen Code auschecken.)
  2. Erstellen _Sidebar.md
  3. Verwenden Sie in normalen Wiki-Seiten [[link]]die Seitenleiste
  4. Commit und Push zurück zu GitHub

Dieser Prozess ist ein Schmerz im Arsch. Ich bin überrascht, dass dieses "Gollum" -Wiki jede Akzeptanz hat.

Außerdem: _Sidebar.md ist daher für alle Seiten global . Ich müsste mein Wiki in Ordnern organisieren, damit ich verschiedene Seitenleisten für verschiedene Seiten definieren kann.

wolle
quelle
2
Gemäß den Dokumenten können Sie verschiedene Seitenleisten für verschiedene Ordner hinzufügen: "Seitenleisten wirken sich auf alle Seiten in ihrem Verzeichnis und auf alle Unterverzeichnisse aus, die keine eigene Seitenleistendatei haben." siehe: github.com/github/gollum
Subfuzion
23

Wenn Sie sich im Wiki Ihres Projekts befinden, gibt es einen Link. Fügen Sie eine benutzerdefinierte Seitenleiste hinzu . Klicken Sie darauf.

Geben Sie hier die Bildbeschreibung ein

Jetzt haben Sie eine Seite, die Sie wie jede andere Markdown- Seite bearbeiten würden . Um ein Inhaltsverzeichnis zu erstellen, müssen Sie dies jedoch manuell tun. Es gibt keine automatisierte Methode (Stand August 2014). Also zum Beispiel:

# My menu
* [Home][home]
* [Technical documentation][techdocs]
* [User manual][usermanual]

[home]: https://github.com/myproject/wiki/Home
[techdocs]: https://github.com/myproject/wiki/Technical-documentation
[usermanual]: https://github.com/myproject/wiki/User-manual
Pithikos
quelle
10

Beachten Sie, dass es bei der ursprünglichen Frage darum ging, eine Seitenleiste (einfach, in den Antworten gelöst) oder ein tatsächliches Inhaltsverzeichnis (nicht beantwortet) zu erstellen.

Eine Sache, die ich sagen kann, ist, dass die Gollum 2.1-Wiki-Syntax ein [[_TOC_]]Tag zulässt , aber ein GitHub-Wiki erkennt das (noch?) Nicht.

Kennzeichen
quelle
4
Hast du Glück gehabt? Es ist furchtbar frustrierend, von Trac gekommen zu sein, wo all diese Dinge leicht erledigt werden konnten.
Jooks
Ich denke, dass eine bessere Antwort auf die ursprüngliche Frage, wie ein Inhaltsverzeichnis "basierend auf den Überschriften, die ich auf der Seite habe, automatisch erstellt wird", derzeit mit GitHub Wiki unmöglich ist.
Avernet
Dies ist derzeit ein offenes Thema (zu faul, um die Nummer nachzuschlagen), das Hunderte von Menschen kommentiert haben. Noch kein Wort von GitHub zurück :(
abalter
Die wichtigsten GitHub-Probleme, die ab dem 19.01.2017 darauf
verweisen,
4

Ich denke, das ist im Gollum beschriebenREADME . (Siehe die Kopf- und Seitenleistenabschnitte.)

Im Wesentlichen erstellen Sie ein _footer.extund _sidebar.extin dem Verzeichnis, das den Seiteninhalt enthält.

Seandavi
quelle
4

Ich habe gerade ein Python-Skript erstellt, das einen Index in der _Sidebar.md von GitHub basierend auf der Ordnerstruktur und den Seiten im Wiki-Git generiert.

Geben Sie hier die Bildbeschreibung ein

Christopher Mueller
quelle
2

Ich habe das npm-Modul github-wiki-sidebar implementiert , um Github-Benutzern das einfache Erstellen und Verwalten des Sidebar-Menüs zu erleichtern.

Quelle und Ergebnis: https://raw.githubusercontent.com/wiki/adriantanasa/github-wiki-sidebar/images/github-wiki-sidebar-generator.png

Quellseiten (wie im Wiki-Administrator angezeigt):

Home
Installation
Roadmap
Usage
Usage: Command line modifiers
Usage: Init Mode

Ergebnis (mit kundenspezifischer Bestellung):

Voraussetzungen:

  • Klonen Sie Ihr Github-Wiki-Repository lokal (unten rechts in der Wiki-Benutzeroberfläche angezeigt).
  • Installieren Sie die Github-Wiki-Seitenleiste

    git clone <https://github.com/<username>/<my-project-name>.wiki.git
    npm install -g github-wiki-sidebar
    

Erstellen / aktualisieren Sie Ihr Wiki-Menü:

  • Erstelle neue Seiten / benenne Seiten in deinem github.com-Wiki-Administrator um
  • Führen Sie lokal das Skript github-wiki-sidebar in Ihrem Wiki-Repository-Ordner aus

    cd /path/to/<my-project-name>.wiki
    # this fetches latest changes, generates sidebar file (_Sidebar.md) and pushes changes to github
    github-wiki-sidebar --git-push
    

Das Modul ermöglicht die Anpassung der Markdown-Ausgabe, einschließlich der Reihenfolge der Elemente, des Kategorietrennzeichens, der Vorlage für das Menü, des Formats der Links und anderer Elemente.

Adtanasa
quelle
0

GitHub generiert automatisch ein Dokumentinhaltsverzeichnis:

  1. Machen Sie den Dokumenttyp AsciiDoc anstelle von Markdown.
  2. :toc:Am Anfang des Dokuments einfügen .
Hundewetter
quelle