Wie kann ich mit Python / AWK / SED ein Inhaltsverzeichnis für ein Markdown-Dokument erstellen?

17383
Léo Léopold Hertz 준영

Ich habe das folgende Abschriftendokument:

Heading-a ==========  ---text---  Heading-b ------------  --- text ---  Heading-c ----------  --- text---  Heading-d =======  --- text----  Heading-e ---  ... 

Ich würde gerne ein anklickbares Inhaltsverzeichnis erstellen, ähnlich wie LaTex, aber ich kann kein Werkzeug finden, das dies tut, was mir vorschlägt, dass wir eines erstellen sollten.

Das Tool sollte 'H1'-Überschriften und' H2'-Überschriften sammeln, sodass es die Nummer 1 Heading-aund die Nummer 1.1 zuweist . bis Heading-b1,2. bis Heading-c2. bis Heading-d2.1. bis Heading-eund so weiter, so dass wir das folgende Inhaltsverzeichnis bekommen sollten:

 1. Heading-a 1.1. Heading-b 1.2. Heading-c 2. Heading-d 2.1. Heading-e 

Wie mache ich das mit Python / AWK / SED?

14
Warum verwenden Sie nicht einfach LaTeX? jtbandes vor 14 Jahren 0
@jtbandes: Die Syntax von Markdown ist einfacher zu lesen, schneller einzugeben und einfacher zu kompilieren als die von LaTex. Léo Léopold Hertz 준영 vor 14 Jahren 4

3 Antworten auf die Frage

9
Tyler

Die Implementierung von Markdown in Python unterstützt Erweiterungen, von denen eine die Inhaltsverzeichnisgenerierung umfasst. Darüber hinaus unterstützt Pandoc (das ist ein Haskell-Markup-> PDF-Dokument (zusätzlich zu einer Reihe anderer Formate) Markdown-Unterstützung und kann hübsche HTML-, LaTeX-, PDF-Dateien usw. ausgeben.

Ihre Antwort warf ein weiteres Problem bei der Installation der Erweiterungen im Thread http://superuser.com/questions/13075/to-install-markdowns-extensions-by-python auf Léo Léopold Hertz 준영 vor 14 Jahren 0
2
resultsway

Wenn Sie bereits über Überschriften verfügen, können Sie versuchen, mit github-markdown-toc stdin, lokale und entfernte Dateien zu verarbeiten. Beispiel:

cat ~/projects/Dockerfile.vim/README.md | ./gh-md-toc - 

oder ein lokales erstellen README.md:

./gh-md-toc ~/projects/Dockerfile.vim/README.md 
0
Dennis Williamson

In diesem Artikel finden Sie einen Vergleich von einfachen Auszeichnungssprachen mit einigen Informationen zu Inhaltsverzeichnissen, die Sie möglicherweise in Richtung einer Lösung führen.

Der Link funktioniert nicht. Léo Léopold Hertz 준영 vor 14 Jahren 0
Der Link funktioniert für mich. Dennis Williamson vor 14 Jahren 1
Es scheint so zu sein, dass der ursprüngliche Autor den Blogbeitrag so entfernt hat, dass Sie den Artikel in Ihrem Cache haben. Léo Léopold Hertz 준영 vor 14 Jahren 0
Den Artikel finden Sie im Cache von Google: site: http: //alexandrenotebook.blogspot.com/2008/01/textile-vs-markdown-vs-multimarkdown-vs_10.html Léo Léopold Hertz 준영 vor 14 Jahren 1