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 这个语法,是非常适合文档写作的,因为它有丰富的图形显示,比如列表,表格,图片,关系图甚至是表情。