From 64fb4c201ecde9745e712e1e0d4726cb56dff55b Mon Sep 17 00:00:00 2001 From: neveler <55753029+neveler@users.noreply.github.com> Date: Thu, 4 Jun 2026 16:21:36 +0800 Subject: [PATCH] =?UTF-8?q?=E6=B7=BB=E5=8A=A0=E4=B8=80=E7=A7=8D=E6=96=B0?= =?UTF-8?q?=E7=9A=84=20@frontmatter=20=E6=A0=BC=E5=BC=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- _plugins/front_matter_enhancer.rb | 13 +++++++++++++ ...ilter-version-sort.rb => version_sort_filter.rb} | 0 assets/css/main.scss | 4 ++-- assets/css/skins/air.scss | 4 ++-- assets/css/skins/aqua.scss | 4 ++-- assets/css/skins/catppuccin_latte.scss | 4 ++-- assets/css/skins/catppuccin_mocha.scss | 4 ++-- assets/css/skins/contrast.scss | 4 ++-- assets/css/skins/dark.scss | 4 ++-- assets/css/skins/default.scss | 4 ++-- assets/css/skins/dirt.scss | 4 ++-- assets/css/skins/mint.scss | 4 ++-- assets/css/skins/neon.scss | 4 ++-- assets/css/skins/plum.scss | 4 ++-- assets/css/skins/sunrise.scss | 4 ++-- assets/js/settings.js | 5 +++-- assets/js/theme.js | 5 +++-- 17 files changed, 45 insertions(+), 30 deletions(-) create mode 100644 _plugins/front_matter_enhancer.rb rename _plugins/{filter-version-sort.rb => version_sort_filter.rb} (100%) diff --git a/_plugins/front_matter_enhancer.rb b/_plugins/front_matter_enhancer.rb new file mode 100644 index 00000000..83715044 --- /dev/null +++ b/_plugins/front_matter_enhancer.rb @@ -0,0 +1,13 @@ +module Jekyll + class Document + YAML_FRONT_MATTER_REGEXP = %r!\A(?:---|/\* @frontmatter)\s*\n(.*?\n?)^((?:---|\*/|\.\.\.)\s*$\n?)!m.freeze + end + + module Utils + def has_yaml_header?(file) + File.open(file, "rb", &:readline).match? %r!\A(---|/\* @frontmatter)\s*\r?\n! + rescue EOFError + false + end + end +end diff --git a/_plugins/filter-version-sort.rb b/_plugins/version_sort_filter.rb similarity index 100% rename from _plugins/filter-version-sort.rb rename to _plugins/version_sort_filter.rb diff --git a/assets/css/main.scss b/assets/css/main.scss index 0f4452fc..68632f54 100644 --- a/assets/css/main.scss +++ b/assets/css/main.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/air.scss b/assets/css/skins/air.scss index 581fb345..9d3cfd11 100644 --- a/assets/css/skins/air.scss +++ b/assets/css/skins/air.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/aqua.scss b/assets/css/skins/aqua.scss index 2a03a4db..c6089335 100644 --- a/assets/css/skins/aqua.scss +++ b/assets/css/skins/aqua.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/catppuccin_latte.scss b/assets/css/skins/catppuccin_latte.scss index 59b9147e..d2d6dfc8 100644 --- a/assets/css/skins/catppuccin_latte.scss +++ b/assets/css/skins/catppuccin_latte.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/catppuccin_mocha.scss b/assets/css/skins/catppuccin_mocha.scss index 8af24213..6afdb853 100644 --- a/assets/css/skins/catppuccin_mocha.scss +++ b/assets/css/skins/catppuccin_mocha.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/contrast.scss b/assets/css/skins/contrast.scss index 474cc293..481f6582 100644 --- a/assets/css/skins/contrast.scss +++ b/assets/css/skins/contrast.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/dark.scss b/assets/css/skins/dark.scss index b7bb9c21..d99491b6 100644 --- a/assets/css/skins/dark.scss +++ b/assets/css/skins/dark.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/default.scss b/assets/css/skins/default.scss index a845151c..4b4fe169 100644 --- a/assets/css/skins/default.scss +++ b/assets/css/skins/default.scss @@ -1,2 +1,2 @@ ---- ---- +/* @frontmatter +*/ diff --git a/assets/css/skins/dirt.scss b/assets/css/skins/dirt.scss index 1b711f58..ab1fd62c 100644 --- a/assets/css/skins/dirt.scss +++ b/assets/css/skins/dirt.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/mint.scss b/assets/css/skins/mint.scss index 73851269..51c6053c 100644 --- a/assets/css/skins/mint.scss +++ b/assets/css/skins/mint.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/neon.scss b/assets/css/skins/neon.scss index 4ba4097b..f592f399 100644 --- a/assets/css/skins/neon.scss +++ b/assets/css/skins/neon.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/plum.scss b/assets/css/skins/plum.scss index b40391c0..626b676b 100644 --- a/assets/css/skins/plum.scss +++ b/assets/css/skins/plum.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/css/skins/sunrise.scss b/assets/css/skins/sunrise.scss index 9c330691..9eeb97b0 100644 --- a/assets/css/skins/sunrise.scss +++ b/assets/css/skins/sunrise.scss @@ -1,5 +1,5 @@ ---- ---- +/* @frontmatter +*/ @charset "utf-8"; diff --git a/assets/js/settings.js b/assets/js/settings.js index b4674c33..bea54eee 100644 --- a/assets/js/settings.js +++ b/assets/js/settings.js @@ -1,6 +1,7 @@ ---- +/* @frontmatter layout: null ---- +*/ + (function () { const PREFIX = "HMCL_DOCS_SETTINGS_", data = {}, bus = new EventTarget(), configs = /*{%comment%}*/{}/*{%endcomment%}*/ /**{{'/'}}{{ site.data.settings | jsonify }}/**/; window.addEventListener("storage", ({ key, newValue }) => key !== null && key.startsWith(PREFIX) && newValue !== data[key] && bus.dispatchEvent(new CustomEvent(key, { detail: (data[key] = newValue) }))); diff --git a/assets/js/theme.js b/assets/js/theme.js index 6cece472..a8616d64 100644 --- a/assets/js/theme.js +++ b/assets/js/theme.js @@ -1,6 +1,7 @@ ---- +/* @frontmatter layout: null ---- +*/ + window.addEventListener("DOMContentLoaded", function () { var skinLink = document.getElementById("skin"); var darkModeQuery = window.matchMedia("(prefers-color-scheme: dark)");