Markdown简单总结

Markdown 起源

Markdown是一种轻量级标记语言,创始人为约翰·格鲁伯。它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的XHTML(或者HTML)文档。[4]这种语言吸收了很多在电子邮件中已有的纯文本标记的特性。

一个比Html还要轻量化的标记语言

这个语言的目的是希望大家使用“易于阅读,易于撰写的纯文字格式,并选择性的转换成XHtml (或是Html)”


标准化

需求一直在催生变化,人们在最初是版本的markdown语言版本商开始开发额外的功能,例如表格,列表等功能,接触的人一多起来,这个语言的一些标准就变得模棱两可。因此从2012年开始,markdown的创始人在内的一群人开始将这门标记语言走向标准化。

2016年3月发布了RFC 7763和RFC 7764。RFC 7763 从原始变体引入了MIME类型 text/markdown。RFC 7764讨论并注册了MultiMarkdown、GitHub Flavored Markdown (GFM)、Pandoc、CommonMark及Markdown等变体。[15]

CommonMark

从2012年开始,包括Jeff Atwood和John MacFarlane在内的一群人启动了标准化工作。[[18]](https://zh.wikipedia.org/wiki/Markdown#cite_note-FutureOfMarkdown-18)一个社区网站现在旨在记录可用于文档作者和开发人员的各种工具和资源,以及各种markdown实现的实现者。[[19]](https://zh.wikipedia.org/wiki/Markdown#cite_note-19) 2014年9月,格鲁伯反对在这一工作中继续使用“Markdown”这个名字,其被更名为CommonMark。[20][[21]](https://zh.wikipedia.org/wiki/Markdown#cite_note-21)CommonMark.org发布了规范、参考实现和测试包的几个版本,并计划在2018年宣布最终的1.0规范和测试包。[22]

GFM

2017年,GitHub发布了基于CommonMark的GitHub Flavored Markdown(GFM)的正式规范。[[23]](https://zh.wikipedia.org/wiki/Markdown#cite_note-23)除了表格、删除线、自动链接和任务列表被GitHub规范作为扩展添加之外,它遵循CommonMark规范。 [24]GitHub还相应地更改了其站点上使用的解析器,这要求更改某些文档 - 例如,GFM现在要求创建标题的哈希符号由空格字符分隔。

Markdown Extra

Markdown Extra是一种轻量级标记语言,基于在PHP(最初)、Python和Ruby[[25]](https://zh.wikipedia.org/wiki/Markdown#cite_note-fortin-2018-25)中实现的Markdown。它添加了普通Markdown语法不具备的功能。内容管理系统支持Markdown Extra,例如Drupal[[26]](https://zh.wikipedia.org/wiki/Markdown#cite_note-26),TYPO3[[27]](https://zh.wikipedia.org/wiki/Markdown#cite_note-27)和MediaWiki[28]。

它为Markdown添加了以下功能:

  • HTML块内的markdown标记
  • 具有id / class属性的元素
  • 围栏代码块
  • 表格[29]
  • 定义清单
  • 脚注
  • 缩写

常用的markdown编辑器

  • Windows
    • Typora 目前在用的一款专门的markdown编辑器
    • Visual Studio Code 对markdown的支持也非常棒
    • Phpstorm 等编辑器也都兼容了对markdown语言的解析
  • Mac
    • Mou 这款听说比较好用~
    • Ulysses 付费
  • Web
    • 的编辑器

语法


标题

#  atx-style一级标题

## 二级标题

###### 六级标题

Setext-style 另一种 一级标题
===

二级标题
---

atx-style一级标题

二级标题

六级标题

Setext-style 一级标题

二级标题


行内格式

后面俩字**加黑**

后面俩字*斜体*

后面俩字加黑

后面俩字斜体

对应 HTML:

后面俩字 加黑

后面俩字 斜体


引用块

Markdown:

> 引用块段落一。
>
> 引用块段落二。
>> 内嵌引用块段落一。
>
> ### 引用块内的标题

引用块段落一。

引用块段落二。

内嵌引用块段落一。

引用块内的标题


链接

Markdown 支持行内式链接和引用式链接。

Markdown:

行内式 [百度](https://www.baidu.com "我的搜索引擎") 链接,带 title。

行内式 [GitHub](https://github.com/) 链接。

引用式 [百度][1] 链接。

引用式 [GitHub][2] 链接,带 title。

[1]: https://www.baidu.com
[2]: https://github.com/ " GitHub 主页"

行内式 百度 链接,带 title。

行内式 GitHub 链接。

引用式 百度 链接。

引用式 GitHub 链接,带 title。


图片

![Alt text](图片路径 "title")

实例

头像

列表

分为有序列表和无序列表

无序列表
- a
- b
- c
  • a
  • b
  • c
有序列表
1. d
2. e 
3. f
  1. d
  2. e
  3. f

代码块

​```
    在其中写代码 
​```
可以指定语言 语法会高亮显示
​```php
    
    
    {
        "a":2
    }

分割线

使用一个单独行里的三个或以上 *- 来生产一条水平分割线,它们之间可以有空格。

---
***


扩展语法

比较常用的

表格

| 编号  | 姓名(左) | 年龄(右) | 性别(中) |
| ----- | :--------  | ---------: | :------:   |
| 0     | 张三       | 28         | 男         |
| 1     | 李四       | 29         | 男         |
编号 姓名(左) 年龄(右) 性别(中)
0 张三 28
1 李四 29

删除线

后面三个字打上~~删除线~~。

后面三个字打上删除线

左手右手一个慢动作

表情包

:camel: :blush: :smile:

:camel: :blush: :smile_cat: :arrow_down_small: :articulated_lorry: :cat2: :cat: :heart_eyes_cat: :dog: :dog2: :elephant: :monkey: :monkey_face:

真有趣


相关参考链接

  • 维基百科
  • 码志
  • GitHub Flavored Markdown Spec

你可能感兴趣的:(Markdown简单总结)