markdown-it-container 使用教程

随笔4个月前发布 兰兰香花飘
48 0 0

markdown-it-container 使用教程

markdown-it-containerFenced container plugin for markdown-it markdown parser项目地址:https://gitcode.com/gh_mirrors/ma/markdown-it-container

项目介绍

markdown-it-container 是一个用于 markdown-it 解析器的插件,允许你创建自定义的块级容器。这些容器可以用于包装 Markdown 内容,并通过自定义渲染规则来扩展 Markdown 的功能。

项目快速启动

安装

首先,你需要安装 markdown-itmarkdown-it-container

npm install markdown-it markdown-it-container

使用

以下是一个简单的示例,展示如何使用 markdown-it-container 创建一个自定义容器:

  1. const MarkdownIt = require('markdown-it');

  2. const markdownItContainer = require('markdown-it-container');

  3. const md = new MarkdownIt();

  4. md.use(markdownItContainer, 'my-container', {

  5. validate: function(params) {

  6. return params.trim().match(/^my-containers*(.*)$/);

  7. },

  8. render: function(tokens, idx) {

  9. if (tokens[idx].nesting === 1) {

  10. // 开始标签

  11. return '<div class="my-container"> ';

  12. } else {

  13. // 结束标签

  14. return '</div> ';

  15. }

  16. }

  17. });

  18. const result = md.render('::: my-container 这是一个自定义容器 :::');

  19. console.log(result);

应用案例和最佳实践

创建警告框

你可以使用 markdown-it-container 创建一个警告框,用于突出显示重要信息:

  1. ::: warning

  2. 这是一个警告信息

  3. :::

对应的渲染函数:

  1. md.use(markdownItContainer, 'warning', {

  2. render: function(tokens, idx) {

  3. if (tokens[idx].nesting === 1) {

  4. return '<div class="warning"> ';

  5. } else {

  6. return '</div> ';

  7. }

  8. }

  9. });

创建代码块

你还可以创建一个自定义代码块,用于显示特定语言的代码:

  1. ::: code-block javascript

  2. console.log('Hello, world!');

  3. :::

对应的渲染函数:

  1. md.use(markdownItContainer, 'code-block', {

  2. validate: function(params) {

  3. return params.trim().match(/^code-blocks*(.*)$/);

  4. },

  5. render: function(tokens, idx) {

  6. const match = tokens[idx].info.trim().match(/^code-blocks*(.*)$/);

  7. if (tokens[idx].nesting === 1) {

  8. return `<pre><code class="language-${match[1]}">`;

  9. } else {

  10. return '</code></pre> ';

  11. }

  12. }

  13. });

典型生态项目

markdown-it-containermarkdown-it 生态系统中的一个重要插件。以下是一些相关的项目:

  • markdown-it: 一个快速且易于扩展的 Markdown 解析器。
  • markdown-it-attrs: 允许你在 Markdown 内容中添加 HTML 属性。
  • markdown-it-emoji: 支持在 Markdown 中使用表情符号。

这些项目共同构成了一个强大的 Markdown 处理工具集,适用于各种复杂的文档处理需求。

markdown-it-containerFenced container plugin for markdown-it markdown parser项目地址:https://gitcode.com/gh_mirrors/ma/markdown-it-container

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
暂无评论...