markdown学习
原文链接 http://reborncodinglife.com/2016/08/29/markdown-tips/
注:以下为加速网络访问所做的原文缓存,经过重新格式化,可能存在格式方面的问题,或偶有遗漏信息,请以原文为准。
最早接触markdown是在github参与翻译一本开源电子书,在查看别人翻译完的内容时,会发现一些奇怪的字符。比如:
## 第一章
- 第一节
`os.Open()`
当时很好奇,为什么会使用这些字符,最后在github上查看翻译好的章节时,才知道这是一种标记语言的语法,通过在文档中的某部分加入特殊的字符,用来修饰文档中的文本,这就是markdown,一种轻量级标记语言。
使用markdown一段时间以后,才发现markdown原来那么有用,比如:
- github
- stackoverflow
- 写博客
- 编辑微信公众号文章
- 技术论坛
- 编辑日常技术文章
其实markdown的语法并不复杂,常用语法花十几分钟即可掌握,于是总结了markdown的基本语法,分享给大家。
1 加粗
如果需要加粗显示某些内容,可以使用以下语法:
**这是粗体**
效果如下:
这是粗体
2 斜体
如果需要斜体显示某些内容,可以使用以下语法:
*这是协体*
效果如下:
这是斜体
3 删除
如果需要删除某些内容,可以使用以下语法:
~~这是删除~~
效果如下:
~~这是删除~~
4 下划线
如果需要添加下划线,可以使用以下语法:
++这是下划线++
效果如下:
++这是下划线++
5 标题
如果需要以标题形式显示某些内容,可以使用以下语法:
# 这是一级标题
## 这是二级标题
### 这是三级标题
#### 这是四级标题
效果如下:
这是一级标题
这是二级标题
这是三级标题
这是四级标题
6 水平线
如果需要分割线,可以使用以下语法:
---
效果如下:
或者使用三个星号***
也可以,效果如下:
7 引用
如果需要引用某些内容,可以使用以下语法:
> 这是引用
效果如下:
这是引用
8 列表
如果需要以列表形式显示某些内容,可以使用以下语法:
8.1 无序列表
- 这是无序列表1
- 这是无序列表2
- 这是无序列表3
8.2 有序列表
1. 这是有序列表1
2. 这是有序列表2
3. 这是有序列表3
效果分别如下:
- 这是无序列表1
- 这是无序列表2
- 这是无序列表3
- 这是有序列表1
- 这是有序列表2
- 这是有序列表3
9 待办事项
如果需要标记某些待办事项,可以使用以下语法:
- [ ] 未完成的事项1
- [ ] 未完成的事项2
- [x] 已完成事项1
- [x] 已完成事项2
效果如下:
- [ ] 未完成的事项1
- [ ] 未完成的事项2
- [x] 已完成事项1
- [x] 已完成事项2
10 插入链接
如果需要插入链接,可以使用以下语法:
[这是链接](http://note.youdao.com/)
效果如下:
11 插入图片
如果需要插入图片,需要给出图片的链接,然后可以使用以下语法:
![image](https://upload.wikimedia.org/wikipedia/commons/thumb/4/48/Markdown-mark.svg/208px-Markdown-mark.svg.png)
效果如下:
12 插入代码
如果需要插入代码,可以使用以下语法:
```
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
```
效果如下:
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
13 插入表格
如果需要插入表格,可以使用以下语法:
```
header 1 | header 2
---|---
row 1 col 1 | row 1 col 2
row 2 col 1 | row 2 col 2
```
效果如下:
header 1 | header 2 |
---|---|
row 1 col 1 | row 1 col 2 |
row 2 col 1 | row 2 col 2 |
14 插入数学公式
如果需要插入数学公式,可以使用以下语法:
```math
E = mc^2
```
15 插入流程图
如果需要插入流程图,可以使用以下语法:
```
graph LR
A-->B
B-->C
B-->D
```
16 插入序列图
如果需要插入序列图,可以使用以下语法:
```
sequenceDiagram
Client->>Server: How are you?
Server->>Client: Great!
```
效果如下:
17 插入甘特图
如果需要插入甘特图,可以使用以下语法:
```
gantt
dateFormat YYYY-MM-DD
section S1
T1: 2014-01-01, 9d
section S2
T2: 2014-01-11, 9d
section S3
T3: 2014-01-02, 9d
```
总结
其实在工作中使用markdown时,我很少使用它的画图功能,我还是习惯使用visio画图,由于图形显示需要特殊支持,所以上面有些图形显示的例子没有给出效果图,也许是微信公众号后台不支持markdown图形预览(或者是我不会orz),我更多的是使用一些修饰标记符号,如标题、加粗、引用、插入代码等功能,对于markdown的编辑工具选择,我一般是使用sublime+有道云笔记,推荐在sublime编辑好文本后,复制到有道云笔记看效果,虽然sublime借助插件也可以预览markdown文本,但效果不是很佳,使用sublime是因为写代码就使用它,已经习惯它的各种快捷键和编辑方式。尤其多行编辑,实在太方便了。有时间给大家分享sublime的一些使用心得和插件,本次分享就到这了。