我看到很多人提到MultiMarkdown对内部链接/命名锚的支持,但我找不到一个例子来说明如何做到这一点。

那么,表示命名锚的语法是什么,链接到它的语法是什么,与链接到任何其他url一样(只是使用#foo而不是http://....)?


当前回答

如果标记文件中有头文件,可以直接在文件中链接它们。

减价头:

## The Header

这将生成一个隐式的id #the-header(将内部空格替换为连字符并小写)。

要导航到这个id,你可以像这样创建链接:

[Link to Header](#the-header)

这相当于:

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

请注意引用的名称是小写的#头。

其他回答

另一个选项(你可以把所有的链接放在文件的底部):

Here is an [example label].

  [example label]: #the-anchor-name-or-id "Optional title for mouse hover"

以下是我的解决方案(源自SaraubhM的答案)

**跳转到**:[热键&标记](#热键-标记)/ [Radii](# Radii) /[路由向导2.0](# Route - Wizard -2-0)

这就给了你:

跳转到:热键和标记/半径/路由向导2.0

注意和的变化。To -以及链接中&的缺失。

我测试了Github调味Markdown一段时间,可以总结出四个规则:

标点符号将被删除 前导空格将被删除 大写字母将转换为小写字母 字母之间的空格将转换为-

例如,如果你的section是这样命名的:

## 1.1 Hello World

这样创建一个链接:

[Link](#11-hello-world)

如果标记文件中有头文件,可以直接在文件中链接它们。

减价头:

## The Header

这将生成一个隐式的id #the-header(将内部空格替换为连字符并小写)。

要导航到这个id,你可以像这样创建链接:

[Link to Header](#the-header)

这相当于:

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

请注意引用的名称是小写的#头。

摘自Multimarkdown用户指南(感谢Twitter上的@MultiMarkdown指出这一点)

[Some Text][]将链接到名为“Some Text”的标题 如。

### Some Text ###

一个你选择的可选标签,以帮助消除多个头具有相同标题的情况下的歧义:

### Overview [MultiMarkdownOverview] ##

这允许您使用[multimarkdowoverview]来具体地引用这个部分,而不是另一个名为Overview的部分。这适用于atx或settext样式的头文件。 如果您已经使用与头文件使用的相同id定义了一个锚,则定义的锚优先。 除了文档中的标题外,您还可以为图像和表提供标签,这些标签也可以用于交叉引用。