[关闭]
@hongshuzhao 2019-03-16T09:09:20.000000Z 字数 4379 阅读 1684

[TOC]

最实用的 Markdown 语法教程

原文来自:https://github.com/KnightOneAdmin/MyMarkdown

Markdown 前言

最近公司事情不多,每个项目组的人手都够,我这边事情不是很忙。因此,老大让我对Markdown语法做一个系统的培训。接到任务的时候,我就有点小小激动,终于有“用武之地”了。废话少说,咱们开始正题吧〜

执行概要

培训内容:

  1. Markdown 是什么?
  2. Markdown 是谁创造的?
  3. 为什么要使用Markdown?
  4. Markdown怎么使用?
  5. Markdown 都有哪些人在用?
  6. 尝试一下Markdown的使用!
  7. Markdown 进阶语法!

学习目标

通过学习,能对Markdown语法有个比较全面的认知,对日常工作写作排版尽量放弃Word、txt等文本工具,改直接用Markdown语言写文档。

学习思路

  1. 一开始,先记住 # 这是标题## 这是二级标题### 这是三级标题、...这时候你写一般小文章会开始感觉不错。
  2. 然后,你发现标题不适合做列表,记住了用1. 第一点- 这一点来列表超级方便。
  3. 好吧,写作总要有些重点吧,**加粗***斜体*删除线开始派上用场了。这时你基本不会打开 Word 那样的笨重软件了。
  4. 如果你不幸是码农:
    \这是单行代码``

    //这是代码段,四个空格或一个制表符缩进
    int i;
    

    > 这是引用

  5. 你越来越喜欢,自然会去查查维基(Markdown)还有什么语法,加上多用,很快就基本掌握了。 还有表格、锚、注脚、贴图等。

  6. 慢慢,你会发现,总有小「bugs」,如列表内无法内嵌代码段。上网查查,你开始理解的缩进内嵌机制等高级隐形内容,上例中就需要两个Tab。这样你就 Master 了!

正文

一、Markdown是什么?

Markdwon 是一种轻量级 标记语言,它以纯文本形式(易读、易写、易更改)编写文档,并最终以HTLM格式发布。Markdown也可以理解为将以 MARKDOWN语法编写的语言转换成HTML内容的工具。

二、Markdown是谁创造的?

它是由 Aaron SwartzJohn Gruber 共同设计, Aaron Swartz 就是那位(2013年1月11日)自杀,有着开挂一般人生经历的程序员。 维基百科对他的介绍是:软件工程师、作家、政治组织者、互联网活动家、维基百科人。

他有着足以让你跪拜的人生经历。

Aaron Swartz 大神照片

在网上看到使用本地图片的:
需要把本地图片上传到网络获取地址

例如本地图片:E:/VULCAN/Documents/My_Markdown/Cmd Markdown 01.png
上传后地址:
![](https://i.imgur.com/XVVddAV.png)

也有网文这样使用本地图片的:
![](E:/VULCAN/Documents/My_Markdown/Cmd Markdown 01.png)

![](./Cmd Markdown 01.png)

~~以上两种方法,我都没有成功~~

三、为什么要使用Markdown?

四、Markdown怎么使用?

如果不算扩展,Markdown的语法绝对简单到让你爱不释手!

Markdown语法分为如下几大部分:

▸ 标题

▸ 段落

▸ 区块引用

▸ 代码区块

▸ 强调

▸ 列表

▸ 分割线

▸ 链接

▸ 图片

▸ 反斜杠

▸ 符号

▸ 表格

▸ 流程图

4.1 标题

两种形式
1)使用=-,标记一级二级 标题。

示例md代码:

一级标题
=
二级标题
-

示例效果:

一级标题

二级标题

2)使用 #,可以表示 1-6级 标题。

示例md代码:

# 第一级标题 `<h1>` 
## 第二级标题 `<h2>` 
### 第三级标题 `<h3>` 
#### 第二四级标题 `<h4>` 
##### 第五级标题 `<h5>` 
###### 第六级标题 `<h6>` 

示例效果:

第一级标题 <h1>

第二级标题 <h2>

第三级标题 <h3>

第二四级标题 <h4>

第五级标题 <h5>
第六级标题 <h6>

4.2 段落

段落的前后要有空行,所谓的空行是指没有文字内容。若想在段内强制换行的方式是使用两个以上空格加上回车(引用中换行省略回车)

4.3 区块引用

在段落的每行或者只在第一行使用符号 > ,还可使用多个嵌套引用,如:

示例md代码:

> 区块引用
> > 嵌套引用
> > >三嵌套引用
> > > > 四嵌套引用

示例效果:

区块引用

嵌套引用

三嵌套引用

四嵌套引用

4.4代码区块

代码区块的建立是在每行加上4个空格或者一个制表符(如同写代码一样)。如普通段落:

示例md代码:

fun main(args: Array<String>) {
   println("Hello World!")

   println("sum = ${sum(34, 67)}")
	   println("sum = ${sum(34, 67)}")
   println("sum = ${sum(34, 6, 57, 34)}")

   printSum(237, 57)
   printSum(234, 567, 8)
   vars(1, 4, 6, 78, 0, 6, 9, 8)


   val sumLambda: (Int, Int) -> Int = { x, y -> x + y }
   println("sumLambda = ${sumLambda(3, 6)}")


//    if (args.size < 2) {
//        println("Two integers expected")
//        return
//    }
   testFor()


   val a: Int = 1000
   println(a === a)//true 值相等,对象地址相等

   //经过了装箱,创建了两个不同的对象
   val boxedA: Int? = a
   val anotherBoxedA: Int? = a

   //虽然经过了装箱,但是值是相等的,都是10000
   println(boxedA === anotherBoxedA) //  false,值相等,对象地址不一样
   println(boxedA == anotherBoxedA) // true,值相等
}

注意⚠️:需要和普通段落之间存在空行!

4.5 强调

在强调内容两侧分别加上 *或者 -,如:

示例md代码:

*斜体* ,_斜体_
**加粗**,__粗体__

示例效果:

斜体斜体

加粗粗体

4.6 列表 (有序,无序)

使用 .+、或- 标记无序列表,如:

示例md代码:

-   第一项
+   第二项
-   第三项
+   第四项
-   第五项
+   第六项

示例效果:

注意:标记后面最少有一个 空格制表符 。若不在引用区块
中,必须和前方段落之间存在空行。

示例md代码:

 1. 第一项
 2. 第二项
 3. 第三项
 4. 第四项
 5. 第五项
 6. 第六项

示例效果:

  1. 第一项
  2. 第二项
  3. 第三项
  4. 第四项
  5. 第五项
  6. 第六项

4.7 分割线

分割线最常使用就是三个或以上的 *======还可以使用 -_

示例md代码:

***
---
_____ 
======

示例效果:

*

_

4.8链接

链接可以由两种形式生成,行内式参考式

行内式:

示例md代码:

[GitHub](http://github.com)
自动生成连接  <http://www.github.com/>

示例效果:

GitHub

自动生成连接 http://www.github.com/

参考式:

[GitHub][1]
[1]:http://github.com
自动生成连接  <http://www.github.com/>

示例效果:

GitHub
自动生成连接 http://www.github.com/

注意:上述的 1:http://github.com 不出现在区块中。

4.9 图片

添加图片形式和链接相似,只需要在链接的基础上前方加一个 !号。

示例md代码:

![GitHub set up](http://zh.mweb.im/asset/img/set-up-git.gif)
格式: ![Alt Text](url)

示例效果:

GitHub set up

4.10 反斜杠 '\'

相当于反转义作用。使符号成为普通符号。

4.11 符号 ``

起到标记作用,如标签:

`Ctrl+A` 、`Ctrl+C`、`Ctrl+V`

示例效果:

Ctrl+ACtrl+CCtrl+V

4.12 表格

示例md代码:

第一格表头 | 第二格表头
\---------| -------------   //使用时没有转义字符`\`
内容单元格 第一列第一格 | 内容单元格第二列第一格
内容单元格 第一列第二格 多加文字 | 内容单元格第二列第二格
内容单元格 第一列第三格 多加文字 | 内容单元格第二列第三格
内容单元格 第一列第四格 多加文字 | 内容单元格第二列第四格

示例效果:

第一格表头 第二格表头
内容单元格 第一列第一格 内容单元格第二列第一格
内容单元格 第一列第二格 多加文字 内容单元格第二列第二格
内容单元格 第一列第三格 多加文字 内容单元格第二列第三格
内容单元格 第一列第四格 多加文字 内容单元格第二列第四格

4.12 流程图

示例:

st=>start: Start:>https://www.jpjbp.com/
io=>inputoutput: verification
op=>operation: Your Operation
cond=>condition: Yes or No?
sub=>subroutine: Your Subroutine
e=>end

st->io->op->cond
cond(yes)->e
cond(no)->sub->io

更多语法参考:流程图语法参考

五、Markdown都哪些人在用?

Markdown 的使用作者:

六、尝试一下Markdown的使用!

>>>Github传送门

TOC

Markdown 语法:

[TOC]

总结:

通过这次学习,自己也对MD语法有一个全新的认识,万事开头难,只要你偿试用MD 写工作中的文档,从此告别Word ,TXT!!!我相信你也会喜欢上这门语言。此外,如有写的不对的地方,勿喷!!! 欢迎指正!

添加新批注
在作者公开此批注前,只有你和作者可见。
回复批注