markdown 学习/练习文章
作者:《了不起的Markdown》-- 毕小朋
摘要: 本文内容摘自《了不起的Markdown》。该书全面、系统地介绍了Markdown的语法规范、编辑器及各种应用场景,内容围绕Markdown使用者的痛点展开,力求简明、实用。
本文依据书中内容只做自己相关的摘抄,也作为Markdown的练习文章。
已获得作者授权。
购买链接:https://item.jd.com/12669274.html
第一章 基础用法
1.1 #号
1.1.1用法
#+空格+标题
一个#表示一级标题,如:# 2022年终总结。
依次类推:
‘#’和’=='表示一级标题。
‘##’和‘__’表示二级标题。
‘###’表示三级标题。
等等等等
注意:
-
‘=’和‘_’最少使用2个以上。且只能用于2个级别文章内容。
不建议使用 -
每增加一个’#’,表示增加一个标题级别,最多6个级别。
推荐使用 ✔
1.1.2 注意事项
- 不要有多余的空格,开头结尾都不要加上多余的空格。
#+空格+标题
即可。 - 标题部分不要加标点符号,句号,逗号,分号等等都不要。
- 标题内容不宜过长,要简短扼要。
- 一级标题建议与文件名相同。
- 可增加 作者,摘要,目录 便于文档的规范性和导航阅读。
- 正文:从二级目录开始,逐级增加,不可跳级。
1.2 粗体和斜体
1.2.1 用法
**
和__
都表示加粗,用法** + 内容 + **
或__ + 内容 + __
。
*
和_
都表示斜体 ,用法* +内容+ *
或_ +内容+ _。
1.2.2 注意事项
1.由2个*(星号)
或者2个_(下划线)
包裹组成的是加粗 ;
由1个*(星号)
或者1个_
(下划线)包裹组成的是斜体。
2.符号和内容之间不要增加空格。
3.不推荐使用_(下划线)
,因为不方便后期的维护工作。
1.3段落与换行
1.3.1 用法说明
1.如果行与行之间没有空行,则会被看成同一个段落。
2.空行指什么内容都没有,只有空格和制表符。
3.如果想在段内换行,则在上一行的结尾插入两个以上的空格然后按回车键。
4.一行不要超过80个字符,同代码一样,不方便阅读。
5.如果确实超过80个字符,就使用换行方法,增加一个空行或者两个空格再回车。
1.4 列表
1.4.1 有序列表
数字序号+英文句号+空格+列表内容来标记,如:
1.我有一个梦想。
2.我有两个梦想。
3.我有三个梦想。
1.4.2 无序列表
-/+/* +空格+列表内容 。
+ 我有一个梦想。`
- 我又有一个梦想。`
* 我还有一个梦想 。`
效果为:
- 我有一个梦想。
- 我又有一个梦想。
- 我还有一个梦想 。
1.4.3 嵌套列表
TAB + 空格 + 列表内容
Tab 第一层列表
效果为:
- 第一层列表。
- 第二层列表。
- 第三层列表。
1.第四层列表。
2.我也是第四层列表。
1.4.4 注意事项
- 推荐使用
-
来使用嵌套列表,*
容易跟斜体和加粗进行混淆,+
并不流行。 - 有换行时候间隔2个空格。没有换行间隔1个空格就可以 。
- 每个列表只有1行,建议有空行;每个列表有多行,保留1个空行,用以区分多行列表的开始和结束。
- 只能在每行开头使用,中间就不会生效(不包括星号)。
- 列表的前后都空1行。以达到美观的效果。
- 列表每行用英文的句号,内容结尾用中文句号。
1.5 分隔线
1.5.1 说明
在Markdown中,用3个以上的`*/-/_`来标记。
效果为:
星号
***
减号
---
下划线
___
1.5.2 注意事项
1.分割线必须有3个以上的*/-/_
来标记。
2.行内不能有其他符号。
3.可以在标记符中间加上空格。
4.我使用中发现,连续三个减号会让前面的字体加大,中间加空格就没问题。
1.6 图片
1.6.1 说明
用法模式:! [图片说明](图片链接)
CDNS有自己的上传图片的方式,不能用这个链接方法。
1.6.2 注意事项
1.[图片说明]在图片加载不出来的时候有用,正常情况不写。
2.图片地址可以是本地文件,也可以是网络图片。
3.本地图片支持相对路径和绝对路径。例如:
(./示例图片.png)
(C:\Users\Administrator\Desktop\示例图片.png)
4.我发现在同目录下的图片能链接,绝对路径不能。
1.7 链接
1.7.1 说明
用法模式1:文本链接
文字链接就是把链接地址直接写在文本中 。
例如:
`[链接文字](链接地址)`,
[百度搜索](https://www.baidu.com/)
效果为:
用法模式2:引用链接
在文中先定义一个链接标记,再在底部引用标记地址,例如:
>我常用的网站有 `[链接标记]`
>
>底部再引用地址 `[链接标记]:https://www.xxxxxx.com/`
实例:
我常用的网站有 [哔哩哔哩动画]
[哔哩哔哩动画]:https://www.bilibili.com/
效果为:
我常用的网站有 哔哩哔哩动画
3.网址链接
网址链接用<>包裹起来,会自动转换成超链接
实例:
<https://www.bilibili.com/>
1.7.2 注意事项
1.链接文字
要注明清楚,最好不要用 “这里” 表示
2.引用链接时,链接标记可以有字母,数字,空格和标点符号。
3.链接标记不区分大小写。
4.定义的链接内容可以放在任意文字,但建议放在页尾(最后),方便以后维护。
5.当链接的地址为网址的时候,要以http/https
开头,否则会被识别为本地地址。
6.网址链接中,不要加上空格,会识别不出来。
1.8 代码和代码块
1.8.1 用法
1.行内代码-单句代码 使用反引号(~键)包裹,例如:
python中打印结果使用print输出 `print('你好')`
效果为:
python中打印结果使用print输出
print('你好')
2.代码块,代码模块,使用table(Tab键)或者4个空格开头,例如:
def test():
pass
1.8.4 注意事项
1.代码块需要和文本之间中间需要空一行。
2.反引号也可以用于转义或者强调某些字符,如引用某段话或者说明。
如果你想跑路,可以执行
rm -f * /
命令
如果你不想跑路
,请限制执行删除命令的权限
3.简单代码,就使用TAB或者4个空格键
4.代码块,建议使用围栏代码块
,开头结尾各3个反引号(~键)。
```Python
def print_name():
print('MarkDown')
```
效果为:
def print_name():
print('MarkDown')
1.9 引用
1.9.1 用法
在MarkDown中,引用由 > + 引用
内容来标记,如下:
> 引用内容
效果为:
引用内容
1.9.2 注意事项
1.多行引用也可以在每行的开头都插入 >。
2.在引用中可以嵌套引用。
3.在引用中可以使用其他的MarkDown语法。
4.段落和换行的格式在引用中也是使用的。
5.建议在>后加上一个空格。
6.不要在多行引用中增加空行。
7.建议在每行的引用都加上’>’.
8.结束引用是加上空行.
1.10 转义
1.10.1用法
在Markdown文档中,插入一些标记符号,又不想符号被渲染,可以使用\
进行转义,语法如下:
\ 反斜线
` 反引号(~键)
* 星号
_ 下划线
{} 花括号
() 括弧
# 井字号
+ 加号
- 减号
. 英文句号
!感叹号
效果为:
\你好;*你好; _你好 ; {你好} ; [你好]
第二章 拓展语法GFM
2.1 删除线
2.1.1 用法
使用一对~~包裹被删除的文字~~
效果为:
被删除的文字
2.1.2 注意事项
1.左右两边各2个波浪号
2.使用单边是不会生效的
2.2 表情符号
2.2.1 用法
:表情代码:
:smile:
:+1:
:clap:
效果为:
😄,👍,👏
2.2.2 注意事项
1.左右各1个:(冒号)。
2.单边冒号不会生效。
3.符号中间不能增加空格。
2.3 自动链接
1.就是啥也不用加,直接写网址 www.baidu.com。
2.我发现CSDN直接写不会自动转换成链接。
3.不想自动链接,加上`(~键)符号包裹起来就行了。
2.4 表格
2.4.1 用法
1.单元格用|(竖线)表示,为了阅读清晰,建议最前和最后都使用。
2.单元格和|(竖线)之间的空格都会被移除。
3.表头与其他行用-(减号)来分隔。
4.表格对齐方式
- 左对齐(默认) :
- 右对齐 -:
- 居中对齐 :-:
- CSDN感觉像是居中对齐是默认。其他的不知道
5.代码区块和引用区块不能插入表格中。
举例为:
#### 表格格式
| 序号 | 标题 | 网站网址 |
| ---- | ---- | --------------------- |
| 01 | 百度 | https://www.baidu.com |
| 02 | B站 | https://bilibili.com |
#### 对齐格式
| 左对齐 | 居中对齐 | 右对齐 |
| :----- | :------: | --------------------: |
| 01 | 百度 | https://www.baidu.com |
| 02 | B站 | https://bilibili.com |
#### 表格内使用其他标记
| 序号 | 标题 | 网站网址 |
| ---- | ----------------------------- | --------------------- |
| 01 | [百度](https://www.baidu.com) | https://www.baidu.com |
| 02 | [B站](https://bilibili.com) | https://bilibili.com |
效果为:
表格格式
序号 标题 网站网址 01 百度 https://www.baidu.com 02 B站 https://bilibili.com 对齐格式
左对齐 居中对齐 右对齐 01 百度 https://www.baidu.com 02 B站 https://bilibili.com 表格内使用其他标记
| 序号 | 标题 | 网站>网址 |
| ---- | :----: |>:---------------------------: |
| 01 | 百度 | https://www.baidu.com |
| 02 | B站 | https://bilibili.com |
2.4.2 注意事项
1.在表格前后,各自空出一行。
2.在每行开头和最后都使用|(竖线),每行中的|都尽量对齐。
3.不推荐使用庞大复杂的表格。
2.5 任务列表
2.5.1 用法
- + 空格 + [空格/x] + 内容
-[ ] 未勾选
-[x] 已勾选
例如:
今天计划
- [ ] 学习
- [ ] 健身
- [x] 看电视
明天计划
- [ ] 学习
- [ ] python
- [x] Markdown
- [ ] 健身
- [x] 早睡早起
效果为:
今天计划
- 学习
- 健身
- 看电视
明天计划
- 学习
- python
- Markdown
- 健身
- 早睡早起
2.5.2 注意事项
1.x可以为小写,也可以为大写,有的编辑器不支持大写,为避免解析错误,推荐小写。
2.当[ ]中为空格时候是未选中,为x表示选中。可以在文档中修改。
3.[ ]增加多余的空格,任务列表会失效的,变成列表标识。
(见1.4.2无序列表。)
2.6 锚点
2.6.1 用法
锚点也是书签,用来标记文档的特定位置,使用锚点可以跳转到当前文档或其他文档中指定的标记位置。
[锚点描述](#锚点名)
2.6.2 注意事项
1.锚点名建议使用字母和数字,中文也支持,但不排除有的网站支持的不够好。
2.锚点名区分英文大小写。
3.锚点名不能包含空格和特殊字符。
4.个人觉得就是搞目录的嘛。
2.7 排版技巧
2.7.1 说明
1.推荐排版样式–公众号"谷歌开发者" 和付费平台"得到"。
2.不好的排版看起来比较乱,拥挤,格式不统一。
2.7.2 空格的使用
1.建议在中文和英文之间加上空格,中/英文和数字之间也加上空格。(不过有的编辑器和输入法自带间隙就不用手动增加了)
2.英文的标点和后面的字符之间需要加上空格,和前面的字符就不用
3.中文的标点就不需要加上空格,自带间隙。
4.数字和单位之间不需要加上空格。
5.英文和数字组合名字之间不需要添加空格,如Win 7 -> Win7
6.货币符号后面不用添加空格,如¥8
2.7.3 使用正确的专有名词
1.IPhone7 -> iphone 7;MacOS -> macOS
第三章 VScode
我使用的是VScode,其他的编辑器相关内容不会记录。
3.1 安装中文插件
1.Ctrl+Shift+X(Windows)进入插件市场
2.搜索框输入[Chinese]。
3.单击【Chinese (Simplified) (简体中文) Language Pack for Visual Studio Code】,再选择安装。
4.重启生效。
1.推荐主题插件 One Dark Pro
。
2.推荐快捷键插件 IntelliJ IDEA Key Bindings for Visual Studio Code
2.1 常用的快捷键插件
- IntelliJ IDEA Key Bindings for Visual Studio Code
- Sublime Text Keymap and Settings Importer
- Visual Studio Keymap
- Atom Keymap
- Vi m
- Notepad++keymap
- Eclipse Keymap
3.启动/禁用/卸载插件,在已安装中找到不想使用的插件,单机进去后选择禁用或者卸载,重启生效。
3.2 超级Markdown插件MPE
Markdown Preview Enhanced(简称MPE)是一款超级强大的插件
3.2.1 插入目录
方法1.在文件中输入[TOC],然后回车按键
方法2:调出命名行面板(Ctrl+P/Ctrl+Shift+P/右键选择命令面板),输入[TOC],在自动关联列表中选择[Markdown Preview Enhanced:Create TOC](MPE:创建目录列表),保存。
3.2.2 引用文件
MPE可以非常方便的应用外部文件,支持 .md、.csv、.jpg、.png、.gif、.html、.pdf
用法为:
@import "文件名" 或者 <!-- @import "文件名"-->
@import "test.md"
<!-- @import "\new_project\一起学习PYthon\项目学习\MakeDown\test.md" -->
可以使用相对路径和绝对路径,也可以链接网络路径
效果为:
@import “test.md”
3.2.3 引用图片
@import "F:\new_project\一起学习PYthon\项目学习\MakeDown\示例图片.png"
<!-- @import "F:\new_project\一起学习PYthon\项目学习\MakeDown\示例图片.png" -->
效果为:
@import “F:\new_project\一起学习PYthon\项目学习\MakeDown\示例图片.png”
3.2.3.1 引用图片设置图形属性
@import "示例图片.png" {width="200px" height="150px" title="表情" alt="这是我的表情包"}
title表示标题。
alt表示啥?
效果为:
@import “示例图片.png” {width=“100px” height=“300px” title=“表情” alt=“这是我的表情包”}
3.2.4 引用表格CSV
@import "test.csv"
效果为:
@import “test.csv”
引用功能在VScode可以显示出来,在CSDN中不能显示,CSDN应该可以直接使用自带功能就行了。`
3.3 幻灯片(略,我不用)
<!-- slide -->
# 第一页
猜猜我是谁
<!-- slide -->
# 第二页
![](示例图片.png)
我是小猪
3.4 导出文件
1.1 导出HTML文件–在预览界面,右键HTML->HTML(offline),就会导出到同级目录中。
1.2 需要同步更新,则在MarkDown文件头部加上
---
export_on_save:
html: true
---
2.1.导出PDF-(Pupprteer)
安装Pupprteer,然后选择【Chrome(Pupprteer)->PDF即可】
安装命令:
npm insatll -g pupperteer
2.2.1 导出PDF-(Prince)
使用prince导出的PDF文件回自动生成目录,也支持自动导出功能。
2.2.2 需要同步更新,则在MarkDown文件头部加上
---
export_on_save:
prince: true
---
每次修改完Markdown文件之后,只要进行保存,就会自动导出最新的PDF文件。
3.5 高效便捷–命名面板
1.打开命令面板快捷键:Ctrl+p / Ctrl+Shift+P
2.查询命令操作帮助: ? (单个英文的问号)
3.运行命令: > 例如命令面板输入:>Markdown(不要冒号) ,会列出所有与Markdown相关的操作命令。
4.行跳转: :行号 (命令行不需要加上小于号>)例如::570 ->回车。会快速跳转到指定行。
5.折叠内容:在每个#号和`(~键)前都有折叠符号,可以将内容折叠。
6.自动保存:
- 菜单栏->文件->自动保存->单击(会打上对勾)。每间隔1000ms就会自动保存。
- 左下角管理->设置,搜索“auto save delay”或者“自动保存”,可以修改时间
- 左下角管理->设置->Auto Save,可以修改自动保存的策略。默认是afterDelay方式。
1)afterDelay:当文件修改超过一定的时间(默认是1000ms)时自动保存。
2)onFocusChange:当编辑器失去焦点时自动保存更新后的文件。
3)onWindowChange:当窗口失去焦点时自动保存更新后的文件。
7.智能感知:通过智能感知,自动补全,默认ctrl+空格,和切换中英文冲突,需要自行解决。
3.6 Markdown All in One
1.格式化表格:Alt+Shift+F(Windows系统)
|ONE|TWO|THREE| | ONE | TWO | THREE |
|----|----|----| -->> | --- | --- | ----- |
|1|2|3| | 1 | 2 | 3 |
2.图片路径的自动联想
![举例](案例图片.png)
我在使用过程中打出左括号时候会自动联想,点其他地方再点回来就不会自动联想了。
CSDN使用上面功能会报错:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-0jN09s0v-1644391475256)(案例图片.png)]
3.其他功能自行摸索。
3.7 自定义代码片段(略)
1.可以将常用,重复使用的代码片段录到VScode里面,要使用的时候直接调用(目前我没有用到,略)
3.8 语法检查 markdownlint
1.安装markdownlint插件,有问题的地方会有波浪线显示,鼠标放在波浪线上,有个小灯泡,点击小灯泡就能解决语法问题.
2.怎么能全文解决呢?要一个一个点多麻烦,目前我只能对照markdownlint文档进行修正。
3.9 酷炫字体–Power Mode
1.【管理】→【设置】→输入[Powermode]→找到PowerEnable→勾选【Enable to active POWER MODE!!!】。
2.我目前用不到,先记录下来。
3.10 拼写检查–Code Spell Checker
1.能够帮助我们检查常见的拼写错误,变量未遵循驼峰拼写法的规则时,则会在其下发出现波浪线。
3.11 禅模式
方法1.【菜单栏】→【查看】→【外观】→【切换禅模式】。
方法2.命令面板 (Ctrl+Shift+P) 输入 禅
3.12 版本管理–git
相关插件:
1)GitLens:增强了VS Code内置的Git功能。
2)Git History:增强了Git提交历史的功能。
3)gitignore:可以帮助我们使用.gitignore文件。
git后面再学习。