2021.12.10 更新
Typora 最新版本要收费了,但是旧版本依然是免费的,如果对现有的 Bug 不介意的话,还是可以继续下载使用免费的旧版本的。
=======================================================
为什么要用 Markdown 和 Typora
Markdown( *.md ) 是现在非常流行的一种文档书写语言,用户只需用一些非常简单易记的语法格式就可以轻松写出一篇具有良好的排版和可读性的文章。就像其作者 John Gruber 描述的那样, "to write using an easy-to-read, easy-to-write plain text format, and optionally convert it to structurally valid XHTML or HTML". 可以把 Markdown 看作轻量级的 Latex 语言,虽然功能不如 Latex 那么强大,但是 Markdown 简单的语法基本可以满足普通文档的书写。
原则上,所有的文本编辑器都可以用来书写 Markdown 文件,但是专用的 Markdown 编辑器更方便预览、修改。我在选择 Markdown 编辑器时,比较看中两点:
- 有导航栏或者目录,最好是在侧边,而不是在文档的头部。这样对于比较长的文档,可以很容易定位到某一特定位置,而不需要拉回到文档头部再点击超链接。
- 可以实时显示最终的效果,这样书写效率更高一些,更容易纠错。
虽然现在的 Markdown 编辑器很多,但他们的交互形式基本都是将编辑和预览分离开来的,要么是直接左右排列编辑和预览窗口 (有些还不能自动同步滚动页面),要么是要在两种模式之间来回切换,实在是麻烦且不够直观。而 Typora 则不同,它只使用一个窗口,能同时将代码编辑与预览结合起来,从而为用户带来更加流畅直观的所见即所得的 Markdown 写作体验。同时,Typora 在文档左侧提供了 outline,很方便文档定位。 而且 Typora 左侧还可以显示文件夹目录,具备简单的文档管理功能。
如何安装Typora
安装过程很简单,按照 Typora官网 指导即可。
具体的安装代码如下:
wget -qO - https://typora.io/linux/public-key.asc | sudo apt-key add -
# or run:
# sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys BA300B7755AFCFAE
# add Typora's repository
sudo add-apt-repository 'deb https://typora.io/linux ./'
sudo apt-get update
# install typora
sudo apt-get install typora
安装之后,就可以直接在里面书写了,下面总结一下自己常用的 Markdown 语法。
Markdown 基本语法
1. 标题
在想要设置为标题的文字前面加#:一个#是一级标题,二个#是二级标题,以此类推。支持六级标题。
注意: 标准语法一般在#后跟个空格再写文字。
示例:
# 一级标题
## 二级标题
### 三级标题
效果如下:
一级标题
二级标题
三级标题
2. 字体
可以简单的将字体加粗或者倾斜
加粗时把要加粗的文字左右分别用两个*号包起来
倾斜时把要倾斜的文字左右分别用一个*号包起来
将要倾斜和加粗的文字左右分别用三个*号包起来
示例
**加粗**
*倾斜*
***加粗倾斜***
效果如下:
加粗
倾斜
加粗倾斜
3. 列表
要显示有编号的列表,只需要在行首用数字+.
开头。以该数字为起点开始编号,并逐行增加,不受后边编号的影响。
6. text1
0. text2
3. text3
显示效果:
- text1
- text2
- text3
要显示不带编号的列表,只需要把上述的数字+.
替换成-
即可。
- text1
- text2
- text3
显示效果:
- text1
- text2
- text3
列表可以嵌套,只需要在头部加空格:
1. text1
- subtext1
- subtext2
2. text2
显示效果:
- text1
- subtext1
- subtext2
- text2
4. 段落 引用
语法借鉴了 EMAIL 中的格式,用 > 表示一层引用,>> 表示两层,可以继续嵌套,例如
> 我也很没用,但是两个人一起的话,就会变得很坚强。 ----古河渚
>> 能哭的地方,只有厕所,和爸爸的怀里。 ----冈崎汐
显示效果如下:
我也很没用,但是两个人一起的话,就会变得很坚强。 ----古河渚
能哭的地方,只有厕所,和爸爸的怀里。 ----冈崎汐
5. 超链接
添加超链接的方式有 inline 和 referenced 两种,格式分别如下:
# inline 方式
[text](url)
例如:
[Typora官网](https://www.typora.io/)
中括号里为显示内容,小括号里为链接地址
显示效果:
Typora官网
# referenced 方式
[text][ref]
[ref] : https://www.typora.io/
例如:
[Typora官网][ref_1]
....其他文字内容 ...
[ref_1] : https://www.typora.io/
显示效果:
Typora官网
6. 插入图片
与超链接几乎相同,只不过在最前边加上感叹号 !
。
也是有 inline 和 referenced 两种方式
语法如下:
# inline 方式
![图片alt](图片地址 )
# referenced 方式
![图片alt][ref]
[ref]: 图片地址
图片alt 是图片不能正常显示时备用的文字,但有些编辑器是当作图片下方的标题说明。
图片地址可以是网络地址 url,也可以是本机图片所在路径。
例如:
![这是图片标题文字或备用文字](http://i.imgur.com/fF8f2LM.jpg)
显示效果如下:
基本的 Markdown 语言不能设置图片大小,好在很多 Markdown 编辑器(包括 Typora)支持 html 语言格式,因此我们可以用如下的命令插入指定大小的图片
<img src="file_path" alt="show me if img is not loaded" width=300 height=300 align="center"> # 指定宽和高
# 或者
<img src="picture1.png" alt="drawing" style="zoom:50%"/> # 指定缩小 50%
7. 原样显示代码
单行代码:代码之间分别用一个反引号 (一般键盘布局中,数字 1 键左边那个) 括起来,例如
`代码`
多行代码:用三个反引号括起来,例如
```
代码
```
为了让代码显示某种编程语言的风格,尤其是关键词高亮,还可以指明编程语言,例如
```python
def func():
return "something"
```
8. 表格
例如
| value1 | value2 | value3 |
| :--| :---: | ----: |
| 1 | 2 | 3|
| 4 | 5 | 6|
显示效果
value1 | value2 | value3 |
---|---|---|
1 | 2 | 3 |
4 | 5 | 6 |
其中 -- 的数量比较随意,一个以上就可以了,冒号对应了左、右、中对齐排列
9. 公式
公式的书写格式与 latex 类似。
- 单行公式
一般用 $ . . . $ 符号把要显示的公式内容括起来,例如
$ a^2 + b^2 = c^2$
显示效果:
- 多行公式
$$
\begin{align}
y &= Ax + Bu \\
z &= cx
\end{align}
$$
显示效果:
- 分段函数:
$$
\begin{cases}
y = 1 & \text{if $~~x \le 0$} \\
y = 2 & \text{if $~~x > 0$}
\end{cases}
$$
- 矩阵
$$
A = \left[
\begin{matrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{matrix}
\right]
$$
还有更简单的书写方式,不再额外定义括号格式,而是在矩阵环境中直接设定:
$$
A=\begin{bmatrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{bmatrix}
$$
除了 bmatrix,还有其他比较常用的矩阵环境如下:
圆括号
$$
A=\begin{pmatrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{pmatrix}
$$
大括号
$$
A=\begin{Bmatrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{Bmatrix}
$$
行列式形式
$$
A=\begin{vmatrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{vmatrix}
$$
范数形式
$$
A=\begin{Vmatrix}
1 & 2 & 3 \\
4 & 5 & 6 \\
7 & 8 & 9
\end{Vmatrix}
$$
10. 总结
我记得有人说过一个下午就可以学会 Latex,那么学会 Markdown 大概只需要几分钟吧。本文总结了常用的 Markdown 语法规则,大概可以应对绝大部分的写作要求了。如果想更全面的学习 Markdown 语法和细节,可以参考这个教程。
注意:不同的编辑器对 Markdown 语法的解读可能会有稍微的差别,上边的介绍不保证在所有的 Markdown 编辑器中都有相同的预览效果。Typora 编辑器额外提供了一些特殊的文档结构,例如任务列表。也可以通过界面直接选择创建列表、表格等,非常方便。
Written by shaohua
Revised by QP