# 1.mermaid
mermaid
(opens new window)是一款支持在Markdown文档中使用的图表工具,可以用来画时序图,类图,流程图等。在Markdown
中使用十分方便,常用的Markdown
编辑工具Typora
和博客网站CSDN
都支持mermaid
。mermaid
是基于javascript
实现的,将Markdown
文档中的元素渲染成HTML
元素。
# 2.配置hexo支持mermaid
基于Wikitten主题实现。
- 安装插件
npm install --save hexo-filter-mermaid-diagrams
- 修改主题的配置文件
_config.yml
# Mermaid (markdwon to flow chart, seq chart, class chart ...)
mermaid:
enable: true
# Available themes: default | dark | forest | neutral
theme: default
- 下载
mermaid.min.js
文件
在mermaid CDN (opens new window)下载mermaid.min.js
和mermaid.min.js.map
找到
${HEXO_PROJ_PATH}/themes/Wikitten/source/libs
目录,可以看到下面放着jquery
等js库
,在该目录下新建文件夹mermaid
并将下载的mermaid.min.js
和mermaid.min.js.map
文件放进去。找到
${HEXO_PROJ_PATH}/themes/Wikitten/layout/common/scripts.ejs
文件
添加如下内容:
<% if (theme.mermaid.enable) { %> <!-- 修改 开始位置-->
<%- js('libs/mermaid/mermaid.min.js') %> <!-- 或者使用CDN -->
<script>
$(document).ready(function() {
var mermaid_config = {
startOnLoad: true,
theme: '<%- theme.mermaid.theme %>',
flowchart:{
useMaxWidth: false,
htmlLabels: true
}
}
mermaid.initialize(mermaid_config);
});
</script> <!-- 修改 结束位置 -->
<% } %>
# 效果
flowchart LR
A[hexo] --> B[mermaid]
A --> C[latex]
flowchart LR
A[hexo] --> B[mermaid]
A --> C[latex]