Skip to content

Commit e6a50e5

Browse files
committed
refactor mermaid to use code highlight and support chinese
1 parent ab9ebde commit e6a50e5

File tree

10 files changed

+36
-19
lines changed

10 files changed

+36
-19
lines changed

content/dev/glimpse-of-web3/index.zh-cn.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ og_image: "https://img.bmpi.dev/6ab55cab-ceaf-3657-77db-4e1660924ca4.png"
1010
categories: [
1111
"什么是X"
1212
]
13+
isMermaidEnabled: true
1314
---
1415

1516
<div class="heti heti--ancient heti--vertical" style="margin: auto;">
@@ -98,13 +99,13 @@ Mirror 的数据都存在在 [Arweave](https://www.arweave.org/) 之上,Arweav
9899

99100
但 Web3 会不会从去中心化逐渐发展为中心化呢?考虑到比特币的绝大部分算力目前都掌握在少数几个矿池公司手中,再精妙的算法也抵挡不了人性对利益的追求,用户为了方便连隐私都可以不要,更不会为了一个去中心化的技术问题而放弃中心化的便利,Web3 这条去中心化之路注定漫长而难走。
100101

101-
{{<mermaid align="center">}}
102-
graph LR;
102+
```mermaid
103+
graph LR
103104
Web1 --> Web2
104105
Web2 -->|Blockchain?| D[Web3]
105106
Web2 -->|AI?| E[Web3]
106107
Web2 -->|Other?| F[Web3]
107-
{{< /mermaid >}}
108+
```
108109

109110
本文参考的文章有:
110111

layouts/shortcodes/mermaid.html

Lines changed: 0 additions & 2 deletions
This file was deleted.

static/css/main.css

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -525,4 +525,11 @@ li .fa-jk {
525525
border: 1px dashed #ccc;
526526
font-size: .3em;
527527
font-family: 'LXGW WenKai';
528+
}
529+
530+
.mermaid {
531+
width: 100%;
532+
height: auto;
533+
text-align: center;
534+
border: 1px dashed #ccc;
528535
}

themes/hugo-coder/layouts/_default/baseof.html

Lines changed: 19 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -189,19 +189,12 @@
189189
<script src="//unpkg.com/heti/umd/heti-addon.min.js"></script>
190190
<script>
191191
// init heti: https://github.com/sivan/heti
192-
const heti = new Heti('.heti');
192+
const heti = new Heti('.heti p, li, a, h1, h2, h3, h4, h5, h6, .title');
193193
heti.autoSpacing(); // 自动进行中西文混排美化和标点挤压
194194
// init AOS: https://github.com/michalsnik/aos
195195
AOS.init({
196196
disable: 'mobile'
197197
});
198-
// add mermaid: https://github.com/mermaid-js/mermaid
199-
var mermaid = document.getElementsByClassName('mermaid');
200-
if (mermaid.length > 0) {
201-
var tag = document.createElement('script');
202-
tag.src = 'https://cdn.jsdelivr.net/npm/mermaid/dist/mermaid.min.js';
203-
document.getElementsByTagName('body')[0].appendChild(tag);
204-
}
205198
// add markup: https://github.com/gera2ld/markmap
206199
let markups = document.querySelectorAll('code[data-lang=markmap]');
207200
Array.prototype.forEach.call(markups, function(e) {
@@ -212,6 +205,24 @@
212205
e.parentElement.replaceWith(markupDiv);
213206
});
214207
</script>
208+
{{ if .Params.isMermaidEnabled }}
209+
<script src="https://cdn.jsdelivr.net/npm/mermaid@8.14.0/dist/mermaid.min.js"></script>
210+
<script>
211+
// add mermaid: https://github.com/mermaid-js/mermaid
212+
let mermaidBlocks = document.querySelectorAll('code[data-lang=mermaid]');
213+
Array.prototype.forEach.call(mermaidBlocks, function(e) {
214+
let text = e.textContent;
215+
let mermaidDiv = document.createElement('div');
216+
mermaidDiv.className = 'mermaid';
217+
mermaidDiv.textContent = text;
218+
e.parentElement.replaceWith(mermaidDiv);
219+
});
220+
window.mermaid.mermaidAPI.initialize(
221+
window.mermaidOptions
222+
? window.mermaidOptions
223+
: { securityLevel: "loose", theme: "base" });
224+
</script>
225+
{{ end }}
215226
{{ end }}
216227

217228
</body>
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<li>
1+
<li class="heti" style="max-width: fit-content;">
22
<span class="date">{{ .Date.Format (.Site.Params.dateFormat | default "January 2, 2006" ) }}</span>
33
<a class="title" href="{{ .Params.ExternalLink | default .RelPermalink }}">{{ .Title }}</a>
44
</li>

themes/hugo-coder/layouts/dev/single.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<section class="container post">
66
<article>
77
<header>
8-
<div class="post-title">
8+
<div class="post-title heti">
99
<h1 class="title">{{ .Title }}</h1>
1010
</div>
1111
<div class="post-meta">
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<li>
1+
<li class="heti" style="max-width: fit-content;">
22
<span class="date">{{ .Date.Format (.Site.Params.dateFormat | default "January 2, 2006" ) }}</span>
33
<a class="title" href="{{ .Params.ExternalLink | default .RelPermalink }}">{{ .Title }}</a>
44
</li>

themes/hugo-coder/layouts/money/single.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<section class="container post">
66
<article>
77
<header>
8-
<div class="post-title">
8+
<div class="post-title heti">
99
<h1 class="title">{{ .Title }}</h1>
1010
</div>
1111
<div class="post-meta">
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
<li>
1+
<li class="heti" style="max-width: fit-content;">
22
<span class="date">{{ .Date.Format (.Site.Params.dateFormat | default "January 2, 2006" ) }}</span>
33
<a class="title" href="{{ .Params.ExternalLink | default .RelPermalink }}">{{ .Title }}</a>
44
</li>

themes/hugo-coder/layouts/self/single.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<section class="container post">
66
<article>
77
<header>
8-
<div class="post-title">
8+
<div class="post-title heti">
99
<h1 class="title">{{ .Title }}</h1>
1010
</div>
1111
<div class="post-meta">

0 commit comments

Comments
 (0)