Markdown 如何在多重标记中链接到命名锚?
我曾多次提到MultiMarkdown对内部链接/命名锚的支持,但我找不到一个实际操作的示例 那么,表示命名锚的语法是什么,链接到它的语法与链接到任何其他URL的语法相同(仅使用#foo而不是Markdown 如何在多重标记中链接到命名锚?,markdown,multimarkdown,Markdown,Multimarkdown,我曾多次提到MultiMarkdown对内部链接/命名锚的支持,但我找不到一个实际操作的示例 那么,表示命名锚的语法是什么,链接到它的语法与链接到任何其他URL的语法相同(仅使用#foo而不是http://....) 摘自(感谢推特上的@MultiMarkdown指出这一点) [Some Text][将链接到名为“Some Text”的标题 e、 g 您选择的可选标签有助于消除多个标题具有相同标题的情况下的歧义: ### Overview [MultiMarkdownOverview] ##
http://....
) 摘自(感谢推特上的@MultiMarkdown指出这一点)
[Some Text][
将链接到名为“Some Text”的标题e、 g 您选择的可选标签有助于消除多个标题具有相同标题的情况下的歧义:
### Overview [MultiMarkdownOverview] ##
这使您可以使用[MultiMarkdownOverview]来专门引用本节,而不是另一个名为Overview的节。这适用于atx或settext样式的标题
如果已经使用标头使用的相同id定义了锚定,则定义的锚定优先
除了文档中的标题外,还可以为图像和表格提供标签,这些标签也可以用于交叉引用
在标准标记中,放置锚定点(代码>) 远程引用可以使用
[链接文本](http://...#abcd)
当然可以
这就像一场梦,只要你能控制源文本和目标文本。锚甚至可以出现在标题中,因此:
### <a name="head1234"></a>A Heading in this SO entry!
(在这种情况下,链接不起作用,因为锚点被剥离。)如果标记文件中有标题,可以直接在文件中链接标题 降价标题:
##标题
这将生成一个隐式id#标题
(将内部空格替换为连字符并使其小写)
要导航到此id,可以创建如下链接:
* [Descripción](#descripcion)
* [Funcionamiento](#funcionamiento)
* [Instalación](#instalacion)
* [Configuración](#configuracion)
[链接到标题](#标题)
这相当于:
请注意,引用的名称是小写的
#标题
创建内部链接(与节相关)的最佳方法是创建列表,但如果标题中包含空格,则放置#节
或#节标题
,而不是链接
降价
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
转到第节
*[你好](#你好)
*[你好世界](#你好世界)
*[另一部分](#新部分)我测试了一段时间Github风格的降价,可以总结为四条规则:
标点符号将被删除
前导空格将被删除
大写字母将转换为小写字母
字母之间的空格将转换为-
例如,如果您的分区命名为:
## 1.1 Hello World
通过以下方式创建指向它的链接:
[Link](#11-hello-world)
这是我的解决方案(源自的答案)
**跳转到**:[热键和标记](#热键标记)/[半径](#半径)/[布线向导2.0](#布线向导-2-0)
这给了你:
跳转到:热键和标记/半径/路线向导2.0
请注意从
和
到-
的更改,以及链接中&
的丢失。在mdcharm中是这样的:
* [Descripción](#descripcion)
* [Funcionamiento](#funcionamiento)
* [Instalación](#instalacion)
* [Configuración](#configuracion)
@我现在做的是jj1bdx——。添加得不错。我会把它标记为答案,但问题是关于多重降价的。显然,人们的投票表明这是一个有益的补充。所以,谢谢。仅供参考:Github markdown似乎希望您使用name=而不是id。@Dieter:name=
在XHTML中被弃用,但现在我发现id=
在HTML5中有副作用,所以我在这个答案中返回到name=
。适用于Github风格的markdown(ruby gem按预期呈现)FWIW,从23.4.1开始,它不适用于emacs的降价模式。降价不支持脚注。因此,它不会在大多数“降价”模式下工作。但是,多重标记支持许多扩展,使编写者的生活更轻松。Github似乎不支持标题中的标签?当标题中有“:”时,这不起作用(至少在codepen.io上)。该链接是编写多重标记的人编写的文档。我不确定你在codepen.io中做什么,但我相信文档是准确的。请记住多标记而不是标记。如果您这样做是为了创建目录,我建议您将其自动化(需要)。Doctoc生成标记代码,因此它也将提供一个示例,说明如何在整个文档中链接到标题(如@user1789493的回答中所述)。BitBucket的可能副本似乎在锚id的前面加上“标记标题-”。因此,如果您的标题是#####
,则链接将是[到此标题](#标记标题此标题)
。如果您不确定标题的id是什么,请使用页面检查器查看HTML值。在Pandoc extended markdown中对我不起作用,可能在其他地方起作用。@SaurabhM只有当您的markdown to HTML转换器不符合标准时,这才起作用。该标准不创建锚定标记。现在,很多人并不坚持,但你不应该期望这在任何地方都能奏效。为什么我们必须在一些没有标准的东西上进行标准化,而在降价的东西上进行半生不熟的标准化呢。无法等待Ascidoc带头。GitHub在标题名称之前添加用户内容:[Link](用户内容标题)
,如此处其他注释所述。这在任何实际遵循标准的markdown->html转换器中都不起作用。在标题中创建锚定标记仅在某些转换器中发生。此外,它们不会将所有空格都转换为破折号。这不能指望。我正在代码编辑器中使用GitHub Markdown,它有一个名为“Markdown Preview”的内置包。在预览模式下,我使用上下文菜单“另存为html…”创建了一个html文件。是的,我的观点是,您不能指望您的技术在其他任何地方工作,而且问题和答案都不是关于Atom中的标记。问题甚至不是关于
## 1.1 Hello World
[Link](#11-hello-world)
* [Descripción](#descripcion)
* [Funcionamiento](#funcionamiento)
* [Instalación](#instalacion)
* [Configuración](#configuracion)
### Descripción {#descripcion}
### Funcionamiento {#funcionamiento}
### Instalación {#instalacion}
### Configuración {#configuracion}