2.2 愉快写文档:VSCode + Markdown Preview Enhanced

本章导航:

  • 1. 介绍 MPE。
  • 2. 简要介绍几个十分好用的 MPE 的功能。

使用电脑环境:Windows10。本章主要参考 MPE 官方中文文档

3.1 Markdown Preview Enhanced 简介

在开始阅读 MPE(Markdown Preview Enhanced)的功能之前,您需要在 vscode 的应用商店搜索并安装 Markdown Preview Enhanced 插件。

在 MPE 的安装界面提供了十分详细的使用文档,且完美地支持中文。说明文档链接:Markdown Preview Enhanced 英文|中文

Markdown Preview Enhanced 是一款为 Atom 以及 Visual Studio Code 编辑器编写的超级强大的 Markdown 插件。 这款插件意在让你拥有飘逸的 Markdown 写作体验。—— MPE 官方介绍。

使用 vscode 编写 .md 文件时,可以使用组合快捷键 Ctrl + K V 打开 MPE 的侧边预览,来实时的查看 markdown 的预览结果。

在 vscode 中支持放大镜功能:cmd + 放大,cmd - 缩小。辅助该放大镜功能,您将会获得不一样的体验。

3.2 MPE 基础语法

markdown 基础语法可查阅《2.1 Markdown 使用手册》。下面主要介绍 MPE 特有的几个语法。

3.2.1 代码显示行数与高亮

例3.1 只需要在代码的名称后面添加 {.line-numbers} 即可为代码添加行数:

```python {.line-numbers}
a = 1
b = 7
c = a + b
```

输出预览结果:

a = 1
b = 7
c = a + b

例3.2 在代码名称后添加 {highlight=[2-3, 10-14]} 这种形式,可以为指定代码提供高亮设置。如果需求仅仅是一个连续的行高亮,可以这样:

```python {highlight=2-4}
a = 1
b = 7
c = a + b
d = a ** c
e = a - d
```

3.2.2 任务列表

- [ ] 未完成
- [x] 已完成

3.2.3 上下标

符号 说明 示例
^^ 上标
~~ 下标

3.2.4 导入外部文件

语法:@import "你的文件" 或者

支持的文件类型

  • .jpeg(.jpg), .gif, .png, .apng, .svg, .bmp 文件将会直接被当作 markdown 图片被引用。
  • .csv 文件将会被转换成 markdown 表格。
  • .mermaid 将会被 mermaid 渲染。
  • .dot 文件将会被 viz.js (graphviz) 渲染。
  • .plantuml(.puml) 文件将会被 PlantUML 渲染。
  • .html 将会直接被引入。
  • .js 将会被引用为 <script src="你的 js 文件"></script>
  • .less.css 将会被引用为 style。目前 less 只支持本地文件。.css 文件将会被引用为 <link rel="stylesheet" href="你的 css 文件">。
  • .pdf 文件将会被 pdf2svg 转换为 svg 然后被引用。
  • markdown 将会被分析处理然后被引用。
  • 其他所有的文件都将被视为代码块。

例3.3:导入图片

@import "test.png" {width="300px" height="200px" title="图片的标题" alt="我的 alt"}

例3.4 引用文件作为 Code Chunk:

@import "test.py" {cmd="python3", class="line-numbers"}

例3.5 作为代码块:

@import "test.json" {as="vega-lite"}

当然可以插入 Markdown,这样很有意思。除了把多个小文档合并成一个大文档这种无脑的用法之外,我觉得最有潜力的用法是——非线性写作啊!

如果我们把一些小文件当作卡片的话,善用导入文件功能就可以实现类似 Scrivener 的功能了。虽然用户体验上相差甚远,但是免费啊。

3.2.5 导入目录

在 vscode 中,只需要在需要生成目录的地方放入 [TOC] 便会自动生成目录。对于 [TOC] 不生效的情况,可以使用 `` 代替其自动生成目录。

3.2.6 使用表情符号Front Icon

参考:GitHub Help:Emoji

通过键入 :EMOJICODE: 可在您的写作中添加表情符号。

@octocat :+1: 这个 PR 看起来很棒 - 可以合并了! :shipit:

图3.1 渲染的表情符号

键入 : 将显示建议的表情符号列表。 列表将在您键入时进行过滤,因此一旦找到所需表情符号,请按 TabEnter 键以填写选中的结果。

有关可用表情符号和代码的完整列表,请查看 emoji-cheat-sheet.com。您也可以参考 Font Awesome 设置 Front Icon

3.3 在文档里面跑代码

为了令 MPE 可以运行代码(Code Chunk),您需要在 vscode 的设置里搜索 MPE,找到 Markdown-preview-enhanced: Enable Script Execution 在其前复选框✔,以开启 Code Chunk。开启之后,您便可以直接在 markdown 中运行代码了。

使用快捷键 ctrl + shift + P 打开 MPE 运行代码的提示框:

图3.2 打开 MPE 运行代码提示框

需要在代码名称的后面添加,类似下面的命令:

```python {cmd=true, class="line-numbers"}
print(2*4)
```

下面可以看一个示例图:

图3.3 在文档里面跑代码

cmd=true 是默认您的 vscode 可以自动识别 Python 环境的。,如果您需要指定特殊的环境可以像 cmd="/usr/local/bin/python3" 这样设置。

3.4 画图

图3.4 使用 Mermaid 画了一个类图:

classDiagram
类别1 <|-- AveryLongClass : Cool
类别3 *-- 类别4
类别5 o-- 类别6
类别7 .. 类别8
类别9 --> 类别2 : Where am i?
类别9 --* 类别3
类别9 --|> 类别7
类别7 : equals()
类别7 : Object[] elementData
类别1 : size()
类别1 : int chimp
类别1 : int gorilla
类别8 <--> 类别2: Cool label
图3.4 mermaid 画类图

更多与 Mermaid 相关的使用语法,可以👓Mermaid 学习

更多与画图相关的内容可以参阅 MPE:图像

3.5 小结

本章主要讨论了 MPE 的一些常用语法。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
禁止转载,如需转载请通过简信或评论联系作者。
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342