ここを見ると:http : //en.wikipedia.org/wiki/Stack_Overflow
「コンテンツ」セクションが少しあることに気づくでしょう。リンクの1つをクリックすると、ページの特定のセクションに移動します。
GitHub wikiでこれを行うにはどうすればよいですか?マークダウンまたは彼らが使用するもので?
ここを見ると:http : //en.wikipedia.org/wiki/Stack_Overflow
「コンテンツ」セクションが少しあることに気づくでしょう。リンクの1つをクリックすると、ページの特定のセクションに移動します。
GitHub wikiでこれを行うにはどうすればよいですか?マークダウンまたは彼らが使用するもので?
回答:
これは、Markdownチートシートの目次でうまく示されています。
##### Table of Contents
[Headers](#headers)
[Emphasis](#emphasis)
...snip...
<a name="headers"/>
## Headers
GitHub Markdownファイルのヘッダーにカーソルを合わせると、その左側に簡単な小さなリンクが表示されます。そのリンクを使用することもできます。そのリンクの形式は<project URL#<header name>
です。<header name>
すべて小文字でなければなりません。
__TOC__
直接使用できます。明らかに、基礎となる自動生成ロジックがあります。しかし、機能はMarkdown編集スタイルでは公開されていないようです。かなり残念です。すべての機能のリクエストを送信してみましょう。おそらくオンにするでしょう。
#Headers
代わりに使用しました#headers
。それはあなたの答えのタイプミスだと思いました。おそらく、この情報を回答に追加できます。
可能な(半自動化された)ソリューションの1つは、Eugene Kalininのソリューションですgithub-markdown-toc
。このツールは基本的にREADME.md
ファイルをクランチし#
、TOCを作成するために見出しを削り取ります。
README.md
スクリプトにあなたを養う(ユージーンので述べたようにREADME.md
)
猫README.md | bash github-markdown-toc
生成された目次をカットアンドペーストして、README.md
ファイルの上部に配置します
このbash
実装はLinuxでのみ機能することに注意してください(私が知る限り)。
githubをTOC
直接使用することはできませんが、他の方法があります。
オンラインツールを介してTOCを自動的に生成できます。
GitHub MarkdownまたはWiki Onlineから目次を生成する
またはローカルツール経由:
https://github.com/jonschlinkert/markdown-toc
git clone your-repo.wiki.git
(wikiを複製する.wiki
直前.git
を追加npm i -g markdown-toc
<!-- toc -->
ウィキのマークダウンに(大文字と小文字を区別して)挿入しますmarkdown-toc -i my-wiki-markdown.md
(-i
その場で編集します)更新:多分、https ://github.com/thlorenz/doctocがもっと人気があると思います。
現在、マークダウン構文()を使用してそれを行うことはできません.md
。いくつかのアイデアを一覧表示するような、レンダリングされたマークダウンファイルに目次TOCを自動的に生成することに関する非公式の議論が進行中README.md
です。
ただし、次のような他の回避策があります。
AsciiDoc
このコメントからの提案に従って代わりに使用してください。例えば:
:toc: macro
:toc-title:
:toclevels: 99
# Title
toc::[]
## A
### A2
## B
### B2
littlebits/react-popover
(README.adoc
)の例を確認してください。
Markdownに固執する立場にない場合は、以下のようにすることができます。
- 上のGitHub /ウィキ:切り替え値下げをするのMediaWiki。
__TOC__
構文を使用します。サンプルを参照してください。- 上GitHubの/レポ:切り替え値下げをするAsciiDoc。
:toc:
構文を使用します。デモを参照してください。
ただし、GitHub / repoのMarkdownファイルを使用すると、WikipediaのようにGitHubページで取得できます。
Visual Studio Codeをたまたま使用した場合、Markdown All in Oneと呼ばれる使いやすい拡張機能があり、.mdファイルのTOCを瞬時に作成できます。
コマンドパレット(Ctrl-Shift-P
)を開くだけ->Markdown: Create Table of Contents
追加のヒントとして、次のコマンドを使用して「保存時のTOCの自動更新」をオフにすることができます。
"markdown.extension.toc.updateOnSave": false,
Visual Studioの設定で(コマンドパレット-> [設定]:[設定を開く(JSON)])。
ヘッダーのtocを生成する編集モード「MediaWiki」を選択できます。たとえば、
== First ==
== Second ==
githubには、Markdownを処理した後、htmlバージョンのh1、h2、h3などのヘッダーにid = ".."属性を生成する独自の方法があるため(たとえば、Bitbucketは、 id = "slug")ホイールを再発明せずに、このプロセスをリバースエンジニアリングしたライブラリを使用すると便利です。
markdown-tocと呼ばれる、このタスク用の非常に優れたライブラリが1つ見つかりました。
私のマシンには常にノードをインストールしているので、私にとってはそれが最善の解決策のようです。
npx markdown-toc -i file.mdを実行するだけです。
そして、それは、少なくともnode.jsエコシステムにおいて、このタスクのためのより一般的なツールの1つであるように見えます。
ls
cat <<EOF >> test.md | tee
## Table of Contents
<!-- toc -->
- old toc 1
- old toc 2
- old toc 3
<!-- tocstop -->
## abc
This is a b c.
## xyz
This is x y z.
EOF
ls
cat test.md
npx markdown-toc -i test.md
cat test.md
出力: