markdown-editor-preview
Version:
基于Vue3和TypeScript的Markdown预览编辑器,支持双向滚动同步、代码高亮和自定义渲染器,提供流畅的编辑和预览体验
23 lines (22 loc) • 1.19 kB
TypeScript
import { default as MarkdownIt } from 'markdown-it';
/**
* 自定义代码块的插件,因为 MarkdownIt 默认最外层是 pre,限制了扩展性,所以本项目替换了它。
* https://github.com/markdown-it/markdown-it/blob/13.0.2/lib/renderer.js#L58
*
* # 标签的选择
* [HTML 标准文档](https://html.spec.whatwg.org/#the-code-element)中的第二个
* 示例使用了 pre 和 code 两个标签包裹代码块,这被许多人视为推荐的做法。
*
* 但实际上文档中本没有 Recommend 或 Should 等字眼,它仅是一个示例而已。
* [这里也有讨论](https://stackoverflow.com/q/11742907/7065321)
*
* 为了性能和可调试性,应当减少 DOM 中元素的层级,所以这里选择仅用一个标签。
* 考虑到存在非代码,但又要格式化的文本,选择 pre 比 code 更通用,GitHub 也是如此。
*/
export default function (md: MarkdownIt): void;
/**
* 实现点击按钮复制代码。考虑到代码一行可能很长,以及手机端框选困难,这个功能还是要有的。
*
* @param root 由 fencePlugin 渲染出的元素。
*/
export declare function activateCopyButtons(root: HTMLElement): void;