关于Markdown
Markdown 是一种轻量级标记语言,创始人为 John Gruber 和 Aaron Swartz。它允许人们“使用易读易写的纯文本格式编写文档,然后转换成有效的 XHTML(或者 HTML)文档”。这种语言吸收了很多在电子邮件中已有的纯文本标记的特性。
1.为什么要推荐Markdown?
都开始写公众号文章了吧,总的有点仪式感吧。一开始是打算用普通的文本编辑器来写文章的,基本的编辑,插入图片都是没得啥子问题的,但是如果想讲自己的写得文章可以在更多的平台上展现的更自然,更有层次结构,阅读器来更加的舒服,那就需要一个格式化的文本标记语言,也就是我们今天要说的markdown,好,话不多少,直接进入主题。(本文章为平时学习所记录的,在后期整理后所得)
2.编写 Markdown 就如同编写纯文本一样简单、纯粹:
- 它方便修改和发布;
- 支持多种格式,表格,数学表达式的插入
- 很容易转换为 HTML 代码;
- 有众多语言及应用的相关扩展;
- 在 GitHub 等环境中有很好的应用;
- 是编写文档、记录笔记、撰写文章的合适选择。
一、段落与换行
1.段落的前后必须是空行:
空行指的是行内什么都没有,或者只有空白符(空格或制表符)
相邻两行文本,如果中间没有空行 会显示在一行中(换行符被转换为空格)
2.如果需要在段落内强制加入换行():
可以在前一行的末尾加入至少两个空格然后换行写其它的文字
3.Markdown 中的多数区块都需要在两个空行之间。
二、标题
1.Setext 形式
H1
H2
= 和 - 的数量是没有限制的。通常的做法是使其和标题文本的长度相同,这样看起来比较舒服。
2.atx 形式
① 可以用对称的 # 包括文本:
H1
② 也可以只在左边使用 #:
H1
H2
H3
H4
H5
H6
③ 成对的 # 左侧和只在左边使用的 # 左侧都不可以有任何空白,但其内侧可以使用空白。
左侧使用了空格
三、引用
> 1.引用内容 > 2.Markdown 区块 > 2.Markdown 区块
1.引用内容2.Markdown 区块3.Markdown 区块
> 最外层 > > 第一层嵌套 > > > 第二层嵌套
最外层
第一层嵌套
第二层嵌套
> 区块中使用列表 > 1. 第一项 > 2. 第二项 > + 第一项 > + 第二项 > + 第三项
区块中使用列表
- 第一项
- 第二项
- 第一项
- 第二项
- 第三项
列表中使用区块
如果要在列表项目内放进区块,那么就需要在 > 前添加四个空格的缩进。
区块中使用列表实例如下:
* 第一项 > 今天 > 学的不仅是技术更是梦想 * 第二项
- 第一项
今天学的不仅是技术更是梦想
- 第二项
四、列表
1.无序列表
- 可以使用 * 作为标记
- 也可以使用 +
- 或者 -
2.有序列表
- 有序列表以数字和 . 开始;
- 数字的序列并不会影响生成的列表序列;
- 但仍然推荐按照自然顺序(1.2.3...)编写。
3.相关事项
- 无序列表项的开始是:符号 空格;
- 有序列表项的开始是:数字 . 空格;
- 空格至少为一个,多个空格将被解析为一个;
- 如果仅需要在行前显示数字和 .:
- 可以使用:数字 . 来取消显示为列表
五、代码区块
1.可以使用缩进来插入代码块:
// Tab开头 Markdown // 四个空格开头
代码块前需要有至少一个空行,且每行代码前需要有至少一个 Tab 或四个空格;
2.也可以通过 ``,插入行内代码(` 是 Tab 键上边、数字 1 键左侧的那个按键):
例如 Markdown
3.代码块中的文本(包括 Markdown 语法)都会以原格式显示,而特殊字符会被转换为 HTML 实体。
六、分隔线
1.可以在一行中使用三个或更多的 *、- 或 _ 产生分隔线:
2.多个 * 之间可以有空格(空白符),但不能有其他字符:
七、链接
1.行内式
[链接名称](链接地址) 或者 <>
例如:
这是一个链接 [百度](https://www.百度.com)
显示结果如下:
2.参考式
① 首先,定义链接:
[Google](http://www.google.com/)
第二个方括号内为链接独有的 识别符,可以是字母、数字、空白或标点符号。识别符是 不区分大小写 的;
② 然后定义链接内容:
其格式为:[识别符] : 空白符 URL title
其中,URL可以使用 <> 包括起来,title 可以使用 ""、''、() 包括(考虑到兼容性,建议使用 ""),title 部分也可以换行;
链接内容的定义可以放在同一个文件的 任意位置;
③ 也可以省略 识别符,使用链接文本作为 识别符:
[Google][] [Google]: http://www.google.com/ "Google"
3.自动链接
使用 <> 包括的 URL 或邮箱地址会被自动转换为超链接:
http://www.google.com/ [123@email.com](mailto:123@email.com)
该方式适合行内较短的链接,会使用 URL 作为链接文字。邮箱地址会自动编码,以逃避抓取机器人。
八、图片
Markdown插图片有三种方法,各种Markdown编辑器的插图方式也都包含在这三种方法之内。
插图最基础的格式就是:
Alt text:图片的Alt标签,用来描述图片的关键词,可以不写。
图片链接:可以是图片的本地地址或者是网址。
"optional title":鼠标悬置于图片上会出现的标题文字,可以不写。
1. 插入本地图片
只需要在基础语法的括号中填入图片的位置路径即可,支持绝对路径和相对路径。例如:
![dalinlogo](F:/Essay/assets/image-dalin.png)
显示如下:
不灵活不好分享,本地图片的路径更改或丢失都会造成markdown文件调不出图。
2. 插入网络图片
只需要在基础语法的括号中填入图片的网络链接即可,现在已经有很多免费/收费图床和方便传图的小工具可选。例如:
将图片存在网络服务器上,非常依赖网络。
3. 把图片存入markdown文件
用base64转码工具把图片转成一段字符串,然后把字符串填到基础格式中链接的那个位置。
- 基础用法:
这个时候会发现插入的这一长串字符串会把整个文章分割开,非常影响编写文章时的体验。如果能够把大段的base64字符串放在文章末尾,然后在文章中通过一个id来调用,文章就不会被分割的这么乱了。
至于base64的图片编码如何得来,这里不做说明,有兴趣的可以自行百度
九、强调
1.使用 ** 或 __ 包括的文本会被转换为``,通常表现为斜体:
这是用来 演示 的_文本_
2.使用 或 包括的文本会被转换为``,通常表现为加粗:
这是用来 演示 的 文本
3.用来包括文本的 * 或 _ 内侧不能有空白,否则 * 和 _ 将不会被转换:
这是用来* 演示*的_文本 _
4.如果需要在文本中显示成对的 * 或 _,可以在符号前加入 即可:
这是用来_演示_的_文本_
5.、*、_ 和 __ 都必须 成对使用;
十、Task List
```
- Code
- HTML
- CSS
- JavaScript
- Sleep
```
显示如下;