Как подключиться к названному якорю в Multimarkdown?

Я столкнулся с несколькими упоминаниями поддержки MultiMarkdown для внутренних ссылок/названных якорей, но я не могу найти ни одного примера того, как это сделать на самом деле.

Итак, что такое синтаксис для обозначения именованного якоря, и каков синтаксис для его привязки так же, как ссылка на любые другие URL-адреса (только с использованием #foo вместо http://....)?

Ответ 1

Взято из Multimarkdown User Guide (спасибо @MultiMarkdown на Twitter за то, что указали)

[Some Text][] будет ссылаться на заголовок с именем "Some Text"
например

### Some Text ###

Дополнительный ярлык по вашему выбору, чтобы помочь устранить случаи, когда несколько заголовков имеют одинаковый заголовок:

### Overview [MultiMarkdownOverview] ##

Это позволяет использовать [MultiMarkdownOverview] для ссылки на этот раздел специально, а не на другой раздел с названием Обзор. Это работает с заголовками atx или settext.

Если вы уже определили привязку с использованием того же идентификатора, который используется заголовком, то определенный якорь имеет приоритет.

В дополнение к заголовкам внутри документа вы можете предоставить метки для изображений и таблиц, которые затем могут использоваться для перекрестных ссылок.

Ответ 2

В стандартном Markdown поместите привязку <a name="abcd"></a>, к которой вы хотите установить ссылку, и ссылайтесь на нее на той же странице [link text](#abcd).

(Это использует name=, а не id= по причинам, описанным в этом ответе.)

Удаленные ссылки могут использовать [link text](http://...#abcd), конечно.

Это работает как сон, если вы контролируете исходные и целевые тексты. Якорь может даже отображаться в заголовке, таким образом:

### <a name="head1234"></a>A Heading in this SO entry!

дает:

A Заголовок в этой записи SO!

и мы можем даже ссылаться на него так:

and we can even [link](#head1234) to it so:

(On SO, ссылка не работает, потому что якорь лишен.)

Ответ 3

Если у вас есть заголовки в файлах разметки, вы можете напрямую связать их в файле.

Заголовок Markdown -

## The Header

это приведет к неявному id #the-header (замените внутренние пространства дефисом и сделайте строчные буквы).

Чтобы перейти к этому идентификатору, вы можете создать ссылку следующим образом:

[Link to Header](#the-header)

Это эквивалентно:

<a href="/current_url#the-header">Link to Header</a>

Обратите внимание, что ссылочным именем является нижний регистр #header.

Ответ 4

Я тестирую Github Flavored Markdown на некоторое время и сводные 4 правила:

  • знаки препинания будут удалены
  • ведущие белые пробелы будут удалены
  • верхний регистр будет преобразован в нижний
  • пробелы между буквами будут преобразованы в -

Скажем,

## 1.1 Hello World

Напишите этот способ,

[Link](#11-hello-world)

Готово.

Ответ 5

Лучший способ создания внутренних ссылок (связанных с разделами) - создать список, но вместо ссылки разместить #section или # section-title, если заголовок содержит пробелы.

---- MARKDOWN ------------------------

Go to section
* [Hello](#hello)  
* [Hello World](#hello-world)
* [Another section](#new-section)    <-- it 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> &lt;– 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 и т.д., вы всегда ссылаетесь на него, используя только один #.
Все ссылки в списке разделов должны быть преобразованы в строчный текст, как показано в приведенном выше примере.

Ссылка на раздел должна быть строчной. Другим способом это не сработает. Этот метод работает очень хорошо для всех вариантов Markdown, также MultiMarkdown.

В настоящее время я использую Pandoc для преобразования формата документов. Это намного лучше, чем MultiMarkdown.
Проверить Pandoc здесь

Ответ 6

Вот мое решение (полученное из SaraubhM)

**Jump To**: [Hotkeys & Markers](#hotkeys-markers) / [Radii](#radii) / [Route Wizard 2.0](#route-wizard-2-0)

Что дает вам:

Перейти к: горячие клавиши и маркеры/радиус/мастер маршрута 2.0

Обратите внимание на изменения от и . до -, а также на потерю & в ссылках.

Ответ 7

Если вы хотите установить ссылку на внутренние заголовки в файле .MD в GitHub - тогда просто наведите указатель мыши на отдельный заголовок и щелкните по символу ссылки слева от заголовка. Это буквально ссылка, которую вы должны использовать для связи с этим конкретным заголовком внутри документа.