现已推出!阅读 10 月份的新功能和修复。

Markdown 扩展

Markdown 扩展允许您扩展和增强 Visual Studio Code 的内置 Markdown 预览。这包括更改预览的外观或添加对新 Markdown 语法的支持。

使用 CSS 改变 Markdown 预览的外观

扩展可以贡献 CSS 来更改 Markdown 预览的外观或布局。样式表使用 markdown.previewStyles 贡献点 在扩展的 package.json 中注册。

"contributes": {
    "markdown.previewStyles": [
        "./style.css"
    ]
}

"markdown.previewStyles" 是相对于扩展根文件夹的一系列文件。

贡献的样式在内置的 Markdown 预览样式之后添加,但在用户的 "markdown.styles" 之前添加。

The Markdown Preview GitHub Styling 扩展是一个很好的例子,它演示了如何使用样式表使 Markdown 预览看起来像 GitHub 渲染的 Markdown。您可以在 GitHub 上查看扩展的源代码。

使用 markdown-it 插件添加对新语法的支持

VS Code Markdown 预览支持 CommonMark 规范。扩展可以通过贡献 markdown-it 插件 来添加对其他 Markdown 语法的支持。

要贡献 markdown-it 插件,首先在扩展的 package.json 中添加 "markdown.markdownItPlugins" 贡献。

"contributes": {
    "markdown.markdownItPlugins": true
}

然后,在扩展的主要 activation 函数中,返回一个包含名为 extendMarkdownIt 的函数的对象。此函数接受当前的 markdown-it 实例,并且必须返回一个新的 markdown-it 实例。

import * as vscode from 'vscode';

export function activate(context: vscode.ExtensionContext) {
  return {
    extendMarkdownIt(md: any) {
      return md.use(require('markdown-it-emoji'));
    }
  };
}

要贡献多个 markdown-it 插件,请返回多个 use 语句,这些语句链在一起。

return md.use(require('markdown-it-emoji')).use(require('markdown-it-hashtag'));

贡献 markdown-it 插件的扩展会在第一次显示 Markdown 预览时延迟激活。

The markdown-emoji 扩展演示了如何使用 markdown-it 插件向 markdown 预览添加表情符号支持。您可以在 GitHub 上查看 Emoji 扩展的源代码。

您可能还想查看

使用脚本添加高级功能

对于高级功能,扩展可以贡献在 Markdown 预览中执行的脚本。

"contributes": {
    "markdown.previewScripts": [
        "./main.js"
    ]
}

贡献的脚本是异步加载的,并在每次内容更改时重新加载。

The Markdown Preview Mermaid Support 扩展演示了如何使用脚本向 markdown 预览添加 Mermaid 图表和流程图支持。您可以在 GitHub 上查看 Mermaid 扩展的源代码。