Markdown 是一种轻量级的标记语言,它允许人们使用易读易写的纯文本格式编写文档,借助可实现快速排版且转换成格式丰富的 HTML 页面。目前被越来越多的写作爱好者及工作者使用。它在写作、博客、文档等领域得到了广泛应用,因其简洁、易读、易写的特点而备受欢迎,一旦掌握这种标记语言,将极大提高效率。但是若需要复杂排版如左右对齐缩进等,还是选择 word 等专业软件。
Markdown 用简洁的语法代替排版,而不像常用文字处理软件 Word 或 Pages 等进行排版、字体、插入等设置。标记语言可以通过键盘即实现字体大小、插入表格,图片,超链接,脚注等。
在本文中,我们将深入介绍 Markdown 语法的各个方面,帮助你更好地理解和运用这一强大的文本标记工具。
是的,这篇教程就是采用的 markdown 语法写的。
为什么选择 Markdown
- 最大好处是:快速掌握(通常而言,你看完这篇文章,你就完全掌握了);
- 简单,适合所有人群,方便打开,不至于出现低版本 word 打不开高版本 word 的文档;
- 避免软件不同,如对方是 wps,看到的 word 文档效果和你不一样;
- 方便快速排版,节省时间;
- 轻松的导出为 HTML、PDF 格式或其他格式;
- 纯文本内容,兼容所有的文本编辑器与文字处理软件,几乎可以在所有的文本编辑器中编写;
- 支持 Markdown 语法的编辑器有很多,部分网站也支持;
- 它基于纯文本,方便修改和共享;
- 有众多编程语言的实现,以及应用的相关扩展;
- 在 GitHub 等网站中有很好的应用;
- 适合用来编写文档、记录笔记、撰写文章。
Markdown的基础语法
标题
Markdown 提供了六级标题,通过在文本前面添加相应数量的井号#
来表示不同级别的标题。例如:
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题
段落
段落之间使用空行进行分隔。Markdown 会自动识别换行,但如果需要强制换行,可以在行末添加两个空格。
列表
Markdown 支持有序列表和无序列表。 有序列表使用数字加英文句点,无序列表使用星号、加号或减号。例如:
1. 有序列表项1
2. 有序列表项2
* 无序列表项A
+ 无序列表项B
- 无序列表项C
链接
插入超链接的语法如下:
[链接文本](链接地址)
例如:
[点我直接访问百度](https://www.baidu.com)
图片
插入图片的语法与链接类似,只需在链接语法前加一个感叹号:
![图片描述](图片地址)
例如:
![我的博客图标](https://pudongping.github.io/medias/favicon.png)
引用
引用他人的文字可以使用大于号 >
,例如:
> 这是引用的文字。
文本格式化
粗体和斜体
要使文字显示为粗体,可以使用两个星号:
**这是粗体文字**
要使文字显示为斜体,可以使用一个星号:
*这是斜体文字*
你还可以组合使用粗体和斜体,可以使用三个星号:
***这是粗体加斜体文字***
删除线
要在文字上添加删除线效果,可以使用两个波浪线:
~~这是带删除线的文字~~
以上是 Markdown 中常用的文本格式化方法,它们使文本更具表现力和可读性。
代码块和行内代码
代码块
要插入代码块,可以使用三个反引号,后面跟上编程语言(可选),然后是代码内容。例如:
```go
package main
import (
"fmt"
)
func SayHi() {
fmt.Println("Hello Alex!")
}
```
显示效果:
package main
import (
"fmt"
)
func SayHi() {
fmt.Println("Hello Alex!")
}
如果不指定编程语言,可以直接使用三个反引号:
```
这是普通的代码块
可以包含多行代码
```
行内代码
要在文本中插入行内代码,可以使用单个反引号将代码包裹起来:
`这是行内代码`
Markdown 的代码块和行内代码功能使得展示和分享代码变得非常方便。
表格
创建表格的语法和基本结构
Markdown 支持创建简单的表格,语法如下:
| 表头1 | 表头2 | 表头3 |
|---|---|---|
| 单元格1 | 单元格2 | 单元格3 |
| 单元格4 | 单元格5 | 单元格6 |
其中,|
用于分隔不同的列,表头下的分隔线 ---
用于区分表头和表格内容。
表格的对齐和格式设置
可以通过在表头下方的冒号位置来设置表格中文本的对齐方式:
- 冒号在左侧:左对齐
- 冒号在右侧:右对齐
- 冒号在两侧:居中对齐
例如:
| 左对齐 | 居中对齐 | 右对齐 |
|:------|:-------:|-------:|
| 文本1 | 文本2 | 文本3 |
| 文本4 | 文本5 | 文本6 |
效果:
左对齐 | 居中对齐 | 右对齐 |
---|---|---|
文本1 | 文本2 | 文本3 |
文本4 | 文本5 | 文本6 |
这是 Markdown 中简单但实用的表格语法,能够满足日常文档和博客的排版需求。
扩展功能
分隔线
要插入水平分隔线,可以在一行中使用三个以上的星号、减号或下划线,例如:
***
---
___
效果:
这将在文档中创建一条水平线,用于分隔不同部分的内容。
转义字符
Markdown 使用反斜杠 \
作为转义字符,可以用来处理一些特殊字符,使其显示原本的意义。例如:
\*这是普通的星号\*
上述语法将显示为:*这是普通的星号*
注释
Markdown 没有原生支持注释的语法,但可以使用 HTML 的注释标签,如:
<!-- 这是一个注释 -->
这些扩展功能能够进一步提升 Markdown 的灵活性和适用性。
实际应用与示例
Markdown 的简洁和易读性使其在各种场景下都得到了广泛应用。
写作
Markdown 非常适合撰写文章、博客和笔记。通过使用标题、列表和代码块,可以轻松地组织和展示内容。
博客
许多博客平台支持 Markdown,比如:简书、博客园、思否 ……因为它简化了博客文章的编辑过程。创作者可以专注于内容创作,而无需过多关注排版。
文档
许多开发者使用 Markdown 来编写技术文档。表格、代码块和行内代码等功能使得编写和分享文档变得更加便捷。
示例
以下是一个简单的 Markdown 示例,展示了如何组合使用各种元素:
你完全可以将以下内容,复制,然后直接粘贴到任何一个支持 markdown 语法的编辑平台上,即可看到和我一模一样的排版内容。再也不用担心,共同协作时,文本排版错位的尴尬啦!
# Markdown示例
> 这里仅仅提供一个简单的示例内容,以供体验。
## 列表
- 项目1
- 项目2
- 子项目A
- 子项目B
## 代码块
\```python
def hello_world():
print("Hello, World!")
\
链接
图片
```
编辑器和工具
Markdown 编辑器
有许多编辑器专门支持 Markdown 语法,提供更好的编辑体验和预览效果。以下是一些常用的 Markdown 编辑器:
- 有道云笔记:这个也是我用了好几年的云笔记软件,有大厂背书,可靠稳定。
- 语雀:阿里推出的一款云笔记软件,属于后起之秀,markdown 所见所得都支持的很好。
- Visual Studio Code: 强大的代码编辑器,内置 Markdown 支持,并有丰富的扩展插件。
- Typora: 专注于 Markdown 编辑的所见即所得编辑器,界面简洁易用。
- Atom: 开源的文本编辑器,具有丰富的社区插件,支持 Markdown 编辑。
在线工具
如果你不想下载安装编辑器,也可以使用在线的 Markdown 编辑工具,例如:
- Dillinger: 在线 Markdown 编辑器,支持实时预览,无需注册。 体验地址:
https://dillinger.io/
- StackEdit: 提供离线编辑和云同步功能,可在浏览器中使用。体验地址:
https://stackedit.io/
- 简书:算是我比较喜欢的在线写作平台了,网站排版简洁大气,专注内容输出。体验地址:
https://jianshu.com/
注意事项和常见问题
在使用 Markdown 时,有一些注意事项和常见问题需要注意:
文本编辑器的差异
不同的文本编辑器可能对 Markdown 的渲染结果有轻微的差异。在发布前,建议在不同的编辑器中预览,确保最终效果符合预期。但是一般而言,差异不会很大。
图片路径问题
当插入图片时,确保图片路径是正确的。相对路径和绝对路径都是可行的,但需要注意文件结构和位置。
排版的一致性
为了保持文档的一致性,建议在排版时使用相同的标准。例如,统一使用相同数量的空格缩进代码块,避免出现排版混乱的情况。
特殊字符的处理
有些特殊字符可能在 Markdown 中具有特殊的意义,如果需要显示原本的字符,请使用转义字符(反斜杠)进行处理。
通过本文的介绍,我们了解了 Markdown 的基础语法和一些高级功能,包括标题、列表、链接、图片、代码块、表格等。Markdown以其简洁、直观的语法,广泛应用于写作、博客、文档等领域。
总体而言,Markdown 是一种强大而灵活的文本标记语言,使得文本编辑变得更加轻松和愉快。它不仅适用于个人写作,也是团队协作和技术文档编写的理想选择。
在选择编辑器时,可以根据个人的喜好和需求选择合适的工具,同时注意在不同编辑器之间的渲染差异。使用 Markdown 时,还要留意一些常见问题,如排版一致性、图片路径和特殊字符的处理。
Markdown 的学习和应用可以提高文本编辑的效率,同时为用户提供了更好的写作和展示体验。至少,当我使用了 markdown 之后,我做笔记、写博客、写文章都没能离开它。
希望本文能够帮助你更好地掌握 Markdown,让你在文本编辑的道路上越走越远。