MultiMarkdownの内部リンク/名前付きアンカーのサポートについて多くの言及を見つけましたが、実際にそれを行う方法の1つの例を見つけることができません。
それで、名前付きアンカーを示すための構文は何http://....
ですか、それに他のURLへのリンクと同じようにリンクするための構文は何ですか(の代わりに#fooのみを使用)?
MultiMarkdownの内部リンク/名前付きアンカーのサポートについて多くの言及を見つけましたが、実際にそれを行う方法の1つの例を見つけることができません。
それで、名前付きアンカーを示すための構文は何http://....
ですか、それに他のURLへのリンクと同じようにリンクするための構文は何ですか(の代わりに#fooのみを使用)?
回答:
標準のMarkdownでは、<a name="abcd"></a>
リンク先のアンカーを配置して、で同じページに参照させ[link text](#abcd)
ます。
(これは、この回答で説明されている理由のため、を使用しname=
、使用しません。)id=
[link text](http://...#abcd)
もちろん、リモート参照も使用できます。
ソースとターゲットのテキストを制御できれば、これは夢のように機能します。アンカーは見出しにも表示されるため、次のようになります。
### <a name="head1234"></a>A Heading in this SO entry!
生成する:
それにリンクすることもできます:
and we can even [link](#head1234) to it so:
(SOでは、アンカーが削除されているため、リンクは機能しません。)
<a id="id"></a>
フォームが最良です。このSOの質問/回答を参照してください。
name=
XHTMLでは非推奨でしたがid=
、HTML5で副作用があることがわかりましたのでname=
、この答えに戻ります。
マークダウンファイルにヘッダーがある場合は、ファイルに直接リンクできます。
マークダウンヘッダー-
## The Header
これにより、暗黙のIDが生成され#the-header
ます(内部スペースをハイフンで置き換え、小文字にします)。
このIDに移動するには、次のようなリンクを作成します。
[Link to Header](#the-header)
これは次と同等です。
<a href="#the-header">Link to Header</a>
リファレンスの名前は小文字であることに注意してください#header
。
## This Header ##
場合、リンクはになります[To This Header](#markdown-header-this-header)
。ヘッダーのIDがわからない場合は、ページインスペクターを使用してHTML値を確認してください。
[Link](user-content-the-header)
撮影Multimarkdownユーザーガイド(それを指摘してTwitterで@MultiMarkdownのおかげで)
[Some Text][]
「いくつかのテキスト」というヘッダにリンクします
たとえば、
### Some Text ###
複数のヘッダーが同じタイトルを持つケースを明確にするために選択したオプションのラベル:
### Overview [MultiMarkdownOverview] ##
これにより、[MultiMarkdownOverview]を使用してこのセクションを具体的に参照することができ、Overviewという別のセクションを参照することはできません。これは、atxスタイルまたはsettextスタイルのヘッダーで機能します。
ヘッダーで使用されているのと同じIDを使用してアンカーを既に定義している場合は、定義されたアンカーが優先されます。
ドキュメント内のヘッダーに加えて、相互参照にも使用できる画像や表のラベルを提供できます。
しばらくの間、Github Flavored Markdownをテストしましたが、4つのルールで要約できます。
-
たとえば、セクションの名前が次の場合:
## 1.1 Hello World
次の方法でそれにリンクを作成します。
[Link](#11-hello-world)
(セクションに関連する)内部リンクを作成する最良の方法はリストの作成ですが、リンクの代わりに、ヘッダーにスペースが含まれている場合は#sectionまたは#section-titleを入力します。
---- MARKDOWN ------------------------
Go to section
* [Hello](#hello)
* [Hello World](#hello-world)
* [Another section](#new-section) <-- it's called 'Another section' in this list but refers to 'New section'
## Hello
### Hello World
## New section
----リストプレビュー------------------------
Go to section
Hello <-- [Hello](#hello) -- go to `Hello` section
Hello World <-- [Hello World](#hello world) -- go to `Hello World` section
Another section <-- [Another section](#new-section) -- go to `New section`
---- HTML ------------------------
<p>Go to section</p>
<ul>
<li><a href="#hello">Hello</a><br />
</li>
<li><a href="#hello-world">Hello World</a></li>
<li><a href="#new-section">Another section</a> <– it’s called ‘Another section’ in this list but refers to ‘New section’</li>
</ul>
<h2 id="hello">Hello</h2>
<h3 id="hello-world">Hello World</h3>
<h2 id="new-section">New section</h2>
ヘッダーがh1、h2、h3などであるかどうかは関係ありません。常に1つだけを使用して参照します#
。
上記の例に示すように、セクションリスト内のすべての参照は小文字のテキストに変換する必要があります。
セクションへのリンクは小文字でなければなりません。他の方法では機能しません。
この手法は、すべてのMarkdownバリアントとMultiMarkdownで非常にうまく機能します。
現在、Pandocを使用してドキュメント形式を変換しています。MultiMarkdownよりもはるかに優れています。
ここでパンドックをテストする
## Hello
場合は、次のように参照する必要があります[Whatever you want](#Hello)