目录

Markdown 语法与工具

一、前言

Markdown 是一种轻量级标记语言,创始人为约翰·格鲁伯(John Gruber)。它允许人们使用易读易写的纯文本格式编写文档,然后转换成有效的 HTML 文档。这种语言吸收了很多在电子邮件中已有的纯文本标记的特性。由于 Markdown 的轻量化、易读易写特性,并且对于图片、图表、数学式都有支持,所以许多网站都广泛使用 Markdown 来撰写帮助文档或是用于论坛上发表消息。 如 GitHub、Reddit、Diaspora、Stack Exchange、OpenStreetMap、SourceForge、简书等,甚至还能被使用来撰写电子书。本人所有博文都是使用 Markdown 语法编写,通过对应工具制作或转换后发表到各类平台上。

二、语法

1、Markdwon 基本语法:

写一篇文章,主要包括:目录、标题、文本、表格、图片 这几项内容,通过 Markdwon 语法以统一版式为我们格式化文章,让我们专注写作上,而不是排版上。下表已列出 Markdwon 基本语法及作用说明,直接打开一个排版器(如:aclickall)复制下面 Markdwon 语法把效果展示出来(备注:如果本文使用详细文字说明 Markdwon 语法反而把它说的复杂化)。

语法
功能
说明
\ 转义符 用来可显示语法特殊符号。
***  
---  
___  
分割线 前行空行+单独一行及至少三个其符号+空格,特别是 --- 前面必须要加一行空行。三种语句一样的
# text1  
### text3  
###### text6  
标题 1…6 行首加其符号及空格,下行加 === 或 --- 也可表示标题 1 和 2,其中 ### 常用作分类标题。
> text  
> text  
区块 行首加其符号及空格,后面加多一行空行表示结束,>> text 可嵌套 1 层、…。
```
text
```  
代码区 前个 ``` 不要带空格,后个 ``` 要带有空格。第一个可指出代码语言 (如: ```c)。
每行行首加4个空格或1个Tab符 代码区 全部字符默认颜色显示,关健字不会上色。
1. text1  
2. text2  
有序列表 行首加其数字和点及空格。
+ text1  
+ text2  
无序列表 行首加其符号及空格。
* text1  
* text2  
无序列表 同上
- text1  
- text2  
无序列表 同上
- [ ] text1  
- [x] text2  
选项列表 行首加其符号及空格 (注意空格)。
*text* 斜体 文字两侧加其符号 (可嵌套到一些语法中)。
**text** 粗体 文字两侧加其符号 (可嵌套到一些语法中)。
***text*** 粗斜体 文字两侧加其符号 (可嵌套到一些语法中)。
~~text~~ 删除线 文字两侧加其符号 (可嵌套到一些语法中)。
`text` 代码段 文字两侧加其符号 (可嵌套到一些语法中)。
[TOC]   文章目录 单独一行,前后多一行空行,文章索引及跳转。
<link或Email> 网址或 Email 直接显示网址或 Email 链接,例如:<99770525@qq.com> 。
[text](https://link "title") 文字链接 可链接网址,也可链接本地文件(./01.html),"title"气泡文字,可不写。
![text](link) 图片导入 可网络图片,也可本地图片(./01.png)。
[![text](link)](https://link2) 图片链接 可网络图片,也可本地图片(./01.png)。
[text][XXX]
[XXX]: https://link
链接引用 前行的 XXX 引用后行的 XXX(相当于宏定义),最终结果为 [text](https://link)。
<!-- text --> 有用扩展:
隐藏内容
隐藏内容,可隐藏多行内容 (gitHub支持)。
&nbsp; 有用扩展:
强加空格
强加空格,支持单元格内加空格 (gitHub支持)。
<br> 有用扩展:
强制换行
强制换行,支持单元格内换行 (gitHub支持)。
<u>下划线文字</u> 有用扩展:
加下划线
加下划线,可包含Markdwon语法存在 (gitHub支持)。
<i>斜体文字</i> 有用扩展:
斜体文字
斜体文字,可包含Markdwon语法存在 (gitHub支持)。
<strong>文字加粗</strong> 有用扩展:
文字加粗
文字加粗,可包含Markdwon语法存在 (gitHub支持)。
<center>居中内容</center> 有用扩展:
文字居中
文字居中,html 语法实现的文字居中 (gitHub支持)。
<details close=""><summary>折叠标题</summary>
折叠内容
</details>
有用扩展:
折叠内容
折叠内容,可包含Markdwon语法存在 (gitHub支持)。
<a href="https://link" title="提示文字">文字链接</a> 有用扩展:
强加链接
强加链接,折叠标题中强加文字链接 (gitHub支持)。
<span id="jump">跳转到的位置</span>
[点击跳转](#jump)
有用扩展:
页内跳转
页内跳转,Markdwon+html 语法实现 (gitHub支持)。
<span style="color: #AE87FA;">彩色文字</span> 有用扩展:
彩色文字
彩色文字,html语法实现文字加颜色 (gitHub支持)。
<div style="width:16px">单元格宽度</div> 有用扩展:
单元格宽
单元格宽,保证单元格至少宽度 16px (gitHub支持)。

备注:
1.1、关于【行首语法符号】的使用,与后面内容必须使用【一个空格】分隔开,这样有效避免一些兼容问题;
1.2、关于【集合性质符号】的使用,在整体前后面各加【一行空行】表示集合,这样有效避免一些兼容问题;
1.3、关于【常规段落换行】的问题,在段落结尾加多【两个空格】再回车换行,这样有效避免一些兼容问题;
1.4、关于【分割线的语法】,前面最好加多【一行空行】,防止【===】和【---】与上行内容组合为【标题1】和【标题2】等问题;
1.5、关于【列表嵌套语法】,要求子列表前加多【4个空格】或【1个TAB格】;
1.6、关于【引用嵌套语法】,增多一个【>】表示嵌套多一层,减少至 n 个【>】且后面只有两个空格时表示退回到第 n 层嵌套;
1.7、关于【单元宽度单位】,分为 pt:点数或磅、px:像素、cm:厘米,常用中文字大小为 14px 或 16px;


2、Markdwon 扩展语法:

一、表格:●

1
2
3
| 左对齐 | 居中对齐 | 右对齐 | 
| :---- | :-----: | ----: |
| **粗体字** | [![图片链接](https://www.zybuluo.com/static/img/logo.png)](https://www.zybuluo.com) | [~~加删除线链接~~](https://www.163.com) <br> [表格内换行内容](https://www.163.com) |

表现为:

左对齐 居中对齐 右对齐
粗体字 https://www.zybuluo.com/static/img/logo.png 加删除线链接
表格内换行内容

二、数学式:●

待续……


三、流程图:●

待续……


3、Markdwon 字符转义:
字符
说明
\ 反斜线(必须要加转义)
| 竖线号(专注表格使用,其它位置可不用转义!)
! 感叹号(专注插图使用,其它位置可不用转义!)
# 井字号(专在行首使用,其它位置可不用转义!)
= 等号 (专在行首使用,其它位置可不用转义!)
- 减号 (专在行首使用,其它位置可不用转义!)
_ 下划线(专在行首使用,其它位置可不用转义!)
+ 加号 (专在行首使用,其它位置可不用转义!)
. 点号 (专在行首使用,其它位置可不用转义!)
* 星号 (任意位置使用,显示字符本身须转义!)
` 反引号(任意位置使用,显示字符本身须转义!)
{} 花括号(任意位置使用,其中 “}” 可不加转义。)
[] 方括号(任意位置使用,其中 “]” 可不加转义。)
() 圆括号(任意位置使用,其中 “)” 可不加转义。)
<> 角括号(任意位置使用,其中 “>” 不能加转义!还有:“<>”里面有内容才能对“<”使用“\”转义)

备注:
3.1、某些 Markdown 解释器不支持表格内使用【``】符号包裹【|】符号!
3.2、关于【$】和【&】,在 Markdown 不能转义,但在 HTML 则是特殊用途!特别是【$】符号,必须使用文本【&#36;】表示,否则极容易引起格式错乱!而【&】有自己格式【&xxx;】,一旦符合其格式则显示为不是我们想要的文本,需要使用文本【&#38;】表示,例如显示【&nbsp;】文本,则使用文本【&#38;nbsp;】表示!更多的 HTML 转义符,请查看【网文】。


三、工具

1、Markdwon 编辑工具:

1.1、Typora 目前免费,可导出包括 HTML 和 PDF 等多种文件,编辑与预览同一个窗口,使用上可能不太习惯;
1.2、MarkdownPad2 要收费,只能导出 HTML 和 PDF 两种文件,编辑与预览分开两窗口,不支持列表也不支持其它扩展功能;
1.3、Cmd Markdown 作业部落出品,要收费,有网页版和离线版,主要导出 HTML 和 PDF 两种文件,编辑与预览分开两窗口;
1.4、Editor.md 是一款开源的、可嵌入的 Markdown 在线编辑器,支持语法很完整,编辑与预览分开两窗口,可以对标 Cmd Markdown 作业部落编辑器;


2、Markdwon 排版工具:

2.1、aclickall服务器2)在线版,自带很多排版样式并且用户可自行定制,支持复制至微信公众号,可生成 HTML 保存到本地。
2.2、Markdown Nice开源网址)在线版,自带很多排版样式并且用户可自行定制,支持复制至微信公众号、知乎和稀土掘金。
2.3、Dooc 在线版,只自带一种排版样式(有 3 种简单配色),支持复制至微信公众号,可生成 HTML 保存到本地。
2.4、MPEditor 在线版,只自带一种排版样式,支持复制至微信公众号。
2.5、Markdown Here 为安装在浏览器插件,好像只能在 Email 里一键转换,具体没怎样用过。

● 关于使用 aclickall 生成的 html 网页, 建议手工改如下几处内容:
1
2
3
4
5
6
7
8
9
调整网页相关信息: 
<meta name="author" content="作者相关信息">
<meta name="email" content="99770525@qq.com">
<meta name="description" content="描述内容">
<title>网页标题</title>  

改前: #export_content { margin: 40px 20%;                     //上下空出40px板边, 左右空出20%板边
改后: #export_content { max-width: 900px; margin: 40px auto;  //上下空出40px板边, 左右自动伸展并最大限制为900px(同时适配手机和电脑显示)


3、Markdwon 图标素材:

3.1、96微信编辑器,有图标素材,有模板(要收费),还有一些小工具(二维码工具也不错)。


三、参考

https://www.runoob.com/markdown/md-tutorial.html
https://cloud.tencent.com/developer/article/1748874