快速入门-Markdown

138 阅读5分钟

Markdown 是一种轻量级标记语言,使用简单的语法来格式化文本。它的设计初衷是让文本既可以用作文档的源代码,又能够轻松地转换为 HTML 或其他格式。Markdown 语法简单易学,非常适合编写博客、文档、技术笔记、README 文件等。

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

由于Markdown的轻量化、易读易写特性,并且对于图片,图表、数学式都有支持,目前许多网站都广泛使用Markdown来撰写帮助文档或是用于论坛上发表消息。如GitHub、Reddit、Discord、Diaspora、Stack Exchange、OpenStreetMap 、SourceForge、简书等,甚至还能被用来撰写电子书。

Markdown 背景

Markdown 于 2004 年由 John Gruber 和 Aaron Swartz 设计,其初衷是为了解决 HTML 这种复杂标记语言编写困难的问题。传统的 HTML 标记代码虽然功能强大,但学习成本高,编写起来冗长、不直观,不便于阅读和书写。Markdown 的出现为解决这一痛点提供了简化方案,开发者可以使用一种轻量级的标记语言快速生成格式化文本。

随着时间的推移,出现了许多 Markdown 实现。人们开发这些主要是由于在基本语法之上需要额外的功能 - 例如表格,脚注,定义列表(技术上的HTML描述列表)和 HTML块内的 Markdown。其中一些行为偏离了最开始的参考实现。与此同时,非正式规范中的一些含糊不清引起了人们的注意。这些问题促使 Markdown 解析器的一些开发人员努力实现标准化。2016年3月发布了 RFC 776 3和 RFC 7764 。RFC 7763 从原始变体引入了MIME类型 text/markdown。RFC 7764讨论并注册了MultiMarkdown、GitHub Flavored Markdown (GFM)、Pandoc、CommonMark及Markdown等变体。

Markdown 实践

以下是一个简单的 Markdown 示例,包含常见的标题、列表、链接、图片和代码块:

# 一级标题

## 二级标题

### 三级标题

这是一个 **加粗** 的文字示例,这是 *斜体* 的文字示例。

#### 列表:
- 项目1
- 项目2
  - 子项目1
  - 子项目2

#### 有序列表:
1. 第一项
2. 第二项
3. 第三项

#### 链接:
[点击这里访问 Google](https://www.google.com)

#### 图片:
![Markdown Logo](https://markdown-here.com/img/icon256.png)

#### 代码块:

```python
def hello_world():
    print("Hello, World!")

Markdown 基础常用标签说明

扩展和为说明的标记,可以自行查询官方文档:markdown.com.cn/basic-synta…

# markdown 标题

 使用 # 号标记, 使用 # 号可表示 1-6 级标题,一级标题对应一个 # 号,二级标题对应两个 # 号,以此类推。
 # 一级标题
 ## 二级标题
 ### 三级标题
 #### 四级标题
 ##### 五级标题
 ###### 六级标题

# markdown 段落

 markdown 段落没有特殊的格式,直接编写文字就好,段落的换行是使用两个以上空格加上回车。当然也可以在段落后面使用一个空行来表示重新开始一个段落。
 ---

# markdown 可以使用以下几种字体:

 *斜体文本*
 _斜体文本_
 **粗体文本**
 __粗体文本__
 ***粗斜体文本***
 ___粗斜体文本___


# 分隔线

 你可以在一行中用三个以上的星号、减号、底线来建立一个分隔线,行内不能有其他东西。你也可以在星号或是减号中间插入空格。下面每种写法都可以建立分隔线:
 ***
 * * *
 *****
 - - -
 ----------


# 删除线

 如果段落上的文字要添加删除线,只需要在文字的两端加上两个波浪线 ~~ 即可,实例如下:
 ~~TEST.COM~~


# 下划线

 下划线可以通过 HTML 的 <u></u> 标签来实现:
 <u>带下划线文本</u>

# 脚注

 脚注是对文本的补充说明。Markdown 脚注的格式如下:
 [^要注明的文本]

 创建脚注格式类似这样 [^TEST]。
 [^TEST]: 123

# markdown 列表

 Markdown 支持有序列表和无序列表。
 无序列表使用星号(*)、加号(+)或是减号(-)作为列表标记,这些标记后面要添加一个空格,然后再填写内容:
 
 * 第一项
 * 第二项
 * 第三项
 
 + 第一项
 + 第二项
 + 第三项
 
 - 第一项
 - 第二项
 - 第三项

 有序列表使用数字并加上 . 号来表示,如:
 1. 第一项
 2. 第二项
 3. 第三项


# markdown 区块

 markdown 区块引用是在段落开头使用 > 符号 ,然后后面紧跟一个空格符号:
 > TEST1
 > TEST2
 > TEST3

 另外区块是可以嵌套的,一个 > 符号是最外层,两个 > 符号是第一层嵌套,以此类推:
 > 最外层
 > > 第一层嵌套
 > > > 第二层嵌套


# markdown 代码

 如果是段落上的一个函数或片段的代码可以用反引号把它包起来(`),例如:
 `printf()` 函数
 

Markdown 总结

Markdown有着很高的使用率,因为他简单易学,支持基本文本格式化和代码展示。可以轻松转换为 HTML 和 PDF。易于与版本控制系统(如 Git)集成。Markdown 作为一种轻量级标记语言,凭借其简洁的语法、广泛的支持和易于集成的特性,成为技术文档和笔记撰写的首选。随着使用需求的增加,Markdown 的变体和扩展也在不断发展,以应对不同场景的使用。

同类作品优缺点对比、应用场景对比

致谢

更多内容欢迎关注 [ 小巫编程室 ] 公众号,喜欢文章的话,也希望能给小编点个赞或者转发,你们的喜欢与支持是小编最大的鼓励,小巫编程室感谢您的关注与支持。好好学习,天天向上(good good study day day up)。

参考资料

[1]官网: markdown.com.cn/

[2]语法表: markdown.com.cn/basic-synta…