From b2e0be5a6ab7d90cfb54096e3d9f97e830555f3a Mon Sep 17 00:00:00 2001 From: elkan1788 Date: Wed, 15 Jan 2025 21:42:22 +0800 Subject: [PATCH] :sparkles: Use store method impl the music etc shortcode. --- assets/js/utils.js | 4 +-- exampleSite/content/post/mermaid-charts.md | 2 -- exampleSite/content/post/shortcodes.md | 16 +++++------- exampleSite/static/music/gongqijun.jpg | Bin 0 -> 5754 bytes exampleSite/static/music/sky.mp3 | Bin 0 -> 41708 bytes layouts/partials/head.html | 4 +-- layouts/partials/head/config.html | 24 ++++++++++++++---- .../partials/head/{ => script}/analytics.html | 0 .../{scripts => head/script}/global.html | 0 .../{scripts => head/script}/plugins.html | 10 +++++++- layouts/partials/head/style/global.html | 3 +++ layouts/partials/head/style/plugins.html | 13 ++++++++++ .../partials/head/{style.html => styles.html} | 14 +++++----- layouts/partials/scripts.html | 4 +-- layouts/shortcodes/mermaid.html | 4 ++- layouts/shortcodes/music.html | 4 ++- 16 files changed, 70 insertions(+), 32 deletions(-) create mode 100644 exampleSite/static/music/gongqijun.jpg create mode 100644 exampleSite/static/music/sky.mp3 rename layouts/partials/head/{ => script}/analytics.html (100%) rename layouts/partials/{scripts => head/script}/global.html (100%) rename layouts/partials/{scripts => head/script}/plugins.html (60%) create mode 100644 layouts/partials/head/style/global.html create mode 100644 layouts/partials/head/style/plugins.html rename layouts/partials/head/{style.html => styles.html} (87%) diff --git a/assets/js/utils.js b/assets/js/utils.js index bd15af3..a8c0778 100644 --- a/assets/js/utils.js +++ b/assets/js/utils.js @@ -9,10 +9,10 @@ HTMLElement.prototype.wrap = function (wrapper) { NexT.utils = { registerAPlayer: function () { this.getStyle( - NexT.utils.getCDNResource(NexT.CONFIG.page.aplayer.css) + NexT.utils.getCDNResource(NexT.CONFIG.page.music.css) ); - NexT.CONFIG.page.aplayer.js.forEach(function (js) { + NexT.CONFIG.page.music.js.forEach(function (js) { NexT.utils.getScript(NexT.utils.getCDNResource(js), true); }); diff --git a/exampleSite/content/post/mermaid-charts.md b/exampleSite/content/post/mermaid-charts.md index cf426ac..b5a19fe 100644 --- a/exampleSite/content/post/mermaid-charts.md +++ b/exampleSite/content/post/mermaid-charts.md @@ -14,7 +14,6 @@ tags: - 时序图 url: "demo/mermaid-charts.html" -mermaid: true toc: true --- @@ -28,7 +27,6 @@ toc: true {{< note info >}} - 通过 `hugo new` 命令创建一篇新的文章 -- 在文章头部配置 `mermaid: true` - 使用短代码书写各种类型的图,自带2个参数: align(对齐) 和 bc(背景色),可参考如下使用示例 {{< /note >}} diff --git a/exampleSite/content/post/shortcodes.md b/exampleSite/content/post/shortcodes.md index 2f61483..01c9fd7 100644 --- a/exampleSite/content/post/shortcodes.md +++ b/exampleSite/content/post/shortcodes.md @@ -14,7 +14,6 @@ tags: - 语法 url: "demo/shortcodes.html" toc: true -music: true --- 虽然 `Markdown` 语法已经非常丰富能够满足我们写文章的绝大部分需求,但是为更好的对文章内容进行更友好的排版,为引设计一套自定义的短语,便于在使用时能够快速引用。 @@ -101,7 +100,7 @@ music: true 或者 {{}} ``` -{{}} +{{< bilibili id=BV1Sx411T7QQ >}} ## 音乐播放器 @@ -131,23 +130,22 @@ music: true ### 单曲播放 ```markdown -{{}} +{{}} ``` -{{< music theme="#2980b9" server="netease" type="song" id="1868553" mini="true" >}} +{{< music theme="#2980b9" server="tencent" type="song" id="002u4ZTb0CXmJA" mini="true" >}} ### 列表播放 ```markdown -{{}} +{{}} ``` -{{< music server="netease" type="playlist" id="769332917" list-max-height="140px" >}} - +{{< music server="netease" type="playlist" id="1982066521" list-max-height="140px" >}} ### 自定义音乐源 ```markdown -{{}} +{{}} ``` -{{< music url="https://ri-sycdn.kuwo.cn/ea345253b94e7ad564e6fb0cdf37fee6/677b6574/resource/n1/87/56/4272600974.mp3" name="天空之城" artist="宫崎骏" cover="http://img4.kuwo.cn/star/starheads/500/27/66/2532818318.jpg" autoplay="true" >}} +{{< music url="/music/sky.mp3" name="天空之城" artist="宫崎骏" cover="/music/gongqijun.jpg" autoplay="true" >}} diff --git a/exampleSite/static/music/gongqijun.jpg b/exampleSite/static/music/gongqijun.jpg new file mode 100644 index 0000000000000000000000000000000000000000..4aa1edc8190f3c79e44a0889e8d1e1a52492cd26 GIT binary patch literal 5754 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 TumFG;g+5t30D$-ZzpwuT (function(){ localDB = { @@ -61,5 +61,5 @@ })(window); {{ partial "head/config.html" . }} -{{ partialCached "head/analytics.html" . }} +{{ partialCached "head/script/analytics.html" . }} diff --git a/layouts/partials/head/config.html b/layouts/partials/head/config.html index d0448e8..09ba67b 100644 --- a/layouts/partials/head/config.html +++ b/layouts/partials/head/config.html @@ -1,21 +1,24 @@ + +{{/** Short code params **/}} +{{ $scParam := .Store.Get "scParams" }} + {{ $pageCfg := dict "isHome" .IsHome "isPage" .IsPage "comments" (.Scratch.Get "isComment") "toc" (default .Site.Params.toc.enable .Params.Toc) - "music" .Params.music "permalink" (.Page.Permalink | absURL) "path" (.Page.Permalink | path.Base) "title" .Page.Title }} {{/** Append APlayer plugin */}} -{{ if .Params.music }} +{{ if $scParam.music }} {{ $aplayer := dict "js" $.Site.Data.resources.plugins.music.js "css" $.Site.Data.resources.plugins.music.css }} -{{ $pageCfg = merge $pageCfg (dict "aplayer" $aplayer) }} +{{ $pageCfg = merge $pageCfg (dict "music" $aplayer) }} {{ end }} {{/* Append post expired config */}} @@ -51,7 +54,7 @@ {{ end }} {{/* Append mermaid plugin */}} -{{ if .Params.mermaid }} +{{ if $scParam.mermaid }} {{ $mermaid := dict "js" .Site.Data.resources.plugins.mermaid.js }} @@ -72,4 +75,15 @@ {{ $pageCfg = merge $pageCfg (dict "math" $math) }} {{ end }} - \ No newline at end of file + + +{{/** Special CSS Style for page **/}} +{{ if .IsPage }} + +{{ end }} \ No newline at end of file diff --git a/layouts/partials/head/analytics.html b/layouts/partials/head/script/analytics.html similarity index 100% rename from layouts/partials/head/analytics.html rename to layouts/partials/head/script/analytics.html diff --git a/layouts/partials/scripts/global.html b/layouts/partials/head/script/global.html similarity index 100% rename from layouts/partials/scripts/global.html rename to layouts/partials/head/script/global.html diff --git a/layouts/partials/scripts/plugins.html b/layouts/partials/head/script/plugins.html similarity index 60% rename from layouts/partials/scripts/plugins.html rename to layouts/partials/head/script/plugins.html index 4587138..184b90d 100644 --- a/layouts/partials/scripts/plugins.html +++ b/layouts/partials/head/script/plugins.html @@ -1,9 +1,17 @@ {{/* Defind loading plugin scripts which only need in pages */}} +{{ if .IsPage }} +{{/** Short code params **/}} +{{ $scParam := .Store.Get "scParams" }} + +{{/** Append math render action **/}} {{ if or .Params.math .Site.Params.math }} {{ partial "_funs/get_plugin.html" (dict "ctx" . "class" "others" "plugin" "math.js") }} {{ end }} -{{ if .Params.mermaid }} +{{/** Append mermaid render action **/}} +{{ if $scParam.mermaid }} {{ partial "_funs/get_plugin.html" (dict "ctx" . "class" "others" "plugin" "mermaid.js") }} +{{ end }} + {{ end }} \ No newline at end of file diff --git a/layouts/partials/head/style/global.html b/layouts/partials/head/style/global.html new file mode 100644 index 0000000..5d3ff7b --- /dev/null +++ b/layouts/partials/head/style/global.html @@ -0,0 +1,3 @@ +.post-footer, .flinks-list-footer hr:after { + content: "{{ .Site.Params.postFooter.endLineTip }}"; +} \ No newline at end of file diff --git a/layouts/partials/head/style/plugins.html b/layouts/partials/head/style/plugins.html new file mode 100644 index 0000000..bcf7286 --- /dev/null +++ b/layouts/partials/head/style/plugins.html @@ -0,0 +1,13 @@ +{{/* Defind loading plugin entend style which only need in pages */}} +{{ if .IsPage }} + +{{/** Short code params **/}} +{{ $scParam := .Store.Get "scParams" }} + +{{ if $scParam.mermaid }} +.post-block .post-body .mermaid { + background: var(--highlight-foreground); +} +{{ end }} + +{{ end }} \ No newline at end of file diff --git a/layouts/partials/head/style.html b/layouts/partials/head/styles.html similarity index 87% rename from layouts/partials/head/style.html rename to layouts/partials/head/styles.html index cb96efc..6ac92d9 100644 --- a/layouts/partials/head/style.html +++ b/layouts/partials/head/styles.html @@ -17,14 +17,14 @@ {{ end }} {{ $unixHref := partial "_funs/add_unix_param.html" $css.RelPermalink }} -{{ if .IsPage }} - -{{ end }} + + + + {{ $custom := .Scratch.Get "style" }} {{ if $custom }} {{ $unixHref := partial "_funs/add_unix_param.html" $custom }} diff --git a/layouts/partials/scripts.html b/layouts/partials/scripts.html index 3f5d575..7ab93de 100644 --- a/layouts/partials/scripts.html +++ b/layouts/partials/scripts.html @@ -1,2 +1,2 @@ -{{ partialCached "scripts/global.html" . }} -{{ partial "scripts/plugins.html" . }} \ No newline at end of file +{{ partialCached "head/script/global.html" . }} +{{ partial "head/script/plugins.html" . }} \ No newline at end of file diff --git a/layouts/shortcodes/mermaid.html b/layouts/shortcodes/mermaid.html index d6aa690..4ffed72 100644 --- a/layouts/shortcodes/mermaid.html +++ b/layouts/shortcodes/mermaid.html @@ -1,3 +1,5 @@
{{ safeHTML .Inner }} -
\ No newline at end of file + + +{{ .Page.Store.SetInMap "scParams" "mermaid" true }} \ No newline at end of file diff --git a/layouts/shortcodes/music.html b/layouts/shortcodes/music.html index 3512921..73b6f3e 100644 --- a/layouts/shortcodes/music.html +++ b/layouts/shortcodes/music.html @@ -19,4 +19,6 @@ {{ with .Get "mutex" }} mutex="{{ . }}" {{ end }} {{ with .Get "list-folded" }} list-folded="{{ . }}" {{ end }} {{ with .Get "list-max-height" }} list-max-height="{{ . }}" {{ end }} - > \ No newline at end of file + > + +{{ .Page.Store.SetInMap "scParams" "music" true }} \ No newline at end of file