原创

轻量级标记语言Markdown

温馨提示:
本文最后更新于 2025年04月11日,已超过 24 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我

 

一.概念

1.1什么是 Markdown?

Markdown 是一种轻量级标记语言,旨在通过简单的语法为纯文本添加格式化元素。它由 John Gruber 与 Aaron Swartz 在2004年共同创建,迅速成为全球最受欢迎的标记语言之一,因其简洁性和易用性而广受青睐。

使用 Markdown 编写文档的方式不同于传统的所见即所得(WYSIWYG)编辑器,如 Microsoft Word。在 WYSIWYG 编辑器中,用户通过点击按钮来即时设置文本格式。而在 Markdown 中,则是通过在文本中嵌入特定的标记符号来指示格式。例如:

  • 标题: 在行首加上数字符号 # 表示标题级别,如 # Heading One
  • 加粗文字: 使用两个星号包围需要加粗的文字,如 **this text is bold**

尽管初次接触时可能需要一些时间适应这种编写方式,特别是对于习惯于所见即所得界面的用户来说,但随着实践的深入,你会发现这种方式既直观又高效。比如,在 Visual Studio Code 等文本编辑器中查看 Markdown 文件时,未渲染的文本同样清晰可读。

此外,Markdown 支持多种平台和操作系统,包括 macOS、Windows、Linux、iOS 和 Android,并且有许多专门设计的应用程序支持 Markdown 编写。不过需要注意的是,并非所有应用程序都提供实时预览功能,但这并不影响 Markdown 文档的基本可读性。

1.2为什么选择 Markdown?

人们倾向于选择 Markdown 而非传统的 WYSIWYG 编辑器有几个重要原因:

  • 多功能性:Markdown 可用于创建各种类型的文档,从网站内容到个人笔记,再到学术论文等。
  • 便携性:由于其基于纯文本的特性,Markdown 文件可以在几乎所有设备和平台上打开和编辑,无需担心文件格式不兼容的问题。
  • 跨平台支持:无论你使用哪种操作系统,都可以轻松地创建和编辑 Markdown 文件。
  • 面向未来:即使当前使用的软件停止维护或不再可用,Markdown 格式的文本仍能被任何文本编辑器读取,保证了长期保存的可能性。
  • 广泛的应用场景:Reddit、GitHub 等知名网站均支持 Markdown,许多桌面应用和网页工具也提供了对它的支持,使得 Markdown 成为了一个非常实用的选择。

二.语法

2.1.标题层级

使用 # 符号来表示不同级别的标题。数量越多,标题级别越低。

# H1 - 最高级别标题
## H2
### H3
#### H4
##### H5
###### H6 - 最低级别标题

2.2. 文本样式

通过简单的符号实现文本样式的更改:

  • 斜体_斜体_
  • 加粗__加粗__
  • 加粗斜体___加粗斜体___
  • 删除线
  • 行内代码(用于短代码片段)

2.3. 列表

  • 无序列表: 使用 -, +, 或 * 开始每一项;子项需缩进2或4个空格。
    • 子项示例
  • 有序列表: 使用数字后跟一个点开始每一项;子项至少需要缩进3个空格。
    1. 第二层子项示例

2.4. 链接与图片

  • 行内链接: [链接文字](https://example.com)
  • 行内图片: [图片描述](image.jpg)
  • 引用式链接:
[Google][1]
[GitHub][2]

[1]: https://google.com
[2]: https://github.com

2.5. 引用块

使用 > 创建引用块,可以跨多行,甚至嵌套引用。

> 单层引用
> 可跨多行

>> 嵌套引用

2.6. 代码块

  • 语法高亮: 在三重反引号 ``` 后指定语言类型。
public void hello() {
    System.out.println("Hello, Markdown!");
}
  • 普通代码块: 不指定语言。
纯代码块

2.7. 表格

创建表格时,使用管道符 | 分隔列,冒号 : 定义对齐方式。

| 左对齐 | 居中对齐 | 右对齐 |
|:--- |:---:| ---:|
| 内容 | 内容 | 100 |

2.8. 分隔线

使用三个或更多星号、破折号、下划线来创建分隔线。

---
***
___

2.9. 转义字符

使用反斜杠 \ 来转义特殊字符。

\* 显示星号而非斜体
\# 显示井号而非标题

2.10.扩展语法(平台依赖)

  • 任务列表
- [x] 已完成
- [ ] 待办
  • HTML内嵌
<span style="color:red;">红色文字</span>
<table>...</table>
正文到此结束