前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Typora Markdown 语法

Typora Markdown 语法

作者头像
框架师
发布2021-03-08 11:42:24
2.7K0
发布2021-03-08 11:42:24
举报
文章被收录于专栏:墨白的Java基地墨白的Java基地

引言:

Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档。 Markdown 语言在 2004 由约翰·格鲁伯(英语:John Gruber)创建。 Markdown 编写的文档可以导出 HTML 、Word、图像、PDF、Epub 等多种格式的文档。 Markdown 编写的文档后缀为 .md, .markdown

Markdown 应用

Markdown 能被使用来撰写电子书,如:Gitbook。

当前许多网站都广泛使用 Markdown 来撰写帮助文档或是用于论坛上发表消息。例如:GitHub、简书、reddit、Diaspora、Stack Exchange、OpenStreetMap 、SourceForge等。

编辑器

本教程将使用 Typora 编辑器来讲解 Markdown 的语法,Typora 支持 MacOS 、Windows、Linux 平台,且包含多种主题,编辑后直接渲染出效果。

支持导出HTML、PDF、Word、图片等多种类型文件。

Typora 官网

代码语言:javascript
复制
https://typora.io

Markdown 标题

Markdown 标题有两种格式。

1、使用 = 和 - 标记一级和二级标题

= 和 - 标记语法格式如下:

代码语言:javascript
复制
我展示的是一级标题
=================

我展示的是二级标题
-----------------

显示效果如下图:

img
img

使用 # 号标记

使用 # 号可表示 1-6 级标题,一级标题对应一个 # 号,二级标题对应两个 # 号,以此类推。

代码语言:javascript
复制
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题

显示效果如下图:

img
img

Markdown 段落

Markdown 段落没有特殊的格式,直接编写文字就好,段落的换行是使用两个以上空格加上回车

img
img

当然也可以在段落后面使用一个空行来表示重新开始一个段落。

img
img

字体

Markdown 可以使用以下几种字体:

代码语言:javascript
复制
*斜体文本*
_斜体文本_
**粗体文本**
__粗体文本__
***粗斜体文本***
___粗斜体文本___

显示效果如下所示:

img
img

分隔线

你可以在一行中用三个以上的星号、减号、底线来建立一个分隔线,行内不能有其他东西。你也可以在星号或是减号中间插入空格。下面每种写法都可以建立分隔线:

代码语言:javascript
复制
***

* * *

*****

- - -

----------

显示效果如下所示:

img
img

删除线

如果段落上的文字要添加删除线,只需要在文字的两端加上两个波浪线 ~~ 即可,实例如下:

代码语言:javascript
复制
RUNOOB.COM
GOOGLE.COM
~~BAIDU.COM~~

显示效果如下所示:

img
img

下划线

下划线可以通过 HTML 的 **** 标签来实现:

代码语言:javascript
复制
<u>带下划线文本</u>

显示效果如下所示:

img
img

块元素(Block Elements)

段落和行结束(Paragraph and line breaks)

大多数 markdown 解析器忽略单行分隔符,为了上其他 markdown 解析器识别行分隔符,可以在末尾使用两个空格,或者插入

引用(Blockquotes)

使用 > 字符,表示引用

代码语言:javascript
复制
> This is a blockquote with two paragraphs. This is first paragraph.
>
> This is second pragraph.Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus.



> This is another blockquote with one paragraph. There is three empty line to seperate two blockquote.

This is a blockquote with two paragraphs. This is first paragraph. This is second pragraph.Vestibulum enim wisi, viverra nec, fringilla in, laoreet vitae, risus. This is another blockquote with one paragraph. There is three empty line to seperate two blockquote.

列表(Lists)

输入 * 将会创建一个无序列表,也可以使用 + 或者 -

代码语言:javascript
复制
* Red
* Green
* Blue
  • Red
  • Green
  • Blue

输入 1. 将会创建有序列表

代码语言:javascript
复制
1.  Red
2.  Green
3.  Blue
  1. Red
  2. Green
  3. Blue

任务列表(Task List)

用 [ ] 或者 [X] 未完成,完成)表示列表,通过点击复选框来更改状态(完成/未完成)

代码语言:javascript
复制
- [ ] a task list item
- [ ] list syntax required
- [ ] normal **formatting**, @mentions, #1234 refs
- [ ] incomplete
- [x] completed
img
img

1.5任务列表.png

##代码块(Code Blocks)

使用 ``` <语言> 按回车键,将会对代码进行高亮

代码语言:javascript
复制
```ruby
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html
```
代码语言:javascript
复制
require 'redcarpet'
markdown = Redcarpet.new("Hello World!")
puts markdown.to_html

数学(Math Blocks)

可以使用MathJax呈现LaTeX数学表达式。

代码语言:javascript
复制
$$
\mathbf{V}_1 \times \mathbf{V}_2 =  \begin{vmatrix} 
\mathbf{i} & \mathbf{j} & \mathbf{k} \\
\frac{\partial X}{\partial u} &  \frac{\partial Y}{\partial u} & 0 \\
\frac{\partial X}{\partial v} &  \frac{\partial Y}{\partial v} & 0 \\
\end{vmatrix}
$$
\mathbf{V}_1 \times \mathbf{V}_2 = \begin{vmatrix} \mathbf{i} & \mathbf{j} & \mathbf{k} \\ \frac{\partial X}{\partial u} & \frac{\partial Y}{\partial u} & 0 \\ \frac{\partial X}{\partial v} & \frac{\partial Y}{\partial v} & 0 \\ \end{vmatrix}
\mathbf{V}_1 \times \mathbf{V}_2 = \begin{vmatrix} \mathbf{i} & \mathbf{j} & \mathbf{k} \\ \frac{\partial X}{\partial u} & \frac{\partial Y}{\partial u} & 0 \\ \frac{\partial X}{\partial v} & \frac{\partial Y}{\partial v} & 0 \\ \end{vmatrix}

表格(Tables)

使用 | First Header | Second Header | 按回车键,将会创建2列的表格

代码语言:javascript
复制
| First Header  | Second Header |
| ------------- | ------------- |
| Content Cell  | Content Cell  |
| Content Cell  | Content Cell  |

First Header

Second Header

Content Cell

Content Cell

Content Cell

Content Cell

还可以使用 : 号,来设置文字对齐方式

代码语言:javascript
复制
| Left-Aligned  | Center Aligned  | Right Aligned |
| :------------ |:---------------:| -----:|
| col 3 is      | some wordy text | $1600 |
| col 2 is      | centered        |   $12 |
| zebra stripes | are neat        |    $1 |

Left-Aligned

Center Aligned

Right Aligned

col 3 is

some wordy text

$1600

col 2 is

centered

$12

zebra stripes

are neat

$1

脚注(Footnotes)

代码语言:javascript
复制
使用 [^footnote] 创建脚注.
[^footnote]: Here is the *text* of the **footnote**.
然后,可以把鼠标停留在脚注中,查看内容

You can create footnotes like this[1].

代码语言:javascript
复制
生产环境,可以像这样使用
You can create footnotes like this[^1].
[^1]: Here is the *text* of the **footnote**.

You can create footnotes like this[2].

横线(Horizontal Rules)

输入 *** 或者 — 后,按回车键

代码语言:javascript
复制
---

目录(Table of Contents – TOC)

输入 [toc] ,按回车键

img
img

1.11目录.png


Span 元素(Span Elements)

链接(Links)

文字描述包含在 [] 内,链接地址包含在 () 内,() 要紧接着 [] 后面

代码语言:javascript
复制
This is [an example](http://example.com/ "Title") inline link.
[This link](http://example.net/) has no title attribute.

This is an example inline link.

This link has no title attribute.

引用链接(Reference Links)

引用链接样式,使用两个 []

代码语言:javascript
复制
This is [an example][id] reference-style link.

Then, anywhere in the document, you define your link label like this, on a line by itself:

[id]: http://example.com/  "Optional Title Here"

This is an example reference-style link. Then, anywhere in the document, you define your link label like this, on a line by itself:

Type 简化了使用方法,如下

代码语言:javascript
复制
[Bing][]
And then define the link:

[Bing]: http://bing.com/

Bing And then define the link:

图片(Images)

在链接格式前面添加 ! ,如下

代码语言:javascript
复制
![timg.jpg](https://upload-images.jianshu.io/upload_images/6226097-1613f3353bb9ec89.jpg?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)
img
img

timg.jpg

##强调(Emphasis)

对应 HTML 的 标签

代码语言:javascript
复制
*single asterisks*

_single underscores_

single asterisks single underscores

如果像使用 * 号,在 * 号前使用 \

代码语言:javascript
复制
\*this text is surrounded by literal asterisks\*

this text is surrounded by literal asterisks

加粗(Strong)

代码语言:javascript
复制
**double asterisks**

__double underscores__

double asterisks double underscores

代码(Code)

在文章中现实代码,用 ` 号表示

代码语言:javascript
复制
Use the `printf()` function.

Use the printf() function.

Emoji 表情(Emoji

用两个 : 号包含单词,或者在 编辑 -> 表情与符号 中选择

代码语言:javascript
复制
:happy:
img
img

:happy:

内联数学(Inline Math)

这个功能默认是关闭的,如果要打开这个功能(以 Mac 版本为例),选择 Typora -> 偏好设置 -> markdown 标签,勾选内联公式复选框

代码语言:javascript
复制
$\lim_{x \to \infty} \exp(-x) = 0$

下面是简书风格,typora 与之类似

\lim_{x \to \infty} \exp(-x) = 0
\lim_{x \to \infty} \exp(-x) = 0

下表(subscript)

这个功能默认是关闭的,如果要打开这个功能(以 Mac 版本为例),选择 Typora -> 偏好设置 -> markdown 标签,勾选下标复选框

代码语言:javascript
复制
H~2~O

上标(Superscript)

这个功能默认是关闭的,如果要打开这个功能(以 Mac 版本为例),选择 Typora -> 偏好设置 -> markdown 标签,勾选上标复选框

代码语言:javascript
复制
X^2^

高亮(Highlight)

这个功能默认是关闭的,如果要打开这个功能(以 Mac 版本为例),选择 Typora -> 偏好设置 -> markdown 标签,勾选高亮复选框

代码语言:javascript
复制
==highlight==
img
img

HTML

可以使用 HTML 样式来写 Markdown,比如

代码语言:javascript
复制
<span style="color:red">this text is red</span>
img
img

嵌入内容(Embed Contents)

代码语言:javascript
复制
<iframe height='265' scrolling='no' title='Fancy Animated SVG Menu' 
src='http://codepen.io/jeangontijo/embed/OxVywj/?height=265&theme-id=0&default-tab=css,result&embed-version=2' 
frameborder='no' allowtransparency='true' allowfullscreen='true' 
style='width: 100%;'></iframe>
img
img

视频(Video)

代码语言:javascript
复制
<video src="xxx.mp4" />

Markdown 列表

Markdown 支持有序列表和无序列表。

无序列表使用星号(***)、加号(+)或是减号(-**)作为列表标记:

代码语言:javascript
复制
* 第一项
* 第二项
* 第三项

+ 第一项
+ 第二项
+ 第三项


- 第一项
- 第二项
- 第三项

显示结果如下:

img
img

有序列表使用数字并加上 . 号来表示,如:

代码语言:javascript
复制
1. 第一项
2. 第二项
3. 第三项

显示结果如下:

img
img

列表嵌套

列表嵌套只需在子列表中的选项添加四个空格即可:

代码语言:javascript
复制
1. 第一项:
    - 第一项嵌套的第一个元素
    - 第一项嵌套的第二个元素
2. 第二项:
    - 第二项嵌套的第一个元素
    - 第二项嵌套的第二个元素

显示结果如下:

img
img

Markdown 区块

Markdown 区块引用是在段落开头使用 > 符号 ,然后后面紧跟一个空格符号:

代码语言:javascript
复制
> 区块引用
> 框架师
> 代码改变世界

显示结果如下:

img
img

另外区块是可以嵌套的,一个 > 符号是最外层,两个 > 符号是第一层嵌套,以此类推退:

代码语言:javascript
复制
> 最外层
> > 第一层嵌套
> > > 第二层嵌套

显示结果如下:

img
img

区块中使用列表

区块中使用列表实例如下:

代码语言:javascript
复制
> 区块中使用列表
> 1. 第一项
> 2. 第二项
> + 第一项
> + 第二项
> + 第三项

显示结果如下:

img
img

列表中使用区块

如果要在列表项目内放进区块,那么就需要在 > 前添加四个空格的缩进。

区块中使用列表实例如下:

代码语言:javascript
复制
* 第一项
    > 框架师
    > 代码改变世界
* 第二项

显示结果如下:

  • 第一项

框架师 代码改变世界

  • 第二项

Markdown 代码

如果是段落上的一个函数或片段的代码可以用反引号把它包起来(**`**),例如:

代码语言:javascript
复制
`printf()` 函数

显示结果如下:

img
img

代码区块

代码区块使用 4 个空格或者一个制表符(Tab 键)

实例如下:

img
img

显示结果如下:

img
img

你也可以用 ``` 包裹一段代码,并指定一种语言(也可以不指定):

代码语言:javascript
复制
```javascript
$(document).ready(function () {
    alert('RUNOOB');
});
```

显示结果如下:

img
img

Markdown 链接

链接使用方法如下:

代码语言:javascript
复制
[链接名称](链接地址)

或者

<链接地址>

例如:

代码语言:javascript
复制
这是一个链接 [框架师](https://mobaijun8.cn)

显示结果如下:

这是一个链接 框架师

直接使用链接地址:

代码语言:javascript
复制
<https://mobaijun8.cn>

显示结果如下:

https://mobaijun8.cn

Markdown 图片

Markdown 图片语法格式如下:

代码语言:javascript
复制
![alt 属性文本](图片地址)

![alt 属性文本](图片地址 "可选标题")
  • 开头一个感叹号 !
  • 接着一个方括号,里面放上图片的替代文字
  • 接着一个普通括号,里面放上图片的网址,最后还可以用引号包住并加上选择性的 ‘title’ 属性的文字。

使用实例:

代码语言:javascript
复制
![RUNOOB 图标](http://static.runoob.com/images/runoob-logo.png)

![RUNOOB 图标](http://static.runoob.com/images/runoob-logo.png "RUNOOB")

显示结果如下:

img
img

Markdown 还没有办法指定图片的高度与宽度,如果你需要的话,你可以使用普通的

标签。

代码语言:javascript
复制
<img src="http://static.runoob.com/images/runoob-logo.png" width="50%">

显示结果如下:

img
img

Markdown 表格

Markdown 制作表格使用 | 来分隔不同的单元格,使用 - 来分隔表头和其他行。

语法格式如下:

代码语言:javascript
复制
|  表头   | 表头  |
|  ----  | ----  |
| 单元格  | 单元格 |
| 单元格  | 单元格 |

以上代码显示结果如下:

img
img

对齐方式

我们可以设置表格的对齐方式:

  • -: 设置内容和标题栏居右对齐。
  • :- 设置内容和标题栏居左对齐。
  • :-: 设置内容和标题栏居中对齐。

实例如下:

代码语言:javascript
复制
| 左对齐 | 右对齐 | 居中对齐 |
| :-----| ----: | :----: |
| 单元格 | 单元格 | 单元格 |
| 单元格 | 单元格 | 单元格 |

以上代码显示结果如下:

img
img

Markdown 高级技巧

支持的 HTML 元素

不在 Markdown 涵盖范围之内的标签,都可以直接在文档里面用 HTML 撰写。

目前支持的 HTML 元素有:等 ,如:

代码语言:javascript
复制
使用 <kbd>Ctrl</kbd>+<kbd>Alt</kbd>+<kbd>Del</kbd> 重启电脑

输出结果为:

img
img

转义

Markdown 使用了很多特殊符号来表示特定的意义,如果需要显示特定的符号则需要使用转义字符,Markdown 使用反斜杠转义特殊字符:

代码语言:javascript
复制
**文本加粗** 
\*\* 正常显示星号 \*\*

输出结果为:

img
img

Markdown 支持以下这些符号前面加上反斜杠来帮助插入普通的符号:

代码语言:javascript
复制
\   反斜线
`   反引号
*   星号
_   下划线
{}  花括号
[]  方括号
()  小括号
#   井字号
+   加号
-   减号
.   英文句点
!   感叹号

公式

当你需要在编辑器中插入数学公式时,可以使用两个美元符 $$ 包裹 TeX 或 LaTeX 格式的数学公式来实现。提交后,问答和文章页会根据需要加载 Mathjax 对数学公式进行渲染。如:

代码语言:javascript
复制
$$
\mathbf{V}_1 \times \mathbf{V}_2 =  \begin{vmatrix} 
\mathbf{i} & \mathbf{j} & \mathbf{k} \\
\frac{\partial X}{\partial u} &  \frac{\partial Y}{\partial u} & 0 \\
\frac{\partial X}{\partial v} &  \frac{\partial Y}{\partial v} & 0 \\
\end{vmatrix}
$$tep1}{\style{visibility:hidden}{(x+1)(x+1)}}
$$

输出结果为:

img
img

typora 画流程图、时序图(顺序图)、甘特图

复制以下代码使用 typora 的源码模式粘贴到编辑器中查看效果:

img
img

以下几个实例效果图如下:

1、横向流程图源码格式:

代码语言:javascript
复制
```mermaid
graph LR
A[方形] -->B(圆角)
    B --> C{条件a}
    C -->|a=1| D[结果1]
    C -->|a=2| E[结果2]
    F[横向流程图]
```

2、竖向流程图源码格式:

代码语言:javascript
复制
​```mermaid
graph TD
A[方形] --> B(圆角)
    B --> C{条件a}
    C --> |a=1| D[结果1]
    C --> |a=2| E[结果2]
    F[竖向流程图]
​```

3、标准流程图源码格式:

代码语言:javascript
复制
```flow
st=>start: 开始框
op=>operation: 处理框
cond=>condition: 判断框(是或否?)
sub1=>subroutine: 子流程
io=>inputoutput: 输入输出框
e=>end: 结束框
st->op->cond
cond(yes)->io->e
cond(no)->sub1(right)->op
```

4、标准流程图源码格式(横向):

代码语言:javascript
复制
```flow
st=>start: 开始框
op=>operation: 处理框
cond=>condition: 判断框(是或否?)
sub1=>subroutine: 子流程
io=>inputoutput: 输入输出框
e=>end: 结束框
st(right)->op(right)->cond
cond(yes)->io(bottom)->e
cond(no)->sub1(right)->op
```

5、UML时序图源码样例:

代码语言:javascript
复制
```sequence
对象A->对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->对象A: 我很好(响应)
对象A->对象B: 你真的好吗?
```

6、UML时序图源码复杂样例:

代码语言:javascript
复制
```sequence
Title: 标题:复杂使用
对象A->对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->对象A: 我很好(响应)
对象B->小三: 你好吗
小三-->>对象A: 对象B找我了
对象A->对象B: 你真的好吗?
Note over 小三,对象B: 我们是朋友
participant C
Note right of C: 没人陪我玩
```

7、UML标准时序图样例:

代码语言:javascript
复制
```mermaid
%% 时序图例子,-> 直线,-->虚线,->>实线箭头
  sequenceDiagram
    participant 张三
    participant 李四
    张三->王五: 王五你好吗?
    loop 健康检查
        王五->王五: 与疾病战斗
    end
    Note right of 王五: 合理 食物 <br/>看医生...
    李四-->>张三: 很好!
    王五->李四: 你怎么样?
    李四-->王五: 很好!
```

8、甘特图样例:

代码语言:javascript
复制
```mermaid
%% 语法示例
        gantt
        dateFormat  YYYY-MM-DD
        title 软件开发甘特图
        section 设计
        需求                      :done,    des1, 2014-01-06,2014-01-08
        原型                      :active,  des2, 2014-01-09, 3d
        UI设计                     :         des3, after des2, 5d
    未来任务                     :         des4, after des3, 5d
        section 开发
        学习准备理解需求                      :crit, done, 2014-01-06,24h
        设计框架                             :crit, done, after des2, 2d
        开发                                 :crit, active, 3d
        未来任务                              :crit, 5d
        耍                                   :2d
        section 测试
        功能测试                              :active, a1, after des3, 3d
        压力测试                               :after a1  , 20h
        测试报告                               : 48h
```

效果图如下:

img
img

附录

备注:部分参考菜鸟教程 Typora 官方文档

持续更新中…,如果遇到问题欢迎联系我,在文章最后评论区【留言和讨论】,当然,欢迎点击文章最后的打赏按键,请墨白喝一杯冰阔乐,笑~**

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2019-12-16,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 引言:
    • Markdown 应用
      • 编辑器
        • 1、使用 = 和 - 标记一级和二级标题
        • 使用 # 号标记
    • Markdown 标题
    • Markdown 段落
      • 字体
        • 分隔线
          • 删除线
            • 下划线
            • 块元素(Block Elements)
              • 段落和行结束(Paragraph and line breaks)
                • 引用(Blockquotes)
                  • 列表(Lists)
                    • 任务列表(Task List)
                      • 数学(Math Blocks)
                        • 表格(Tables)
                          • 脚注(Footnotes)
                            • 横线(Horizontal Rules)
                              • 目录(Table of Contents – TOC)
                              • Span 元素(Span Elements)
                                • 链接(Links)
                                  • 引用链接(Reference Links)
                                • 图片(Images)
                                  • 加粗(Strong)
                                    • 代码(Code)
                                      • Emoji 表情(Emoji
                                        • 内联数学(Inline Math)
                                          • 下表(subscript)
                                            • 上标(Superscript)
                                              • 高亮(Highlight)
                                              • HTML
                                                • 嵌入内容(Embed Contents)
                                                  • 视频(Video)
                                                    • 列表嵌套
                                                    • 区块中使用列表
                                                    • 列表中使用区块
                                                    • 代码区块
                                                    • 支持的 HTML 元素
                                                    • 转义
                                                    • 公式
                                                    • typora 画流程图、时序图(顺序图)、甘特图
                                                • Markdown 列表
                                                • Markdown 区块
                                                • Markdown 代码
                                                • Markdown 链接
                                                • Markdown 图片
                                                • Markdown 表格
                                                • Markdown 高级技巧
                                                • 附录
                                                领券
                                                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档