20分钟Markdown入门教程
20分钟Markdown入门教程
Markdown是一种轻量级标记语言,允许人们使用易读易写的纯文本格式编写文档,现在很多Markdown编辑软件还支持各种css(Cascading Style Sheets,层叠样式表)导出成HTML网页或者pdf文件等。
Markdown原生语法支持富文本的各种基本格式:加粗、斜体、插入图片、表格、超链接、列表等等,还可以通过扩展语法支持删除线、上^标^、下标 、LaTeX公式、流程图等等。
另外,Markdown天生支持HTML语法,比如我常用的一段转pdf文件时用的分页代码如下。
1 |
|
和类似于Microsoft Word这种文本编辑软件相比,Markdown要轻量的太多了,它不需要特别的软件,使用普通记事本就可以编写,只不过最终渲染后文档效果,依赖于具体软件css样式表呈现。
编辑软件
我们常在各类软件的安装目录或者源代码目录看到*.md
,就是Markdown文档格式。
你用文本编辑器打开时这就是个普通的文本文件,有些特殊的符号标记,而换成Markdown编辑器打开时就可以看到最终效果了。
电脑端软件,这里推荐跨平台的免费软件
Typora
,所见即所得,反应迅速,特别棒。如果简单点,使用印象笔记电脑端也可以新建Markdown,只是时间长了,使用过程中会出现卡顿,好处是各个平台移动端随时查看(无法编辑)比较方便。Android端,推荐
坚果云Markdown
、纯纯写作
、Memorize
,其中只有坚果云Markdown是个单纯的文档编辑软件,后两者一个是写作一个是日记,但对Markdown支持都比较好。之前纯纯写作特价买的,现在比较贵了。iOS端,推荐
坚果云Markdown
、小章鱼
、MWeb
,坚果云的理由还是跨平台同步,MWeb和小章鱼都有自己文档库管理,支持iCloud,MWeb免费版有所限制,没法在网盘创建新文档,但是优势是macOS端软件功能强大。小章鱼真的是让我惊艳,免费软件,界面做的清新优美,和android端的纯纯写作不相伯仲,记得在一开始安装时允许通过邮箱找到,不然会影响iCloud同步,而且似乎找不到重新触发的方式😂。
总的来说,多个平台间同步文档可以用网盘同步文件夹来解决,这时坚果云的优势就出来了,可以把坚果云理解成国内版的dropbox,很强大。
Markdown基本语法
标题与正文
Markdown通过#
作为前缀表示标题级别,不带修饰的就是正文格式,通常两个回车换行表示新段落,或者说叫一个block块,(也就是段落间有一个空白行)。
一级标题h1 # 一级标题
二级标题h2 ## 二级标题
三级标题h3 ### 三级标题
四级标题h4 #### 四级标题
五级标题h5 ##### 五级标题
这是正常的普通正文格式,需要一个空白行表示分段。
这是第二段文字。
另外,markdown并不支持首行缩进,一般这是由渲染预览样式的css实现。如果十分迫切的想要加上首行缩进,可以使用html中的
来实现,一个
代表一个空格。
分割线(---
)通常一个空行加上用连续的三个以上短横线或者星号表示分割线。注意短横线前面不应有任何字符,包括空格。
效果如下:
基本格式与扩展
类似html语法,markdown也使用前后标记包裹的方式定义文字格式。
加粗(**加粗**
)、斜体(*斜体*
)是markdown文档里最常用的强调格式了。
还有通用扩展语法支持的删除线(删除线)和==高亮==(==高亮==
)。
而上^角标^(上^角标^
)和下角标(下~角标~
)这些扩展语法和编辑软件支持有关系,并不是很通用,不同编辑器实现并不相同。
行内代码与代码块
语法如下:
1 |
|
1 |
|
效果如下:
这是一个引用段落。
如果引用一个多段文字,建议多段文字以空行间隔,防止不同软件渲染时认为是一段文字。
同时,空行也需要加上
>
,防止不同软件渲染时当作两个段落引用。
列表与待办
列表包括有序列表和无序列表,待办是无序列表的一种。
有序列表
1 |
|
效果如下:
- 数字+英文句号+空格,就组成了有序列表项的基本元素
- 这就是有序列表的示例
- 有些软件需要额外空行表示一个列表项结束
- 可以用
TAB
键缩进,来表示次级列表 - 这是一个次级列表项
- 可以用
无序列表
1 |
|
效果如下:
- 无序列表项通常以
-
、+
、*
开头,加上空格为起始- 缩进表示次级列表项
- 我通常习惯一个级别的无序列表统一一种符号起始,但混用也没关系
- 待办列表通常以
- [ ]
加空格为起始,最前面的-
便是无序列表的起始,也可以改成+
或者*
- 中括号中包含空格,表示未完成
- 中括号中包含x,则表示已完成
链接与图片
链接
基本的网址超链接,语法如下:
1 |
|
效果如示:必应
图片
图片的本质也是链接,用图片的语法告诉编辑器图片文件的地址,编辑器自己就会处理图片的显示问题。
语法类似超链接,在之前多一个感叹号:
1 |
|
图片路径可以是本地文件路径,也可以是图片的网址。效果如下:
目录与脚注
目录和脚注也可以看成是特殊的链接,只不过由编辑器替你实现。
目录
目录语法超级简单,会按照标题h1、h2等级别自动生成。但是也得看编辑器支持与否。
1 |
|
效果如下:
[TOC]
脚注
脚注的语法特殊一些,包含两个部分:
- 脚注标号,通常在行末加上
[^脚注名称]
。 - 单独写脚注信息,如
[^脚注名称]: 这是一条脚注信息
,注意是英文冒号且后面有一个空格。
效果如示:这是一个的脚注示例。[^脚注名称]
[^脚注名称]: 这是一行脚注信息。
表格
表格的语法用一堆-
和|
表示横线和竖线。
1 |
|
效果如下:
表头1 | 表头2 |
---|---|
这是表格内容 | 上面短横线表示表头的分隔 |
blablabla | 想要更多列就在右侧每行多一个英文竖线 |
流程图
这里画流程图使用的是mermaid
(🧜♀️)库,其实markdown还支持时序图、甘特图等更复杂的图。
mermaid语法可以看作代码块的扩展,但是mermaid库的支持和编辑器的关系很大,有些不支持有些支持不全,下面示例代码里的语法算是比较通用。
1 |
|
效果如下:
结束
以上,大概就可以覆盖markdown日常使用99%的场景了,熟练使用之后,你就会发现写文档不用操心格式是多么美妙的一件事情。
等到使用熟练之后,任何文本编辑器都会是markdown发光发热的地方,你也就可以成为人肉markdown文档渲染器了。