首页 > 代码库 > markdown中的锚点处理

markdown中的锚点处理

markdown

markdown是一个相对简单的DSL,定义了简单的标签来描述html文档格式。 比如:

  • #一级标题 来生成html <h1>一级标题<h1>
  • ##二级标题 来生成html <h2>二级标题<h2>
  • [链接文字][link id][link id]:www.baidu.com 的组合来描述一个链接:

[链接文字][url name] [url name]: http://www.baidu.com

markdown的局限

使用了一段时间之后发现markdown所提供的链接标签并不能很好地处理锚点问题。 即:[a link][id][id]: www.url.com的组合定义方式并不是完善。如:当我们在编写文档时可能并不知悉当前文档的URL描述. 好在markdown在设计之初其实就想到了这点,在解释md文档的时候,解释器会优先处理原生html标签。这样的话解决这个问题就就好办了。

只需参考markdown的官方网站的markdown源码与其网页相对应分析:

  • http://daringfireball.net/projects/markdown/syntax.text
  • http://daringfireball.net/projects/markdown/syntax

md的第十三行overview 对应的描点地址是用html硬编码的h2 id=‘overview‘.

 

 

ref:

1. markdown语法参考: http://wowubuntu.com/markdown/

2. markdown问题: http://www.v2ex.com/t/3949

markdown中的锚点处理