Python / AWK / SEDでマークダウンドキュメントの目次を作成するにはどうすればよいですか?


15

次のマークダウンドキュメントがあります。

Heading-a
==========

---text---

Heading-b
------------

--- text ---

Heading-c
----------

--- text---

Heading-d
=======

--- text----

Heading-e
---

...

LaTexの場合と同様に、クリック可能な目次を作成したいのですが、これを行うツールが見つかりません。

ツールは、番号1 Heading-aと番号1.1 を割り当てるように、「H1」見出しと「H2」見出しを収集する必要があります。からHeading-b1.2 にHeading-c、2。にHeading-d、2.1。Heading-eように、我々はコンテンツの以下の表を取得する必要がありますよう:

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

Python / AWK / SEDでこれを行うにはどうすればよいですか?


なぜLaTeXを使用しないのですか?
jtbandes

4
@jtbandes:Markdownの構文は、LaTexの構文よりも読みやすく、入力が速く、コンパイルが簡単です。
レオレオポルトヘルツ준영

回答:


9

Python実装のMarkdownは、目次生成を含む拡張機能の1つをサポートしています。さらに、Pandoc(Haskellマークアップ-> PDFはマークダウンをサポートしており(他の形式に加えて)、きれいなHTML、LaTeX、PDFなどを出力できます。


あなたの答えは、スレッドでの拡張機能をインストールするには別の問題を提起superuser.com/questions/13075/...
レオ・レオポルド・ヘルツ준 영を

1

すでに見出しがある場合は、github-markdown-tocを試してみて、stdin、ローカル、およびリモートファイルを処理できます。例:

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

またはローカルの作成README.md

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

0

軽量マークアップ言語と、ソリューションの方向性を導く目次に関する情報との比較については、この記事を参照してください。


リンクが機能していません。
レオレオポルトヘルツ준영

1
リンクは私のために機能します。
追って通知があるまで一時停止します。

キャッシュに記事があるように、元の作者がブログ投稿を削除したばかりのようです。
レオレオポルドヘルツ준영

1
サイト:記事では、Googleのキャッシュで見つけることができalexandrenotebook.blogspot.com/2008/01/...
レオ・レオポルド・ヘルツ준 영
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.