发布于 

markdown 学习笔记

终于知道为什么github上面每个项目的说明文件都叫README.md,原来是使用markdown语法编写的文档,再通过工具生成html页面,我们在github上打开的readme.md都是经过渲染后的结果。


Markdown基础语法

  • 标题

    # 一级标题 一级标题

    ## 二级标题 二级标题

    以此类推一直到六级标题

  • 列表

    使用*+-表示无序列表

    使用数字和点表示有序列表

  • 引用

    > 引用内容

    这是引用内容

  • 链接

    [文字](url)

    Markdown 语法说明

  • 图片

    ![提示文字](url)

    示例图片

  • 粗体

    **文字**

  • 斜体

    *斜体*

  • 代码框

    `代码内容`

    public int i = 0;

    如果有嵌套,则使用`` `代码内容` ``这样的方式,代码中可以显示出`符号

  • 分割线

    ***或者---


    Markdown基础语法不难,但要注意控制的是各种换行和空格,否则出来的页面可能不是你想要的结果,详细资料可以到Markdown 语法说明了解。

Markdown解析

Hexo这样的博客框架,在生成静态页面时,已经对你编写的markdown文本进行了解析和渲染,有些markdown在线编辑网站(如Cmd Markdown 编辑阅读器)也可以实时对markdown文本解析。但是,假如你不是使用Hexo这样的框架,而是自己搭建的一个网站,有没有办法对页面中的markdown内容进行解析呢,当然是可以的。

最近在做的一个项目中就有这么一个需求,所以搜索了一下,在github上找到两个比较实用的解析工具:markedmarkdown-js。这两个开源工具都基于node.js,也可以简单粗暴地直接在页面引用,具体例子请看github。

经过试用,最后选择了marked,原因如下:

  1. 当markdown文本中嵌入html标签比如<table>时,markdown-js只把它当成了普通文本处理,而marked可以正确地解析,而这比较符合我的需求;
  2. marked可扩展性强,比如可以通过参数方法,调用highlight.js对代码块进行高亮处理,还可以自定义渲染方法,按照你的设计解析markdown语法。

另外,markdown-js严格要求符合markdown语法规定,如#后必须跟着一个空格,marked则不需要。

总结

Markdown现在真的非常流行,语法简单好学易用,渲染出来的文本简洁清晰,很合口味,越来越多的网站和用户选择Markdown作为编辑语言,另外,论文和简历也可以使用Markdown,别有一番风味。

语法虽然简单,但细节更见功夫,特别是关于换行、空格问题,还需要继续努力学习练习熟悉。

此致,敬礼!!!