使用vscode编写markdown文档(使用Markdown Preview Enhanced和markdownlint两个插件)以及若干配置
使用vscode编写markdown文档(使用Markdown Preview Enhanced和markdownlint两个插件)以及若干配置
- 问题描述
- 插件下载
- 配置
- 1.实现公式自动编号
- 2.插入图片并将图片存储到某个确定的文件夹
- 3.文档语法检查与自动格式化
问题描述
使用vscode+Markdown Preview Enhanced+markdownlint进行markdown文档的编写
插件下载
我下载了下面这两个插件进行markdown的编辑,其中Markdown Preview Enhanced进行预览,markdownlint用于markdown语法的筛查(所以这个不一定要安装)。
配置
下载之后进行相关配置可以更好的完成markdown的渲染工作,每个配置都能实现相关的功能。
1.实现公式自动编号
在vscode中按ctrl+shift+p
,然后选择Preferences: Open User Settings (JSON)
在打开的json文件中输入如下内容
// markdown-preview-enhanced相关选项"markdown-preview-enhanced.mathRenderingOption": "MathJax",
这样就是设置数学公式的渲染选项是MathJax
,默认的是KaTex
,相比之下MathJax
功能更多一点。
然后再打开ctrl+shift+p
,选择Markdown Preview Enhanced: Open Config Script (Global)
。
在打开的文件中将默认的
({katexConfig: {"macros": {}
},mathjaxConfig: {tex: {},options: {},loader: {}
},mermaidConfig: {"startOnLoad": false
},
})
替换为
({katexConfig: {"macros": {}
},mathjaxConfig: {tex: {tags: 'all'},options: {},loader: {}
},mermaidConfig: {"startOnLoad": false
},
})
这样就可以实现公式自动编号了。
这里有一个点需要注意,我在查阅资料的时候,在MathJax官方文档查询的结果是设置 tex: {tags: 'ams'},
,但是我这里设置之后发现并没有起作用,而在github上的一个提问中,有人提出设置'all'
是可行的,所以我这里设置all
之后发现确实可行。
2.插入图片并将图片存储到某个确定的文件夹
如果什么也不设置,向.md文档中插入图片,那么图片会被默认存储在.md文档同级的文件夹中。
我下载了许多向.md文档中插入图片的vscode插件,其中部分能够使用,但是每个插件都有缺陷,不能让我满意。结果我最终发现vscode是天生自带markdown支持的,进行如下设置即可:
同样输入ctrl+shift+p
,然后选择Preferences: Open User Settings (JSON)
在打开的json文件中插入如下内容
// 向markdown文件插入图片的路径和名称"markdown.copyFiles.destination": {"**/*": "${documentDirName}/docs/${documentBaseName}.assets/${unixTime}.${fileExtName}"},
这个内容表示将插入到.md文档中的图片存储在.md文档同级文件夹下的docs/<markdown文件名.md>.assets/文件夹下,而文件的名字是当前时间戳加拓展名,能够符合我使用的要求。
3.文档语法检查与自动格式化
安装了markdownlint插件后,就会自动审查markdown文档中的语法,按照规则如果出现警告了会进行提示。
如果要开启自动格式化功能,同样输入ctrl+shift+p
,然后选择Preferences: Open User Settings (JSON)
在打开的json文件中插入如下内容
// markdown默认格式化工具"[markdown]": {"editor.defaultFormatter": "DavidAnson.vscode-markdownlint"},
然后打开.md文件,使用快捷键alt+shift+f
即可进行自动格式化。
此外,如果不想启用一些代码格式审查规则,也可以在打开的json文件中插入如下内容(这条内容的意思是去除对行内html的检查)
// markdownlint相关配置(语法检查)"markdownlint.config": {"default": true,"MD033": false // 去除对行内html的检查},