Markdown - 轻文本格式
Markdown - 轻文本格式
官方首页,我采用的编辑器为 MarkText,开源地址(GitHub),文档目录,语法手册
基础语法
- 标题的#和标题之间需要有一个空格
- 结束一行需要在最后敲两个以上的空格,然后回车,空格换行这个比较有争议,最完美的方式是在行末放上一个
<br>
,不过在 Mart Text 中没有这样的烦恼 - 加粗或者斜体都最好用
*
,而不是_
, 在字符的前后用三个*
表示同时使用加粗和斜体 - 无序列表最方便的是用
-
。在列表中加入别的元素然后再继续编号这个 Mark Text 已经优化的很好,按回车就可以搞定了,回车还可以跳出列表标号的自动标注,变成普通的一行,多级列表可以通过按Tab
调整层级 - 表示代码的那个反引号,需要在英文输入法下点击 esc 下面那个按键才能按出来
- 表示代码块可以直接按四个空格,比 Mark Text 中的快捷键快多了
- 水平线用
-
最方便,直接敲三个-
比快捷键快 - 链接网址的括号里在网址的后面空格之后加上引号,引号里写的一段话,这段话会在鼠标放到链接上的时候显示,Mark Text 快捷键
Ctrl+L
- 这个 引用链接 很有意思,跟论文一样,不过在 Mart Text 中,第一部分的两个中括号不能分开,否则无法识别
- URL 中的空格统一用
%20
表示 - 图片的格式和链接很像,区别是图片以
!
开头,图片的插入 Mark Text 已经优化得非常好了,快捷键Ctrl+Shift+I
- 转义字符
\
- MarkDown 中可以直接使用 HTML 标签,这很方便。
高级语法
- 原生的表格用
|
和-
来画表格的写法其实很繁琐,Mark Text 对表格得支持很好,快捷键Ctrl+Shift+T
,官方说想要在表格中画|
的话可以通过 HTML 符号|
,我用了,没有效果 - 围栏代码块(Fenced Code Blocks),和之前的敲四个空格代码块的渲染的是一样的东西(按道理来说应该是不一样的东西,但是 Mart Text 渲染成一样的东西了)。也可以通过敲三个反引号调出。代码块最大的好处就是可以通过输入代码语言来进行语法高亮。
- Mark Text 好像不支持 footnote,不过没关系,引用链接 已经够用了
- Mark Text 的 heading id 和 MarkDown 的 heading id 功能不一样,具体看 Mark Text 手册,这个功能无法实现在 editor 中的跳转,只能在网页中实现跳转,其实就是个 A 标签。
- Mark Text 不支持定义列表(definition list)
- Mart Text 对任务列表的支持非常好,快捷键
Ctrl+Alt+X
- 表情,先输入两个连续英文冒号,然后在两个冒号中间输入表情短码(只能是英文),输入的过程中 Mark Text 会有表情预览,非常方便
数学公式
其他的更复杂的请参考:史上最全 Markdown 公式、符号总结!!!-CSDN 博客
行内与独行
-
行内公式:将公式插入到本行内,符号:
$公式内容$
,如: -
独行公式:将公式插入到新的一行内,并且居中,符号:
$$公式内容$$
,如:
上标、下标与组合
- 上标符号,符号:
^
,如:,注意,如果指数有多位,则需要用 {}
包起来,例如 - 下标符号,符号:
_
,如: - 组合符号,符号:
{}
,如:
字体与格式
-
字体控制,符号:
\displaystyle
,如: -
下划线符号,符号:
\underline
,如: -
标签,符号
\tag{数字}
,如: -
上大括号,符号:
\overbrace{算式}
,如: -
下大括号,符号:
\underbrace{算式}
,如: -
上位符号,符号:
\stacrel{上位符号}{基位符号}
,如:
占位符
- 两个 quad 空格,符号:
\qquad
,如: - quad 空格,符号:
\quad
,如: - 大空格,符号
\
,如: - 中空格,符号
\:
,如: - 小空格,符号
\,
,如: - 没有空格,符号 ``,如:
- 紧贴,符号
\!
,如:
定界符与组合
- 括号,符号:
()\big(\big) \Big(\Big) \bigg(\bigg) \Bigg(\Bigg)
,如: - 中括号,符号:
[]
,如: - 大括号,符号:
\{ \}
,如: - 自适应括号,符号:
\left \right
,如:, - 组合公式,符号:
{上位公式 \choose 下位公式}
,如: - 组合公式,符号:
{上位公式 \atop 下位公式}
,如:
四则运算
- 加法运算,符号:
+
,如: - 减法运算,符号:
-
,如: - 加减运算,符号:
\pm
,如: - 减甲运算,符号:
\mp
,如: - 乘法运算,符号:
\times
,如: - 点乘运算,符号:
\cdot
,如: - 星乘运算,符号:
\ast
,如: - 除法运算,符号:
\div
,如: - 斜法运算,符号:
/
,如: - 分式表示,符号:
\frac{分子}{分母}
,如: - 分式表示,符号:
{分子} \voer {分母}
,如: - 绝对值表示,符号:
||
,如:
高级运算
-
平均数运算,符号:
\overline{算式}
,如: -
开二次方运算,符号:
\sqrt
,如: -
开方运算,符号:
\sqrt[开方数]{被开方数}
,如: -
对数运算,符号:
\log
,如: -
极限运算,符号:
\lim
,如: -
极限运算,符号:
\displaystyle \lim
,如: -
求和运算,符号:
\sum
,如: -
求和运算,符号:
\displaystyle \sum
,如: -
积分运算,符号:
\int
,如: -
积分运算,符号:
\displaystyle \int
,如: -
微分运算,符号:
\partial
,如: -
矩阵表示,符号:
\begin{matrix} \end{matrix}
,如: -
矩阵拓展,两侧有竖线的矩阵
\begin{vmatrix} \end{vmatrix}
,如
矩阵
-
两侧有竖线的矩阵
\begin{vmatrix} \end{vmatrix}
,如 -
两侧为双竖线的矩阵
\begin{Vmatrix} \end{Vmatrix}
,如 -
两侧为中括号的矩阵
\begin{bmatrix} \end{bmatrix}
,如 -
两侧为大括号的矩阵
\begin{Bmatrix} \end{Bmatrix}
,如
方程组
- 方程组左侧有大括号符号,
\begin{cases} \end{cases}
,例如
逻辑运算
- 等于运算,符号:
=
,如: - 大于运算,符号:
>
,如: - 小于运算,符号:
<
,如: - 大于等于运算,符号:
\geq
,如: - 小于等于运算,符号:
\leq
,如: - 不等于运算,符号:
\neq
,如: - 不大于等于运算,符号:
\ngeq
,如: - 不大于等于运算,符号:
\not\geq
,如: - 不小于等于运算,符号:
\nleq
,如: - 不小于等于运算,符号:
\not\leq
,如: - 约等于运算,符号:
\approx
,如: - 恒定等于运算,符号:
\equiv
,如:
集合运算
- 属于运算,符号:
\in
,如: - 不属于运算,符号:
\notin
,如: - 不属于运算,符号:
\not\in
,如: - 子集运算,符号:
\subset
,如: - 子集运算,符号:
\supset
,如: - 真子集运算,符号:
\subseteq
,如: - 非真子集运算,符号:
\subsetneq
,如: - 真子集运算,符号:
\supseteq
,如: - 非真子集运算,符号:
\supsetneq
,如: - 非子集运算,符号:
\not\subset
,如: - 非子集运算,符号:
\not\supset
,如: - 并集运算,符号:
\cup
,如: - 交集运算,符号:
\cap
,如: - 差集运算,符号:
\setminus
,如: - 同或运算,符号:
\bigodot
,如: - 同与运算,符号:
\bigotimes
,如: - 实数集合,符号:
\mathbb{R}
,如: - 自然数集合,符号:
\mathbb{Z}
,如: - 空集,符号:
\emptyset
,如:
数学符号
- 无穷,符号:
\infty
,如: - 虚数,符号:
\imath
,如: - 虚数,符号:
\jmath
,如: - 数学符号,符号
\hat{a}
,如: - 数学符号,符号
\check{a}
,如: - 数学符号,符号
\breve{a}
,如: - 数学符号,符号
\tilde{a}
,如: - 数学符号,符号
\bar{a}
,如: - 矢量符号,符号
\vec{a}
,如: - 数学符号,符号
\acute{a}
,如: - 数学符号,符号
\grave{a}
,如: - 数学符号,符号
\mathring{a}
,如: - 一阶导数符号,符号
\dot{a}
,如: - 二阶导数符号,符号
\ddot{a}
,如: - 上箭头,符号:
\uparrow
,如: - 上箭头,符号:
\Uparrow
,如: - 下箭头,符号:
\downarrow
,如: - 下箭头,符号:
\Downarrow
,如: - 左箭头,符号:
\leftarrow
,如: - 左箭头,符号:
\Leftarrow
,如: - 右箭头,符号:
\rightarrow
,如: - 右箭头,符号:
\Rightarrow
,如: - 底端对齐的省略号,符号:
\ldots
,如: - 中线对齐的省略号,符号:
\cdots
,如: - 竖直对齐的省略号,符号:
\vdots
,如: - 斜对齐的省略号,符号:
\ddots
,如:
希腊字母
字母 | 实现 | 字母 | 实现 |
---|---|---|---|
A | A |
α | \alhpa |
B | B |
β | \beta |
Γ | \Gamma |
γ | \gamma |
Δ | \Delta |
δ | \delta |
E | E |
ϵ | \epsilon |
Z | Z |
ζ | \zeta |
H | H |
η | \eta |
Θ | \Theta |
θ | \theta |
I | I |
ι | \iota |
K | K |
κ | \kappa |
Λ | \Lambda |
λ | \lambda |
M | M |
μ | \mu |
N | N |
ν | \nu |
Ξ | \Xi |
ξ | \xi |
O | O |
ο | \omicron |
Π | \Pi |
π | \pi |
P | P |
ρ | \rho |
Σ | \Sigma |
σ | \sigma |
T | T |
τ | \tau |
Υ | \Upsilon |
υ | \upsilon |
Φ | \Phi |
ϕ | \phi |
X | X |
χ | \chi |
Ψ | \Psi |
ψ | \psi |
Ω | \v |
ω | \omega |
视频
Markdown 本身不具有插入视频的功能。但是 Markdown 支持 HTML 的标签,在 HTML 中我们可以用 <video>
标签插入视频
<video width="320" height="240" controls>
<source src="movie.mp4" type="video/mp4">
</video>
或者
<video src="movie.mp4.mp4" controls="controls" width="500" height="300"></video>
当然,除了 .mp4
它还支持其他的格式,但原生仅支持播放 ogg/mp4/webm 格式。不支持播放 FLV 格式视频。
Type | Filename Extension |
---|---|
video/ogg | ogg /ogv /ogm |
video/webm | webm |
video/mp4 | mp4 |
然而,浏览器并不是都支持相同的 视频格式,所以你可以在 <source>
元素里提供多个视频源,然后浏览器将会使用它所支持的第一个源。
<video width="320" controls loop>
<source src="myVideo.mp4" type="video/mp4">
<source src="myVideo.webm" type="video/webm">
<source src="myVideo.ogv" type="video/ogg" />
<p>Your browser doesn't support HTML5 video. Here is
a <a href="myVideo.mp4">link to the video</a> instead.</p>
</video>
属性:
controls
: 允许用户控制视频的播放,包括音量,跨帧,暂停/恢复播放。width
: 视频显示区域的宽度,单位是 CSS 像素。height
: 展示区域的高度,单位是 CSS 像素。loop
: 布尔属性;指定后,会在视频结尾的地方,自动返回视频开始的地方。src
: 要嵌到页面的视频的 URL。可选;你也可以使用 video 块内的<source>
元素来指定需要嵌到页面的视频。
MarkText
MarkText 的图表 还挺有意思的,主要来自于 flowchart.js, mermaid and Vega-Lite 的支持,把这几个语言中的画图的脚本复制进来即可,棒!
关注 MarkText 更新,
-
看什么啥时候能加上 File Session
-
默认不适用打字机模式,只有撤销的时候才用打字机模式。PS:打字机模式下,滚动条会跟随鼠标位置
MarkText 只是个一般的应用,性能比不上 Sublime 或者 VSCode,不管是性能也好,快捷键也好,还是版本管理,要么就是很羸弱,要么直接没有,所以平常心看代 MarkText 就好。
换到 VScode 加插件的模式
有几个插件可选择
- Markdown Editor,最终采用这个
- 不支持在打开 md 文件的时候自动打开 markdown 编辑器,相关 issue 讨论,于是我通过鼠标快捷键绑定
Ctrl + Alt + Shift + M
解决
- 不支持在打开 md 文件的时候自动打开 markdown 编辑器,相关 issue 讨论,于是我通过鼠标快捷键绑定
- Office Viewer(Markdown Editor)
在 VSCode 中编写 md 的体验还是太差,还是换回 MarkText,:sob::sob::sob::sob::sob::sob:
其他
Markdown 这个语法,是非常适合文档写作的,因为它有丰富的图形显示,比如列表,表格,图片,关系图甚至是表情。