Markdown是一种简单的标记语言,用于文档排版。Markdown通常编译为HTML再由浏览器渲染,十分适合记录笔记。不同的Markdown编辑器可能遵循的标准略有不同,但是由于Github的广泛使用,使得Github的Markdown语法几乎成为事实标准。本文是Markdown的cheatsheet,列出了Markdown的常用语法。
Markdown编辑器个人认为使用体验最好的是Typora,它是一个非常有创意的WYSIWYG编辑器,正版价格也十分便宜,物超所值。对于程序员来说,VSCode也是一个十分合适的Markdown编辑器,但本体的Markdown编辑功能较弱,因此推荐配合插件使用,这里目前推荐安装Markdown All in One
这个插件。
# h1
## h2
### h3
#### h4
##### h5
###### h6
under-line style h1
======
under-line style h2
------
*斜体* or _斜体_
**粗体** or __粗体__
结合 **粗体 和 _斜体_**
~~删除线~~
* 无序列表1
* 无序列表2
1. 无序列表中的有序子列表
* 无序列表3
* 无需子列表
1. 有序列表1
2. 有序列表2
* 有序列表中的无序子列表
3. 有序列表3
1. 有序子列表
[谷歌](http://google.com)
![](../res/1.jpg)
行内代码:
`npm install`
代码块(使用三个反引号):
for i in range(0, 1):
print("hello")
| Tables | Are | Cool |
| ------------- |:-------------:| -----:|
| col 3 is | right-aligned | $1600 |
| col 2 is | centered | $12 |
| zebra stripes | are neat | $1 |
> 这是引用
分割线
***
换行:两次Enter才能换行(也就是两个段落需要间隔一个空行)
HTML兼容:可以配合使用HTML完成Markdown无法完成的效果(比如插入HTML5视频),但影响可读性因此不推荐使用
链接:允许HTTP的URL、本地文件的URL,支持相对URL
行内公式:
$a^b$
独立公式:
$$a^b$$
关于Latex数学公式的语法,它其实还是有点复杂的。对于这些语法,其实我们没必要学习更没必要记忆,用到时现查即可。个人建议是使用图形化的公式编辑器,编辑完成后将Latex公式复制到Markdown中,这样编辑笔记时不需要太大的心智负担。
我们在浏览器中渲染Markdown可以使用marked.js
这个库:
https://github.com/markedjs/marked
Markdown渲染在客户端完成的好处是节约服务器性能;服务端渲染的好处是避免了额外JavaScript库的加载,加速页面响应。大多数后端语言也都有现成的Markdown编译库,比如PHP的parsedown
:
如果还需要内嵌代码着色功能,可以配合使用highlight.js
: