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)");