Markdown指南
Markdown是一种轻量级的易用的书写语法。本文是Markdown的一个快速指南1。
什么是Markdown?
Markdown是一种通过少量简单的标记字符来格式化文本的方法。您可以用纯文本来书写文档,然后在阅读时呈现一个美观的排版。
其实并没有一个标准的Markdown语法,很多编辑器都会添加自己的扩展语法。不同于此,为了兼容性,VNote仅仅支持那些被广泛使用的基本语法。
如何上手Markdown?
如果您是刚接触Markdown,那么比较好的一个方法是逐个学习Markdown语法。刚开始,懂得标题和强调语法就能够写出基本的文档;然后,每天可以学习一个新的语法并不断练习。
字体颜色测试语法指南
下面是VNote支持的Markdown语法的一个概览。
标题
1 | # This is an <h1> tag |
注意:
#之后需要至少一个空格;- 一个标题应该占一整行;
强调
1 | *This text will be italic* |
注意:
- VNote推荐使用
*; - 如果渲染错误,请尝试在第一个
*之前以及最后一个*之后添加一个空格。如果被标记的文本是以全角符号开始或结尾,一般都需要前后添加一个空格; - VNote提供快捷键
Ctrl+I和Ctrl+B来插入斜体和粗体;
列表
无序列表
1 | * Item 1 |
有序列表
1 | 1. Item 1 |
表格
1 | | col 1 | col 2 | col 3 | |
图片和链接
1 |  |
注意:
- VNote不推荐使用参考式的图片链接。VNote不会预览这些图片。
- 声明图片尺寸只在 markdown-it 中支持。
块引用
1 | As VNote suggests: |
注意:
>标记后面需要至少一个空格;- 多行连续的引用可以只在第一行添加标记;
代码块
1
This is a fenced code block.
1
This is another fenced code block.
注意:
lang用于指定代码块的代码语言,可选;如果不指定,VNote不会尝试高亮代码;
图表
需要在
Markdown菜单中启用Flowchart.js或Mermaid或WaveDrom,并重新打开当前标签页。
VNote支持使用以下引擎来绘制图表。您需要使用代码块,并标明特定语言,然后在代码块里面定义图表。
- Flowchart.js,语言为
flow或flowchart; - Mermaid,语言为
mermaid; - WaveDrom,数字时序图,语言为
wavedrom;
例如,
1
2
3
4
5
6
7
8
9
10
11
st=>start: Start:>http://www.google.com[blank]
e=>end:>http://www.google.com
op1=>operation: My Operation
sub1=>subroutine: My Subroutine
cond=>condition: Yes
or No?:>http://www.google.com
io=>inputoutput: catch something...
st->op1->cond
cond(yes)->io->e
cond(no)->sub1(right)->op1
UML
需要在设置中启用PlantUML。如果使用在线的PlantUML服务器,请注意隐私问题;如果使用本地PlantUML,可能需要安装Java运行时、PlantUML以及Graphviz。
VNote支持 PlantUML 来实现UML图表。您需要使用代码块,并标明语言为puml,然后在代码块里面定义图表。
1
2
3
@startuml
Bob -> Alice : hello
@enduml
Graphviz
需要在设置中启用Graphviz。
VNote支持 Graphviz 来绘制图表。您需要使用代码块,并标明语言为dot,然后在代码块里面定义图表。
数学公式
需要在
Markdown菜单中启用MathJax,并重启VNote。
VNote通过 MathJax 来支持数学公式。默认的块公式的分隔符是…$$。
- 行内公式不能跨多行;
- 形如
3$abc$/和的不会被解析为公式; - 使用
\转义$; - 开始的$$$$之前以及结束的$$$$之后都只允许出现空格字符;
VNote也可以使用标明语言mathjax的代码块来实现块公式。
1 | $$ |
块公式支持公式序号:
$$vnote x markdown = awesome$$ (1.2.1)
行内代码
1 | Here is a `inline code`. |
如果想输入一个 ` ,需要使用两个 ` 来括住它,例如 1
2
3
4
### 删除线
```md
Here is a ~~text~~ with strikethrough.
注意:
- VNote提供快捷键
Ctrl+D来插入带有删除线的文本;
任务列表
1 | - [x] this is a complete item. |
脚注
1 | This is a footnote [^1]. |
上标和下标
需要在
Markdown菜单中启用上标和下标并使用Markdown-it渲染引擎。
1 | This is the 1^st^ superscript. |
警告
使用Markdown-it渲染引擎时,可以添加警告信息。
1 | ::: alert-info |
可用的一些警告形式如下:
1 | alert-primary |
换行和段落
如果需要换行,您应该在当前行末尾添加两个空格,然后换行。VNote提供快捷键Shift+Enter来辅助用户输入两个空格并换行。
如果需要一个新的段落,您应该先插入一个空行然后才输入新的段落的文本。
一般来说,您应该在一个块元素(例如代码块、列表和块引用)后面插入一个空行来显式结束该元素。
1. 该指南参考了 Mastering Markdown. ↩