玩转Markdown

Markdown 作为当前最流行的写作工具之一,无处不在使用,如 GitHub、CSDN、简书、Hexo 静态博客等,故细心整理一番,一起玩转 Markdown。

Markdown Syntax

Markdown 是一种轻量级标记语言。

官方语法主要有:

  • Headers - 标题
1
2
3
4
# 一级标题
## 二级标题
###### 六级标题
注:至多六级标题
  • Emphasis - 强调
1
2
3
4
5
*斜体*
_斜体_

**粗体**
__粗体__
  • Blockquotes - 引用
1
> 细节决定成败,态度决定一切。
  • Lists - 列表
1
2
3
4
5
6
7
8
9
* 无序列表1
* 无序列表2
+ 无序列表1
+ 无序列表2
- 无序列表1
- 无序列表2

1. 有序列表1
2. 有序列表2
  • Images - 图片
1
![图片名](图片地址)
  • Links - 链接
1
[链接名](链接地址)
  • Backslash Escapes - 反斜杠转义
1
2
3
支持反斜杠(\)转义的字符:
\ ' * _ {} []
() # + - . !
  • 其他整理
1
2
3
4
5
(1) 换行:行尾至少2个空格
(2) 分隔线:单独一行输入至少3个短横线(-)、星号(*)或者下划线(_)
(3) 块代码:缩进4个空格或者1个制表符号
(4) 行内代码:反引号(`)前后包起来
(5) 自动链接:支持网址和邮箱,如<http://example.com/>、<address@example.com>

GitHub Flavored Markdown

GitHub 使用的是它自己的一个 Markdown 语法版本,GFM。

GitHub 风格相关语法主要有:

  • Username @Mentions - 通知用户
1
@mention 可以通知到个人或者组织来查看评论
  • Issue references - 问题参考
1
#number 可以自动链接到一个Issue或者Pull Request
  • Emoji - 表情
1
2
www.emoji-cheat-sheet.com
这个网站列出了所有支持的表情,一般用法如::smile:
  • Fenced Code Blocks - 代码块
1
2
3
4
5
6
三个反引号(`)java
int x = 1;
int y = 2;
int z = x + y;
System.out.println(z);
​三个反引号(`)
  • Task Lists - 任务列表
1
2
- [X] 已完成任务
- [ ] 待完成任务
  • Tables - 表格
1
2
3
4
5
6
7
8
| First Header  | Second Header |
| ------------- | ------------- |
| Content Cell | Content Cell |
| Content Cell | Content Cell |
注:
(1) 用连字符(-)来划分表示标题行,用竖线(|)来划分列与列
(2) 每行的前后竖线(|)可选,列的竖线(|)也不需要对齐,都只是为了方便阅读
(3) :--- 左对齐、:---: 中间对齐、---:右对齐
  • 其他整理
1
2
(1) ~~删除线~~
(2) Commit SHAs自动变成链接:如 a5c3785

个人经验

  • Typora - 极致简洁的 Markdown 编辑器
1
2
3
4
5
一些小技巧:
(1) [toc] 即Table of Contents,生成目录
(2) 支持 <u>下划线</u>
(3) 支持 ==高亮==
(4) 使用 iPic - http://toolinbox.net/iPic/,支持拖拽上传图片至自定义图床,当前仅支持Mac版本
  • 兼容HTML
1
2
3
4
5
不要忘记Markdown是兼容HTML的,强大的HTML,可以完成很多事情。
举个例子,
(1) 解决图片居中问题
(2) 解决自定义目录问题
(3) 添加音乐播放器外链

添加网易云音乐效果(注:Hexo、CSDN可以支持,简书、GitHub均不支持):

参考

Dribbble
图片来自于Dribbble