+++ title = "乱七八糟:Markdown使用快速教程" date = 2025-04-08 [taxonomies] tags = ["乱七八糟"] +++ 前言 本文为 Markdown 教程,内容涵盖 Markdown 的历史、作用、基本语法和显示效果,可以在github将本文的源码拷贝供大家参考和学习。 # Markdown 教程 ## 零.常用的markdown编辑器 - VSCode的``Markdown Preview Enhanced``插件; - 跨平台的[obsdian](https://obsidian.md/download)或者[inkdown](https://github.com/1943time/inkdown),[joplin](https://github.com/laurent22/joplin)或[zettlr](https://github.com/Zettlr/Zettlr) ## 一、Markdown 简介 ### 1.1 什么是 Markdown? Markdown 是一种轻量级标记语言,最初由约翰·格鲁伯(John Gruber)在 2004 年创建,其设计目标在于简洁易读,同时能够快速转换为 HTML。Markdown 被广泛用于撰写文档、博客、论坛帖子以及 README 文档,其直观的语法和高度可读性受到开发者和写作者的一致好评。 ### 1.2 Markdown 的历史和作用 - **历史沿革:** 2004 年左右,随着互联网内容量的增加以及对纯文本格式的需求不断上升,人们开始寻找一种既能保留纯文本的可读性,又能方便地生成格式化内容(如 HTML)的解决方案。Markdown 应运而生。经过十多年的发展,Markdown 已衍生出多个方言(例如 GitHub Flavored Markdown、CommonMark 等),并被各种编辑器、静态博客生成器(如 Zola、Jekyll、Hugo 等)以及内容管理系统所支持。 - **主要作用:** - **快速排版:** Markdown 语法简单,使用自然语言符号来表示标题、列表、链接、图片等格式。 - **跨平台兼容:** 由于基于纯文本格式,Markdown 文件可以在任何文本编辑器中打开和编辑,而且可以很容易地转换成 HTML、PDF 等格式。 - **降低学习成本:** 与复杂的 HTML 标记相比,Markdown 的语法简单易懂,非常适合非程序员使用。 - **促进内容创作:** 许多博客平台和文档系统都采用 Markdown 作为主要写作格式,降低了内容创作和协作的门槛。 --- ## 二、Markdown 基本语法 下面详细介绍 Markdown 常用的语法,并演示其在渲染后显示的效果。 ### 2.1 标题 使用井号 `#` 来表示标题,井号的数量表示标题级别(1~6级)。 ```markdown # 这是一级标题 ## 这是二级标题 ### 这是三级标题 #### 这是四级标题 ##### 这是五级标题 ###### 这是六级标题 ``` **渲染效果:** # 这是一级标题 ## 这是二级标题 ### 这是三级标题 #### 这是四级标题 ##### 这是五级标题 ###### 这是六级标题 --- ### 2.2 强调文本 - *斜体*:在文字两侧加上一个星号 `*` 或下划线 `_`。 - **加粗**:在文字两侧加上两个星号 `**` 或下划线 `__`。 - ***斜体加粗***:在文字两侧加上三个星号 `***`。 ```markdown *这是斜体* _这也是斜体_ **这是加粗** __这也是加粗__ ***这是斜体加粗*** ``` **渲染效果:** *这是斜体* _这也是斜体_ **这是加粗** __这也是加粗__ ***这是斜体加粗*** --- ### 2.3 列表 #### 无序列表 使用 `-`、`*` 或 `+` 表示无序列表项。 ```markdown - 项目 1 - 项目 2 - 子项目 2.1 - 子项目 2.2 - 项目 3 ``` **渲染效果:** - 项目 1 - 项目 2 - 子项目 2.1 - 子项目 2.2 - 项目 3 #### 有序列表 使用数字后面跟点号来表示有序列表: ```markdown 1. 第一项 2. 第二项 3. 第三项 ``` **渲染效果:** 1. 第一项 2. 第二项 3. 第三项 --- ### 2.4 链接与图片 #### 链接 格式:[链接文字](URL "可选标题")。 ```markdown [GitHub](https://github.com "GitHub 官网") ``` **渲染效果:** [GitHub](https://github.com "GitHub 官网") #### 图片 格式:`![图片替代文本](图片 URL "可选标题")`。 ```markdown ![Markdown Logo](https://upload.wikimedia.org/wikipedia/commons/4/48/Markdown-mark.svg "Markdown") ``` **渲染效果:** ![Markdown Logo](https://upload.wikimedia.org/wikipedia/commons/4/48/Markdown-mark.svg) --- ### 2.5 代码 #### 行内代码 使用反引号 `` ` `` 来表示行内代码。 ```markdown 使用 `printf()` 函数输出内容。 ``` **渲染效果:** 使用 `printf()` 函数输出内容。 #### 代码块 代码块使用三个反引号(```)包裹,也可以指定语言以便进行语法高亮。 ````markdown ```python def hello(): print("Hello, World!") ``` ```` > 注意:上述代码块中第一行的三个反引号后面紧跟着语言名称(如 `python`),结束时用相同的三个反引号结束。 **渲染效果(依赖编辑器或平台的语法高亮支持):** ```python def hello(): print("Hello, World!") ``` --- ### 2.6 引用块 使用 `>` 来表示引用(Blockquote)。 ```markdown > 这是引用的内容,可以用于引用名言或文章片段。 > > 多行引用时,每行前面都加上 `>`。 ``` **渲染效果:** > 这是引用的内容,可以用于引用名言或文章片段。 > > 多行引用时,每行前面都加上 `>`。 --- ### 2.7 分割线 使用三个或更多的横线 `---`、星号 `***` 或下划线 `___` 来产生水平分割线。 ```markdown --- 或者 *** 或者 ___ ``` **渲染效果:** --- 或者 *** 或者 ___ --- ### 2.8 表格 Markdown 表格可以使用管道符 `|` 和短横线 `-` 来创建。 ```markdown | 表头1 | 表头2 | 表头3 | | :--- | :---: | ---: | | 左对齐 | 居中对齐 | 右对齐 | | 单元格内容 | 更多内容 | 数据 | ``` **渲染效果:** | 表头1 | 表头2 | 表头3 | | :------ | :-----: | -------:| | 左对齐 | 居中对齐 | 右对齐 | | 单元格内容 | 更多内容 | 数据 | > **注:** > “:---” 表示左对齐; > “:---:” 表示居中对齐; > “---:” 表示右对齐。 --- ## 三、Markdown 高级语法与扩展 不同平台可能支持额外的 Markdown 扩展语法,下面列举一些常见的扩展功能: ### 3.1 脚注 某些 Markdown 方言支持脚注。脚注格式如下: ```markdown 这是一个带脚注的句子.[^1] [^1]: 这是脚注的内容。 ``` **渲染效果:** 这是一个带脚注的句子.[^1] [^1]: 这是脚注的内容。 ### 3.2 任务列表 GitHub Flavored Markdown(GFM)支持任务列表,可以用于表示待办事项。 ```markdown - [x] 完成 Markdown 教程 - [ ] 阅读更多文章 - [ ] 分享教程 ``` **渲染效果:** - [x] 完成 Markdown 教程 - [ ] 阅读更多文章 - [ ] 分享教程 --- ## 四、Markdown 使用注意事项 1. **空行与段落:** Markdown 使用一个或多个空行来分隔不同的段落。如果要换行但不创建新段落,在行尾添加两个或更多空格后回车即可。 2. **转义字符:** 如果想要显示 Markdown 特殊符号而不被解析,比如 `*`、`#`、`\` 等,可以在前面加上反斜杠 `\`。 ```markdown \*这不是斜体,而是普通的星号\* ``` **渲染效果:** \*这不是斜体,而是普通的星号\* 3. **原始文本展示:** 为了展示 Markdown 源码而不被渲染,请使用代码块(反引号包围)或适用平台支持的原始文本标签(例如 `{% raw %}` 与 `{% endraw %}`)。 --- **Done.**