1.入门
在本文章中,将介绍如何使用 Markdown 书写文档。内容实为总结并非原创。
2. 简介
Markdown 是由 John Gruber 在 Aaron Swartz 的帮助下,于 2004年创造的标记语言。使人可以用易读易用的纯文本格式语言书写,并且可以转换为 XHTML 或者 HTML。Markdown 是一种可以使用普通文本编辑器编写的标记语言,通过简单的标记语法,它可以使普通文本内容具有一定的格式。Markdown的语法简洁明了、学习容易,而且功能比纯文本更强,因此有很多人用它写博客。
一份 Markdown 文档通常会使用. md 的扩展名,你可以使用文本编辑器来打开编辑。
Github,GitBook,Reddit,Diaspora,Stack Overflow, OpenStreetMap 等许多组织机构都使用了 Markdown。甚至这篇文章也在使用 Markdown。
3.Titles
当我们开始书写一份文档时,我们通常需要问文章添加标题和副标题。
Markdown 支持两种标题书写格式,Setext 和 Atx
Setext 模式书写标题是在书写一级标题时在下方使用等号,而在二级标题时使用破折号。
This is an H1
===============
This is an H2
---------------------
任意个数的等号和破折号都会起作用。
而 Atx 模式下,标题是使用1-6个 # 来对应1-6等级的标题
# This is an H1
## This is an H2
###### This is an H6
你也可以在标题末尾使用任意个数的 # 来使你的书写显得整齐优美,但是标题之前的符号个数决定了标题等级
# This is an H1#
## This is an H2##
### This is an H3######
Tips: '#' 与标题字符之间需要有空格
Tips: 只有'='和'-'才能在处于文字下方时起作用。
4.Links
Markdown 支持两种连接模式: 内联连接 和引用连接
在两种模式下,连接文本都是由[方括号]限定的。
在书写连接时,你需要在包含连接文本的方括号结束后使用普通括号,并把连接地址 URL 和一个可选的引号内的链接标题放入括号内。
[I'm an inline-style link](https://www.baidu.com)
[I'm an inline-style link with title](https://www.baidu.com "baidu")
[I'm a reference-style link][Arbitrary case-insensitive reference text]
[I'm a relative reference to a repository file](../blob/master/LICENSE)
引用模式连接使用另外一对方括号,并在括号中放置一个你选定的标签来标识该连接
This is [an example] [id] reference-style link.
你可以随意使用一个空格来分开这几个方括号
This is [an example] [id] reference-style link.
之后在文档的任意位置,你可以像这样定义你的连接标签
[id]: http://example.com/ ''Optional Title Here''
GitHub 和 GitBook 都支持 URL 自动识别,会自动连接到标准的 URL 地址。所以如果你在不设置连接文本的情况下连接到 URL,你可以简单地输入 URL, 该 URL 会自动转换为指向该 URL 的链接。
Tips: 连接文本是由方括号限定的
Tips: 连接有三个部分: 文本, URL 和一个标题
5.Images
#InLine
![](/path/to/img.jpg "Optional title")
#Reference
![Alternative text] [id]
[id]: url/to/image "Optional title"
也许你已经注意到,在 Markdown 中 图像和连接是非常相似的。不同之处在于:
- 方括号之前需要一个惊叹号
- 图像中需要一个替换文本,来描述将要加载的图像,在图像不能正常显示时加以显示。
Tips: 定义图像时需要在方括号之前书写惊叹号,替换文本是可选的
Tips: 和连接类似,图像也由三部分组成: 可选文本, URL, 和一个标题。而且惊叹号是必须的。
6.Code Blocks
预定义格式的代码块可以用来书写或者标记源代码,而不是用来规范普通段落文本,代码块中的文本是逐行逐字显示的。
This is a code block
在 markdown 中书写代码块非常简单,只需要把每一行缩进至少4个空格或者一个 Tab。
This is a normal paragraph:
This is a code block.
你也可以通过 ``` 来分隔,书写代码块
- 内联代码块
内联代码块书写可以使用: `
This is a `inline code block`
-
语法高亮
你可以定义需要高亮现实的语言,并将它的名字添加进入开放的标签中
7.Tables
表格并不是 core Markdown 特性,但是 GFM(GitHub Markdown)支持,现在 Markdown 支持了
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |
Tables | Are | Cool |
---|---|---|
col 3 is | right-aligned | $1600 |
col 2 is | centered | $12 |
zebra stripes | are neat | $1 |
冒号可以用来对齐
外面的(|)是可选的,你并不需要在 Markdown 中进行严格对齐
Markdown | Less | Pretty
--- | --- | ---
*Still* | `renders` | **nicely**
1 | 2 | 3
8.常用语法
|输出后的效果| Markdown| 快捷键|
| ------------- |:-------------:| -----:|
|Bold |**text** |Ctrl/⌘ + B
|Emphasize |*text* |Ctrl/⌘ + I
|Strike-through |~~text~~ |Ctrl + Alt + U
|Link |[title](http://) |Ctrl/⌘ + K
|Inline Code |`code` |Ctrl/⌘ + Shift + K
|Image |`[图片上传失败...(image-a496e7-1541132915096)]` |Ctrl/⌘ + Shift + I
|List |* item |Ctrl + L
|Blockquote |> quote |Ctrl + Q
|H1 |# Heading | |
|H2 |## Heading |Ctrl/⌘ + H
|H3 |### Heading |Ctrl/⌘ + H (x2)
输出后的效果 | Markdown | 快捷键 |
---|---|---|
Bold | text | Ctrl/⌘ + B |
Emphasize | text | Ctrl/⌘ + I |
Strike-through | Ctrl + Alt + U | |
Link | title | Ctrl/⌘ + K |
Inline Code | code |
Ctrl/⌘ + Shift + K |
Image | [图片上传失败...(image-a496e7-1541132915096)] |
Ctrl/⌘ + Shift + I |
List | * item | Ctrl + L |
Blockquote | > quote | Ctrl + Q |
H1 | # Heading | |
H2 | ## Heading | Ctrl/⌘ + H |
H3 | ### Heading | Ctrl/⌘ + H (x2) |