Typora

介绍

Typora是一款功能全面、简洁高效,而且又非常优雅的Markdown编辑器。它把源码编辑和效果预览合二为一,在输入标记之后随即生成预览效果,提供了“所见即所得”的Markdown写作体验。

Typora是目前最受欢迎的Markdown编辑器之一。它的主要特性如下。

1)实时预览:传统的Markdown编辑器都有两个窗口,左边是源码,右边是渲染后的效果。Typora独辟蹊径,把源码编辑和效果预览合二为一,实现了真正的所见即所得。

2)扩展语法:Typora不光支持GFM,还扩展了数学公式、流程图等功能。

3)快捷操作:Typora对几乎所有的Markdown标记都提供了快捷操作方式,使用起来非常高效。

4)界面漂亮:默认支持6种主题,可自定义,好看又好用。

5)文件转换:支持多种文件格式通过导入/导出功能跟.md格式相互转换。

6)支持中文:支持中文,可以帮助大家更好地理解各项功能。

7)视图模式:支持大纲和文档列表视图,方便在不同段落和不同文件之间进行切换。

8)跨平台:支持macOS、Windows和Linux系统。

9)目前免费:这么好用的编辑器竟然是免费的。

使用

1.下载安装

下载地址:https://typora.io/#download。

2.设置语言

在默认情况下,Typora会使用操作系统的语言,如果想要自定义语言,可以在Typora编辑器上执行如下操作:【偏好设置】→【通用】→【语言】,选择语言后,重启Typora即可生效。

3.其他偏好设置推荐

【文件】→【偏好设置】→【外观】→【侧边栏】勾选侧边栏的大纲视图允许折叠和展开

【文件】→【偏好设置】→【编辑器】→【默认换行符】选择LF;【拼写检查】选择不使用拼写检查

【文件】→【偏好设置】→【图像】→【插入图片时】选择复制图片到./${filename}.assets 文件夹和勾选对本地位置的图片应用上述规则和勾选优先使用相对路径

【文件】→【偏好设置】→【Markdown】→【Markdown扩展语法】全部勾选;【空格与换行】勾选显示<br/>和选择忽略连续的空格与单个换行

4.主题

Typora提供了5款漂亮的主题供大家选择,每一个都很漂亮。可通过菜单栏上的【主题】进行切换,默认是Github主题。主题也可以根据自己喜欢进行自定义。

Typora实际上也是一个浏览器,每一个主题就是一个css文件,如果想自定义主题,可直接修改该css文件。

【文件】→【偏好设置】→【外观】→【主题】打开主题文件夹就能看到所有主题对应的css文件。

比如要修改Github主题,该主题对应的css文件就是github.css,不建议直接修改原来的css文件,而是创建名为github.user.css进行编写自定义样式,该样式文件Typora也会自动加载。

github.user.css()

/*自定义样式*/
/*修改了引用标签的样式*/
blockquote{border-left: 4px solid #62ca38!important;background:#f8f8f8!important;padding:10px!important;}

5.空格与换行

官方说明:https://support.typora.io/Line-Break/

在Markdown中,换行符非常令人困惑,Typora的官方建议是:

  • 使用Typora的默认设置。
  • 用Typora的混合视图编写。
  • 按下Enter键插入新的段落,并避免插入新行。
  • 如果您确实需要一个单独的换行符,请使用以下语法:<br/>

空格

连续空格类似于单行换行符,大多数Markdown引擎都会忽略它们。

默认情况下,Typora将在编辑视图中保留连续的空格,并在打印或导出时将其忽略。您可以在首选项面板中更改此选项。

如果您确实想插入其他Markdpwn引擎支持的连续空格,则可以

  • 转义空格,\在每个空格之前输入
  • 使用HTML实体 &nbsp;

换行

Markdown提供了插入单个强行换行符的方法:

  • 插入两个空格和一个换行符。
  • <br/>直接插入HTML标签。

几乎所有Markdown引擎都会将其解析为输出中的强行换行。

段落

在Markdown中,两个换行符表示创建一个新段落,在Typora中,当您Enter按键时,将创建一个新段落,并且如果切换到源代码模式,则会插入两个换行符。

常用快捷键

没有macOS系统的电脑,所以暂未收集。

段落

功能 操作步骤 Windows macOS
一级标题 段落→一级标题 Ctrl+1 command+1
二级标题 段落→二级标题 Ctrl+2 command+2
三级标题 段落→三级标题 Ctrl+3 command+3
四级标题 段落→四级标题 Ctrl+4 command+4
五级标题 段落→五级标题 Ctrl+5 command+5
六级标题 段落→六级标题 Ctrl+6 command+6
段落 段落→段落 Ctrl+0 command+0
提升标题级别 段落→提升标题级别 Ctrl+= command+=
降低标题级别 段落→降低标题级别 Ctrl+- command+-
插入表格 段落→表格→插入表格 Ctrl+T
下方插入行 段落→表格→下方插入行 Ctrl+Enter
删除行 段落→表格→删除行 Ctrl+Shift+退格
代码块 段落→代码块 Ctrl+Shift+K
公式块 段落→公式块 Ctrl+Shift+M
有序列表 段落→有序列表 Ctrl+Shift+[
无序列表 段落→无序列表 Ctrl+Shift+]
增加缩进 段落→缩进→增加缩进 Ctrl+]
减少缩进 段落→缩进→减少缩进 Ctrl+[

格式

功能 操作步骤 Windows macOS
加粗 格式→加粗 Ctrl+B
斜体 格式→斜体 Ctrl+I
下划线 格式→下划线 Ctrl+U
删除线 格式→删除线 Ctrl+Shift+5
代码 格式→代码 Ctrl+Shift+`
超链接 格式→超链接 Ctrl+K
清除格式 格式→清除格式 Ctrl+\

视图

功能 操作步骤 Windows macOS
显示/隐藏侧边栏 视图→显示/隐藏侧边栏 Ctrl+Shift+L
查找/替换 Ctrl+F
源代码模式 视图→源代码模式 Ctrl+/
实际大小 视图→实际大小 Ctrl+Shift+9
放大 视图→放大 Ctrl+Shift+=
缩放 视图→缩放 Ctrl+Shift+-

以下是Markdown语法教程

概述

据 GitHub Flavored Markdown(GFM)官方文档介绍,Markdown是由约翰·格鲁伯(John Gruber)在亚伦·斯沃茨(Aaron Swartz)的帮助下开发,并在2004年发布的标记语言。

其设计灵感主要来源于纯文本电子邮件的格式,目标是让人们能够使用易读、易写的纯文本格式编写文档,而且这些文档可以转换为HTML(Hyper Text Markup Language,超文本标记语言)文档。

简单点说,Markdown就是由一些简单的符号(如*/-> [] ()#)组成的用于排版的标记语言,其最重要的特点就是可读性强。

目前最流行的扩展语法是GitHub Flavored Markdown,简称GFM,毕竟GitHub是全球最大的程序员网站。

标题

标题支持使用两种标记:底线(-/=)左侧#

底线(-/=)方式(不推荐):

语法说明如下。

1)底线是=表示一级标题。

2)底线是-表示二级标题。

3)底线符号的数量至少2个。

4)这种语法只支持这两级标题。

一级标题
========= 二级标题
---------

一级标题

二级标题

方式(推荐

语法说明如下。

1)在行首插入#可标记出标题。

2)#的个数表示了标题的等级。

3)建议在#后加一个空格。

4)Markdown中最多只支持前六级标题。

# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题
####### 七级标题(不支持)

一级标题

二级标题

三级标题

四级标题

五级标题
六级标题

####### 七级标题(不支持)

段落

1)段落内换行,在结尾使用两个及以上空格加回车。


我就是一段普通的文字。 这段文字需要段内换行,这后面是两个空格
这一句话是跟上面属于同一段落。 这段文字需要段内换行,这后面是html的换行标签<br/>这一句话是跟上面属于同一段落。

我就是一段普通的文字。

这段文字需要段内换行,这后面是两个空格

这一句话是跟上面属于同一段落。

这段文字需要段内换行,这后面是html的换行标签
这一句话是跟上面属于同一段落。

2)重新开始一个段落是段落后面使用一个空行来表示。

注意:Typora默认是回车就会新起一个段落。


我就是一段普通的文字。 我也是一段普通的文字。

我就是一段普通的文字。

我也是一段普通的文字。

粗体斜体删除线

粗体由两个*或两个_包裹,斜体由1个*或1个_包裹。
建议粗体使用2个*包裹,斜体使用1个*包裹,因为*比较常见,而且比_可读性更强。
删除线由两个~包裹。
语法 效果
**粗体** 粗体
*斜体* 斜体
~~删除线~~ 删除线
***斜粗体*** 斜粗体
**~~粗体删除线~~** 粗体删除线
*~~斜体删除线~~* 斜体删除线
***~~粗体斜体删除线~~*** 粗体斜体删除线

下划线

<u>下划线</u>

下划线

注释

<!--注释-->

分割线

分隔线由3个以上的*/-/_来标记。

线上面文字

***

线上面文字

---

线上面文字

___

语法说明如下。

1)分隔线须使用至少3个以上的*/-/_来标记。

2)行内不能有其他的字符。

3)可以在标记符中间加上空格。

4)上下最好都留一个空行。

线上面文字


线上面文字


线上面文字


脚注

GFM不支持

在需要添加注脚的文字后加上脚注名字[^脚注名字],称为加注。 然后在文本的任意位置(一般在最后)添加脚注,脚注前必须有对应的脚注名字。

脚注与脚注之间尽量空一行。

使用 Markdown[^1]可以效率的书写文档, 直接转换成 HTML[^2], 你可以使用 Leanote[^Le] 编辑器进行书写。

[^1]: Markdown是一种纯文本标记语言

[^2]: HyperText Markup Language 超文本标记语言

[^Le]: 开源笔记平台,支持Markdown和笔记直接发为博文

使用 Markdown[1]可以效率的书写文档, 直接转换成 HTML[2], 你可以使用 Leanote[3] 编辑器进行书写。

列表

支持使用有序列表和无序列表,有序列表用数字序号+英文句号+空格+列表内容来标记,无序列表由*/+/-+空格+列表内容来标记。

有序列表

有序列表的语法如下。

数字 + . + 空格 + 列表内容

1. 列表内容
2. 列表内容
3. 列表内容
  1. 列表内容
  2. 列表内容
  3. 列表内容

无序列表

无序列表的语法如下。

*/+/- + 空格 + 列表内容, 使用 */+/-来标记无序列表的效果是相同的。

推荐使用-。

* 使用【*】无序列表
* 使用【*】无序列表
* 使用【*】无序列表 + 使用【+】无序列表
+ 使用【+】无序列表
+ 使用【+】无序列表 - 使用【-】无序列表
- 使用【-】无序列表
- 使用【-】无序列表
  • 使用【*】无序列表

  • 使用【*】无序列表

  • 使用【*】无序列表

  • 使用【+】无序列表

  • 使用【+】无序列表

  • 使用【+】无序列表

  • 使用【-】无序列表
  • 使用【-】无序列表
  • 使用【-】无序列表

任务列表

任务列表的语法如下。

- [ ] 未勾选
- [x] 已勾选

任务列表的语法如下。

1)任务列表以-+空格开头,由 [空格/x] 组成。

2)x可以小写,也可以大写,有些编辑器可能不支持大写,所以为避免解析错误,推荐使用小写x。

3)当方括号中的字符为空格时,复选框是未选中状态,为x时是选中状态。

今日工作:
- [x] 吃
- [x] 喝
- [ ] 玩 明日计划:
- [ ] 吃
- [x] 吃鱼
- [ ] 吃瓜
- [ ] 玩
- [x] 睡

今日工作:

  • [x] 吃
  • [x] 喝
  • [ ] 玩

明日计划:

  • [ ] 吃

    • [x] 吃鱼
    • [ ] 吃瓜
  • [ ] 玩
  • [x] 睡

引用

引用由> 引用内容来标记

> 引用内容分

语法说明如下。

1)多行引用也可以在每一行的开头都插入>。

2)在引用中可以嵌套引用。

3)在引用中可以使用其他的Markdown语法。

4)段落与换行的格式在引用中也是适用的。

> 我是引用的句子。

> 这是多行引用的第一行,我的最后有两个空格
我是第二行。 > 这是多行引用的第一行
第二行,第二行前面有1个TAB > 引用中可以嵌套引用
>> 我是引用中嵌套引用 > 引用中使用其他 Markdown 标记[百度](https://baidu.com)
第二行,**加粗**和*斜体*也是支持的,第二行前面有4个空格

我是引用的句子。

这是多行引用的第一行,我的最后有两个空格

我是第二行。

这是多行引用的第一行

第二行,第二行前面有1个TAB

引用中可以嵌套引用

我是引用中嵌套引用

引用中使用其他 Markdown 标记百度

第二行,加粗斜体也是支持的,第二行前面有4个空格

图片

插入图片的语法如下。

![alt](/url "title")

语法说明如下。

1)alt在图片无法显示时显示的文字,title是鼠标放上去提示文字,都可以为空。

2)图片地址可以是本地图片的路径也可以是网络图片的地址。

3)本地图片支持相对路径和绝对路径两种方式。

![百度](https://www.baidu.com/img/PCfb_5bf082d29588c07f842ccde3f97243ea.png "百度一下,你就知道")

链接

文字链接

文字链接就是把链接地址直接写在文本中。语法是用方括号包裹链接文字,后面紧跟着括号包裹的链接地址,如下所示。

[link](/uri "title")
[百度](https://baidu.com "百度一下,你就知道")

百度

引用链接

引用链接是把链接地址作为变量先在Markdown文件的页尾定义好,然后在正文中进行引用。其语法如下。

[link][link reference]

[link reference]: /uri "title"
[百度][baidu]
[baidu]: https://baidu.com "百度一下,你就知道"

百度

网址链接

将网络地址或邮箱地址使用<>包裹起来会被自动转换为超链接。其语法如下。

<URL或邮箱地址>
<https://baidu.com>

<liudehua@162.com>

https://baidu.com

liudehua@162.com

锚点

网页中,锚点其实就是页内超链接,也就是链接本文档内部的某些元素,实现当前页面中的跳转。

[锚点描述](#锚点名)
[回到标题](#标题)

回到标题

代码

行内代码

行内代码引用使用`包裹,语法如下。

`代码`
使用`cd ..`命令切换到上一级目录

使用cd ..命令切换到上一级目录

代码块

代码块以Tab键或4个空格开头,语法如下。

以TAB键开头:
def print():
pass 或者以4个空格开头:
def print():
pass

以TAB键开头:

def print():
pass

或者以4个空格开头:

def print():
pass

围栏代码块

在基础语法中,代码块使用Tab键或4个空格开头;在扩展语法中,围栏代码块使用连续3个`或3个~包裹,还支持语法高亮,可读性和可维护性更强一些。

围栏代码块语法如下。

\```无编程语言名称
​```
代码片段
​``` \```有编程语言名称
​``` java
代码片段
​``` \~~~无编程语言名称
~~~
代码片段
~~~ \~~~有编程语言名称
~~~ java
代码片段
~~~

语法说明如下。

围栏代码块使用连续3个`或3个~包裹,支持语法高亮并可以加上编程语言的名字。

```无编程语言名称

String name = "Tom";
int age = 18;

```有编程语言名称

String name = "Tom";
int age = 18;

~~~无编程语言名称

String name = "Tom";
int age = 18;

~~~有编程语言名称

String name = "Tom";
int age = 18;

表格

表格的语法如下。

|表头1| 表头2 | 表头3|
|---- | ---- | ----|
|内容1 | 内容2 | 内容3|
|内容1 | 内容2 | 内容3|

语法说明如下。

1)单元格使用|来分隔,为了阅读更清晰,建议最前和最后都使用|。

2)单元格和|之间的空格会被移除。

3)表头与其他行使用-来分隔。

4)表格对齐格式如下。

左对齐(默认) :-

右对齐 -:

居中对齐 :-:

5)块级元素(代码区块、引用区块)不能插入表格中。

关于创建表格的建议如下。

1)在表格的前、后各空1行。

2)在每一行最前和最后都使用|,每一行中的|要尽量都对齐。

3)不要使用庞大复杂的表格,那样会难以维护和阅读。

普通表格
| 序号 | 标题 | 网址 |
| --- | ---- | --- |
| 01 | 博客 |https://cnblogs.com|
| 02 | 百度 |https://baidu.com| 对齐表格
| 左对齐 | 居中对齐 | 右对齐 |
| :--- | :----: | ---: |
| 01 | 博客 |https://cnblogs.com|
| 02 | 百度 |https://baidu.com| 表格使用其他标记
| 序号 | 标题 | 网址 |
| --- | ---- | --- |
| **01** | [博客](https://cnblogs.com) |https://cnblogs.com|
| *02* | [百度](https://baidu.com "百度一下,你就知道") |https://baidu.com|

普通表格

序号 标题 网址
01 博客 https://cnblogs.com
02 百度 https://baidu.com

对齐表格

左对齐 居中对齐 右对齐
01 博客 https://cnblogs.com
02 百度 https://baidu.com

表格使用其他标记

序号 标题 网址
01 博客 https://cnblogs.com
02 百度 https://baidu.com

表情符号

语法 效果
:smile:
:laughing:
:+1:
:-1:
:clap:

更多的表情符号请参考http://www.webpagefx.com/tools/emoji-cheat-sheet/。

高亮上标下标

GFM不支持

Typora默认未开启,需要在文件>偏好设置>Markdown>勾选Markdown扩展语法才能支持,请谨慎使用这几个语法。

高亮 ==高亮==

内容上标 内容^上标^

内容下标 内容~下标~

转义

当我们想在Markdown文件中插入一些标记符号,但又不想让这些符号被渲染时,可以使用\进行转义,语法如下。

\特殊符号

可被转义的特殊符号如下。

特殊符号 说明
\ 反斜杠
` 反引号
* 星号
_ 底线
{} 花括号
[] 方括号
() 括弧
# 井字号
+ 加号
- 减号
. 英文句号
! 感叹号

目录

GFM不支持

语法说明如下。

1)TOC是Table of Contents的缩写。

2)在想插入目录的位置输入

直接输入

效果如下图所示。

[TOC]

LaTeX公式(了解)

GFM不支持

Typora默认未开启,需要在文件>偏好设置>Markdown>勾选Markdown扩展语法才能支持。

LaTeX 是一种基于 TeX 的排版系统,由于它易于快速生成复杂表格和数学公式,非常适用于生成高印刷质量的科技和数学类文档。如果你常阅读数学、计算机等领域的学术论文,你一定对 LaTeX 不陌生。

行内公式

语法是使用$把数学公式包裹起来,如下所示。

$数学公式$
分数: $ f(x,y) = \frac{x^2}{y^3} $

开根号: $ f(x,y) = \sqrt[n]{{x^2}{^3}} $

省略号: $ f(x_1, x_2, \ldots, x_n) = x_1 + x_2 + \cdots + x_n $

分数: $ f(x,y) = \frac{x2}{y3} $

开根号: $ f(x,y) = \sqrt[n]{{x2}{3}} $

省略号: $ f(x_1, x_2, \ldots, x_n) = x_1 + x_2 + \cdots + x_n $

块间公式

语法是使用两个$包裹数学公式,如下所示。

$$
数学公式
$$
$$
{matrix}
1&0&0\\
0&1&0\\
0&0&1\\
\end{matrix}
$$

$$

\begin{bmatrix}

{a_{11}}&{a_{12}}&{\cdots}&{a_{1n}}\

{a_{21}}&{a_{22}}&{\cdots}&{a_{2n}}\

{\vdots}&{\vdots}&{\ddots}&{\vdots}\

{a_{m1}}&{a_{m2}}&{\cdots}&{a_{mn}}\

\end{bmatrix}

$$

$$
\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)}}
$$

$$

\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)}}

$$

更多的LaTeX数学公式请参考https://www.luogu.com.cn/blog/IowaBattleship/latex-gong-shi-tai-quan。

图表(了解)

横向流程图

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

竖向流程图

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

横向标准流程图

​```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
​```
st=>start: 开始框
op=>operation: 处理框
cond=>condition: 判断框(是或否?)
sub1=>subroutine: 子流程
io=>inputoutput: 输入输出框
e=>end: 结束框
st->op->cond
cond(yes)->io->e
cond(no)->sub1(right)->op

竖向标准流程图

​```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
​```
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

UML时序图

​```sequence
对象A->对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->对象A: 我很好(响应)
对象A->对象B: 你真的好吗?
​```
对象A->对象B: 对象B你好吗?(请求)
Note right of 对象B: 对象B的描述
Note left of 对象A: 对象A的描述(提示)
对象B-->对象A: 我很好(响应)
对象A->对象B: 你真的好吗?

UML时序图源码(复杂)

​```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: 没人陪我玩
​```
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: 没人陪我玩

UML标准时序图

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

甘特图

​```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
​```

本文地址:https://www.cnblogs.com/deeround/p/14831776.html

Git地址:https://github.com/deeround/WriteMarokdownUsingTypora


  1. Markdown是一种纯文本标记语言

  2. HyperText Markup Language 超文本标记语言

  3. 开源笔记平台,支持Markdown和笔记直接发为博文

使用Typora编写Markdown你真的会了吗的更多相关文章

  1. picgo+typora优化markdown体验

    picgo+typora优化markdown体验 写markdown的时候许多图片的存放的上传是一个大问题,之前一直都是使用先截图,在commit之后,再将线上图片地址粘贴到相应的位置 现在知道了pi ...

  2. Typora及Markdown的介绍及使用

    Typora及Markdown的介绍及使用 Typora是一款免费的Markdown编辑器,Typora不像其他Markdown编辑器一样使用一边代码一边预览的方式,而是写完代码之后直接出效果,所见即 ...

  3. 如何利用Typora编写博客,快速发布到多平台?

    在不同的平台发布同样的文章,最让人头疼的就是图片问题,如果要手动一个个去重新上传,耗时耗力,还容易搞错.下面分享的方法,可以将Typora编写的文章快速发布到CSDN.微信公众号.博客园.简书等平台. ...

  4. [6278009]使用Visual Stuido Code 编写Markdown

    使用Visual Stuido Code 编写Markdown void main() { printf("Hello world!"); } void main() { Cons ...

  5. Typora 和 markdown

    目录 Typora 和 markdown Typora 简单介绍 markdown语法 导出 Typora 和 markdown Typora 简单介绍 支持markdown的一款优雅的编辑器. 绿色 ...

  6. Typora的MarkDown语法快捷键

    Typora的MarkDown语法快捷键 1.标题 项目 快捷键一 快捷键二 一级标题 #+空格+文本+回车 Ctrl+1 二级标题 ##+空格+文本+回车 ctrl+2 三级-- ###-- ctr ...

  7. PicGo + Gitee +Typora实现markdown图床

    目录 1. PicGo安装 2.Gitee配置 3.配置PicGo 3.Typora的设置 网上有一些很详细的教程,我这里只记录要点,其余部分按以下教程步骤来就行. 1. PicGo安装 国内下载可能 ...

  8. 配置sublime text 3来编写Markdown

    如何使用sublime text 3编写Markdown  编写markdown的编辑器无论客户端还是在线的都有很多,这里将sublime text3作为markdown的编辑器,需要进行一些配置. ...

  9. Typora中Markdown学习

    Typora中Markdown学习 标题 可以自己设置标题级数,且各标题之间可在大纲处看到鲜明的层级关系,非常方便清楚. "#"--一级标题 "##"--二级标 ...

随机推荐

  1. Bug Hunt UVA - 1596

      In this problem, we consider a simple programming language that has only declarations of onedimens ...

  2. 鸿蒙手机版JNI实战(JNI开发、SO库生成、SO库使用)

    鸿蒙JNI开发现状 现阶段,不仅鸿蒙JNI相关的开发资料较少,而且Phone相关的JNI开发资料几乎没有,这对于新入行的鸿蒙开发者们来说,非常不友好. 也可能会给Android工程(使用了SO库的工程 ...

  3. POJ2044 深搜+剪枝(云彩下雨)

    题意:        有一个城镇,是4*4的大小的,然后你控制一块云彩,2*2的,你每天可以有9种走的方法,上下左右,或者不动,走的时候可以走1或者2步,云彩所在的地方肯定会下雨,然后给你做多365天 ...

  4. 绕过CDN查找网站真实ip

    在渗透测试过程中,经常会碰到网站有CDN的情况.CDN即内容分发网络,主要解决因传输距离和不同运营商节点造成的网络速度性能低下的问题.说的简单点,就是一组在不同运营商之间的对接点上的高速缓存服务器,把 ...

  5. Ubuntu Linux 学习篇 配置DNS服务器

    BIND9 DNS(Domain Name Server,域名服务器)是进行域名(domain name)和与之相对应的IP地址 (IP address)转换的服务器.DNS中保存了一张域名(doma ...

  6. python 读写 HDFS

    pandas dataframe写入hdfs csv文件的两种方式: 1. from hdfs.client import Client cleint.write(hdfs_url, df.to_cs ...

  7. 基于 registry 搭建 Docker 私有镜像仓库

    今天主要介绍使用 registry 来搭建 Docker私有镜像仓库,方便在公司内部项目中使用,registry 也是 Docker 官方提供的一个镜像,操作也很简单. dockerhub: http ...

  8. C# 泛型Generic

    泛型(Generic),是将不确定的类型预先定义下来的一种C#高级语法,我们在使用一个类,接口或者方法前,不知道用户将来传什么类型,或者我们写的类,接口或方法相同的代码可以服务不同的类型,就可以定义为 ...

  9. 比物理线程都好用的C++20的协程,你会用吗?

    摘要:事件驱动(event driven)是一种常见的代码模型,其通常会有一个主循环(mainloop)不断的从队列中接收事件,然后分发给相应的函数/模块处理.常见使用事件驱动模型的软件包括图形用户界 ...

  10. 【tee小白的第一篇随笔】keystone代码略读

    武大信安在读,最近在自学Risc-v架构的可信执行环境. (实验报告多半是为了交差.临时起意写写博客,分享一些自己读代码的心得理解.) 本篇内容由队和我友总结而成,如有错误欢迎指正交流. keysto ...