Markdown语法全面详解
Markdown语法全面详解
目录
简介: md格式是近几年流行起的一个纯文本格式,对于一个程序员来说,用md格式代替word、txt等格式用来写说明文档或者blog,目前github以及CSDN都支持md格式书写blog了,用着用着就开始喜欢上了。
本篇文章主要就是记录一下md格式的语法,md语法在几乎所有支持md格式的软件都是通用的,而快捷键是在MarkdownPad2软件环境下。
[TOC]
1、Markdown常用快捷键
功能快捷键标题ctrl+1 用#号表示,#一级标题,##表示二级标题,依次类推,快捷键ctrl+1、2、3、4…加粗左右用包裹起来,快捷键 Ctrl + B斜体左右用包裹起来,快捷键Ctrl + I引用在文字开头添加 > 表示引用说明,快捷键 Ctrl + Q插入链接快捷键 Ctrl + L插入代码可以通过tab或者4个空格缩进表示,也可以通过“`将代码包裹起来表示代码块,快捷键 Ctrl + K插入图片快捷键 Ctrl + G提升标题Ctrl + H有序列表通过-加一个空格表示,后面跟内容,快捷键 Ctrl + U无序列表通过数字加一个.以及一个空格表示,后面跟内容,快捷键ctrl+shift+o横线快捷键 Ctrl + R撤销快捷键 Ctrl + Z重做快捷键 Ctrl + Y时间戳快捷键 Ctrl + T加粗加斜体左右用包裹起来,快捷键ctrl+i,ctrl+b,先后顺序无所谓生成目录[TOC]按回车
2、基本语法
2.1 字体设置斜体、粗体、删除线
这里显示正文 |
显示如下
这里显示正文 这里显示的是斜体 这里显示的倾斜体 这里显示的文字是加粗了 这里的文字是倾斜加粗的 这里的文字是加下划线的
2.2 分级标题
写发1: Markdown 支持两种标题的语法,类 Setext 和类 atx 形式。 类 Atx 形式则是在行首插入 1 到 6 个 # ,对应到标题 1 到 6 阶,例如:
# 一级标题 |
输出的结果:
一级标题
二级标题
三级标题
四级标题
五级标题
六级标题
写法2: Markdown 支持两种标题的语法,类 Setext 和类 atx 形式。
类 Setext 形式是用底线的形式,利用 = (最高阶标题)和 - (第二阶标题),任何数量的 = 和 - 都可以有效果。例如:
这是一个一级标题 |
输出结果:
这是一个一级标题
或者
二级标题 |
输出结果:
二级标题
2.3 链接
(1)插入本地图片链接的方法有两种: ![图片描述](图片路径”title”) ![图片描述](图片路径) 注:图片描述可以不写。 如本地插入图片示范:
![插入下一层级目录下的图片](/短视频封面/083.jpg) |
效果:
(2)插入互联网上图片
![图片描述](图片网络路径) 注:图片描述与插入本地图片一样,描述可以不写。
写法:
![图片描述](https://xxxxxx/xxx.jpg) |
效果:
(3)自动连接 Markdown 支持以比较简短的自动链接形式来处理网址和电子邮件信箱,只要是用<>包起来, Markdown 就会自动把它转成链接。也可以直接写,也是可以显示成链接形式的。 链接内容定义的形式为:
方括号(前面可以选择性地加上至多三个空格来缩进),里面输入链接文字 接着一个冒号 接着一个以上的空格或制表符 接着链接的网址 选择性地接着 title 内容,可以用单引号、双引号或是括弧包着
下面这三种链接的定义都是相同:
[这是一个链接]: http://nicexl.er.org/ "这里是链接的title内容" |
结果: 这是一个链接 这是逐浪软件官网链接.
在链接的时候也可以选择加上title属性,title 属性是选择性的,链接名称可以用字母、数字和空格,但是不分大小写:
[这是一个链接](http://nicexl.er.org/ "欢迎访问"). |
结果: 这是一个链接 这是逐浪软件官网链接
输出 HTML 为:
<p>这是一个链接 <a href="http://nicexl.er.org/" title="欢迎访问软件"> |
2.4 代码块
对于程序员来说代码功能是必不可少的,插入程序代码的方式有两种,一种是利用缩进(tab), 另一种是利用英文“`”符号(一般在ESC键下方,和~同一个键)包裹代码。
如果要标记一小段行内代码,你可以用反引号把它包起来(```),例如:
Use the `printf()` function. |
会产生:
<p>Use the <code>printf()</code> function.</p> |
如果要在代码区段内插入反引号,你可以用多个反引号来开启和结束代码区段: There is a literal backtick (`) here. 这段语法会产生:
There is a literal backtick (`) here.
在代码区块里面, & 、 < 和 > 会自动转成 HTML 实体,这样的方式让你非常容易使用 Markdown 插入范例用的 HTML 原始码,只需要复制贴上,剩下的 Markdown 都会帮你处理,Markdown会把下面这段:
`Please don't use any `<blink>` tags. |
转为:
Please don't use any tags.
你也可以这样写: —is the decimal-encoded equivalent of
—`.
以产生:
`Please don't use any `<blink>` tags. |
2.5 分割线
你可以在一行中用三个以上的星号、减号、底线来建立一个分隔线,行内不能有其他东西。你也可以在星号或是减号中间插入空格。下面每种写法都可以建立分隔线:
* * * |
2.6 强调
Markdown 使用星号()和底线(_)作为标记强调字词的符号,被 * 或 _ 包围的字词会被转成用 标签包围,用两个或_包起来的话,则会被转成,例如:
*single asterisks* |
会转成:
<em>single asterisks</em> |
你可以随便用你喜欢的样式,唯一的限制是,你用什么符号开启标签,就要用什么符号结束。
强调也可以直接插在文字中间:
unfriggingbelievable
但是如果你的 * 和 _ 两边都有空白的话,它们就只会被当成普通的符号。 如果要在文字前后直接插入普通的星号或底线,你可以用反斜线:
*this text is surrounded by literal asterisks*
2.7 引用
在被引用的文本前加上>符号,以及一个空格就可以了,如果只输入了一个>符号会产生一个空白的引用。
(1)基本使用 使用如下图所示:
> 文字引用 |
显示如下:
文字引用 文字引用 文字引用 文字引用 文字引用
文字引用 文字引用 文字引用
(2)嵌套引用
>>>第一层嵌套引用 |
显示如下:
第一层嵌套引用 第二层嵌套引用 第三层嵌套引用
(3)引用其它要素 引用的区块内也可以使用其他的 Markdown 语法,包括标题、列表、代码区块等。 使用如图所示:
2.8 列表
Markdown 支持有序列表和无序列表。 无序列表使用星号、加号或是减号作为列表标记: 不管是无序列表还是有序列表,符号后面一定要有一个空格,起到缩进的作用。
(1)无序列表 使用 星号*,加号+,减号- 表示无序列表。
* 无序列表文字 |
等同于:
+ 无序列表文字 |
也等同于:
- 无序列表文字 |
最后显示结果相同,显示如下:
- 无序列表文字–前是*号的显示
- 无序列表文字–前是*号的显示
- 无序列表文字–前是*号的显示
- 无序列表文字–前是+号的显示
- 无序列表文字–前是+号的显示
- 无序列表文字–前是+号的显示
- 无序列表文字–前是-号的显示
- 无序列表文字–前是-号的显示
- 无序列表文字–前是-号的显示
(2)有序列表 有序列表则使用数字接着一个英文句点: 注意:英文句点后面一定要有一个空格,起到缩进的作用。
1. 有序列表 |
显示结果如下:
- 有序列表
- 有序列表
- 有序列表
(3)无序列表和有序列表同时使用
* 这是无序列表1 |
- 这是无序列表1
- 这是无序列表2
- 这是无序列表3
- 这是有序列表1
- 这是有序列表2
- 有序无序混合使用1
- 有序无序混合使用2
(4)注意事项 在使用列表时,只要是数字后面加上英文的点,就会无意间产生列表,比如2020.5.25 这时候想表达的是日期,有些软件把它被误认为是列表。解决方式:在每个点前面加上\就可以了。如下图所示:
2020. 05. 25. 今天是2020年5月25日
显示如下: 2020. 05. 25. 今天是2020年5月25日
2.9 表格
(1)极简模式
水果名称| 价格 | 数量 |
效果如下:
水果名称价格数量香蕉$15苹果$16草莓$17
(2)简单方法
name | 111 | 222 | 333 | 444 |
效果如下:
name111222333444aaabbbcccdddeeefffggghhhiii000
(3)原生方法
name | 111 | 222 | 333 | 444 |
效果如下:
name111222333444aaabbbcccdddeeefffggghhhiii000
其他
反斜杠
Markdown 可以利用反斜杠来插入一些在语法中有其它意义的符号,例如:如果你想要用星号加在文字旁边的方式来做出强调效果(但不用 `` 标签),你可以在星号的前面加上反斜杠:
*literal asterisks*
Markdown 支持以下这些符号前面加上反斜杠来帮助插入普通的符号:
\ 反斜线 |