最近在学习网络编程相关的知识,用博客来记录下学习过程,上篇博客记录了Windows平台下基于C语言的基本CS模型。优快云博客集成了Markdown的编辑环境,并且利用菜单栏的“傻瓜式”操作我们可以轻松完成博客的创作,但是当我们脱离了这种环境再利用Markdown创作博客时就需要对Markdown指令有一定的了解,我以前对Markdown的使用不多,对其指令、语法不太熟悉,因此最近系统学习了一下Markdown语法,用本篇博客记录一下,如果你也在学习相关知识的话希望可以帮到你。
1. 什么是Markdown
- Markdown 是一种轻量级标记语言,它允许人们使用易读易写的纯文本格式编写文档。
- Markdown 语言在 2004 由约翰·格鲁伯(英语:John Gruber)创建。
- Markdown 编写的文档可以转换为 HTML 、Word、图像、PDF、Epub 等多种格式的文档。
- Markdown 编写的文档后缀为 .md, .markdown。
- 简而言之,Markdown语法简洁,省去了Word中大量的文字排版时间,因此我们可以更专注于码字。它语法简洁明了、上手快,功能比纯文本更强,因此很多人用它写技术博客、帮助文档和在各种论坛上发表消息。
2.Markdown编辑器
当下Markdown编辑器有很多,主流的有Typora、VScode等,各种编辑器都有自己的优点与缺点。大多数编辑器的Markdown语法大同小异,我们只需要熟练使用一到两种就可以,其它的都大同小异,可以做到触类旁通,在需要使用其它Markdown编辑器时上手很快。由于各种Markdown编辑器我也没有全部都用过,因此这里我们不过多阐述,有兴趣的朋友可以参考Markdown编辑器测评。
3.Markdown语法
下面我们将介绍Markdown语法中最常用的命令,熟练使用这些命令我们完全可以写出格式漂亮的博客,我们将这些命令分为三大类:格式类(标题、有序、无序、分层、文字引用和缩进)、字体类(斜体、粗体、斜粗体、高亮、删除线和下划线)和插入类(公式、程序、图片、超链接、表格、页内跳转和特殊字符)。
3.1 格式类
- 标题
Markdown文章的标题分为六级标题,分别为(注:#与字体间有一个空格):
# 一级标题
## 二级标题
### 三级标题
#### 四级标题
##### 五级标题
###### 六级标题 - 缩进
一般段落开头需要缩进,但输入多个空格在Markdown中通常只显示一个。
不换行空格
  半角空格
  全角空格 - 有序列表
输入一个阿拉伯数字,加一个点号,再加一个空格,后面跟上正文,我们在这一节的标题、缩进、有序等用的就是这个语法(有序列表如果需要缩进的话直接在前面缩进即可)。
1. 第一条
2. 第二条
… - 无序列表
在我们需要列举几条信息的时候,如果不需要序号则可以用无序列表,语法如下(加号也可以换成减号,效果一样,如果某一行需要缩进在前面直接缩进即可):
+ 第一条
+ 第二条
+ …
效果如下:
- 第一条
- 第二条
- 这一条缩进了
- 还可以继续缩进
- 这一条缩进了
- …
- 文字引用
对于文字引用,有这种语法,但我现在还没有用过,感觉用处不大,语法如下:
> 第一层
> >第二层
> >>第三层
>> 这样跳不出来
> >
> >跳到第二层
>>
>跳到第一层
上述程序效果如下所示:
第一层
第二层
第三层
这样跳不出来跳到第二层
跳到第一层
- 分割线
连续三个 - 或连续三个 * 都可以对博文进行分割
语法:— 或 ***
效果:
3.2 字体类
- 斜体:将文字放在两个 * 之间(注:星号与字体之间不能有空格)
语法:*斜体*
效果:斜体 - 加粗:将文字放在两个 ** 之间(注:星号与字体之间不能有空格)
语法:**粗体**
效果:粗体 - 加粗斜体:将文字放在两个 *** 之间(注:星号与字体之间不能有空格)
语法:***加粗粗体***
效果:加粗斜体 - 高亮字体:将文字放在两个 == 之间(注:星号与字体之间不能有空格)
语法:==高亮==
效果:高亮 - 变色字体:
语法:<font color=‘red’> 这里填写需要变色的字体 </font>
效果: 这里填写需要变色的字体
注:在语法中‘red’处可以填写其它的颜色,相应的字体、字号都可以改变,细节可以可以看markdown 文字样式设置 - 下划线:语法如下
语法:<u>下划线</u>
效果:下划线 - 删除线:将文字放在两个 ~~ 之间
语法:~~要删除的文字~~
效果:要删除的文字 - 特殊字符输入
语法:如果我们需要输入一些特殊字符,但是输入该字符后却成为了Markdown的相关语法而不显示,这时我们在特殊字符前加一个转义符 \ 即可(比如在上文中为了显示相关语法源代码,我们就用了该方法)。
3.3 插入类
- 插入公式
关于公式编辑的语法可以参考MathJax,由于我们手动输入公式语法较为复杂,网上有一些在线的公式编辑器我感觉不太稳定,在这里我们可以借用mathtype软件输入公式后直接复制到Markdown中即可,mathtype中具体的设置方式可以参考mathtype中文网。比如我们在mathtype中输入 a 2 = b 2 + c 2 {{\rm{a}}^2} = {b^2} + {c^2} a2=b2+c2,我们复制公式粘贴到Markdown中的代码是:\[{{\rm{a}}^2} = {b^2} + {c^2}\],这时我们需要手动删除代码中开头的 \[ 和结尾的 \[ ,并且公式两端的$与公式之间不能有空格。
语法:${{\rm{a}}^2} = {b^2} + {c2}$
效果: a 2 = b 2 + c 2 {{\rm{a}}^2} = {b^2} + {c^2} a2=b2+c2 - 插入表格
插入表格的语法也比较复杂,也没有什么第三方编辑器自动生成表格,但是绝大多数Markdown编辑器带有自动生成表格的功能,推荐使用自动生成表格功能,在这里我们简单介绍表格相关语法。
语法:
|商品|数量|单价|
|-| :-------: | :------: |
|苹果|10|$1|
|电脑|1|$1000|
效果:
商品 | 数量 | 单价 |
---|---|---|
苹果 | 10 | $1 |
电脑 | 1 | $1000 |
- 插入代码块
在英文输入法下输入 ``` 为程序段的开始,同样以 ``` 作为程序段的结束。
语法:
```C
在此处输入程序;
```
效果:
#include<stdio.h>
int main()
{
printf("Yes, I can!");
return 0;
}
-
插入图片
图片分为本地图片和网络图片,根据Markdown语法上传图片需要图片的地址,网络图片我们很容易获取图片的地址,但是上传本地图片时我们不能提供图片在电脑上的绝对路径,通常我们可以通过拖拽的方式将本地图片上传到博客中。
语法: -
插入超链接
插入超链接的语法与插入图片的语法类似,只需要把插入图片语法开头的 !删除即可。
语法:[链接描述](链接地址地址) -
页内跳转
(1) [点我跳转](#跳转标签)
(2) <h6 id=‘跳转标签’>Hello</h6>
上面两条语法可以在目录处使用,在“点我跳转”处输入相关内容,在需要跳转到的地方输入第二条语句(注:这两条语句“跳转标签”处内容必须一样)。
先写到这里,如果以后发现有需要补充的我会继续完善。