本文用于记录基于VS code进行markdown的编写。
序章
在这里,我将使用markdown记录下如何使用markdown进行笔记记录。
本来我更喜欢使用word来进行笔记记录,但是由于近期想要往知识分享网站上传我的笔记,word需要慢慢的修改各个格式,尤其是公式修改,实在是过于繁琐,所以我选择以后使用markdown进行笔记记录。这里只是记录了三部分基础语法,感兴趣的朋友可以参考这个进行markdown学习。
本文大量引用此处教程
第一章 环境搭建
markdown只是一个轻量级的标记语言,所以它并不需要编译器来进行编译,我选择使用VScode进行编写,同时将文件导出路径设置为wps云文档内,从而实现文档云同步。具体的安装流程可以自行百度。
第二章 常规语法
(1)标题
标题分为Setext和Atx两种写法,本文使用的为Atx写法,即在内容前使用1到6个#
进行标题区分,对应HTML的<h1> ~ <h6>
;而Setext采用3个连续的=
代表一级标题,3个连续的-
代表二级标题。
注意:不同的渲染引擎会导致不同的效果。
(2)段落
1)换行不分段
同HTML一样,如果想进行不分段换行,可以使用<br>
折断文字,同时不分段。
2)首行缩进
由于英文本身就是顶格写不缩进,所以markdown本身没有缩进语法,常用缩进手段有两种,一种为通过空格进行缩进,空格主要有 
半角空格、 
全角空格、
不换行空格三种;一种为利用HTML样式进行缩进,例如使用<style>p{text-indent:2em}</style>
,好处是可以不用反复输入空格,缩进的样式也更好修改。
(3)分割线
连续三个-
、_
和*
都可以出现分割线,同样可以和HTML一样使用CCS修改样式。
(4)文本样式
1)文字样式
markdown主要有以下几种样式:*斜体文本*
、_斜体文本_
、**粗体文本**
、__粗体文本__
、***粗斜体文本***
、___粗斜体文本___
、~~划删除线的文本~~
。
更多的样式可以使用CCS。
2)代码显示
我们可以显示代码,例如:
#include "stdio.h"
int main()
{
printf("C语言代码格式");
}
通过在两排```
之间填写内容,即可实现代码显示效果。同时,如果在第一排的```
后面加上代码语言,还可进行自动高亮显示。例如上文为```C
+ 代码 + ```
。
(5)文本分块
我们可以通过在前面标记“>
”来将一些有共同特征的文本设置为同一块,比如:
第一级,使用“
>文本
”第二级,使用“
>>文本
”第三级,使用“
>>>文本
”,以此类推
注意:此处由于没指定类使用了HTML进行缩进,所以也受到了缩进。
(6)文本列表
1)无序列表
可以通过列表进行结构化输出,例如:
- 使用
+
、*
、-
均可以进行结构化,效果是一样的-
- 连续使用两个符号即可出现这样的效果
-
-
- 这是连续使用三个的效果
-
-
-
- 这是四个的效果
-
-
-
-
-
- 可以看到,到此时已经不会再改变样式了
-
-
-
-
-
- 如果我们删除第一级的符号,只使用第二级的符号是这个效果
-
2)有序列表
列表还可以通过使用数字.
来呈现,效果如下:
1.效果
2.效果
虽然上面看起来和直接打出数字类似,但是实际上上文是列表。
(7)文本链接
1)网址链接
有三种常用方式,[链接名称](网址)
效果如下:
也可以使用<网址>
,效果如下:
同时我们可以使用变量对网址进行链接[链接名称][网址变量名称]
,然后使用[网址变量名称]:网址
(最好在文档尾部使用,便于修改),效果如下:
2)带格式的链接
对于超链接加上前文所述格式,也可以实现同样的加粗、删除线等效果,例如:
(8)图片语法
插入图片的语法为:
,使用效果如下:
给图片增加链接的语法为:[](网址链接)
,使用效果如下:
注意:由于图片需要链接,所以最好给自己找一个合适的图床,推荐使用腾讯云COS+Picgo。
第三章 高级技巧
(1)目录管理
1)自动生成
使用[TOC]
可直接生成目录(如本文)。
2)手动编辑
利用列表和页内超链接实现手动创建目录:
- [一级标题](#一级标题)
- [标题 1-1](#二级标题 1-1)
- [标题 1-2](#二级标题 1-2)
- [二级标题](#二级标题)
- [标题 2-1](#二级标题 2-1)
- [标题 2-2](#二级标题 2-2)
- [一级标题](#一级标题)
- [标题 1-1](#二级标题 1-1)
- [标题 1-2](#二级标题 1-2)
- [二级标题](#二级标题)
- [标题 2-1](#二级标题 2-1)
- [标题 2-2](#二级标题 2-2)
# 一级标题
一些内容……
## 二级标题 1-1
一些内容……
## 二级标题 1-2
一些内容……
# 二级标题
一些内容……
## 二级标题 2-1
一些内容……
## 二级标题 2-2
一些内容……
(2)表格
表格由竖线|
、减号-
、冒号:
三种符号组成:
- 竖线
|
:定义列,每两个竖线之间为一个单元格的元素。 - 减号
-
:分割表头与数据 - 冒号
:
:用于控制表格对齐
|表头A|表头B|
|----|----|
|a|1|
|b|2|
|c|3|
实际效果如下:
|表头A|表头B|
|----|----|
|a|1|
|b|2|
|c|3|
左对齐|:--|
、居中|:--:|
、右对齐|--:|
,使用后一列都会为一个样式。
(3)Latex公式
1)行中公式
格式为$公式$
,可以写出在行中的公式,样式如下:
行中$1 + 2 = 3$公式
2)独立公式
采用$$
在开始和结尾,同时在行尾添加\\
实现换行,比如:
$$
1+2=3\\5-2=3\\3+3=6
$$
效果如下:
$$
1+2=3\\5-2=3\\3+3=6
$$
3)四则运算符号
加法符号:$x+y=z$
减法符号:$x-y=z$
加减符号:$x \pm y=z$
减加符号:$x \mp y=z$
叉乘符号:$x \times y=z$
点乘符号:$x \cdot y=z$
星乘符号:$x \ast y=z$
除法符号:$x \div y=z$
斜除符号:$x/y=z$
分式1:$\frac{x+y}{y+z}$
分式2:${x+y} \over {y+z}$
绝对值:$|x+y|$
加法符号:$x+y=z$
减法符号:$x-y=z$
加减符号:$x \pm y=z$
减加符号:$x \mp y=z$
叉乘符号:$x \times y=z$
点乘符号:$x \cdot y=z$
星乘符号:$x \ast y=z$
除法符号:$x \div y=z$
斜除符号:$x/y=z$
分式1:$\frac{x+y}{y+z}$
分式2:${x+y} \over {y+z}$
绝对值:$|x+y|$
4)逻辑运算符号
等于符号:$x+y=z$
大于符号:$x+y>z$
小于符号:$x+y<z$
大于等于符号:$x+y \geq z$
小于等于符号:$x+y \leq z$
不等于符号:$x+y \neq z$
不大于等于符号:$x+y \ngeq z$
不大于等于符号:$x+y \not\geq z$
不小于等于符号:$x+y \nleq z$
不小于等于符号:$x+y \not\leq z$
约等于符号:$x+y \approx z$
恒定等于符号:$x+y \equiv z$
等于符号:$x+y=z$
大于符号:$x+y>z$
小于符号:$x+y<z$
大于等于符号:$x+y \geq z$
小于等于符号:$x+y \leq z$
不等于符号:$x+y \neq z$
不大于等于符号:$x+y \ngeq z$
不大于等于符号:$x+y \not\geq z$
不小于等于符号:$x+y \nleq z$
不小于等于符号:$x+y \not\leq z$
约等于符号:$x+y \approx z$
恒定等于符号:$x+y \equiv z$
5)高等运算符号
平均数符号:$\overline{xyz}$
开二次方符号:$\sqrt x$
开方符号:$\sqrt[3]{x+y}$
对数符号:$\log(x)$
极限符号:$\lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
极限符号:$\displaystyle \lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
求和符号:$\sum^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
求和符号:$\displaystyle \sum^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
积分符号:$\int^{\infty}_{0}{xdx}$
积分符号:$\displaystyle \int^{\infty}_{0}{xdx}$
微分符号:`\partial`,如:$\frac{\partial x}{\partial y}$
矩阵符号:$\left[ \begin{matrix} &1 &2 &\cdots &4 &5 &6 &\cdots &8\\ &\vdots &\ddots &\cdots &13 &14 &15 &\cdots &16\end{matrix} \right]$
上标符号:$x^2$
下标符号:$y_1$
组合符号:$a^{x^{2}+y^{2}}$
平均数符号:$\overline{xyz}$
开二次方符号:$\sqrt x$
开方符号:$\sqrt[3]{x+y}$
对数符号:$\log(x)$
极限符号:$\lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
极限符号:$\displaystyle \lim^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
求和符号:$\sum^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
求和符号:$\displaystyle \sum^{x \to \infty}_{y \to 0}{\frac{x}{y}}$
积分符号:$\int^{\infty}_{0}{xdx}$
积分符号:$\displaystyle \int^{\infty}_{0}{xdx}$
微分符号:\partial
,如:$\frac{\partial x}{\partial y}$
矩阵符号:$\left[ \begin{matrix} &1 &2 &\cdots &4 &5 &6 &\cdots &8\\ &\vdots &\ddots &\cdots &13 &14 &15 &\cdots &16\end{matrix} \right]$
上标符号:$x^2$
下标符号:$y_1$
组合符号:$a^{x^{2}+y^{2}}$
6)希腊字符
阿尔法:$\Alpha$,$\alpha$
贝塔:$\Beta$,$\beta$
伽玛:$\Gamma$,$\gamma$
德尔塔:$\Delta$,$\delta$
艾普西龙:$\Epsilon$,$\epsilon$
捷塔:$\Zeta$,$\zeta$
依塔:$\Eta$,$\eta$
西塔:$\Theta$,$\theta$
艾欧塔:$\Iota$,$\iota$
喀帕:$\Kappa$,$\kappa$
拉姆达:$\Lambda$,$\lambda$
缪:$\Mu$,$\mu$
拗:$\Nu$,$\nu$
克西:$\Xi$,$\xi$
欧麦克轮:$\Omicron$,$\omicron$
派:$\Pi$,$\pi$
柔:$\Rho$,$\rho$
西格玛:$\Sigma$,$\sigma$
套:$\Tau$,$\tau$
宇普西龙:$\Upsilon$,$\upsilon$
发艾:$\Phi$,$\phi$
器:$\Chi$,$\chi$
普赛:$\Psi$,$\psi$
欧米伽:$\Omega$,$\omega$
阿尔法:$\Alpha$,$\alpha$
贝塔:$\Beta$,$\beta$
伽玛:$\Gamma$,$\gamma$
德尔塔:$\Delta$,$\delta$
艾普西龙:$\Epsilon$,$\epsilon$
捷塔:$\Zeta$,$\zeta$
依塔:$\Eta$,$\eta$
西塔:$\Theta$,$\theta$
艾欧塔:$\Iota$,$\iota$
喀帕:$\Kappa$,$\kappa$
拉姆达:$\Lambda$,$\lambda$
缪:$\Mu$,$\mu$
拗:$\Nu$,$\nu$
克西:$\Xi$,$\xi$
欧麦克轮:$\Omicron$,$\omicron$
派:$\Pi$,$\pi$
柔:$\Rho$,$\rho$
西格玛:$\Sigma$,$\sigma$
套:$\Tau$,$\tau$
宇普西龙:$\Upsilon$,$\upsilon$
发艾:$\Phi$,$\phi$
器:$\Chi$,$\chi$
普赛:$\Psi$,$\psi$
欧米伽:$\Omega$,$\omega$
(4)脚注尾注
脚注尾注只是注释位置不同,由于大部分情况markdown没有分页的概念,所以大多使用尾注。使用[^脚注ID]
进行标注,使用[^脚注ID]:
进行描述,例如:
这里有脚注^1
(5)功能图绘制
需要在功能图前面写上```类型
,在后面写上```
才能正常显示,下面进行部分展示:
.```mermaid
%% 实际使用时去掉“ ``` ”前的小数点“.”,时序图例子,-> 直线,-->虚线,->>实线箭头
sequenceDiagram
participant 张三
participant 李四
张三->王五: 王五你好吗?
loop 健康检查
王五->王五: 与疾病战斗
end
Note right of 王五: 合理 食物 <br/>看医生...
李四-->>张三: 很好!
王五->李四: 你怎么样?
李四-->王五: 很好!
.```
.```mermaid
graph LR
A[方形] -->B(圆角)
B --> C{条件a}
C -->|a=1| D[结果1]
C -->|a=2| E[结果2]
F[横向流程图]
.```
.```mermaid
graph TD
A[方形] --> B(圆角)
B --> C{条件a}
C --> |a=1| D[结果1]
C --> |a=2| E[结果2]
F[竖向流程图]
.```
(6)任务完成选择框
在无序列表+
、-
、*
后使用[ ]
代表选择框,填入x代表勾选,填入空格代表未勾选,例如:
+ [x] 选上
+ [x] 选上
+ [ ] 没选上
+ [x] 选上
- [x] 选上
- [x] 选上
- [ ] 没选上
- [x] 选上