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支持)。 |
| 有用扩展: 强加空格 |
强加空格,支持单元格内加空格 (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 扩展语法:
一、表格:●
|
|
表现为:
左对齐 | 居中对齐 | 右对齐 |
---|---|---|
粗体字 | 表格内换行内容 |
二、数学式:●
待续……
三、流程图:●
待续……
3、Markdwon 字符转义:
字符 |
说明 |
---|---|
\ | 反斜线(必须要加转义) |
| | 竖线号(专注表格使用,其它位置可不用转义!) |
! | 感叹号(专注插图使用,其它位置可不用转义!) |
# | 井字号(专在行首使用,其它位置可不用转义!) |
= | 等号 (专在行首使用,其它位置可不用转义!) |
- | 减号 (专在行首使用,其它位置可不用转义!) |
_ | 下划线(专在行首使用,其它位置可不用转义!) |
+ | 加号 (专在行首使用,其它位置可不用转义!) |
. | 点号 (专在行首使用,其它位置可不用转义!) |
* | 星号 (任意位置使用,显示字符本身须转义!) |
` | 反引号(任意位置使用,显示字符本身须转义!) |
{} | 花括号(任意位置使用,其中 “}” 可不加转义。) |
[] | 方括号(任意位置使用,其中 “]” 可不加转义。) |
() | 圆括号(任意位置使用,其中 “)” 可不加转义。) |
<> | 角括号(任意位置使用,其中 “>” 不能加转义!还有:“<>”里面有内容才能对“<”使用“\”转义) |
备注:
3.1、某些 Markdown 解释器不支持表格内使用【``】符号包裹【|】符号!
3.2、关于【$】和【&】,在 Markdown 不能转义,但在 HTML 则是特殊用途!特别是【$】符号,必须使用文本【$】表示,否则极容易引起格式错乱!而【&】有自己格式【&xxx;】,一旦符合其格式则显示为不是我们想要的文本,需要使用文本【&】表示,例如显示【 】文本,则使用文本【&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 网页, 建议手工改如下几处内容:
|
|
三、参考
https://www.runoob.com/markdown/md-tutorial.html
https://cloud.tencent.com/developer/article/1748874