Compare commits

...
192 Commits
Author SHA1 Message Date
Nuno Coração 0b06a64139 Merge pull request #2167 from nunocoracao/dependabot/npm_and_yarn/undici-5.29.0
Bump undici from 5.28.5 to 5.29.0
2025-05-27 01:03:33 +01:00
dependabot[bot] d58d8d5534 💄 Rebuild CSS 2025-05-27 00:01:20 +00:00
dependabot[bot] 3ab8892302 Bump undici from 5.28.5 to 5.29.0
Bumps [undici](https://github.com/nodejs/undici) from 5.28.5 to 5.29.0.
- [Release notes](https://github.com/nodejs/undici/releases)
- [Commits](https://github.com/nodejs/undici/compare/v5.28.5...v5.29.0)

---
updated-dependencies:
- dependency-name: undici
  dependency-version: 5.29.0
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-27 00:00:55 +00:00
Nuno Coração 6ff5508c4b Merge pull request #2095 from nunocoracao/dev
🔖 v2.86.0
2025-05-27 00:59:34 +01:00
Nuno Coração 94424416bc polish 2025-05-27 00:58:36 +01:00
Nuno Coração f316c9b437 Merge pull request #2166 from ZhenShuo2021/feat/image-option
✨ Feat: add new option disableImageOptimizationMD
2025-05-27 00:37:23 +01:00
Nuno Coração 79a6007bd8 Merge pull request #2163 from ZhenShuo2021/feat/gist
✨ feat: add gist shortcode
2025-05-27 00:36:27 +01:00
Nuno Coração 68bd843e73 Merge branch 'dev' into feat/gist 2025-05-27 00:36:19 +01:00
Nuno Coração 26f3f0510b Merge pull request #2162 from soar/feature/github-thumbnails
✨ feat(shortcodes): Display thumbnails for GitHub repos
2025-05-27 00:34:06 +01:00
Nuno Coração e9ebdc4dbe Merge pull request #2158 from ZhenShuo2021/fix/code-card
🐛 fix: hugo minify breaks repo cards
2025-05-27 00:32:59 +01:00
Nuno Coração 8f17fb2b37 Merge pull request #2157 from ZhenShuo2021/fix/show-more-link
🐛 fix: restore cursor pointer on all buttons
2025-05-27 00:32:19 +01:00
Nuno Coração 35f31317e9 Merge pull request #2144 from ZhenShuo2021/fix/katex
🐛 fix: katex block overflow (#2138)
2025-05-27 00:31:51 +01:00
Nuno Coração 7afecd63e5 Merge pull request #2133 from timcappalli/main
Feat: Adds ability show only the category instead of all tags
2025-05-27 00:31:07 +01:00
Nuno Coração 375bf31e0b Merge pull request #2131 from ZhenShuo2021/fix/article-shortcode
🐛 fix: article shortcode across languages (#2130)
2025-05-27 00:28:19 +01:00
Nuno Coração c93fafd3ee Merge pull request #2160 from ZhenShuo2021/refactor/render-image
♻️ Refactor: encapsulates functions in render-image.html
2025-05-27 00:27:09 +01:00
Nuno Coração f711f1afaa Merge pull request #2115 from ZhenShuo2021/feat/hero-image
✨ Feat: add option disableHeroImageFilter on homepage (#2029)
2025-05-27 00:26:15 +01:00
Nuno Coração 5fc28a1ffd Merge pull request #2116 from ZhenShuo2021/feat/extend-head
✨ Feat: support extend-head access .Page (#1781)
2025-05-27 00:24:57 +01:00
Nuno Coração 248180fbc5 Merge pull request #2124 from ZhenShuo2021/fix/footnote
🐛 Fix: prevent header from blocking footnotes links
2025-05-27 00:21:46 +01:00
Nuno Coração b7478e4bad Merge pull request #2129 from ZhenShuo2021/fix/zen-mode
🐛 fix: footer not included in zen-mode toggle
2025-05-27 00:21:11 +01:00
Nuno Coração a95165da21 Merge pull request #2125 from ZhenShuo2021/chore/smaller-repo
🩹 Chore: tweak processUsers.js to reduce feature image size (#980)
2025-05-27 00:18:43 +01:00
Nuno Coração add29d687d Merge pull request #2127 from RxChi1d/main
Enable Goldmark passthrough extension for math rendering
2025-05-27 00:17:36 +01:00
Nuno Coração 43c5551ee9 Merge pull request #2161 from ZhenShuo2021/docs/render-image
📝 docs: update documentation for render-image fix
2025-05-27 00:16:37 +01:00
Nuno Coração 05756a31a4 Merge pull request #2159 from ZhenShuo2021/fix/render-image
🐛 fix: Correct the attributes of the `<img>` tag
2025-05-27 00:16:06 +01:00
Nuno Coração 9fec001916 Merge pull request #2123 from ZhenShuo2021/docs/anchor
📝 Docs: fix links
2025-05-27 00:15:13 +01:00
Nuno Coração 15bf72abb3 Merge pull request #2122 from ZhenShuo2021/fix/anchor
🐛 Fix: anchor not working for non-ascii characters
2025-05-27 00:14:19 +01:00
Nuno Coração ab4d88511a Merge pull request #2143 from ZhenShuo2021/dev/segment
🧑‍💻 chore: add options for faster development
2025-05-27 00:12:37 +01:00
Nuno Coração 553edf4f2a Merge pull request #2164 from ZhenShuo2021/docs/update-twitter
📝 Docs: update shortcoode from twitter_simple to x
2025-05-27 00:10:02 +01:00
Nuno Coração 130433c253 Merge pull request #2165 from ZhenShuo2021/docs/missing-shortcode
📝 Docs: restore missing shortcode in zh-cn and it docs
2025-05-27 00:09:28 +01:00
Nuno Coração 754076de7f Merge pull request #2101 from ZhenShuo2021/feat/social-image
✨ feat: add defaultSocialImage (#1491) (#2100)
2025-05-27 00:07:56 +01:00
Nuno Coração 321e1cf07c Merge pull request #2105 from ZhenShuo2021/fix/hero-url
🐛 Fix: make thumbAndBackground behavior consistent
2025-05-27 00:07:28 +01:00
Nuno Coração 01fc28a36a Merge pull request #2107 from ZhenShuo2021/feat/gallery
✨ Feat: gallery shortcode supports all kinds of input
2025-05-27 00:06:22 +01:00
Nuno Coração 28675c347e Merge pull request #2109 from jmmarino2/dev
Update gl.yaml
2025-05-27 00:04:59 +01:00
Nuno Coração 2abffc3e26 Merge pull request #2110 from ZhenShuo2021/fix/toc
✨ Improved Table of Contents Display
2025-05-27 00:04:31 +01:00
Nuno Coração 4ebf766331 Merge pull request #2114 from ZhenShuo2021/docs/codeblock-lang
📝 Docs: update codeblock language
2025-05-27 00:01:42 +01:00
Nuno Coração da1a923993 Merge pull request #2112 from ZhenShuo2021/fix/search-shortcut
🐛 Fix: disable the search keyboard shortcut in a form (#2041)
2025-05-27 00:00:27 +01:00
Nuno Coração b68d82dc79 Merge pull request #2113 from ZhenShuo2021/fix/copy-button
🐛 Fix: truncate long text in copy-button
2025-05-26 23:58:56 +01:00
Nuno Coração 0b127993c5 Merge pull request #2111 from ZhenShuo2021/chore/min-hugo-version
Chore: update minimum required Hugo version
2025-05-26 23:57:40 +01:00
Nuno Coração ee41a7a4e3 Merge branch 'dev' into chore/min-hugo-version 2025-05-26 23:57:34 +01:00
Nuno Coração 87ed609be2 Merge pull request #2137 from alpacayarn/add-kyo-garden-to-users-json
Add Kyo's Garden to users list
2025-05-26 23:46:00 +01:00
Nuno Coração b98d016269 Merge branch 'dev' into add-kyo-garden-to-users-json 2025-05-26 23:45:51 +01:00
Nuno Coração 34a1c6a629 Merge pull request #2146 from papo1011/main
update users.json
2025-05-26 23:44:03 +01:00
Nuno Coração 1323da317c Merge branch 'dev' into main 2025-05-26 23:43:56 +01:00
Nuno Coração d443f3adbb Merge pull request #2096 from arielgoes/patch-1
Update users.json
2025-05-26 23:42:24 +01:00
Nuno Coração 4a2e4aa4ed add icons to docs 2025-05-26 23:41:33 +01:00
Nuno Coração 530806dbf2 Merge pull request #2098 from marians/pixelfed-icon
Add Pixelfed icon
2025-05-26 23:38:18 +01:00
Nuno Coração 3680ff6458 Merge pull request #2097 from marians/peertube-icon
Add PeerTube icon
2025-05-26 23:35:39 +01:00
Nuno Coração 99d1fb28ba Merge pull request #2151 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-2.2.4
📌 Bump @headlessui/react from 2.2.3 to 2.2.4
2025-05-26 23:30:44 +01:00
Nuno Coração 24df345a03 Merge pull request #2150 from nunocoracao/dependabot/npm_and_yarn/dev/puppeteer-24.9.0
📌 Bump puppeteer from 24.8.2 to 24.9.0
2025-05-26 23:30:32 +01:00
Nuno Coração 9b35221031 Merge pull request #2149 from nunocoracao/dependabot/npm_and_yarn/dev/commander-14.0.0
📌 Bump commander from 13.1.0 to 14.0.0
2025-05-26 23:30:20 +01:00
Nuno Coração 22b55a2982 Merge pull request #2152 from nunocoracao/hugo-new-version
⚙️ Update Hugo supported version
2025-05-26 23:30:02 +01:00
ZhenShuo Leo 69fc96ed5b ✨ feat: add new option disableImageOptimizationMD 2025-05-27 04:19:51 +08:00
ZhenShuo Leo deec874d7c 📝 docs: restore missing shortcode in zh-cn and it docs 2025-05-26 13:31:12 +08:00
ZhenShuo Leo eb0d04a014 ✨ feat: add gist shortcode 2025-05-26 13:09:08 +08:00
ZhenShuo Leo bc6d4d86c7 📝 docs: update shortcoode from twitter_simple to x 2025-05-26 13:08:37 +08:00
Aleksey @soar Smyrnov 2bbcd3ab8c feat(shortcodes): Display a thumbnail for GitHub repos 2025-05-25 16:08:20 -07:00
ZhenShuo Leo 86fa25f27f chore: unify variable naming conventions 2025-05-26 00:21:37 +08:00
ZhenShuo Leo eb0afc16ea 📝 docs: update documentation for render-image fix 2025-05-26 00:05:03 +08:00
ZhenShuo Leo 6ab1964e22 ♻️ refactor: encapsulates functions in render-image.html 2025-05-25 23:29:48 +08:00
ZhenShuo Leo 4688d1e8c4 🐛 fix: correct the attributes of img tag 2025-05-25 22:36:26 +08:00
ZhenShuo Leo 5afceca56a 🐛 fix: make cursor pointer correctly on all buttons
Restore button CSS behavior from ef5186c

https://github.com/nunocoracao/blowfish/blob/ef5186ce4cb7611a24f0bea542b1badc77ba552e/assets/css/compiled/main.css#L522
2025-05-25 04:58:43 +08:00
ZhenShuo Leo 30d74227df 🐛 fix: cursor pointer on all buttons 2025-05-25 04:27:38 +08:00
ZhenShuo Leo 7c70f27a62 🐛 fix: hugo minify breaks repo cards
Make all repo cards behave consistently as in #2090
2025-05-25 03:59:15 +08:00
ZhenShuo Leo 079660d207 🐛 fix: cursor pointer on show more link button 2025-05-25 01:48:30 +08:00
nunocoracao 5c905b1a56 Update Hugo supported version 2025-05-23 06:06:56 +00:00
dependabot[bot] e8411dfe64 💄 Rebuild CSS 2025-05-21 05:54:34 +00:00
dependabot[bot] 7f95fe7164 💄 Rebuild CSS 2025-05-21 05:54:25 +00:00
dependabot[bot] 3fd762f22b 💄 Rebuild CSS 2025-05-21 05:54:15 +00:00
dependabot[bot] 90d9219c6d 📌 Bump @headlessui/react from 2.2.3 to 2.2.4
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 2.2.3 to 2.2.4.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v2.2.4/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-version: 2.2.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-21 05:54:08 +00:00
dependabot[bot] 845e4b3ebb 📌 Bump puppeteer from 24.8.2 to 24.9.0
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 24.8.2 to 24.9.0.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.8.2...puppeteer-v24.9.0)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-version: 24.9.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-21 05:53:56 +00:00
dependabot[bot] b1d1e967c7 📌 Bump commander from 13.1.0 to 14.0.0
Bumps [commander](https://github.com/tj/commander.js) from 13.1.0 to 14.0.0.
- [Release notes](https://github.com/tj/commander.js/releases)
- [Changelog](https://github.com/tj/commander.js/blob/master/CHANGELOG.md)
- [Commits](https://github.com/tj/commander.js/compare/v13.1.0...v14.0.0)

---
updated-dependencies:
- dependency-name: commander
  dependency-version: 14.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-21 05:53:45 +00:00
Nuno Coração bcc95318ec Merge pull request #2140 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss/cli-4.1.6
📌 Bump @tailwindcss/cli from 4.1.4 to 4.1.6
2025-05-20 16:48:39 +01:00
dependabot[bot] 0f6d0df82c 📌 Bump @tailwindcss/cli from 4.1.4 to 4.1.6
Bumps [@tailwindcss/cli](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-cli) from 4.1.4 to 4.1.6.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.1.6/packages/@tailwindcss-cli)

---
updated-dependencies:
- dependency-name: "@tailwindcss/cli"
  dependency-version: 4.1.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-20 15:48:30 +00:00
Nuno Coração 835e1adfd2 Merge pull request #2121 from nunocoracao/hugo-new-version
⚙️ Update Hugo supported version
2025-05-20 16:48:13 +01:00
Nuno Coração 8a76760e7e Merge pull request #2142 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss-4.1.6
📌 Bump tailwindcss from 4.1.4 to 4.1.6
2025-05-20 16:48:03 +01:00
Nuno Coração 46d4c02fdc Merge pull request #2141 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-2.2.3
📌 Bump @headlessui/react from 2.2.2 to 2.2.3
2025-05-20 16:47:44 +01:00
dependabot[bot] 67d893b5dd 📌 Bump tailwindcss from 4.1.4 to 4.1.6
Bumps [tailwindcss](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss) from 4.1.4 to 4.1.6.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.1.6/packages/tailwindcss)

---
updated-dependencies:
- dependency-name: tailwindcss
  dependency-version: 4.1.6
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-20 15:47:13 +00:00
Nuno Coração 79bb4b6f5d Merge pull request #2139 from nunocoracao/dependabot/npm_and_yarn/dev/puppeteer-24.8.2
📌 Bump puppeteer from 24.7.2 to 24.8.2
2025-05-20 16:46:35 +01:00
Nuno Coração 17979638e8 Merge pull request #2119 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss/cli-4.1.5
📌 Bump @tailwindcss/cli from 4.1.4 to 4.1.5
2025-05-20 16:45:57 +01:00
papo1011 1784896021 update users.json 2025-05-18 14:23:44 +02:00
ZhenShuo Leo 8be58016ae ✨ feat: allow self-linking in article shortcode 2025-05-15 14:52:47 +08:00
ZhenShuo Leo 3d0b59f413 🐛 fix: katex block overflow (#2138) 2025-05-14 20:47:18 +08:00
ZhenShuo2021 6b0db754f7 chore: fix typo 2025-05-14 20:01:39 +08:00
ZhenShuo Leo 48e66514f9 🧑‍💻 chore: add options for faster development
Add example:site_core and example:site_core:en_only for faster development

We need development/hugo.toml since the segments still renders images.
See object graph in https://gohugo.io/configuration/segments/
2025-05-14 18:02:30 +08:00
dependabot[bot] cc14bed6a1 📌 Bump @headlessui/react from 2.2.2 to 2.2.3
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 2.2.2 to 2.2.3.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v2.2.3/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-version: 2.2.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-14 05:09:01 +00:00
dependabot[bot] 5ba591bf0e 📌 Bump puppeteer from 24.7.2 to 24.8.2
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 24.7.2 to 24.8.2.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.7.2...puppeteer-v24.8.2)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-version: 24.8.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-14 05:08:39 +00:00
kyo_123 6f57e69985 Add Kyo's Garden to users list 2025-05-13 17:39:03 +08:00
nunocoracao a8f016cce3 Update Hugo supported version 2025-05-13 06:06:38 +00:00
ZhenShuo Leo 8fe07b5550 chore: tweak distance for context 2025-05-12 22:47:16 +08:00
Tim Cappalli 5a9e92d81b Add showCategoryOnly to params 2025-05-11 14:58:20 -04:00
Tim Cappalli 49ec3b5a01 showCategoryOnly config 2025-05-11 14:57:19 -04:00
ZhenShuo Leo 61fcafc319 🐛 fix: article shortcode across languages (#2130) 2025-05-11 21:18:05 +08:00
ZhenShuo Leo c705186e41 🐛 fix: footer not expand in zen-mode 2025-05-11 18:11:24 +08:00
Lin, Chiang-Yu 6281f6661d Enable Goldmark passthrough extension for math rendering
In Hugo v0.132.0, the Goldmark passthrough extension was introduced to preserve raw Markdown text within designated delimiters, ensuring that MathJax or KaTeX can render formulas correctly. With this configuration in place, you no longer need to manually escape characters inside math expressions (for example, \\ → \\\\ or x_y → x\_y).

According the official document of Hugo:  
- [mathematics/#step-1](https://gohugo.io/content-management/mathematics/#step-1)
- [Passthrough render hooks](https://gohugo.io/render-hooks/passthrough/)
2025-05-08 03:21:33 +08:00
ZhenShuo Leo ea7b69f4e6 🩹 Chore: tweak processUsers.js to reduce feature image size (#980)
While we can't rewrite history, we can at least slow its growth.
WebP with lower quality settings gives about 2x size reduction with acceptable visual results.
2025-05-07 23:50:15 +08:00
ZhenShuo Leo 3081c5f1d1 📝 Docs: correct timeline in Chinese docs 2025-05-07 20:54:36 +08:00
ZhenShuo Leo 45c5ddbdaf 🐛 Fix: prevent header from blocking footnotes links 2025-05-07 19:27:16 +08:00
ZhenShuo Leo a9996082c4 📝 Docs: fix broken image links 2025-05-07 19:20:14 +08:00
ZhenShuo Leo c20a86585e 📝 Docs: fix all anchor links
Work along with #2122
2025-05-07 17:58:04 +08:00
ZhenShuo Leo 6e49bfac5e 🐛 Fix: anchor not working for non-ascii characters
Fix in-page anchor links by replacing urlize to anchorize
2025-05-07 16:10:00 +08:00
dependabot[bot] f77272fed0 💄 Rebuild CSS 2025-05-07 05:11:30 +00:00
dependabot[bot] 1448746ce9 📌 Bump @tailwindcss/cli from 4.1.4 to 4.1.5
Bumps [@tailwindcss/cli](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-cli) from 4.1.4 to 4.1.5.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.1.5/packages/@tailwindcss-cli)

---
updated-dependencies:
- dependency-name: "@tailwindcss/cli"
  dependency-version: 4.1.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-05-07 05:11:05 +00:00
ZhenShuo Leo 73cbdae595 ✨ Feat: support extend-head access .Page (#1781)
Use extend-head-uncached.html for downward compatibility
2025-05-06 23:55:47 +08:00
ZhenShuo Leo 772bcfb879 ✨ Feat: add option disableHeroImageFilter on homepage (#2029)
disableHeroImageFilter deault to false. When set to true, it uses the color
style from the background layout.
2025-05-06 21:42:12 +08:00
ZhenShuo Leo adc828128d 🐛 Fix: codeblock highlight in .prose-invert 2025-05-06 20:03:13 +08:00
ZhenShuo Leo c941b70c60 📝 Docs: update codeblock language 2025-05-06 18:04:32 +08:00
ZhenShuo Leo e169dfa5ec Fix: disable the search keyboard shortcut in a form (#2041) 2025-05-06 17:32:04 +08:00
ZhenShuo Leo 7c13ba985f 🐛 Fix: truncation text in copy-button 2025-05-06 17:25:46 +08:00
ZhenShuo Leo c4d7112520 Update Hugo supported version 2025-05-05 10:33:17 +08:00
ZhenShuo Leo c59cb293bf ✨ Feat: Prevent ToC flicker on initial load
Use CSS to control ToC height instead of JavaScript to prevent flickering.
2025-05-05 08:30:34 +08:00
ZhenShuo Leo 6fb8b945d7 🐛 Table of Contents takes too much space (#1607) 2025-05-05 08:27:22 +08:00
José Manuel Mariño Mariño ec09dd41e6 Update gl.yaml
Update Galician language
2025-05-03 19:07:48 +02:00
ZhenShuo Leo 6486908601 ✨ Feat: gallery shortcode supports all kinds of input
Also trim white spaces
2025-05-04 00:27:31 +08:00
ZhenShuo Leo 806a8612b8 chore: add usage example in document site 2025-05-03 19:53:48 +08:00
ZhenShuo Leo f19c61cb97 🐛 Fix: make thumbAndBackground behavior consistent
Add support for URL input, matching the behavior of other hero partials.
2025-05-03 18:30:32 +08:00
ZhenShuo Leo 3afe8b5e00 chore: correct typo (#1491) (#2100) 2025-05-03 03:14:29 +08:00
ZhenShuo Leo e4b76d6fce ✨ feat: add defaultSocialImage (#1491) (#2100)
Add `defaultSocialImage` as the default image for social media sharing. This feature would be useful for users who don’t want to specify an image for every article. This PR also resolves the issue where the homepage missing an image when shared.
2025-05-03 03:07:00 +08:00
Marian Steinbach 8b0b0b9c80 Add Pixelfed icon 2025-05-02 17:40:32 +02:00
Marian Steinbach a109230b22 Add PeerTube icon 2025-05-02 17:17:46 +02:00
Ariel Góes de Castro bc235ae526 Update users.json 2025-05-02 16:35:51 +02:00
Nuno Coração de9a38161a updated version 2025-05-02 11:40:52 +01:00
Nuno Coração 1d21656d5e Merge pull request #2088 from nunocoracao/dev
🔖 v2.85.1
2025-05-02 11:40:00 +01:00
Nuno Coração 1731c36c7c Merge pull request #2091 from ZhenShuo2021/fix/gallery-path
🐛 fix: incorrect path for gallery (#2042)
2025-05-02 11:38:31 +01:00
Nuno Coração a219b38010 Merge pull request #2092 from ZhenShuo2021/fix/i18n-code
🐛 fix: i18n items of code don't work (#1965)
2025-05-02 11:36:21 +01:00
Nuno Coração 70586cab25 Merge pull request #2090 from ZhenShuo2021/fix/github-card
🐛 fix: hugo minify breaks github card (#1434)
2025-05-02 11:34:37 +01:00
Nuno Coração 6fafc4b628 Merge pull request #2089 from nunocoracao/hugo-new-version
⚙️ Update Hugo supported version
2025-05-02 11:33:48 +01:00
Nuno Coração b3dcccf856 updated version 2025-05-02 11:33:18 +01:00
ZhenShuo Leo faa22c47d8 🐛 fix: i18n items of code don't work (#1965) 2025-05-02 18:20:41 +08:00
ZhenShuo Leo 6f33b9d5cf 🐛 fix: incorrect path for gallery
Fix this issue with resource.RelPermalink
2025-05-02 17:43:56 +08:00
ZhenShuo Leo 7072628632 🐛 fix: hugo minify breaks github card (#1434)
Add a div wrapper to avoid incorrect minification by hugo.

Tested with sample https://codeberg.org/cthru/blowfish_test/src/branch/master/content/tests/1716983769844-github-card-test/index.md#
2025-05-02 14:46:32 +08:00
nunocoracao f0267b0338 Update Hugo supported version 2025-05-02 06:06:58 +00:00
Nuno Coração d4538c93ec removed likes from examples 2025-05-01 17:53:48 +01:00
Nuno Coração 2d053f76c4 udpated stale.yaml 2025-05-01 17:41:14 +01:00
Nuno Coração e6927136a4 udpated stale.yaml 2025-05-01 17:38:49 +01:00
Nuno Coração a29c3734cb v2.86.0 2025-05-01 17:26:23 +01:00
Nuno Coração ec252d1854 Merge pull request #2033 from nunocoracao/dev
🔖 v2.85.0
2025-05-01 17:21:31 +01:00
Nuno Coração ad6061c9cf Merge pull request #2086 from nunocoracao/update-gha
⚙️ Update gha
2025-05-01 17:19:34 +01:00
Nuno Coração 0b8946933b udpated gha 2025-05-01 17:18:51 +01:00
Nuno Coração 04532c7c29 udpated gha 2025-05-01 17:15:18 +01:00
Nuno Coração 5c7d489f4e updated user tiles 2025-05-01 17:11:50 +01:00
Nuno Coração 88f92209f9 Merge pull request #2078 from Xeonzilla/patch-1
Update users.json
2025-05-01 17:00:23 +01:00
Nuno Coração c6b1639e3d Merge pull request #2066 from irusukan/dev
Update users.json
2025-05-01 16:59:55 +01:00
Nuno Coração 61fe2d32e5 Merge branch 'dev' into dev 2025-05-01 16:59:46 +01:00
Nuno Coração 8e92c24873 Merge pull request #2060 from adriantunez/patch-2
Update users.json to add adriantunez.cloud
2025-05-01 16:58:52 +01:00
Nuno Coração 8b965d3ffe Merge branch 'dev' into patch-2 2025-05-01 16:58:46 +01:00
Nuno Coração 02c864ce3e added blog.francescopapini.com 2025-05-01 16:58:04 +01:00
Nuno Coração 0ce6d89ca9 Merge pull request #2043 from panoskorovesis/dev
Update users.json
2025-05-01 16:56:25 +01:00
Nuno Coração a062778735 updated package json tailwind commands 2025-05-01 16:52:06 +01:00
Nuno Coração 8d3a3dce93 Merge pull request #2059 from ragibson/fix-list-summaries
Fix article lists showing incorrectly wrapped summaries
2025-05-01 16:48:13 +01:00
Nuno Coração 01f60987bf fixed support for hugo 0.147.0 in example site 2025-05-01 16:47:54 +01:00
Nuno Coração c838202da6 Merge pull request #2055 from ragibson/main
Rewrite templates/partials for Hugo v0.146.0
2025-05-01 16:43:38 +01:00
Nuno Coração 41c7456f98 Merge pull request #2064 from MrSom3body/main
✨ don't add `mailto:` links to `<head>`
2025-05-01 16:40:12 +01:00
Nuno Coração 326839575e Merge pull request #2070 from ZhenShuo2021/fix/mermaid
🐛 fix: Preserve Mermaid indentation disrupted by Hugo minify (#2069)
2025-05-01 16:36:03 +01:00
Nuno Coração 963da57589 Merge pull request #2080 from pawelngei/medium-zoom-data-zoom-src
🐛 fix: Enable zooming to a higher resolution image using `srcset` and `medium-zoom`
2025-05-01 16:33:03 +01:00
Nuno Coração 4ae556cd21 Merge pull request #2040 from michael1-0/machine-change
📝 Update deprecated machine to newest for GitHub Pages
2025-05-01 16:31:41 +01:00
Nuno Coração 00cca47203 Merge pull request #2085 from nunocoracao/dependabot/npm_and_yarn/dev/puppeteer-24.7.2
📌 Bump puppeteer from 24.6.1 to 24.7.2
2025-05-01 16:30:12 +01:00
Nuno Coração 151874a741 Merge pull request #2073 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-2.2.2
📌 Bump @headlessui/react from 2.2.1 to 2.2.2
2025-05-01 16:30:02 +01:00
Nuno Coração bf09259a6e Merge pull request #2074 from nunocoracao/dependabot/npm_and_yarn/dev/katex-0.16.22
📌 Bump katex from 0.16.21 to 0.16.22
2025-05-01 16:29:45 +01:00
Nuno Coração 5e765336c8 Merge pull request #2075 from nunocoracao/dependabot/npm_and_yarn/dev/chart.js-4.4.9
📌 Bump chart.js from 4.4.8 to 4.4.9
2025-05-01 16:29:30 +01:00
Nuno Coração 55acc7f9f7 Merge pull request #2077 from nunocoracao/hugo-new-version
⚙️ Update Hugo supported version
2025-05-01 16:28:39 +01:00
dependabot[bot] d37234ccf4 📌 Bump puppeteer from 24.6.1 to 24.7.2
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 24.6.1 to 24.7.2.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.6.1...puppeteer-v24.7.2)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-version: 24.7.2
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-30 05:48:45 +00:00
Ryan Gibson c8305c53cc Merge branch 'dev' into fix-list-summaries 2025-04-29 12:16:56 -04:00
Ryan Gibson 76dcccf069 Recompile tailwind CSS 2025-04-29 12:08:22 -04:00
Ryan Gibson f91edf0d3c Add explicit md:flex-nowrap into article link class 2025-04-29 12:08:22 -04:00
Ryan Gibson 38f0f3def6 Rename taxonomy.html to fix tags display bug
See https://github.com/nunocoracao/blowfish/issues/2067 and
https://github.com/gohugoio/hugo/issues/13636 for context
2025-04-29 12:07:18 -04:00
ALXD 5af31913f1 add data-zoom-src to figure and render-image layouts fixing medium-zoom 2025-04-26 12:48:35 +02:00
nunocoracao ed1ea928c8 Update Hugo supported version 2025-04-26 06:05:53 +00:00
Xeonzilla 9aded4b52b Update users.json 2025-04-26 12:27:11 +08:00
dependabot[bot] a9cfffc1e1 📦 Update packaged ChartJS 2025-04-23 05:17:46 +00:00
dependabot[bot] c84259171c 📦 Update packaged KaTeX 2025-04-23 05:17:38 +00:00
dependabot[bot] 9a090ccdea 📌 Bump chart.js from 4.4.8 to 4.4.9
Bumps [chart.js](https://github.com/chartjs/Chart.js) from 4.4.8 to 4.4.9.
- [Release notes](https://github.com/chartjs/Chart.js/releases)
- [Commits](https://github.com/chartjs/Chart.js/compare/v4.4.8...v4.4.9)

---
updated-dependencies:
- dependency-name: chart.js
  dependency-version: 4.4.9
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-23 05:17:22 +00:00
dependabot[bot] d2bf769e05 📌 Bump katex from 0.16.21 to 0.16.22
Bumps [katex](https://github.com/KaTeX/KaTeX) from 0.16.21 to 0.16.22.
- [Release notes](https://github.com/KaTeX/KaTeX/releases)
- [Changelog](https://github.com/KaTeX/KaTeX/blob/main/CHANGELOG.md)
- [Commits](https://github.com/KaTeX/KaTeX/compare/v0.16.21...v0.16.22)

---
updated-dependencies:
- dependency-name: katex
  dependency-version: 0.16.22
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-23 05:17:14 +00:00
dependabot[bot] c26a66f8cd 📌 Bump @headlessui/react from 2.2.1 to 2.2.2
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 2.2.1 to 2.2.2.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v2.2.2/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-version: 2.2.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-23 05:17:05 +00:00
Nuno Coração 655f997ed0 Merge pull request #2054 from nunocoracao/hugo-new-version 2025-04-22 20:59:46 +01:00
Nuno Coração abaa9912d8 Merge pull request #2037 from nunocoracao/dependabot/npm_and_yarn/dev/tailwind-scrollbar-4.0.2 2025-04-22 20:58:36 +01:00
Nuno Coração f69e4b88b3 Merge pull request #2044 from nunocoracao/dependabot/npm_and_yarn/dev/headlessui/react-2.2.1 2025-04-22 20:58:07 +01:00
ZhenShuo Leo 059d22ca96 🐛 fix: Preserve Mermaid indentation disrupted by Hugo minify (#2069)
Add a pre tag to the Mermaid class to preserve indentation and ensure data retrieval on DOMContentLoaded
2025-04-22 05:53:15 +08:00
nunocoracao 668f47ce11 Update Hugo supported version 2025-04-21 06:06:55 +00:00
yukiutym dbb344e917 Update users.json 2025-04-19 13:14:34 +09:00
dependabot[bot] d2fd432d88 📌 Bump tailwind-scrollbar from 4.0.1 to 4.0.2
Bumps [tailwind-scrollbar](https://github.com/adoxography/tailwind-scrollbar) from 4.0.1 to 4.0.2.
- [Release notes](https://github.com/adoxography/tailwind-scrollbar/releases)
- [Commits](https://github.com/adoxography/tailwind-scrollbar/compare/v4.0.1...v4.0.2)

---
updated-dependencies:
- dependency-name: tailwind-scrollbar
  dependency-type: direct:development
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-17 10:40:26 +00:00
Nuno Coração 14e5cbb3d0 Merge pull request #2062 from nunocoracao/dependabot/npm_and_yarn/dev/puppeteer-24.6.1
📌 Bump puppeteer from 24.4.0 to 24.6.1
2025-04-17 11:39:14 +01:00
Nuno Coração 04a2c5838a Merge pull request #2063 from nunocoracao/dependabot/npm_and_yarn/dev/tailwindcss/cli-4.1.4
📌 Bump @tailwindcss/cli from 4.0.7 to 4.1.4
2025-04-17 11:39:00 +01:00
Karun Sandhu 9b3f313d00 ✨ don't add mailto: links to <head> 2025-04-17 12:04:31 +02:00
dependabot[bot] 1a17faeca5 💄 Rebuild CSS 2025-04-16 05:53:13 +00:00
dependabot[bot] 3085bd3dc1 📌 Bump @tailwindcss/cli from 4.0.7 to 4.1.4
Bumps [@tailwindcss/cli](https://github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-cli) from 4.0.7 to 4.1.4.
- [Release notes](https://github.com/tailwindlabs/tailwindcss/releases)
- [Changelog](https://github.com/tailwindlabs/tailwindcss/blob/main/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/tailwindcss/commits/v4.1.4/packages/@tailwindcss-cli)

---
updated-dependencies:
- dependency-name: "@tailwindcss/cli"
  dependency-version: 4.1.4
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-16 05:52:47 +00:00
dependabot[bot] eb127c47cb 📌 Bump puppeteer from 24.4.0 to 24.6.1
Bumps [puppeteer](https://github.com/puppeteer/puppeteer) from 24.4.0 to 24.6.1.
- [Release notes](https://github.com/puppeteer/puppeteer/releases)
- [Changelog](https://github.com/puppeteer/puppeteer/blob/main/CHANGELOG.md)
- [Commits](https://github.com/puppeteer/puppeteer/compare/puppeteer-v24.4.0...puppeteer-v24.6.1)

---
updated-dependencies:
- dependency-name: puppeteer
  dependency-version: 24.6.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-16 05:52:24 +00:00
Adri Antunez f6a6012c85 Update users.json to add adriantunez.cloud
Add adriantunez.cloud website
2025-04-14 16:48:06 +02:00
Ryan Gibson 6cfea9bfd1 Add "partials/" to static templates.Exists 2025-04-11 16:22:04 -04:00
Ryan Gibson baaf251bde Rewrite templates/partials for Hugo v0.146.0 2025-04-11 09:32:47 -04:00
dependabot[bot] a599079568 📌 Bump @headlessui/react from 2.2.0 to 2.2.1
Bumps [@headlessui/react](https://github.com/tailwindlabs/headlessui/tree/HEAD/packages/@headlessui-react) from 2.2.0 to 2.2.1.
- [Release notes](https://github.com/tailwindlabs/headlessui/releases)
- [Changelog](https://github.com/tailwindlabs/headlessui/blob/main/packages/@headlessui-react/CHANGELOG.md)
- [Commits](https://github.com/tailwindlabs/headlessui/commits/@headlessui/react@v2.2.1/packages/@headlessui-react)

---
updated-dependencies:
- dependency-name: "@headlessui/react"
  dependency-version: 2.2.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-09 05:56:53 +00:00
Panos Korovesis 0ada981a1b Add personal website to users.json 2025-04-07 13:53:38 +03:00
Michael Bagaskoro Edwards 7e1df06046 Change deprecated machine to newest 2025-04-04 14:34:10 +07:00
Nuno Coração 0b183ed248 new release 2025-03-30 00:23:59 +00:00
547 changed files with 2093 additions and 1359 deletions

No files matched your search

+6 -1
View File
@@ -7,7 +7,8 @@ name: Mark stale issues and pull requests
on:
schedule:
- cron: '60 1 * * *'
- cron: '0 1 * * *'
workflow_dispatch:
jobs:
stale:
@@ -25,3 +26,7 @@ jobs:
stale-pr-message: 'This pull request will be closed since it has been stale for 60 days.'
stale-issue-label: 'no-issue-activity'
stale-pr-label: 'no-pr-activity'
days-before-stale: 60
days-before-close: 0
remove-stale-when-updated: true
operations-per-run: 100
+283 -255
View File
@@ -1,5 +1,6 @@
/*! tailwindcss v4.0.7 | MIT License | https://tailwindcss.com */
/*! tailwindcss v4.1.7 | MIT License | https://tailwindcss.com */
/*! Blowfish | MIT License | https://github.com/nunocoracao/blowfish */
@layer properties;
#zen-mode-button {
cursor: pointer;
}
@@ -16,22 +17,12 @@ body.zen-mode-enable {
:root, :host {
--font-sans: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
"Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
--font-serif: ui-serif, Georgia, Cambria, "Times New Roman", Times, serif;
--font-mono: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
"Courier New", monospace;
--spacing: 0.25rem;
--container-3xs: 16rem;
--container-2xs: 18rem;
--container-xs: 20rem;
--container-sm: 24rem;
--container-md: 28rem;
--container-lg: 32rem;
--container-xl: 36rem;
--container-2xl: 42rem;
--container-3xl: 48rem;
--container-4xl: 56rem;
--container-5xl: 64rem;
--container-6xl: 72rem;
--container-7xl: 80rem;
--text-xs: 0.75rem;
--text-xs--line-height: calc(1 / 0.75);
@@ -49,90 +40,28 @@ body.zen-mode-enable {
--text-3xl--line-height: calc(2.25 / 1.875);
--text-4xl: 2.25rem;
--text-4xl--line-height: calc(2.5 / 2.25);
--text-5xl: 3rem;
--text-5xl--line-height: 1;
--text-6xl: 3.75rem;
--text-6xl--line-height: 1;
--text-7xl: 4.5rem;
--text-7xl--line-height: 1;
--text-8xl: 6rem;
--text-8xl--line-height: 1;
--text-9xl: 8rem;
--text-9xl--line-height: 1;
--font-weight-thin: 100;
--font-weight-extralight: 200;
--font-weight-light: 300;
--font-weight-normal: 400;
--font-weight-medium: 500;
--font-weight-semibold: 600;
--font-weight-bold: 700;
--font-weight-extrabold: 800;
--font-weight-black: 900;
--tracking-tighter: -0.05em;
--tracking-tight: -0.025em;
--tracking-normal: 0em;
--tracking-wide: 0.025em;
--tracking-wider: 0.05em;
--tracking-widest: 0.1em;
--leading-tight: 1.25;
--leading-snug: 1.375;
--leading-normal: 1.5;
--leading-relaxed: 1.625;
--leading-loose: 2;
--radius-xs: 0.125rem;
--radius-sm: 0.25rem;
--radius-md: 0.375rem;
--radius-lg: 0.5rem;
--radius-xl: 0.75rem;
--radius-2xl: 1rem;
--radius-3xl: 1.5rem;
--radius-4xl: 2rem;
--shadow-2xs: 0 1px rgb(0 0 0 / 0.05);
--shadow-xs: 0 1px 2px 0 rgb(0 0 0 / 0.05);
--shadow-sm: 0 1px 3px 0 rgb(0 0 0 / 0.1), 0 1px 2px -1px rgb(0 0 0 / 0.1);
--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 0.1), 0 2px 4px -2px rgb(0 0 0 / 0.1);
--shadow-lg: 0 10px 15px -3px rgb(0 0 0 / 0.1), 0 4px 6px -4px rgb(0 0 0 / 0.1);
--shadow-xl: 0 20px 25px -5px rgb(0 0 0 / 0.1), 0 8px 10px -6px rgb(0 0 0 / 0.1);
--shadow-2xl: 0 25px 50px -12px rgb(0 0 0 / 0.25);
--inset-shadow-2xs: inset 0 1px rgb(0 0 0 / 0.05);
--inset-shadow-xs: inset 0 1px 1px rgb(0 0 0 / 0.05);
--inset-shadow-sm: inset 0 2px 4px rgb(0 0 0 / 0.05);
--drop-shadow-xs: 0 1px 1px rgb(0 0 0 / 0.05);
--drop-shadow-sm: 0 1px 2px rgb(0 0 0 / 0.15);
--drop-shadow-md: 0 3px 3px rgb(0 0 0 / 0.12);
--drop-shadow-lg: 0 4px 4px rgb(0 0 0 / 0.15);
--drop-shadow-xl: 0 9px 7px rgb(0 0 0 / 0.1);
--drop-shadow-2xl: 0 25px 25px rgb(0 0 0 / 0.15);
--ease-in: cubic-bezier(0.4, 0, 1, 1);
--ease-out: cubic-bezier(0, 0, 0.2, 1);
--ease-in-out: cubic-bezier(0.4, 0, 0.2, 1);
--animate-spin: spin 1s linear infinite;
--animate-ping: ping 1s cubic-bezier(0, 0, 0.2, 1) infinite;
--animate-pulse: pulse 2s cubic-bezier(0.4, 0, 0.6, 1) infinite;
--animate-bounce: bounce 1s infinite;
--blur-xs: 4px;
--blur-sm: 8px;
--blur-md: 12px;
--blur-lg: 16px;
--blur-xl: 24px;
--blur-2xl: 40px;
--blur-3xl: 64px;
--perspective-dramatic: 100px;
--perspective-near: 300px;
--perspective-normal: 500px;
--perspective-midrange: 800px;
--perspective-distant: 1200px;
--aspect-video: 16 / 9;
--default-transition-duration: 150ms;
--default-transition-timing-function: cubic-bezier(0.4, 0, 0.2, 1);
--default-font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
"Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
--default-font-feature-settings: initial;
--default-font-variation-settings: initial;
--default-mono-font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
"Courier New", monospace;
--default-mono-font-feature-settings: initial;
--default-mono-font-variation-settings: initial;
--default-font-family: var(--font-sans);
--default-mono-font-family: var(--font-mono);
}
}
@layer base {
@@ -146,10 +75,9 @@ body.zen-mode-enable {
line-height: 1.5;
-webkit-text-size-adjust: 100%;
tab-size: 4;
font-family: ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji",
"Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
font-feature-settings: initial;
font-variation-settings: initial;
font-family: var(--default-font-family, ui-sans-serif, system-ui, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");
font-feature-settings: var(--default-font-feature-settings, normal);
font-variation-settings: var(--default-font-variation-settings, normal);
-webkit-tap-highlight-color: transparent;
}
hr {
@@ -174,10 +102,9 @@ body.zen-mode-enable {
font-weight: bolder;
}
code, kbd, samp, pre {
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono",
"Courier New", monospace;
font-feature-settings: initial;
font-variation-settings: initial;
font-family: var(--default-mono-font-family, ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);
font-feature-settings: var(--default-mono-font-feature-settings, normal);
font-variation-settings: var(--default-mono-font-variation-settings, normal);
font-size: 1em;
}
small {
@@ -244,7 +171,10 @@ body.zen-mode-enable {
}
@supports (not (-webkit-appearance: -apple-pay-button)) or (contain-intrinsic-size: 1px) {
::placeholder {
color: color-mix(in oklab, currentColor 50%, transparent);
color: currentcolor;
@supports (color: color-mix(in lab, red, red)) {
color: color-mix(in oklab, currentcolor 50%, transparent);
}
}
}
textarea {
@@ -336,9 +266,6 @@ body.zen-mode-enable {
.top-0 {
top: calc(var(--spacing) * 0);
}
.top-14 {
top: calc(var(--spacing) * 14);
}
.top-20 {
top: calc(var(--spacing) * 20);
}
@@ -351,21 +278,12 @@ body.zen-mode-enable {
.right-0 {
right: calc(var(--spacing) * 0);
}
.right-2 {
right: calc(var(--spacing) * 2);
}
.bottom-0 {
bottom: calc(var(--spacing) * 0);
}
.bottom-2 {
bottom: calc(var(--spacing) * 2);
}
.left-0 {
left: calc(var(--spacing) * 0);
}
.z-1 {
z-index: 1;
}
.z-10 {
z-index: 10;
}
@@ -426,12 +344,6 @@ body.zen-mode-enable {
.m-2 {
margin: calc(var(--spacing) * 2);
}
.m-4 {
margin: calc(var(--spacing) * 4);
}
.m-50 {
margin: calc(var(--spacing) * 50);
}
.m-300 {
margin: calc(var(--spacing) * 300);
}
@@ -480,9 +392,9 @@ body.zen-mode-enable {
color: var(--tw-prose-links);
text-decoration: none;
font-weight: 500;
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-300), 1) 100%, transparent);
text-decoration-color: rgba(var(--color-primary-300), 1);
&:hover {
color: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
color: rgba(var(--color-primary-600), 1);
text-decoration: none;
border-radius: 0.09rem;
}
@@ -645,14 +557,14 @@ body.zen-mode-enable {
padding-inline-end: 0.375em;
padding-bottom: 0.1875em;
padding-inline-start: 0.375em;
background-color: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
background-color: rgba(var(--color-neutral-200), 1);
padding: 0.1rem 0.4rem;
}
:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
color: var(--tw-prose-code);
font-weight: 600;
font-size: 0.875em;
background-color: color-mix(in oklab, rgba(var(--color-neutral-50), 1) 100%, transparent);
background-color: rgba(var(--color-neutral-50), 1);
padding-top: 3px;
padding-bottom: 3px;
padding-left: 5px;
@@ -772,42 +684,42 @@ body.zen-mode-enable {
line-height: 1.4285714;
margin-top: 0.8571429em;
}
--tw-prose-body: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
--tw-prose-headings: color-mix(in oklab, rgba(var(--color-neutral-800), 1) 100%, transparent);
--tw-prose-lead: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
--tw-prose-links: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
--tw-prose-bold: color-mix(in oklab, rgba(var(--color-neutral-900), 1) 100%, transparent);
--tw-prose-counters: color-mix(in oklab, rgba(var(--color-neutral-800), 1) 100%, transparent);
--tw-prose-bullets: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
--tw-prose-hr: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
--tw-prose-quotes: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
--tw-prose-quote-borders: color-mix(in oklab, rgba(var(--color-primary-200), 1) 100%, transparent);
--tw-prose-captions: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
--tw-prose-kbd: oklch(0.21 0.034 264.665);
--tw-prose-body: rgba(var(--color-neutral-700), 1);
--tw-prose-headings: rgba(var(--color-neutral-800), 1);
--tw-prose-lead: rgba(var(--color-neutral-500), 1);
--tw-prose-links: rgba(var(--color-primary-600), 1);
--tw-prose-bold: rgba(var(--color-neutral-900), 1);
--tw-prose-counters: rgba(var(--color-neutral-800), 1);
--tw-prose-bullets: rgba(var(--color-neutral-500), 1);
--tw-prose-hr: rgba(var(--color-neutral-200), 1);
--tw-prose-quotes: rgba(var(--color-neutral-700), 1);
--tw-prose-quote-borders: rgba(var(--color-primary-200), 1);
--tw-prose-captions: rgba(var(--color-neutral-500), 1);
--tw-prose-kbd: oklch(21% 0.034 264.665);
--tw-prose-kbd-shadows: NaN NaN NaN;
--tw-prose-code: color-mix(in oklab, rgba(var(--color-secondary-700), 1) 100%, transparent);
--tw-prose-pre-code: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
--tw-prose-pre-bg: color-mix(in oklab, rgba(var(--color-neutral-50), 1) 100%, transparent);
--tw-prose-th-borders: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
--tw-prose-td-borders: color-mix(in oklab, rgba(var(--color-neutral-300), 1) 100%, transparent);
--tw-prose-invert-body: color-mix(in oklab, rgba(var(--color-neutral-300), 1) 100%, transparent);
--tw-prose-invert-headings: color-mix(in oklab, rgba(var(--color-neutral-50), 1) 100%, transparent);
--tw-prose-invert-lead: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
--tw-prose-invert-links: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
--tw-prose-invert-bold: color-mix(in oklab, rgba(var(--color-neutral), 1) 100%, transparent);
--tw-prose-invert-counters: color-mix(in oklab, rgba(var(--color-neutral-400), 1) 100%, transparent);
--tw-prose-invert-bullets: color-mix(in oklab, rgba(var(--color-neutral-600), 1) 100%, transparent);
--tw-prose-invert-hr: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
--tw-prose-invert-quotes: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
--tw-prose-invert-quote-borders: color-mix(in oklab, rgba(var(--color-primary-900), 1) 100%, transparent);
--tw-prose-invert-captions: color-mix(in oklab, rgba(var(--color-neutral-400), 1) 100%, transparent);
--tw-prose-code: rgba(var(--color-secondary-700), 1);
--tw-prose-pre-code: rgba(var(--color-neutral-700), 1);
--tw-prose-pre-bg: rgba(var(--color-neutral-50), 1);
--tw-prose-th-borders: rgba(var(--color-neutral-500), 1);
--tw-prose-td-borders: rgba(var(--color-neutral-300), 1);
--tw-prose-invert-body: rgba(var(--color-neutral-300), 1);
--tw-prose-invert-headings: rgba(var(--color-neutral-50), 1);
--tw-prose-invert-lead: rgba(var(--color-neutral-500), 1);
--tw-prose-invert-links: rgba(var(--color-primary-400), 1);
--tw-prose-invert-bold: rgba(var(--color-neutral), 1);
--tw-prose-invert-counters: rgba(var(--color-neutral-400), 1);
--tw-prose-invert-bullets: rgba(var(--color-neutral-600), 1);
--tw-prose-invert-hr: rgba(var(--color-neutral-500), 1);
--tw-prose-invert-quotes: rgba(var(--color-neutral-200), 1);
--tw-prose-invert-quote-borders: rgba(var(--color-primary-900), 1);
--tw-prose-invert-captions: rgba(var(--color-neutral-400), 1);
--tw-prose-invert-kbd: #fff;
--tw-prose-invert-kbd-shadows: 255 255 255;
--tw-prose-invert-code: color-mix(in oklab, rgba(var(--color-secondary-400), 1) 100%, transparent);
--tw-prose-invert-pre-code: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
--tw-prose-invert-pre-bg: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
--tw-prose-invert-th-borders: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 100%, transparent);
--tw-prose-invert-td-borders: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
--tw-prose-invert-code: rgba(var(--color-secondary-400), 1);
--tw-prose-invert-pre-code: rgba(var(--color-neutral-200), 1);
--tw-prose-invert-pre-bg: rgba(var(--color-neutral-700), 1);
--tw-prose-invert-th-borders: rgba(var(--color-neutral-500), 1);
--tw-prose-invert-td-borders: rgba(var(--color-neutral-700), 1);
font-size: 1rem;
line-height: 1.75;
:where(picture > img):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
@@ -893,8 +805,8 @@ body.zen-mode-enable {
margin-bottom: 0;
}
:where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
color: color-mix(in oklab, rgba(var(--color-neutral-800), 1) 100%, transparent);
background-color: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
color: rgba(var(--color-neutral-800), 1);
background-color: rgba(var(--color-primary-600), 1);
padding: 0.1rem 0.2rem;
border-radius: 0.25rem;
}
@@ -905,10 +817,10 @@ body.zen-mode-enable {
display: none;
}
:where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
text-decoration-color: rgba(var(--color-primary-600), 1);
}
:where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-600), 1) 100%, transparent);
text-decoration-color: rgba(var(--color-primary-600), 1);
}
}
.\!mt-0 {
@@ -1040,6 +952,29 @@ body.zen-mode-enable {
.box-content {
box-sizing: content-box;
}
.scrollbar {
&::-webkit-scrollbar-track {
background-color: var(--scrollbar-track);
border-radius: var(--scrollbar-track-radius);
}
&::-webkit-scrollbar-thumb {
background-color: var(--scrollbar-thumb);
border-radius: var(--scrollbar-thumb-radius);
}
&::-webkit-scrollbar-corner {
background-color: var(--scrollbar-corner);
border-radius: var(--scrollbar-corner-radius);
}
@supports (-moz-appearance:none) {
scrollbar-width: auto;
scrollbar-color: var(--scrollbar-thumb, initial) var(--scrollbar-track, initial);
}
&::-webkit-scrollbar {
display: block;
width: var(--scrollbar-width, 16px);
height: var(--scrollbar-height, 16px);
}
}
.scrollbar-thin {
&::-webkit-scrollbar-track {
background-color: var(--scrollbar-track);
@@ -1087,9 +1022,6 @@ body.zen-mode-enable {
.inline-block {
display: inline-block;
}
.inline-flex {
display: inline-flex;
}
.list-item {
display: list-item;
}
@@ -1109,15 +1041,9 @@ body.zen-mode-enable {
.h-0 {
height: calc(var(--spacing) * 0);
}
.h-1 {
height: calc(var(--spacing) * 1);
}
.h-1\/2 {
height: calc(1/2 * 100%);
}
.h-2 {
height: calc(var(--spacing) * 2);
}
.h-3 {
height: calc(var(--spacing) * 3);
}
@@ -1142,9 +1068,6 @@ body.zen-mode-enable {
.h-48 {
height: calc(var(--spacing) * 48);
}
.h-80 {
height: calc(var(--spacing) * 80);
}
.h-84 {
height: calc(var(--spacing) * 84);
}
@@ -1193,9 +1116,6 @@ body.zen-mode-enable {
.w-0 {
width: calc(var(--spacing) * 0);
}
.w-1 {
width: calc(var(--spacing) * 1);
}
.w-2 {
width: calc(var(--spacing) * 2);
}
@@ -1320,14 +1240,14 @@ body.zen-mode-enable {
--tw-translate-x: -100%;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.-translate-y-8 {
--tw-translate-y: calc(var(--spacing) * -8);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.translate-x-full {
--tw-translate-x: 100%;
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.-translate-y-8 {
--tw-translate-y: calc(var(--spacing) * -8);
translate: var(--tw-translate-x) var(--tw-translate-y);
}
.scale-0 {
--tw-scale-x: 0%;
--tw-scale-y: 0%;
@@ -1344,10 +1264,10 @@ body.zen-mode-enable {
scale: 1.02;
}
.transform {
transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y);
transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,);
}
.transform\! {
transform: var(--tw-rotate-x) var(--tw-rotate-y) var(--tw-rotate-z) var(--tw-skew-x) var(--tw-skew-y) !important;
transform: var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,) !important;
}
.transform-none {
transform: none;
@@ -1401,12 +1321,6 @@ body.zen-mode-enable {
.gap-4 {
gap: calc(var(--spacing) * 4);
}
.gap-x-3 {
column-gap: calc(var(--spacing) * 3);
}
.gap-x-5 {
column-gap: calc(var(--spacing) * 5);
}
.space-y-2 {
:where(& > :not(:last-child)) {
--tw-space-y-reverse: 0;
@@ -1428,6 +1342,12 @@ body.zen-mode-enable {
margin-block-end: calc(calc(var(--spacing) * 10) * calc(1 - var(--tw-space-y-reverse)));
}
}
.gap-x-3 {
column-gap: calc(var(--spacing) * 3);
}
.gap-x-5 {
column-gap: calc(var(--spacing) * 5);
}
.space-x-2 {
:where(& > :not(:last-child)) {
--tw-space-x-reverse: 0;
@@ -1467,8 +1387,8 @@ body.zen-mode-enable {
.overflow-visible {
overflow: visible;
}
.overflow-y-scroll {
overflow-y: scroll;
.overflow-y-auto {
overflow-y: auto;
}
.overscroll-contain {
overscroll-behavior: contain;
@@ -1609,26 +1529,26 @@ body.zen-mode-enable {
--tw-prose-th-borders: var(--tw-prose-invert-th-borders);
--tw-prose-td-borders: var(--tw-prose-invert-td-borders);
:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: color-mix(in oklab, rgba(var(--color-neutral-600), 1) 100%, transparent);
text-decoration-color: rgba(var(--color-neutral-600), 1);
&:hover {
color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
color: rgba(var(--color-primary-400), 1);
}
}
:where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
color: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
background-color: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
color: rgba(var(--color-neutral-200), 1);
background-color: rgba(var(--color-neutral-700), 1);
}
:where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
background-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
background-color: rgba(var(--color-primary-400), 1);
}
:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
background-color: rgba(var(--color-neutral-700), 1);
}
:where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
text-decoration-color: rgba(var(--color-primary-400), 1);
}
:where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
text-decoration-color: rgba(var(--color-primary-400), 1);
}
}
.bg-\[\#6d6d6d\] {
@@ -1641,16 +1561,25 @@ body.zen-mode-enable {
background-color: rgba(var(--color-neutral-100), 1);
}
.bg-neutral-100\/50 {
background-color: color-mix(in oklab, rgba(var(--color-neutral-100), 1) 50%, transparent);
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-100), 1), 1) 50%, transparent);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-100), 1) 50%, transparent);
}
}
.bg-neutral-300 {
background-color: rgba(var(--color-neutral-300), 1);
}
.bg-neutral-500\/50 {
background-color: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 50%, transparent);
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-500), 1), 1) 50%, transparent);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-500), 1) 50%, transparent);
}
}
.bg-neutral\/50 {
background-color: color-mix(in oklab, rgba(var(--color-neutral), 1) 50%, transparent);
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral), 1), 1) 50%, transparent);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, rgba(var(--color-neutral), 1) 50%, transparent);
}
}
.bg-primary-100 {
background-color: rgba(var(--color-primary-100), 1);
@@ -1727,9 +1656,6 @@ body.zen-mode-enable {
.p-0 {
padding: calc(var(--spacing) * 0);
}
.p-1 {
padding: calc(var(--spacing) * 1);
}
.p-1\.5 {
padding: calc(var(--spacing) * 1.5);
}
@@ -2057,10 +1983,6 @@ body.zen-mode-enable {
.underline-offset-auto {
text-underline-offset: auto;
}
.antialiased {
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
.\!opacity-0 {
opacity: 0% !important;
}
@@ -2091,10 +2013,6 @@ body.zen-mode-enable {
.mix-blend-normal {
mix-blend-mode: normal;
}
.ring {
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentColor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.shadow {
--tw-shadow: 0 1px 3px 0 var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 1px 2px -1px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
@@ -2111,6 +2029,10 @@ body.zen-mode-enable {
--tw-shadow: 0 20px 25px -5px var(--tw-shadow-color, rgb(0 0 0 / 0.1)), 0 8px 10px -6px var(--tw-shadow-color, rgb(0 0 0 / 0.1));
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.ring {
--tw-ring-shadow: var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color, currentcolor);
box-shadow: var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
}
.outline {
outline-style: var(--tw-outline-style);
outline-width: 1px;
@@ -2123,10 +2045,6 @@ body.zen-mode-enable {
--tw-blur: blur(8px) !important;
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,) !important;
}
.drop-shadow {
--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / 0.1)) drop-shadow( 0 1px 1px rgb(0 0 0 / 0.06));
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
}
.invert {
--tw-invert: invert(100%);
filter: var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,);
@@ -2153,7 +2071,7 @@ body.zen-mode-enable {
backdrop-filter: var(--tw-backdrop-blur,) var(--tw-backdrop-brightness,) var(--tw-backdrop-contrast,) var(--tw-backdrop-grayscale,) var(--tw-backdrop-hue-rotate,) var(--tw-backdrop-invert,) var(--tw-backdrop-opacity,) var(--tw-backdrop-saturate,) var(--tw-backdrop-sepia,);
}
.transition {
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter;
transition-property: color, background-color, border-color, outline-color, text-decoration-color, fill, stroke, --tw-gradient-from, --tw-gradient-via, --tw-gradient-to, opacity, box-shadow, transform, translate, scale, rotate, filter, -webkit-backdrop-filter, backdrop-filter, display, visibility, content-visibility, overlay, pointer-events;
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
@@ -2234,14 +2152,11 @@ body.zen-mode-enable {
.\!\[clip\:rect\(0\,0\,0\,0\)\] {
clip: rect(0,0,0,0) !important;
}
.\[a-zA-Z\:_\] {
a-zA-Z: ;
}
.scrollbar-thumb-neutral-400 {
--scrollbar-thumb: oklch(0.708 0 0);
--scrollbar-thumb: oklch(70.8% 0 0);
}
.scrollbar-track-neutral-200 {
--scrollbar-track: oklch(0.922 0 0);
--scrollbar-track: oklch(92.2% 0 0);
}
.group-hover\:text-primary-300 {
&:is(:where(.group):hover *) {
@@ -2707,6 +2622,11 @@ body.zen-mode-enable {
grid-template-columns: repeat(3, minmax(0, 1fr));
}
}
.md\:flex-nowrap {
@media (width >= 853px) {
flex-wrap: nowrap;
}
}
.md\:justify-start {
@media (width >= 853px) {
justify-content: flex-start;
@@ -3141,26 +3061,26 @@ body.zen-mode-enable {
--tw-prose-th-borders: var(--tw-prose-invert-th-borders);
--tw-prose-td-borders: var(--tw-prose-invert-td-borders);
:where(a):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: color-mix(in oklab, rgba(var(--color-neutral-600), 1) 100%, transparent);
text-decoration-color: rgba(var(--color-neutral-600), 1);
&:hover {
color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
color: rgba(var(--color-primary-400), 1);
}
}
:where(kbd):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
color: color-mix(in oklab, rgba(var(--color-neutral-200), 1) 100%, transparent);
background-color: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
color: rgba(var(--color-neutral-200), 1);
background-color: rgba(var(--color-neutral-700), 1);
}
:where(mark):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
background-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
background-color: rgba(var(--color-primary-400), 1);
}
:where(code):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-700), 1) 100%, transparent);
background-color: rgba(var(--color-neutral-700), 1);
}
:where(a.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
text-decoration-color: rgba(var(--color-primary-400), 1);
}
:where(p.active):not(:where([class~="not-prose"],[class~="not-prose"] *)) {
text-decoration-color: color-mix(in oklab, rgba(var(--color-primary-400), 1) 100%, transparent);
text-decoration-color: rgba(var(--color-primary-400), 1);
}
}
}
@@ -3186,12 +3106,18 @@ body.zen-mode-enable {
}
.dark\:bg-neutral-800\/50 {
&:is(.dark *) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-800), 1) 50%, transparent);
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-800), 1), 1) 50%, transparent);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-800), 1) 50%, transparent);
}
}
}
.dark\:bg-neutral-900\/50 {
&:is(.dark *) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-900), 1) 50%, transparent);
background-color: color-mix(in srgb, rgba(rgba(var(--color-neutral-900), 1), 1) 50%, transparent);
@supports (color: color-mix(in lab, red, red)) {
background-color: color-mix(in oklab, rgba(var(--color-neutral-900), 1) 50%, transparent);
}
}
}
.dark\:bg-primary-300 {
@@ -3295,12 +3221,12 @@ body.zen-mode-enable {
}
.dark\:scrollbar-thumb-neutral-600 {
&:is(.dark *) {
--scrollbar-thumb: oklch(0.439 0 0);
--scrollbar-thumb: oklch(43.9% 0 0);
}
}
.dark\:scrollbar-track-neutral-800 {
&:is(.dark *) {
--scrollbar-track: oklch(0.269 0 0);
--scrollbar-track: oklch(26.9% 0 0);
}
}
.dark\:group-hover\:text-neutral-700 {
@@ -3384,6 +3310,9 @@ body a, body button {
transition-timing-function: var(--tw-ease, var(--default-transition-timing-function));
transition-duration: var(--tw-duration, var(--default-transition-duration));
}
button, [role="button"] {
cursor: pointer;
}
.icon svg {
height: 1em;
width: 1em;
@@ -3440,6 +3369,14 @@ body a, body button {
.prose div.min-w-0.max-w-prose>*:first-child {
margin-top: calc(var(--spacing) * 3);
}
#TableOfContents {
max-width: 25vw;
}
#TOCView {
max-height: calc(100vh - 150px);
min-height: 0;
overflow-x: hidden;
}
.toc ul, .toc li {
list-style-type: none;
padding-inline: calc(var(--spacing) * 0);
@@ -3485,6 +3422,10 @@ body a, body button {
z-index: 10;
width: calc(var(--spacing) * 20);
cursor: pointer;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
overflow: hidden;
border-top-right-radius: var(--radius-md);
border-bottom-left-radius: var(--radius-md);
background-color: rgba(var(--color-neutral-200), 1);
@@ -3516,6 +3457,10 @@ body a, body button {
.katex-display {
overflow: auto hidden;
}
.katex-display {
padding-right: 2px;
width: calc(100% - 2px);
}
table {
display: block;
overflow: auto;
@@ -3541,6 +3486,9 @@ a {
color: rgba(var(--color-neutral-200), 1);
}
}
.prose-invert .highlight pre > code {
background-color: unset;
}
.chroma .lntd, .chroma .lntd pre {
margin: calc(var(--spacing) * 0);
--tw-border-style: none;
@@ -3750,6 +3698,9 @@ pre {
height: 0px;
visibility: hidden;
}
[id^="fn"], [id^="fnref"] {
scroll-margin-top: 145px;
}
@screen sm {
.thumbnail {
min-width: 100%;
@@ -4375,7 +4326,7 @@ pre {
[type='text'],input:where(:not([type])),[type='email'],[type='url'],[type='password'],[type='number'],[type='date'],[type='datetime-local'],[type='month'],[type='search'],[type='tel'],[type='time'],[type='week'],[multiple],textarea,select {
appearance: none;
background-color: #fff;
border-color: oklch(0.551 0.027 264.364);
border-color: oklch(55.1% 0.027 264.364);
border-width: 1px;
border-radius: 0px;
padding-top: 0.5rem;
@@ -4391,15 +4342,15 @@ pre {
--tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
--tw-ring-offset-width: 0px;
--tw-ring-offset-color: #fff;
--tw-ring-color: oklch(0.546 0.245 262.881);
--tw-ring-color: oklch(54.6% 0.245 262.881);
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
border-color: oklch(0.546 0.245 262.881);
border-color: oklch(54.6% 0.245 262.881);
}
}
input::placeholder,textarea::placeholder {
color: oklch(0.551 0.027 264.364);
color: oklch(55.1% 0.027 264.364);
opacity: 1;
}
::-webkit-datetime-edit-fields-wrapper {
@@ -4419,7 +4370,7 @@ pre {
padding-bottom: 0;
}
select {
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='oklch(0.551 0.027 264.364)' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
background-image: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 20 20'%3e%3cpath stroke='oklch(55.1%25 0.027 264.364)' stroke-linecap='round' stroke-linejoin='round' stroke-width='1.5' d='M6 8l4 4 4-4'/%3e%3c/svg%3e");
background-position: right 0.5rem center;
background-repeat: no-repeat;
background-size: 1.5em 1.5em;
@@ -4445,9 +4396,9 @@ pre {
flex-shrink: 0;
height: 1rem;
width: 1rem;
color: oklch(0.546 0.245 262.881);
color: oklch(54.6% 0.245 262.881);
background-color: #fff;
border-color: oklch(0.551 0.027 264.364);
border-color: oklch(55.1% 0.027 264.364);
border-width: 1px;
--tw-shadow: 0 0 #0000;
}
@@ -4463,7 +4414,7 @@ pre {
--tw-ring-inset: var(--tw-empty,/*!*/ /*!*/);
--tw-ring-offset-width: 2px;
--tw-ring-offset-color: #fff;
--tw-ring-color: oklch(0.546 0.245 262.881);
--tw-ring-color: oklch(54.6% 0.245 262.881);
--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);
--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);
box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);
@@ -4528,32 +4479,6 @@ pre {
}
}
}
@keyframes spin {
to {
transform: rotate(360deg);
}
}
@keyframes ping {
75%, 100% {
transform: scale(2);
opacity: 0;
}
}
@keyframes pulse {
50% {
opacity: 0.5;
}
}
@keyframes bounce {
0%, 100% {
transform: translateY(-25%);
animation-timing-function: cubic-bezier(0.8, 0, 1, 1);
}
50% {
transform: none;
animation-timing-function: cubic-bezier(0, 0, 0.2, 1);
}
}
@property --tw-translate-x {
syntax: "*";
inherits: false;
@@ -4587,27 +4512,22 @@ pre {
@property --tw-rotate-x {
syntax: "*";
inherits: false;
initial-value: rotateX(0);
}
@property --tw-rotate-y {
syntax: "*";
inherits: false;
initial-value: rotateY(0);
}
@property --tw-rotate-z {
syntax: "*";
inherits: false;
initial-value: rotateZ(0);
}
@property --tw-skew-x {
syntax: "*";
inherits: false;
initial-value: skewX(0);
}
@property --tw-skew-y {
syntax: "*";
inherits: false;
initial-value: skewY(0);
}
@property --tw-pan-x {
syntax: "*";
@@ -4719,6 +4639,11 @@ pre {
syntax: "*";
inherits: false;
}
@property --tw-shadow-alpha {
syntax: "<percentage>";
inherits: false;
initial-value: 100%;
}
@property --tw-inset-shadow {
syntax: "*";
inherits: false;
@@ -4728,6 +4653,11 @@ pre {
syntax: "*";
inherits: false;
}
@property --tw-inset-shadow-alpha {
syntax: "<percentage>";
inherits: false;
initial-value: 100%;
}
@property --tw-ring-color {
syntax: "*";
inherits: false;
@@ -4810,6 +4740,19 @@ pre {
syntax: "*";
inherits: false;
}
@property --tw-drop-shadow-color {
syntax: "*";
inherits: false;
}
@property --tw-drop-shadow-alpha {
syntax: "<percentage>";
inherits: false;
initial-value: 100%;
}
@property --tw-drop-shadow-size {
syntax: "*";
inherits: false;
}
@property --tw-backdrop-blur {
syntax: "*";
inherits: false;
@@ -4859,3 +4802,88 @@ pre {
initial-value: "";
inherits: false;
}
@keyframes pulse {
50% {
opacity: 0.5;
}
}
@layer properties {
@supports ((-webkit-hyphens: none) and (not (margin-trim: inline))) or ((-moz-orient: inline) and (not (color:rgb(from red r g b)))) {
*, ::before, ::after, ::backdrop {
--tw-translate-x: 0;
--tw-translate-y: 0;
--tw-translate-z: 0;
--tw-scale-x: 1;
--tw-scale-y: 1;
--tw-scale-z: 1;
--tw-rotate-x: initial;
--tw-rotate-y: initial;
--tw-rotate-z: initial;
--tw-skew-x: initial;
--tw-skew-y: initial;
--tw-pan-x: initial;
--tw-pan-y: initial;
--tw-pinch-zoom: initial;
--tw-space-y-reverse: 0;
--tw-space-x-reverse: 0;
--tw-border-style: solid;
--tw-gradient-position: initial;
--tw-gradient-from: #0000;
--tw-gradient-via: #0000;
--tw-gradient-to: #0000;
--tw-gradient-stops: initial;
--tw-gradient-via-stops: initial;
--tw-gradient-from-position: 0%;
--tw-gradient-via-position: 50%;
--tw-gradient-to-position: 100%;
--tw-leading: initial;
--tw-font-weight: initial;
--tw-tracking: initial;
--tw-ordinal: initial;
--tw-slashed-zero: initial;
--tw-numeric-figure: initial;
--tw-numeric-spacing: initial;
--tw-numeric-fraction: initial;
--tw-shadow: 0 0 #0000;
--tw-shadow-color: initial;
--tw-shadow-alpha: 100%;
--tw-inset-shadow: 0 0 #0000;
--tw-inset-shadow-color: initial;
--tw-inset-shadow-alpha: 100%;
--tw-ring-color: initial;
--tw-ring-shadow: 0 0 #0000;
--tw-inset-ring-color: initial;
--tw-inset-ring-shadow: 0 0 #0000;
--tw-ring-inset: initial;
--tw-ring-offset-width: 0px;
--tw-ring-offset-color: #fff;
--tw-ring-offset-shadow: 0 0 #0000;
--tw-outline-style: solid;
--tw-blur: initial;
--tw-brightness: initial;
--tw-contrast: initial;
--tw-grayscale: initial;
--tw-hue-rotate: initial;
--tw-invert: initial;
--tw-opacity: initial;
--tw-saturate: initial;
--tw-sepia: initial;
--tw-drop-shadow: initial;
--tw-drop-shadow-color: initial;
--tw-drop-shadow-alpha: 100%;
--tw-drop-shadow-size: initial;
--tw-backdrop-blur: initial;
--tw-backdrop-brightness: initial;
--tw-backdrop-contrast: initial;
--tw-backdrop-grayscale: initial;
--tw-backdrop-hue-rotate: initial;
--tw-backdrop-invert: initial;
--tw-backdrop-opacity: initial;
--tw-backdrop-saturate: initial;
--tw-backdrop-sepia: initial;
--tw-duration: initial;
--tw-ease: initial;
--tw-content: "";
}
}
}
+33 -1
View File
@@ -10,6 +10,11 @@ body button {
@apply transition-colors;
}
button,
[role="button"] {
cursor: pointer;
}
/* Scale SVG icons to text size */
.icon svg {
@apply h-[1em] w-[1em];
@@ -59,6 +64,16 @@ body button {
}
/* Table of Contents */
#TableOfContents {
max-width: 25vw;
}
#TOCView {
max-height: calc(100vh - 150px);
min-height: 0;
overflow-x: hidden;
}
.toc ul,
.toc li {
@apply px-0 leading-snug list-none;
@@ -90,7 +105,9 @@ body button {
}
.copy-button {
@apply absolute top-0 right-0 z-10 invisible w-20 py-1 font-mono text-sm cursor-pointer opacity-90 bg-neutral-200 whitespace-nowrap rounded-bl-md rounded-tr-md text-neutral-700 dark:bg-neutral-600 dark:text-neutral-200;
@apply absolute top-0 right-0 z-10 invisible w-20 py-1 font-mono text-sm cursor-pointer
opacity-90 bg-neutral-200 whitespace-nowrap rounded-bl-md rounded-tr-md text-neutral-700
dark:bg-neutral-600 dark:text-neutral-200 overflow-hidden truncate;
}
.copy-button:hover,
@@ -107,6 +124,12 @@ body button {
/* Fix long KaTeX equations on mobile (see https://katex.org/docs/issues.html#css-customization) */
.katex-display { overflow: auto hidden }
/* Fix katex overflow https://github.com/nunocoracao/blowfish/issues/2138 */
.katex-display {
padding-right: 2px;
width: calc(100% - 2px);
}
/* Fix long tables breaking out of article on mobile */
table {
display: block;
@@ -132,6 +155,10 @@ a {
@apply static rounded-md text-neutral-700 bg-neutral-50 dark:bg-neutral-700 dark:text-neutral-200;
}
.prose-invert .highlight pre > code {
background-color: unset;
}
/* LineTableTD */
.chroma .lntd,
.chroma .lntd pre {
@@ -424,6 +451,11 @@ pre {
visibility: hidden;
}
/* Offset scroll position to avoid header overlap */
[id^="fn"], [id^="fnref"] {
scroll-margin-top: 145px;
}
@screen sm {
.thumbnail {
min-width: 100%;
+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 365 486.53"><path fill="currentColor" d="M0,243.26V0l182.5,121.63L0,243.26Z"/><path fill="currentColor" d="M0,486.53v-243.26l182.5,121.63L0,486.53Z"/><path fill="currentColor" d="M182.5,364.9V121.63l182.5,121.63-182.5,121.63Z"/></svg>

After

Width:  |  Height:  |  Size: 287 B

+1
View File
@@ -0,0 +1 @@
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 510 510"><path fill="currentColor" d="M255,510C114.17,510,0,395.83,0,255S114.17,0,255,0s255,114.17,255,255-114.17,255-255,255ZM234.75,310.67h46.78c44.06,0,79.79-34.78,79.79-77.67s-35.72-77.68-79.79-77.68h-67.51c-25.42,0-46.03,20.06-46.03,44.82v174.42l66.77-63.88Z"/></svg>

After

Width:  |  Height:  |  Size: 325 B

+12 -1
View File
@@ -2,6 +2,17 @@ function css(name) {
return "rgb(" + getComputedStyle(document.documentElement).getPropertyValue(name) + ")";
}
document.addEventListener("DOMContentLoaded", () => {
const mermaidDivs = document.querySelectorAll("div.mermaid");
for (const div of mermaidDivs) {
const preElement = div.querySelector("pre");
if (preElement) {
div.textContent = preElement.textContent;
}
}
});
mermaid.initialize({
theme: "base",
themeVariables: {
@@ -17,4 +28,4 @@ mermaid.initialize({
"ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,segoe ui,Roboto,helvetica neue,Arial,noto sans,sans-serif",
fontSize: "16px",
},
});
});
+8 -1
View File
@@ -25,7 +25,14 @@ modal.addEventListener("click", function (event) {
document.addEventListener("keydown", function (event) {
// Forward slash to open search wrapper
if (event.key == "/") {
if (!searchVisible) {
const active = document.activeElement
const tag = active.tagName
const isInputField =
tag === "INPUT" ||
tag === "TEXTAREA" ||
active.isContentEditable
if (!searchVisible && !isInputField) {
event.preventDefault();
displaySearch();
}
+4 -1
View File
@@ -1,6 +1,7 @@
function _toogleZenMode(zendModeButton) {
// Nodes selection
const body = document.querySelector('body');
const footer = document.querySelector('footer');
const tocRight = document.querySelector('.toc-right');
const tocInside = document.querySelector('.toc-inside');
const articleContent = document.querySelector('.article-content');
@@ -20,9 +21,11 @@ function _toogleZenMode(zendModeButton) {
articleContent.classList.toggle('max-w-fit');
articleContent.classList.toggle('max-w-prose');
// Change width of article title
// Change width of article title and footer
header.classList.toggle('max-w-full');
header.classList.toggle('max-w-prose');
footer.classList.toggle('max-w-full');
footer.classList.toggle('max-w-prose');
// Read i18n title from data-attributes
const titleI18nDisable = zendModeButton.getAttribute('data-title-i18n-disable');
+3 -3
View File
@@ -1,14 +1,14 @@
/*!
* Chart.js v4.4.8
* Chart.js v4.4.9
* https://www.chartjs.org
* (c) 2025 Chart.js Contributors
* Released under the MIT License
*/
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";var t=Object.freeze({__proto__:null,get Colors(){return Go},get Decimation(){return Qo},get Filler(){return ma},get Legend(){return ya},get SubTitle(){return ka},get Title(){return Ma},get Tooltip(){return Ba}});function e(){}const i=(()=>{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;a<r;a++)e.call(i,t[a],a);else if(o(t))for(l=Object.keys(t),r=l.length,a=0;a<r;a++)e.call(i,t[l[a]],l[a])}function f(t,e){let i,s,n,o;if(!t||!e||t.length!==e.length)return!1;for(i=0,s=t.length;i<s;++i)if(n=t[i],o=e[i],n.datasetIndex!==o.datasetIndex||n.index!==o.index)return!1;return!0}function g(t){if(n(t))return t.map(g);if(o(t)){const e=Object.create(null),i=Object.keys(t),s=i.length;let n=0;for(;n<s;++n)e[i[n]]=g(t[i[n]]);return e}return t}function p(t){return-1===["__proto__","prototype","constructor"].indexOf(t)}function m(t,e,i,s){if(!p(t))return;const n=e[t],a=i[t];o(n)&&o(a)?x(n,a,s):e[t]=g(a)}function x(t,e,i){const s=n(e)?e:[e],a=s.length;if(!o(t))return t;const r=(i=i||{}).merger||m;let l;for(let e=0;e<a;++e){if(l=s[e],!o(l))continue;const n=Object.keys(l);for(let e=0,s=n.length;e<s;++e)r(n[e],t,l,i)}return t}function b(t,e){return x(t,e,{merger:_})}function _(t,e,i){if(!p(t))return;const s=e[t],n=i[t];o(s)&&o(n)?b(s,n):Object.prototype.hasOwnProperty.call(e,t)||(e[t]=g(n))}const y={"":t=>t,x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)<i}function B(t){const e=Math.round(t);t=V(t,e,t/1e3)?e:t;const i=Math.pow(10,Math.floor(z(t))),s=t/i;return(s<=1?1:s<=2?2:s<=5?5:10)*i}function W(t){const e=[],i=Math.sqrt(t);let s;for(s=1;s<i;s++)t%s==0&&(e.push(s),e.push(t/s));return i===(0|i)&&e.push(i),e.sort(((t,e)=>t-e)).pop(),e}function N(t){return!function(t){return"symbol"==typeof t||"object"==typeof t&&null!==t&&!(Symbol.toPrimitive in t||"toString"in t||"valueOf"in t)}(t)&&!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;s<n;s++)o=t[s][i],isNaN(o)||(e.min=Math.min(e.min,o),e.max=Math.max(e.max,o))}function $(t){return t*(C/180)}function Y(t){return t*(180/C)}function U(t){if(!a(t))return;let e=1,i=0;for(;Math.round(t*e)/e!==t;)e*=10,i++;return i}function X(t,e){const i=e.x-t.x,s=e.y-t.y,n=Math.sqrt(i*i+s*s);let o=Math.atan2(s,i);return o<-.5*C&&(o+=O),{angle:o,distance:n}}function q(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function K(t,e){return(t-e+A)%O-C}function G(t){return(t%O+O)%O}function Z(t,e,i,s){const n=G(t),o=G(e),a=G(i),r=G(o-n),l=G(a-n),h=G(n-o),c=G(n-a);return n===o||n===a||s&&o===a||r>l&&h<c}function J(t,e,i){return Math.max(e,Math.min(i,t))}function Q(t){return J(t,-32768,32767)}function tt(t,e,i,s=1e-6){return t>=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]<e);let s,n=t.length-1,o=0;for(;n-o>1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return n<i||n===i&&t[s+1][e]===i}:s=>t[s][e]<i),st=(t,e,i)=>et(t,i,(s=>t[s][e]>=i));function nt(t,e,i){let s=0,n=t.length;for(;s<n&&t[s]<e;)s++;for(;n>s&&t[n-1]>i;)n--;return s>0||n<t.length?t.slice(s,n):t}const ot=["push","pop","shift","splice","unshift"];function at(t,e){t._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),ot.forEach((e=>{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...eLine truncated
!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?module.exports=e():"function"==typeof define&&define.amd?define(e):(t="undefined"!=typeof globalThis?globalThis:t||self).Chart=e()}(this,(function(){"use strict";var t=Object.freeze({__proto__:null,get Colors(){return Zo},get Decimation(){return ta},get Filler(){return xa},get Legend(){return va},get SubTitle(){return Sa},get Title(){return wa},get Tooltip(){return Wa}});function e(){}const i=(()=>{let t=0;return()=>t++})();function s(t){return null==t}function n(t){if(Array.isArray&&Array.isArray(t))return!0;const e=Object.prototype.toString.call(t);return"[object"===e.slice(0,7)&&"Array]"===e.slice(-6)}function o(t){return null!==t&&"[object Object]"===Object.prototype.toString.call(t)}function a(t){return("number"==typeof t||t instanceof Number)&&isFinite(+t)}function r(t,e){return a(t)?t:e}function l(t,e){return void 0===t?e:t}const h=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100:+t/e,c=(t,e)=>"string"==typeof t&&t.endsWith("%")?parseFloat(t)/100*e:+t;function d(t,e,i){if(t&&"function"==typeof t.call)return t.apply(i,e)}function u(t,e,i,s){let a,r,l;if(n(t))if(r=t.length,s)for(a=r-1;a>=0;a--)e.call(i,t[a],a);else for(a=0;a<r;a++)e.call(i,t[a],a);else if(o(t))for(l=Object.keys(t),r=l.length,a=0;a<r;a++)e.call(i,t[l[a]],l[a])}function f(t,e){let i,s,n,o;if(!t||!e||t.length!==e.length)return!1;for(i=0,s=t.length;i<s;++i)if(n=t[i],o=e[i],n.datasetIndex!==o.datasetIndex||n.index!==o.index)return!1;return!0}function g(t){if(n(t))return t.map(g);if(o(t)){const e=Object.create(null),i=Object.keys(t),s=i.length;let n=0;for(;n<s;++n)e[i[n]]=g(t[i[n]]);return e}return t}function p(t){return-1===["__proto__","prototype","constructor"].indexOf(t)}function m(t,e,i,s){if(!p(t))return;const n=e[t],a=i[t];o(n)&&o(a)?x(n,a,s):e[t]=g(a)}function x(t,e,i){const s=n(e)?e:[e],a=s.length;if(!o(t))return t;const r=(i=i||{}).merger||m;let l;for(let e=0;e<a;++e){if(l=s[e],!o(l))continue;const n=Object.keys(l);for(let e=0,s=n.length;e<s;++e)r(n[e],t,l,i)}return t}function b(t,e){return x(t,e,{merger:_})}function _(t,e,i){if(!p(t))return;const s=e[t],n=i[t];o(s)&&o(n)?b(s,n):Object.prototype.hasOwnProperty.call(e,t)||(e[t]=g(n))}const y={"":t=>t,x:t=>t.x,y:t=>t.y};function v(t){const e=t.split("."),i=[];let s="";for(const t of e)s+=t,s.endsWith("\\")?s=s.slice(0,-1)+".":(i.push(s),s="");return i}function M(t,e){const i=y[e]||(y[e]=function(t){const e=v(t);return t=>{for(const i of e){if(""===i)break;t=t&&t[i]}return t}}(e));return i(t)}function w(t){return t.charAt(0).toUpperCase()+t.slice(1)}const k=t=>void 0!==t,S=t=>"function"==typeof t,P=(t,e)=>{if(t.size!==e.size)return!1;for(const i of t)if(!e.has(i))return!1;return!0};function D(t){return"mouseup"===t.type||"click"===t.type||"contextmenu"===t.type}const C=Math.PI,O=2*C,A=O+C,T=Number.POSITIVE_INFINITY,L=C/180,E=C/2,R=C/4,I=2*C/3,z=Math.log10,F=Math.sign;function V(t,e,i){return Math.abs(t-e)<i}function B(t){const e=Math.round(t);t=V(t,e,t/1e3)?e:t;const i=Math.pow(10,Math.floor(z(t))),s=t/i;return(s<=1?1:s<=2?2:s<=5?5:10)*i}function W(t){const e=[],i=Math.sqrt(t);let s;for(s=1;s<i;s++)t%s==0&&(e.push(s),e.push(t/s));return i===(0|i)&&e.push(i),e.sort(((t,e)=>t-e)).pop(),e}function N(t){return!function(t){return"symbol"==typeof t||"object"==typeof t&&null!==t&&!(Symbol.toPrimitive in t||"toString"in t||"valueOf"in t)}(t)&&!isNaN(parseFloat(t))&&isFinite(t)}function H(t,e){const i=Math.round(t);return i-e<=t&&i+e>=t}function j(t,e,i){let s,n,o;for(s=0,n=t.length;s<n;s++)o=t[s][i],isNaN(o)||(e.min=Math.min(e.min,o),e.max=Math.max(e.max,o))}function $(t){return t*(C/180)}function Y(t){return t*(180/C)}function U(t){if(!a(t))return;let e=1,i=0;for(;Math.round(t*e)/e!==t;)e*=10,i++;return i}function X(t,e){const i=e.x-t.x,s=e.y-t.y,n=Math.sqrt(i*i+s*s);let o=Math.atan2(s,i);return o<-.5*C&&(o+=O),{angle:o,distance:n}}function q(t,e){return Math.sqrt(Math.pow(e.x-t.x,2)+Math.pow(e.y-t.y,2))}function K(t,e){return(t-e+A)%O-C}function G(t){return(t%O+O)%O}function Z(t,e,i,s){const n=G(t),o=G(e),a=G(i),r=G(o-n),l=G(a-n),h=G(n-o),c=G(n-a);return n===o||n===a||s&&o===a||r>l&&h<c}function J(t,e,i){return Math.max(e,Math.min(i,t))}function Q(t){return J(t,-32768,32767)}function tt(t,e,i,s=1e-6){return t>=Math.min(e,i)-s&&t<=Math.max(e,i)+s}function et(t,e,i){i=i||(i=>t[i]<e);let s,n=t.length-1,o=0;for(;n-o>1;)s=o+n>>1,i(s)?o=s:n=s;return{lo:o,hi:n}}const it=(t,e,i,s)=>et(t,i,s?s=>{const n=t[s][e];return n<i||n===i&&t[s+1][e]===i}:s=>t[s][e]<i),st=(t,e,i)=>et(t,i,(s=>t[s][e]>=i));function nt(t,e,i){let s=0,n=t.length;for(;s<n&&t[s]<e;)s++;for(;n>s&&t[n-1]>i;)n--;return s>0||n<t.length?t.slice(s,n):t}const ot=["push","pop","shift","splice","unshift"];function at(t,e){t._chartjs?t._chartjs.listeners.push(e):(Object.defineProperty(t,"_chartjs",{configurable:!0,enumerable:!1,value:{listeners:[e]}}),ot.forEach((e=>{const i="_onData"+w(e),s=t[e];Object.defineProperty(t,e,{configurable:!0,enumerable:!1,value(...eLine truncated
/*!
* @kurkle/color v0.3.2
* https://github.com/kurkle/color#readme
* (c) 2023 Jukka Kurkela
* Released under the MIT License
*/function _t(t){return t+.5|0}const yt=(t,e,i)=>Math.max(Math.min(t,i),e);function vt(t){return yt(_t(2.55*t),0,255)}function Mt(t){return yt(_t(255*t),0,255)}function wt(t){return yt(_t(t/2.55)/100,0,1)}function kt(t){return yt(_t(100*t),0,100)}const St={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Pt=[..."0123456789ABCDEF"],Dt=t=>Pt[15&t],Ct=t=>Pt[(240&t)>>4]+Pt[15&t],Ot=t=>(240&t)>>4==(15&t);function At(t){var e=(t=>Ot(t.r)&&Ot(t.g)&&Ot(t.b)&&Ot(t.a))(t)?Dt:Ct;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Tt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Lt(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Et(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Rt(t,e,i){const s=Lt(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function It(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e<i?6:0):e===n?(i-t)/s+2:(t-e)/s+4}(e,i,s,h,n),r=60*r+.5),[0|r,l||0,a]}function zt(t,e,i,s){return(Array.isArray(e)?t(e[0],e[1],e[2]):t(e,i,s)).map(Mt)}function Ft(t,e,i){return zt(Lt,t,e,i)}function Vt(t){return(t%360+360)%360}function Bt(t){const e=Tt.exec(t);let i,s=255;if(!e)return;e[5]!==i&&(s=e[6]?vt(+e[5]):Mt(+e[5]));const n=Vt(+e[2]),o=+e[3]/100,a=+e[4]/100;return i="hwb"===e[1]?function(t,e,i){return zt(Rt,t,e,i)}(n,o,a):"hsv"===e[1]?function(t,e,i){return zt(Et,t,e,i)}(n,o,a):Ft(n,o,a),{r:i[0],g:i[1],b:i[2],a:s}}const Wt={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},Nt={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};let Ht;function jt(t){Ht||(Ht=function(){const t={},e=Object.keys(Nt),i=Object.keys(Wt);let s,n,o,a,r;for(s=0;s<e.length;s++){for(a=r=e[s],n=0;n<i.length;n++)o=i[n],r=r.replace(o,Wt[o]);o=parseInt(Nt[a],16),t[r]=[o>>16&255,o>>8&255,255&o]}return t}(),Ht.transparent=[0,0,0,0]);const e=Ht[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const $t=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Yt=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Ut=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Xt(t,e,i){if(t){let s=It(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),Line truncated
*/function _t(t){return t+.5|0}const yt=(t,e,i)=>Math.max(Math.min(t,i),e);function vt(t){return yt(_t(2.55*t),0,255)}function Mt(t){return yt(_t(255*t),0,255)}function wt(t){return yt(_t(t/2.55)/100,0,1)}function kt(t){return yt(_t(100*t),0,100)}const St={0:0,1:1,2:2,3:3,4:4,5:5,6:6,7:7,8:8,9:9,A:10,B:11,C:12,D:13,E:14,F:15,a:10,b:11,c:12,d:13,e:14,f:15},Pt=[..."0123456789ABCDEF"],Dt=t=>Pt[15&t],Ct=t=>Pt[(240&t)>>4]+Pt[15&t],Ot=t=>(240&t)>>4==(15&t);function At(t){var e=(t=>Ot(t.r)&&Ot(t.g)&&Ot(t.b)&&Ot(t.a))(t)?Dt:Ct;return t?"#"+e(t.r)+e(t.g)+e(t.b)+((t,e)=>t<255?e(t):"")(t.a,e):void 0}const Tt=/^(hsla?|hwb|hsv)\(\s*([-+.e\d]+)(?:deg)?[\s,]+([-+.e\d]+)%[\s,]+([-+.e\d]+)%(?:[\s,]+([-+.e\d]+)(%)?)?\s*\)$/;function Lt(t,e,i){const s=e*Math.min(i,1-i),n=(e,n=(e+t/30)%12)=>i-s*Math.max(Math.min(n-3,9-n,1),-1);return[n(0),n(8),n(4)]}function Et(t,e,i){const s=(s,n=(s+t/60)%6)=>i-i*e*Math.max(Math.min(n,4-n,1),0);return[s(5),s(3),s(1)]}function Rt(t,e,i){const s=Lt(t,1,.5);let n;for(e+i>1&&(n=1/(e+i),e*=n,i*=n),n=0;n<3;n++)s[n]*=1-e-i,s[n]+=e;return s}function It(t){const e=t.r/255,i=t.g/255,s=t.b/255,n=Math.max(e,i,s),o=Math.min(e,i,s),a=(n+o)/2;let r,l,h;return n!==o&&(h=n-o,l=a>.5?h/(2-n-o):h/(n+o),r=function(t,e,i,s,n){return t===n?(e-i)/s+(e<i?6:0):e===n?(i-t)/s+2:(t-e)/s+4}(e,i,s,h,n),r=60*r+.5),[0|r,l||0,a]}function zt(t,e,i,s){return(Array.isArray(e)?t(e[0],e[1],e[2]):t(e,i,s)).map(Mt)}function Ft(t,e,i){return zt(Lt,t,e,i)}function Vt(t){return(t%360+360)%360}function Bt(t){const e=Tt.exec(t);let i,s=255;if(!e)return;e[5]!==i&&(s=e[6]?vt(+e[5]):Mt(+e[5]));const n=Vt(+e[2]),o=+e[3]/100,a=+e[4]/100;return i="hwb"===e[1]?function(t,e,i){return zt(Rt,t,e,i)}(n,o,a):"hsv"===e[1]?function(t,e,i){return zt(Et,t,e,i)}(n,o,a):Ft(n,o,a),{r:i[0],g:i[1],b:i[2],a:s}}const Wt={x:"dark",Z:"light",Y:"re",X:"blu",W:"gr",V:"medium",U:"slate",A:"ee",T:"ol",S:"or",B:"ra",C:"lateg",D:"ights",R:"in",Q:"turquois",E:"hi",P:"ro",O:"al",N:"le",M:"de",L:"yello",F:"en",K:"ch",G:"arks",H:"ea",I:"ightg",J:"wh"},Nt={OiceXe:"f0f8ff",antiquewEte:"faebd7",aqua:"ffff",aquamarRe:"7fffd4",azuY:"f0ffff",beige:"f5f5dc",bisque:"ffe4c4",black:"0",blanKedOmond:"ffebcd",Xe:"ff",XeviTet:"8a2be2",bPwn:"a52a2a",burlywood:"deb887",caMtXe:"5f9ea0",KartYuse:"7fff00",KocTate:"d2691e",cSO:"ff7f50",cSnflowerXe:"6495ed",cSnsilk:"fff8dc",crimson:"dc143c",cyan:"ffff",xXe:"8b",xcyan:"8b8b",xgTMnPd:"b8860b",xWay:"a9a9a9",xgYF:"6400",xgYy:"a9a9a9",xkhaki:"bdb76b",xmagFta:"8b008b",xTivegYF:"556b2f",xSange:"ff8c00",xScEd:"9932cc",xYd:"8b0000",xsOmon:"e9967a",xsHgYF:"8fbc8f",xUXe:"483d8b",xUWay:"2f4f4f",xUgYy:"2f4f4f",xQe:"ced1",xviTet:"9400d3",dAppRk:"ff1493",dApskyXe:"bfff",dimWay:"696969",dimgYy:"696969",dodgerXe:"1e90ff",fiYbrick:"b22222",flSOwEte:"fffaf0",foYstWAn:"228b22",fuKsia:"ff00ff",gaRsbSo:"dcdcdc",ghostwEte:"f8f8ff",gTd:"ffd700",gTMnPd:"daa520",Way:"808080",gYF:"8000",gYFLw:"adff2f",gYy:"808080",honeyMw:"f0fff0",hotpRk:"ff69b4",RdianYd:"cd5c5c",Rdigo:"4b0082",ivSy:"fffff0",khaki:"f0e68c",lavFMr:"e6e6fa",lavFMrXsh:"fff0f5",lawngYF:"7cfc00",NmoncEffon:"fffacd",ZXe:"add8e6",ZcSO:"f08080",Zcyan:"e0ffff",ZgTMnPdLw:"fafad2",ZWay:"d3d3d3",ZgYF:"90ee90",ZgYy:"d3d3d3",ZpRk:"ffb6c1",ZsOmon:"ffa07a",ZsHgYF:"20b2aa",ZskyXe:"87cefa",ZUWay:"778899",ZUgYy:"778899",ZstAlXe:"b0c4de",ZLw:"ffffe0",lime:"ff00",limegYF:"32cd32",lRF:"faf0e6",magFta:"ff00ff",maPon:"800000",VaquamarRe:"66cdaa",VXe:"cd",VScEd:"ba55d3",VpurpN:"9370db",VsHgYF:"3cb371",VUXe:"7b68ee",VsprRggYF:"fa9a",VQe:"48d1cc",VviTetYd:"c71585",midnightXe:"191970",mRtcYam:"f5fffa",mistyPse:"ffe4e1",moccasR:"ffe4b5",navajowEte:"ffdead",navy:"80",Tdlace:"fdf5e6",Tive:"808000",TivedBb:"6b8e23",Sange:"ffa500",SangeYd:"ff4500",ScEd:"da70d6",pOegTMnPd:"eee8aa",pOegYF:"98fb98",pOeQe:"afeeee",pOeviTetYd:"db7093",papayawEp:"ffefd5",pHKpuff:"ffdab9",peru:"cd853f",pRk:"ffc0cb",plum:"dda0dd",powMrXe:"b0e0e6",purpN:"800080",YbeccapurpN:"663399",Yd:"ff0000",Psybrown:"bc8f8f",PyOXe:"4169e1",saddNbPwn:"8b4513",sOmon:"fa8072",sandybPwn:"f4a460",sHgYF:"2e8b57",sHshell:"fff5ee",siFna:"a0522d",silver:"c0c0c0",skyXe:"87ceeb",UXe:"6a5acd",UWay:"708090",UgYy:"708090",snow:"fffafa",sprRggYF:"ff7f",stAlXe:"4682b4",tan:"d2b48c",teO:"8080",tEstN:"d8bfd8",tomato:"ff6347",Qe:"40e0d0",viTet:"ee82ee",JHt:"f5deb3",wEte:"ffffff",wEtesmoke:"f5f5f5",Lw:"ffff00",LwgYF:"9acd32"};let Ht;function jt(t){Ht||(Ht=function(){const t={},e=Object.keys(Nt),i=Object.keys(Wt);let s,n,o,a,r;for(s=0;s<e.length;s++){for(a=r=e[s],n=0;n<i.length;n++)o=i[n],r=r.replace(o,Wt[o]);o=parseInt(Nt[a],16),t[r]=[o>>16&255,o>>8&255,255&o]}return t}(),Ht.transparent=[0,0,0,0]);const e=Ht[t.toLowerCase()];return e&&{r:e[0],g:e[1],b:e[2],a:4===e.length?e[3]:255}}const $t=/^rgba?\(\s*([-+.\d]+)(%)?[\s,]+([-+.e\d]+)(%)?[\s,]+([-+.e\d]+)(%)?(?:[\s,/]+([-+.e\d]+)(%)?)?\s*\)$/;const Yt=t=>t<=.0031308?12.92*t:1.055*Math.pow(t,1/2.4)-.055,Ut=t=>t<=.04045?t/12.92:Math.pow((t+.055)/1.055,2.4);function Xt(t,e,i){if(t){let s=It(t);s[e]=Math.max(0,Math.min(s[e]+s[e]*i,0===e?360:1)),Line truncated
//# sourceMappingURL=chart.umd.js.map
+1 -1
View File
@@ -1 +1 @@
@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.21"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1pLine truncated
@font-face{font-family:KaTeX_AMS;font-style:normal;font-weight:400;src:url(fonts/KaTeX_AMS-Regular.woff2) format("woff2"),url(fonts/KaTeX_AMS-Regular.woff) format("woff"),url(fonts/KaTeX_AMS-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Caligraphic-Bold.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Bold.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Caligraphic;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Caligraphic-Regular.woff2) format("woff2"),url(fonts/KaTeX_Caligraphic-Regular.woff) format("woff"),url(fonts/KaTeX_Caligraphic-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Fraktur-Bold.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Bold.woff) format("woff"),url(fonts/KaTeX_Fraktur-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Fraktur;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Fraktur-Regular.woff2) format("woff2"),url(fonts/KaTeX_Fraktur-Regular.woff) format("woff"),url(fonts/KaTeX_Fraktur-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:700;src:url(fonts/KaTeX_Main-Bold.woff2) format("woff2"),url(fonts/KaTeX_Main-Bold.woff) format("woff"),url(fonts/KaTeX_Main-Bold.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Main-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Main-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Main-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Main-Italic.woff2) format("woff2"),url(fonts/KaTeX_Main-Italic.woff) format("woff"),url(fonts/KaTeX_Main-Italic.ttf) format("truetype")}@font-face{font-family:KaTeX_Main;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Main-Regular.woff2) format("woff2"),url(fonts/KaTeX_Main-Regular.woff) format("woff"),url(fonts/KaTeX_Main-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:700;src:url(fonts/KaTeX_Math-BoldItalic.woff2) format("woff2"),url(fonts/KaTeX_Math-BoldItalic.woff) format("woff"),url(fonts/KaTeX_Math-BoldItalic.ttf) format("truetype")}@font-face{font-family:KaTeX_Math;font-style:italic;font-weight:400;src:url(fonts/KaTeX_Math-Italic.woff2) format("woff2"),url(fonts/KaTeX_Math-Italic.woff) format("woff"),url(fonts/KaTeX_Math-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:700;src:url(fonts/KaTeX_SansSerif-Bold.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Bold.woff) format("woff"),url(fonts/KaTeX_SansSerif-Bold.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:italic;font-weight:400;src:url(fonts/KaTeX_SansSerif-Italic.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Italic.woff) format("woff"),url(fonts/KaTeX_SansSerif-Italic.ttf) format("truetype")}@font-face{font-family:"KaTeX_SansSerif";font-style:normal;font-weight:400;src:url(fonts/KaTeX_SansSerif-Regular.woff2) format("woff2"),url(fonts/KaTeX_SansSerif-Regular.woff) format("woff"),url(fonts/KaTeX_SansSerif-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Script;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Script-Regular.woff2) format("woff2"),url(fonts/KaTeX_Script-Regular.woff) format("woff"),url(fonts/KaTeX_Script-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size1;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size1-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size1-Regular.woff) format("woff"),url(fonts/KaTeX_Size1-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size2;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size2-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size2-Regular.woff) format("woff"),url(fonts/KaTeX_Size2-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size3;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size3-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size3-Regular.woff) format("woff"),url(fonts/KaTeX_Size3-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Size4;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Size4-Regular.woff2) format("woff2"),url(fonts/KaTeX_Size4-Regular.woff) format("woff"),url(fonts/KaTeX_Size4-Regular.ttf) format("truetype")}@font-face{font-family:KaTeX_Typewriter;font-style:normal;font-weight:400;src:url(fonts/KaTeX_Typewriter-Regular.woff2) format("woff2"),url(fonts/KaTeX_Typewriter-Regular.woff) format("woff"),url(fonts/KaTeX_Typewriter-Regular.ttf) format("truetype")}.katex{font:normal 1.21em KaTeX_Main,Times New Roman,serif;line-height:1.2;text-indent:0;text-rendering:auto}.katex *{-ms-high-contrast-adjust:none!important;border-color:currentColor}.katex .katex-version:after{content:"0.16.22"}.katex .katex-mathml{clip:rect(1px,1px,1px,1px);border:0;height:1pLine truncated
+1 -1
View File
@@ -1 +1 @@
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.katex=t():e.katex=t()}("undefined"!=typeof self?self:this,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return Wn}});class r{constructor(e,t){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;let n,o,s="KaTeX parse error: "+e;const i=t&&t.loc;if(i&&i.start<=i.end){const e=i.lexer.input;n=i.start,o=i.end,n===e.length?s+=" at end of input: ":s+=" at position "+(n+1)+": ";const t=e.slice(n,o).replace(/[^]/g,"$&\u0332");let r,a;r=n>15?"\u2026"+e.slice(n-15,n):e.slice(0,n),a=o+15<e.length?e.slice(o,o+15)+"\u2026":e.slice(o),s+=r+t+a}const a=new Error(s);return a.name="ParseError",a.__proto__=r.prototype,a.position=n,null!=n&&null!=o&&(a.length=o-n),a.rawMessage=e,a}}r.prototype.__proto__=Error.prototype;var n=r;const o=/([A-Z])/g,s={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},i=/[&><"']/g;const a=function(e){return"ordgroup"===e.type||"color"===e.type?1===e.body.length?a(e.body[0]):e:"font"===e.type?a(e.body):e};var l={contains:function(e,t){return-1!==e.indexOf(t)},deflt:function(e,t){return void 0===e?t:e},escape:function(e){return String(e).replace(i,(e=>s[e]))},hyphenate:function(e){return e.replace(o,"-$1").toLowerCase()},getBaseElem:a,isCharacterBox:function(e){const t=a(e);return"mathord"===t.type||"textord"===t.type||"atom"===t.type},protocolFromUrl:function(e){const t=/^[\x00-\x20]*([^\\/#?]*?)(:|&#0*58|&#x0*3a|&colon)/i.exec(e);return t?":"!==t[2]?null:/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(t[1])?t[1].toLowerCase():null:"_relative"}};const h={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:e=>"#"+e},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(e,t)=>(t.push(e),t)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:e=>Math.max(0,e),cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:e=>Math.max(0,e),cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:e=>Math.max(0,e),cli:"-e, --max-expand <n>",cliProcessor:e=>"Infinity"===e?1/0:parseInt(e)},globalGroup:{type:"boolean",cli:!1}};function c(e){if(e.default)return e.default;const t=e.type,r=Array.isArray(t)?t[0]:t;if("string"!=typeof r)return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}class m{constructor(e){this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0Line truncated
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.katex=t():e.katex=t()}("undefined"!=typeof self?self:this,(function(){return function(){"use strict";var e={d:function(t,r){for(var n in r)e.o(r,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:r[n]})},o:function(e,t){return Object.prototype.hasOwnProperty.call(e,t)}},t={};e.d(t,{default:function(){return Wn}});class r{constructor(e,t){this.name=void 0,this.position=void 0,this.length=void 0,this.rawMessage=void 0;let n,o,s="KaTeX parse error: "+e;const i=t&&t.loc;if(i&&i.start<=i.end){const e=i.lexer.input;n=i.start,o=i.end,n===e.length?s+=" at end of input: ":s+=" at position "+(n+1)+": ";const t=e.slice(n,o).replace(/[^]/g,"$&\u0332");let r,a;r=n>15?"\u2026"+e.slice(n-15,n):e.slice(0,n),a=o+15<e.length?e.slice(o,o+15)+"\u2026":e.slice(o),s+=r+t+a}const a=new Error(s);return a.name="ParseError",a.__proto__=r.prototype,a.position=n,null!=n&&null!=o&&(a.length=o-n),a.rawMessage=e,a}}r.prototype.__proto__=Error.prototype;var n=r;const o=/([A-Z])/g,s={"&":"&amp;",">":"&gt;","<":"&lt;",'"':"&quot;","'":"&#x27;"},i=/[&><"']/g;const a=function(e){return"ordgroup"===e.type||"color"===e.type?1===e.body.length?a(e.body[0]):e:"font"===e.type?a(e.body):e};var l={contains:function(e,t){return-1!==e.indexOf(t)},deflt:function(e,t){return void 0===e?t:e},escape:function(e){return String(e).replace(i,(e=>s[e]))},hyphenate:function(e){return e.replace(o,"-$1").toLowerCase()},getBaseElem:a,isCharacterBox:function(e){const t=a(e);return"mathord"===t.type||"textord"===t.type||"atom"===t.type},protocolFromUrl:function(e){const t=/^[\x00-\x20]*([^\\/#?]*?)(:|&#0*58|&#x0*3a|&colon)/i.exec(e);return t?":"!==t[2]?null:/^[a-zA-Z][a-zA-Z0-9+\-.]*$/.test(t[1])?t[1].toLowerCase():null:"_relative"}};const h={displayMode:{type:"boolean",description:"Render math in display mode, which puts the math in display style (so \\int and \\sum are large, for example), and centers the math on the page on its own line.",cli:"-d, --display-mode"},output:{type:{enum:["htmlAndMathml","html","mathml"]},description:"Determines the markup language of the output.",cli:"-F, --format <type>"},leqno:{type:"boolean",description:"Render display math in leqno style (left-justified tags)."},fleqn:{type:"boolean",description:"Render display math flush left."},throwOnError:{type:"boolean",default:!0,cli:"-t, --no-throw-on-error",cliDescription:"Render errors (in the color given by --error-color) instead of throwing a ParseError exception when encountering an error."},errorColor:{type:"string",default:"#cc0000",cli:"-c, --error-color <color>",cliDescription:"A color string given in the format 'rgb' or 'rrggbb' (no #). This option determines the color of errors rendered by the -t option.",cliProcessor:e=>"#"+e},macros:{type:"object",cli:"-m, --macro <def>",cliDescription:"Define custom macro of the form '\\foo:expansion' (use multiple -m arguments for multiple macros).",cliDefault:[],cliProcessor:(e,t)=>(t.push(e),t)},minRuleThickness:{type:"number",description:"Specifies a minimum thickness, in ems, for fraction lines, `\\sqrt` top lines, `{array}` vertical lines, `\\hline`, `\\hdashline`, `\\underline`, `\\overline`, and the borders of `\\fbox`, `\\boxed`, and `\\fcolorbox`.",processor:e=>Math.max(0,e),cli:"--min-rule-thickness <size>",cliProcessor:parseFloat},colorIsTextColor:{type:"boolean",description:"Makes \\color behave like LaTeX's 2-argument \\textcolor, instead of LaTeX's one-argument \\color mode change.",cli:"-b, --color-is-text-color"},strict:{type:[{enum:["warn","ignore","error"]},"boolean","function"],description:"Turn on strict / LaTeX faithfulness mode, which throws an error if the input uses features that are not supported by LaTeX.",cli:"-S, --strict",cliDefault:!1},trust:{type:["boolean","function"],description:"Trust the input, enabling all HTML features such as \\url.",cli:"-T, --trust"},maxSize:{type:"number",default:1/0,description:"If non-zero, all user-specified sizes, e.g. in \\rule{500em}{500em}, will be capped to maxSize ems. Otherwise, elements and spaces can be arbitrarily large",processor:e=>Math.max(0,e),cli:"-s, --max-size <n>",cliProcessor:parseInt},maxExpand:{type:"number",default:1e3,description:"Limit the number of macro expansions to the specified number, to prevent e.g. infinite macro loops. If set to Infinity, the macro expander will try to fully expand as in LaTeX.",processor:e=>Math.max(0,e),cli:"-e, --max-expand <n>",cliProcessor:e=>"Infinity"===e?1/0:parseInt(e)},globalGroup:{type:"boolean",cli:!1}};function c(e){if(e.default)return e.default;const t=e.type,r=Array.isArray(t)?t[0]:t;if("string"!=typeof r)return r.enum[0];switch(r){case"boolean":return!1;case"string":return"";case"number":return 0;case"object":return{}}}class m{constructor(e){this.displayMode=void 0,this.output=void 0,this.leqno=void 0,this.fleqn=void 0,this.throwOnError=void 0Line truncated
+2 -2
View File
@@ -1,5 +1,5 @@
[module]
[module.hugoVersion]
extended = true
min = "0.87.0"
max = "0.145.0"
min = "0.137.0"
max = "0.147.5"
+9
View File
@@ -67,3 +67,12 @@ enableEmoji = true
name = 'fragmentrefs'
type = 'fragments'
weight = 10
[markup]
[markup.goldmark]
[markup.goldmark.extensions]
[markup.goldmark.extensions.passthrough]
enable = true
[markup.goldmark.extensions.passthrough.delimiters]
block = [['\[', '\]'], ['$$', '$$']]
inline = [['\(', '\)']]
+4 -2
View File
@@ -23,6 +23,7 @@ disableTextInHeader = false
# defaultBackgroundImage = "IMAGE.jpg" # used as default for background images
# defaultFeaturedImage = "IMAGE.jpg" # used as default for featured images in all articles
# defaultSocialImage = "/android-chrome-512x512.png" # used as default for social media sharing (Open Graph and Twitter)
# highlightCurrentMenuArea = true
# smartTOC = true
@@ -77,7 +78,8 @@ forgejoDefaultServer = "https://v8.next.forgejo.org"
showTableOfContents = false
# showRelatedContent = false
# relatedContentLimit = 3
showTaxonomies = false
showTaxonomies = false # use showTaxonomies OR showCategoryOnly, not both
showCategoryOnly = false # use showTaxonomies OR showCategoryOnly, not both
showAuthorsBadges = false
showWordCount = true
# sharingLinks = [ "linkedin", "twitter", "bluesky", "mastodon", "reddit", "pinterest", "facebook", "email", "whatsapp", "telegram"]
@@ -164,4 +166,4 @@ forgejoDefaultServer = "https://v8.next.forgejo.org"
[rssnext]
# feedId = ""
# userId = ""
# userId = ""
+10 -1
View File
@@ -21,7 +21,7 @@ enableEmoji = true
googleAnalytics = "G-PEDMYR1V0K"
[pagination]
pagerSize = 100
pagerSize = 102
[imaging]
anchor = 'Center'
@@ -69,3 +69,12 @@ googleAnalytics = "G-PEDMYR1V0K"
name = 'fragmentrefs'
type = 'fragments'
weight = 10
# Render only specific parts of the site for faster development. Use: hugo --renderSegments site_core
[segments]
[segments.site_core]
[[segments.site_core.includes]]
path = '{/,/docs,/docs/**,/samples,/samples/**}'
[segments.en_only]
[[segments.en_only.includes]]
lang = 'en'
+3
View File
@@ -18,11 +18,13 @@ mainSections = ["docs"]
# robots = ""
disableImageOptimization = false
disableImageOptimizationMD = false
disableTextInHeader = false
# backgroundImageWidth = 1200
defaultBackgroundImage = "/img/background.svg"
defaultFeaturedImage = "/img/featured.svg"
defaultSocialImage = "/img/blowfish.jpg"
highlightCurrentMenuArea = true
smartTOC = true
@@ -48,6 +50,7 @@ smartTOCHideUnfocusedChildren = false
cardView = true
cardViewScreenWidth = false
layoutBackgroundBlur = true # only used when layout equals background
disableHeroImageFilter = false # only used when layout equals hero
[article]
showDate = false
+5
View File
@@ -0,0 +1,5 @@
# Development configuration. Disable this by running: hugo server -e production
# https://gohugo.io/quick-reference/glossary/#environment
# Exclude folders containing large numbers of images
ignoreFiles = ['content/guides', 'content/users']
+1 -1
View File
@@ -18,7 +18,7 @@ description: "Questa pagina è stata creata utilizzando il tema Blowfish per Hug
</div>
```node
```shell
npx blowfish-tools
```
+1 -1
View File
@@ -20,7 +20,7 @@ description: "このページは Hugo の Blowfish テーマを利用して構
</div>
```node
```shell
npx blowfish-tools
```
+1 -1
View File
@@ -20,7 +20,7 @@ description: "This page was built using the Blowfish theme for Hugo."
</div>
```node
```shell
npx blowfish-tools
```
+1 -1
View File
@@ -20,7 +20,7 @@ description: "此页面是使用 Hugo 的 Blowfish 主题搭建的"
</div>
```node
```shell
npx blowfish-tools
```
@@ -44,7 +44,7 @@ Tieni presente che i nomi delle variabili forniti in questa tabella utilizzano i
| ------------------------ | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `theme` | `"blowfish"` | Quando si utilizzano i moduli Hugo, questo valore di configurazione deve essere rimosso. Per tutti gli altri tipi di installazione, questo deve essere impostato su "blowfish" affinché il tema funzioni. |
| `baseURL` | _Not set_ | The URL to the root of the website. |
| `defaultContentLanguage` | `"en"` | This value determines the default language of theme components and content. Refer to the [language and i18n](#language-and-i18n) section below for supported language codes. |
| `defaultContentLanguage` | `"en"` | This value determines the default language of theme components and content. Refer to the [language and i18n](#lingua-e-i18n) section below for supported language codes. |
| `enableRobotsTXT` | `true` | Se abilitato, verrà creato un file "robots.txt" nella radice del sito che consentirà ai motori di ricerca di eseguire la scansione dell'intero sito. Se preferisci fornire il tuo file `robots.txt` predefinito, impostalo su `false` e ​​posiziona il file nella directory `static`. Per un controllo completo, puoi fornire un [layout personalizzato]({{< ref "content-examples#custom-layouts" >}}) per generare questo file. |
| `pagination.pagerSize` | `10` | Il numero di articoli elencati in ciascuna pagina dell'elenco degli articoli. |
| `summaryLength` | `0` | Il numero di parole utilizzate per generare il riepilogo dell'articolo quando non ne viene fornita una nella [front matter]({{< ref "front-matter" >}}). Un valore pari a "0" utilizzerà la prima frase. Questo valore non ha effetto quando i riepiloghi sono nascosti. |
@@ -106,7 +106,7 @@ Per essere il più flessibili possibile, è necessario creare un file di configu
Il file predefinito può essere utilizzato come modello per creare lingue aggiuntive o rinominato se desideri creare il tuo sito web in una lingua diversa dall'inglese. Basta nominare il file utilizzando il formato "lingue.[language-code].toml".
{{< alert >}}
**Nota:** assicurati che il parametro `defaultContentLanguage` nella [configurazione del sito](#site-configuration) corrisponda al codice della lingua nel nome del file di configurazione della lingua.
**Nota:** assicurati che il parametro `defaultContentLanguage` nella [configurazione del sito](#configurazioni-del-sito) corrisponda al codice della lingua nel nome del file di configurazione della lingua.
{{< /alert >}}
#### Globale
@@ -170,17 +170,19 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `colorScheme` | `"blowfish"` | The theme colour scheme to use. Valid values are `blowfish` (default), `avocado`, `fire`, `ocean`, `forest`, `princess`, `neon`, `bloody`, `terminal`, `marvel`, `noir`, `autumn`, `congo`, and`slate`. Refer to the [Colour Schemes]({{< ref "getting-started#colour-schemes" >}}) section for more details. |
| `defaultAppearance` | `"light"` | The default theme appearance, either `light` or `dark`. |
| `autoSwitchAppearance` | `true` | Whether the theme appearance automatically switches based upon the visitor's operating system preference. Set to `false` to force the site to always use the `defaultAppearance`. |
| `enableSearch` | `false` | Whether site search is enabled. Set to `true` to enable search functionality. Note that the search feature depends on the `outputs.home` setting in the [site configuration](#site-configuration) being set correctly. |
| `enableSearch` | `false` | Whether site search is enabled. Set to `true` to enable search functionality. Note that the search feature depends on the `outputs.home` setting in the [site configuration](#configurazioni-del-sito) being set correctly. |
| `enableCodeCopy` | `false` | Whether copy-to-clipboard buttons are enabled for `<code>` blocks. The `highlight.noClasses` parameter must be set to `false` for code copy to function correctly. Read more about [other configuration files](#other-configuration-files) below. |
| `mainSections` | _Not set_ | The sections that should be displayed in the recent articles list. If not provided the section with the greatest number of articles is used. |
| `showViews` | _Not set_ | Whether or not articles and list views are displayed. This requires firebase integrations to be enabled, look below. |
| `showLikes` | _Not set_ | Whether or not articles and list likes are displayed. This requires firebase integrations to be enabled, look below. |
| `robots` | _Not set_ | String that indicates how robots should handle your site. If set, it will be output in the page head. Refer to [Google's docs](https://developers.google.com/search/docs/advanced/robots/robots_meta_tag#directives) for valid values. |
| `disableImageZoom` | `false` | Disables image zoom feature across all the images in the site. |
| `disableImageOptimization` | `false` | Disables image resize and optimization features across all the images in the site. |
| `disableImageOptimization` | `false` | Disables image resize and optimization features across all the images in the site, except images using markdown syntax (`![](image.jpg)`) |
| `disableImageOptimizationMD` | `false` | Disables image resize and optimization features only for images using markdown syntax (`![](image.jpg)`). |
| `disableTextInHeader` | `false` | Disables text in header, useful for logo based headers. |
| `defaultBackgroundImage` | _Not set_ | Default background image for both `background` homepage layout and `background` hero style |
| `defaultFeaturedImage` | _Not set_ | Default background image for all `featured` images across articles, will be overridden by a local `featured` image. |
| `defaultSocialImage` | _Not set_ | Default image for social media sharing (Open Graph and Twitter). Will be overridden by a local `feature` image if available. |
| `highlightCurrentMenuArea` | _Not set_ | Marks menu entries in the main menu when selected |
| `smartTOC` | _Not set_ | Activate smart Table of Contents, items in view will be highlighted. |
| `smartTOCHideUnfocusedChildren` | _Not set_ | When smart Table of Contents is turned on, this will hide deeper levels of the table when they are not in focus. |
@@ -196,7 +198,7 @@ Many of the article defaults here can be overridden on a per article basis by sp
| Name | Default | Description |
| ------------------------------- | ------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `footer.showMenu` | `true` | Show/hide the footer menu, which can be configured in the `[[footer]]` section of the `config/_default/menus.en.toml` file. |
| `footer.showCopyright` | `true` | Whether or not to show the copyright string in the site footer. Note that the string itself can be customised using the `copyright` parameter in the [languages configuration](#language-and-i18n). |
| `footer.showCopyright` | `true` | Whether or not to show the copyright string in the site footer. Note that the string itself can be customised using the `copyright` parameter in the [languages configuration](#lingua-e-i18n). |
| `footer.showThemeAttribution` | `true` | Whether or not to show the "powered by" theme attribution in the site footer. If you choose to disable this message, please consider attributing the theme somewhere else on your site (for example, on your about page). |
| `footer.showAppearanceSwitcher` | `false` | Whether or not to show the appearance switcher in the site footer. The browser's local storage is used to persist the visitor's preference. |
| `footer.showScrollToTop` | `true` | When set to `true` the scroll to top arrow is displayed. |
@@ -214,6 +216,7 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `homepage.cardView` | `false` | Display recent articles as a gallery of cards. |
| `homepage.cardViewScreenWidth` | `false` | Enhance the width of the recent articles card gallery to take the full width available. |
| `homepage.layoutBackgroundBlur` | `false` | Makes the background image in the homepage layout blur with the scroll |
| `homepage.disableHeroImageFilter` | `false` | Whether to apply an image filter on the homepage background. |
### Article
@@ -260,7 +263,7 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `list.layoutBackgroundBlur` | `true` | Makes the background image in the background list heroStyle blur with the scroll |
| `list.layoutBackgroundHeaderSpace` | `true` | Add space between the header and the body. |
| `list.showTableOfContents` | `false` | Whether or not the table of contents is displayed on list pages. |
| `list.showSummary` | `false` | Whether or not article summaries are displayed on list pages. If a summary is not provided in the [front matter]({{< ref "front-matter" >}}), one will be auto generated using the `summaryLength` parameter in the [site configuration](#site-configuration). |
| `list.showSummary` | `false` | Whether or not article summaries are displayed on list pages. If a summary is not provided in the [front matter]({{< ref "front-matter" >}}), one will be auto generated using the `summaryLength` parameter in the [site configuration](#configurazioni-del-sito). |
| `list.showViews` | `false` | Whether or not list views are displayed. This requires firebase integrations to be enabled, look below. |
| `list.showLikes` | `false` | Whether or not list likes are displayed. This requires firebase integrations to be enabled, look below. |
| `list.showCards` | `false` | Whether or not each article is displayed as a card or as simple inline text. |
@@ -177,10 +177,12 @@ Blowfish は、テーマの機能を制御する多数の設定パラメータ
| `showLikes` | _未設定_ | 記事とリストのいいねを表示するかどうかです。これには Firebase 統合を有効にする必要があります。以下をご覧ください。 |
| `robots` | _未設定_ | ロボットがサイトをどのように処理するかを示す文字列です。設定されている場合、ページヘッダーに出力されます。有効な値については、[Google のドキュメント](https://developers.google.com/search/docs/advanced/robots/robots_meta_tag#directives)を参照してください。 |
| `disableImageZoom` | `false` | サイト内のすべての画像の画像ズーム機能を無効にします。 |
| `disableImageOptimization` | `false` | サイト内のすべての画像の画像サイズ変更と最適化機能を無効にします。 |
| `disableImageOptimization` | `false` | サイト内のすべての画像の画像サイズ変更と最適化機能を無効にします。Markdown 記法(例:`![](image.jpg)`)の画像は対象外です。 |
| `disableImageOptimizationMD` | `false` | Markdown 記法(例:`![](image.jpg)`)の画像の画像サイズ変更と最適化機能のみを無効にします。他の画像には適用されます。 |
| `disableTextInHeader` | `false` | ヘッダーのテキストを無効にします。ロゴベースのヘッダーに役立ちます。 |
| `defaultBackgroundImage` | _未設定_ | `background` ホームページレイアウトと `background` ヒーロースタイルの両方のデフォルトの背景画像です。 |
| `defaultFeaturedImage` | _未設定_ | 記事全体のすべての `featured` 画像のデフォルトの背景画像です。ローカルの `featured` 画像によってオーバーライドされます。 |
| `defaultSocialImage` | _未設定_ | ソーシャルメディア共有(Open Graph と Twitter)用のデフォルト画像。ローカルの `featured` 画像によってオーバーライドされます。 |
| `highlightCurrentMenuArea` | _未設定_ | メインメニューのメニュー項目が選択されているときにマークを付けます。 |
| `smartTOC` | _未設定_ | スマート目次をアクティブにします。表示されている項目が強調表示されます。 |
| `smartTOCHideUnfocusedChildren` | _未設定_ | スマート目次がオンになっている場合、フォーカスされていないときに、テーブルのより深いレベルが非表示になります。 |
@@ -214,6 +216,7 @@ Blowfish は、テーマの機能を制御する多数の設定パラメータ
| `homepage.cardView` | `false` | 最近の記事をカードのギャラリーとして表示します。 |
| `homepage.cardViewScreenWidth` | `false` | 最近の記事カードギャラリーの幅を拡張して、利用可能な幅全体を使用します。 |
| `homepage.layoutBackgroundBlur` | `false` | ホームページレイアウトの背景画像をスクロールに合わせてぼかします。 |
| `homepage.disableHeroImageFilter` | `false` | ホームページの背景画像にフィルターを適用するかどうか。 |
### 記事(Article)
@@ -260,7 +263,7 @@ Blowfish は、テーマの機能を制御する多数の設定パラメータ
| `list.layoutBackgroundBlur` | `true` | `background` リストの heroStyle の背景画像をスクロールでぼかします。 |
| `list.layoutBackgroundHeaderSpace` | `true` | ヘッダーと本文の間にスペースを追加します。 |
| `list.showTableOfContents` | `false` | リストページに目次を表示するかどうか。 |
| `list.showSummary` | `false` | リストページに記事の要約を表示するかどうか。[フロントマター]({{< ref "front-matter" >}}) で要約が提供されていない場合、[サイト設定](#site-configuration) の `summaryLength` パラメータを使用して自動的に生成されます。 |
| `list.showSummary` | `false` | リストページに記事の要約を表示するかどうか。[フロントマター]({{< ref "front-matter" >}}) で要約が提供されていない場合、[サイト設定](#サイト設定) の `summaryLength` パラメータを使用して自動的に生成されます。 |
| `list.showViews` | `false` | リストの閲覧数を表示するかどうか。これを有効にするには、Firebase の統合を有効にする必要があります。以下をご覧ください。 |
| `list.showLikes` | `false` | リストのいいね数を表示するかどうか。これを有効にするには、Firebase の統合を有効にする必要があります。以下をご覧ください。 |
| `list.showCards` | `false` | 各記事をカードとして表示するか、シンプルなインラインテキストとして表示するかどうか。 |
@@ -182,11 +182,13 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `showLikes` | _Not set_ | Whether or not articles and list likes are displayed. This requires firebase integrations to be enabled, look below. |
| `robots` | _Not set_ | String that indicates how robots should handle your site. If set, it will be output in the page head. Refer to [Google's docs](https://developers.google.com/search/docs/advanced/robots/robots_meta_tag#directives) for valid values. |
| `disableImageZoom` | `false` | Disables image zoom feature across all the images in the site. |
| `disableImageOptimization` | `false` | Disables image resize and optimization features across all the images in the site. |
| `disableImageOptimization` | `false` | Disables image resize and optimization features across all the images in the site, except images using markdown syntax (`![](image.jpg)`) |
| `disableImageOptimizationMD` | `false` | Disables image resize and optimization features only for images using markdown syntax (`![](image.jpg)`). |
| `backgroundImageWidth` | `1200` | Width (in pixels) to scale background images to. |
| `disableTextInHeader` | `false` | Disables text in header, useful for logo based headers. |
| `defaultBackgroundImage` | _Not set_ | Default background image for both `background` homepage layout and `background` hero style |
| `defaultFeaturedImage` | _Not set_ | Default background image for all `featured` images across articles, will be overridden by a local `featured` image. |
| `defaultSocialImage` | _Not set_ | Default image for social media sharing (Open Graph and Twitter). Will be overridden by a local `feature` image. |
| `highlightCurrentMenuArea` | _Not set_ | Marks menu entries in the main menu when selected |
| `smartTOC` | _Not set_ | Activate smart Table of Contents, items in view will be highlighted. |
| `smartTOCHideUnfocusedChildren` | _Not set_ | When smart Table of Contents is turned on, this will hide deeper levels of the table when they are not in focus. |
@@ -220,6 +222,7 @@ Many of the article defaults here can be overridden on a per article basis by sp
| `homepage.cardView` | `false` | Display recent articles as a gallery of cards. |
| `homepage.cardViewScreenWidth` | `false` | Enhance the width of the recent articles card gallery to take the full width available. |
| `homepage.layoutBackgroundBlur` | `false` | Makes the background image in the homepage layout blur with the scroll |
| `homepage.disableHeroImageFilter` | `false` | Whether to apply an image filter on the homepage background. |
### Article
@@ -43,7 +43,7 @@ Blowfish 主题支持了 Hugo 框架中定义的所有标准配置变量。但
| ------------------------ | ------------------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `theme` | `"blowfish"` | 当你使用 Hugo 模块安装时,应该移除这个配置项。但对 Git 子模块或本地文件复制的安装方式,必须将其设置为 blowfish 才能正常工作。 |
| `baseURL` | 无 | 网站 URL 根地址。 |
| `defaultContentLanguage` | `"en"` | 这个值决定了主题中组件和内容所使用的默认语言。 参考 [语言和 i18n](#language-and-i18n) 部分来了解 blowfish 支持的所有语言代码。 |
| `defaultContentLanguage` | `"en"` | 这个值决定了主题中组件和内容所使用的默认语言。 参考 [语言和 i18n](#语言和i18n) 部分来了解 blowfish 支持的所有语言代码。 |
| `enableRobotsTXT` | `true` | 当开启这个值,`robots.txt` 文件将会被创建在站点根目录, 这将允许搜索引擎抓取整个网站。如果你想要自己提供 `robots.txt`,那么设置这个值为 `false` 并把你的文件放置到 `static` 目录下。 为了实现完全控制,你可以需要提供一个 [自定义布局]({{< ref "content-examples#custom-layouts" >}}) 来生成此文件。 |
| `pagination.pagerSize` | `10` | 定义文章列表中,每页展示的文章数量。 |
| `summaryLength` | `0` | 当[扉页参数]({{< ref "front-matter" >}}) 中没有提供文章摘要时,此参数定义了自动生成文章摘要的单词数量。如果值为`0`,则默认使用第一句话作为摘要。当摘要被隐藏,这个值没有任何效果。 |
@@ -104,7 +104,7 @@ Blowfish 主题目前默认支持了以下语言:
默认的文件可以用来作为创建其他语言的一个模板,如果你希望用英语以外的语言撰写网站,也可以对其重命名。只需要格式遵循 `languages.[language-code].toml` 的命名即可。
{{< alert >}}
**注意:** 保证 [网站设置](#site-configuration) 中的 `defaultContentLanguage`参数和你提供的语言配置文件相匹配。
**注意:** 保证 [网站设置](#网站配置) 中的 `defaultContentLanguage`参数和你提供的语言配置文件相匹配。
{{< /alert >}}
#### 全局
@@ -170,8 +170,8 @@ Blowfish 提供了大量控制主题功能的配置参数,下面的表格中
| `colorScheme` | `"blowfish"` | 主题使用的颜色方案。合法的值有: `blowfish` (默认)、`avocado`、`fire`、`ocean`、`forest`、`princess`、`neon`、`bloody`、`terminal`、`marvel`、`noir`、`autumn`、`congo` 和 `slate`。 具体参考[颜色方案]({{< ref "getting-started#colour-schemes" >}})以获取更多信息。 |
| `defaultAppearance` | `"light"` | 默认的主题外观,可以是 `light` 或者 `dark`。 |
| `autoSwitchAppearance` | `true` | 主题外观是否根据访问者操作系统的偏好自动切换。设置为 `false` 会强制网站始终使用 `defaultAppearance`。 |
| `enableSearch` | `false` | 是否开启网站的搜索功能,设为 `true` 即为启用。注意,搜索功能依赖于[站点设置](#site-configuration)中的 `outputs.home` 设置,请确保此值配置正确。 |
| `enableCodeCopy` | `false` | 是否可以将`<code>`代码块复制到剪贴板。想要使用代码复制功能,需要将 `highlight.noClasses` 参数设置为 `false`。 阅读 [其他配置文件](#other-configuration-files) 以获取更多信息。 |
| `enableSearch` | `false` | 是否开启网站的搜索功能,设为 `true` 即为启用。注意,搜索功能依赖于[站点设置](#网站配置)中的 `outputs.home` 设置,请确保此值配置正确。 |
| `enableCodeCopy` | `false` | 是否可以将`<code>`代码块复制到剪贴板。想要使用代码复制功能,需要将 `highlight.noClasses` 参数设置为 `false`。 阅读 [其他配置文件](#其他配置文件) 以获取更多信息。 |
| `replyByEmail` | `false` | 是否在发布后启用“通过邮件回复”的链接。如果使用,则必须设置 `config/_default/languages.en.toml` 中的 `params.author.email` 参数。 |
| `forgejoDefaultServer` | _Not set_ | 短代码 `forgejo` 的默认 `server` 参数。 |
| `giteaDefaultServer` | _Not set_ | 短代码 `gitea` 的默认 `server` 参数。 |
@@ -180,11 +180,13 @@ Blowfish 提供了大量控制主题功能的配置参数,下面的表格中
| `showLikes` | 无 | 是否显示文章和列表页面的点赞量。这需要集成 firebase ,具体可以看下面。 |
| `robots` | 无 | 用于支持搜索引擎爬虫如何处理你的网站。如果设置了该值,它将被输出在页面头部。具体的参数值请参考 [Google 文档](https://developers.google.com/search/docs/advanced/robots/robots_meta_tag#directives)。 |
| `disableImageZoom` | `false` | 禁用网站上所有图片缩放功能。 |
| `disableImageOptimization` | `false` | 禁用图片上所有图片的调整大小和优化功能。 |
| `disableImageOptimization` | `false` | 禁用图片上所有图片的调整大小和优化功能,使用 Markdown 语法插入的图片(`![](image.jpg)`)除外。 |
| `disableImageOptimizationMD` | `false` | 所有以 Markdown 语法(`![](image.jpg)`)插入的图片,禁用其调整大小和优化功能。 |
| `backgroundImageWidth` | `1200` | 宽度(以像素为单位)用于缩放背景图像。 |
| `disableTextInHeader` | `false` | 禁用文本类型的标题,对基于 logo 的标题很有用。 |
| `defaultBackgroundImage` | 无 | 设置默认背景图,用于 `background` 和 `hero` 布局下的主页。 |
| `defaultFeaturedImage` | 无 | 设置默认背景图片,用于所有文章的`featured`图片,可以通过文章目录中的 `featured` 图片替换。 |
| `defaultSocialImage` | 无 | 社交媒体分享(Open Graph 和 Twitter)使用的默认图片,可以通过文章目录中的 `featured` 图片替换。 |
| `highlightCurrentMenuArea` | 无 | 当菜单被选择时,标记主菜单中的菜单项。 |
| `smartTOC` | 无 | 开启智能目录,视图中的项目将会被高亮显示。 |
| `smartTOCHideUnfocusedChildren` | 无 | 当开启智能目录,如果目录级别不再被聚焦时,将会隐藏更深层次的目录。 |
@@ -200,7 +202,7 @@ Blowfish 提供了大量控制主题功能的配置参数,下面的表格中
| 名称 | 默认值 | 描述 |
| ------------------------------- | ------- | --------------------------------------------------------------------------------------------------------------------------- |
| `footer.showMenu` | `true` | 显示/隐藏页面底部菜单,该菜单可以在 `config/_default/menus.en.toml` 文件中的 `[[footer]]` 部分进行配置。 |
| `footer.showCopyright` | `true` | 是否在底部显示 copyright 版权信息。请注意,如果你想定制,可以在[语言配置](#language-and-i18n)中使用 `copyright` 参数。 |
| `footer.showCopyright` | `true` | 是否在底部显示 copyright 版权信息。请注意,如果你想定制,可以在[语言配置](#语言和i18n)中使用 `copyright` 参数。 |
| `footer.showThemeAttribution` | `true` | 是否在网站底部中显示"powered by" 的主题归属信息。如果禁用此参数,请考虑在你网站的其他位置设置主题归属信息,例如在关于页面。 |
| `footer.showAppearanceSwitcher` | `false` | 是否在也页面底部显示外观切换器。浏览器的本地存储会缓存访问者的偏好设置。 |
| `footer.showScrollToTop` | `true` | 当设置为 `true` 时,显示返回顶部的箭头按钮。 |
@@ -218,6 +220,7 @@ Blowfish 提供了大量控制主题功能的配置参数,下面的表格中
| `homepage.cardView` | `false` | 将列表展示为卡片容器。 |
| `homepage.cardViewScreenWidth` | `false` | 增强列表中卡片的宽度,使其可以占据可用的全部宽度。 |
| `homepage.layoutBackgroundBlur` | `false` | 向下滚动主页时,是否模糊背景图。 |
| `homepage.disableHeroImageFilter` | `false` | 主页背景是否套用图片滤镜。 |
### 文章页
@@ -245,7 +248,7 @@ Blowfish 提供了大量控制主题功能的配置参数,下面的表格中
| `article.invertPagination` | `false` | 是否翻转下一篇/上一篇文章链接的方向。 |
| `article.showReadingTime` | `true` | 是否展示文章的阅读时间。如果你的语言包含 CJK 语言,需要在 `config.toml` 中开启 `hasCJKLanguage` 参数。 |
| `article.showTableOfContents` | `false` | 是否展示文章的目录。 |
| `article.showRelatedContent` | `false` | 为文章显示相关内容。如果你想要启用此功能,请检查 `config.toml` 文件并复制所有 *related* 相关的参数,如果你想自定义,也可以对 `config.toml` 添加额外配置。更多内容请参考 [Hugo 文档](https://gohugo.io/content-management/related/) 中关于 *related* 的内容。 |
| `article.showRelatedContent` | `false` | 为文章显示相关内容。如果你想要启用此功能,请检查 `config.toml` 文件并复制所有 _related_ 相关的参数,如果你想自定义,也可以对 `config.toml` 添加额外配置。更多内容请参考 [Hugo 文档](https://gohugo.io/content-management/related/) 中关于 _related_ 的内容。 |
| `article.relatedContentLimit` | `3` | 如果启用`showRelatedContent`,则限制显示相关文章的数量。 |
| `article.showTaxonomies` | `false` | 是否显示文章的分类或标签信息。 |
| `article.showAuthorsBadges` | `false` | 是否在文章或列表中显示 `authors` 分类。这需要开启多个作者 `multiple authors` 和 `authors` 分类法。 请阅读 [这个网页]({{< ref "multi-author" >}}) 来获取更多内容。 |
@@ -264,7 +267,7 @@ Blowfish 提供了大量控制主题功能的配置参数,下面的表格中
| `list.layoutBackgroundBlur` | `true` | 向下滚动列表页时,是否模糊背景图。 |
| `list.layoutBackgroundHeaderSpace` | `true` | 在标题和正文之间添加空白区域间隔。 |
| `list.showTableOfContents` | `false` | 是否展示目录。 |
| `list.showSummary` | `false` | 是否在列表页显示文章摘要。如果在[扉页参数]({{< ref "front-matter" >}})中没有提供摘要,那么将会使用[站点配置](#site-configuration) 中的 `summaryLength` 参数自动生成一个。 |
| `list.showSummary` | `false` | 是否在列表页显示文章摘要。如果在[扉页参数]({{< ref "front-matter" >}})中没有提供摘要,那么将会使用[站点配置](#网站配置) 中的 `summaryLength` 参数自动生成一个。 |
| `list.showViews` | `false` | 是否显示文章阅读量。这需要集成 firebase ,具体可以看下面。 |
| `list.showLikes` | `false` | 是否显示文章点赞量。这需要集成 firebase ,具体可以看下面。 |
| `list.showCards` | `false` | 是否将每个文章显示为卡片或简单的内联文本。 |
@@ -372,8 +375,7 @@ Blowfish 提供了大量控制主题功能的配置参数,下面的表格中
| `rssnext.feedId` | _Not set_ | [RSSNext/Follow](https://follow.is) 提供的 `feeId`,这将被自动添加在 `rss.xml` 中以便完成订阅源所有权验证,证明该源属于你自己。 |
| `rssnext.userId` | _Not set_ | [RSSNext/Follow](https://follow.is) 提供的 `userId`,这将被自动添加在 `rss.xml` 中以便完成订阅源所有权验证,证明该源属于你自己 |
## 别的配置文件
## 其他配置文件
Blowfish 主题还包括 `markup.toml` 配置文件。这个文件包含了一些重要参数,来确保 Hugo 正确配置以生成使用 Blowfish 创建的网站。
@@ -128,7 +128,7 @@ animals: ["lion", "cat"]
这个列表页会列举出所有包含在这个分类中的术语。在上面的例子中,`/animals/` 页面会包含 "lion" 和 "cat" 的链接,以此将访问者导向至具体的术语页。
术语页将会列举出包含这个术语的所有页面。这些术语页面本质上和[列表页面](#list-pages)相同,并且以类似的方式运作。
术语页将会列举出包含这个术语的所有页面。这些术语页面本质上和[列表页面](#列表页)相同,并且以类似的方式运作。
如果你想在分类页面中添加自定义的内容,只需要对应文件夹的目录中创建 `_index.md` 文件即可。
@@ -16,7 +16,7 @@ In order to be able to support dynamic data across your website we've added the
3. Select analytics location
4. Setup firebase in Blowfish by getting the variables for your project and setting them inside `params.toml` file. More details can be found in <a target="_blank" href="{{< ref "configuration/#theme-parameters" >}}">this page</a>. You can find an example of the file Firebase will provide below, notice the parameters within the FirebaseConfig object.
```
```js
// Import the functions you need from the SDKs you need
import { initializeApp } from "firebase/app";
import { getAnalytics } from "firebase/analytics";
@@ -41,7 +41,7 @@ const analytics = getAnalytics(app);
```
5. Setup Firestore - Select Build and open Firestore. Create a new database and choose to start in production mode. Select server location and wait. Once that is started you need to configure the rules. Just copy and paste the file below and press publish.
```
```txt
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
@@ -16,7 +16,7 @@ series_order: 15
3. 分析ロケーションを選択します
4. プロジェクトの変数を取得し、`params.toml` ファイル内で設定して、Blowfish で Firebase を設定します。詳細は、<a target="_blank" href="{{< ref "configuration/#テーマパラメーターtheme-parameters" >}}">このページ</a>をご覧ください。Firebase が提供するファイルの例を以下に示します。FirebaseConfig オブジェクト内のパラメータに注意してください。
```
```js
// 必要な SDK から必要な関数をインポートします
import { initializeApp } from "firebase/app";
import { getAnalytics } from "firebase/analytics";
@@ -41,7 +41,7 @@ const analytics = getAnalytics(app);
```
5. Firestore を設定する - 「ビルド」を選択して Firestore を開きます。新しいデータベースを作成し、本番モードで開始することを選択します。サーバーの場所を選択して待ちます。開始したら、ルールを設定する必要があります。以下のファイルをコピーして貼り付け、「公開」をクリックします。
```
```txt
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
@@ -16,7 +16,7 @@ In order to be able to support dynamic data across your website we've added the
3. Select analytics location
4. Setup firebase in Blowfish by getting the variables for your project and setting them inside `params.toml` file. More details can be found in <a target="_blank" href="{{< ref "configuration/#theme-parameters" >}}">this page</a>. You can find an example of the file Firebase will provide below, notice the parameters within the FirebaseConfig object.
```
```js
// Import the functions you need from the SDKs you need
import { initializeApp } from "firebase/app";
import { getAnalytics } from "firebase/analytics";
@@ -41,7 +41,7 @@ const analytics = getAnalytics(app);
```
5. Setup Firestore - Select Build and open Firestore. Create a new database and choose to start in production mode. Select server location and wait. Once that is started you need to configure the rules. Just copy and paste the file below and press publish.
```
```txt
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
@@ -16,7 +16,7 @@ series_order: 15
3. 选择分析位置
4. Blowfish 是通过 `params.toml` 配置文件中的 firebase 相关参数,来和 firebase 集成的,更多的细节内容可以参考 <a target="_blank" href="{{< ref "configuration/#theme-parameters" >}}">这个页面</a>。你可以在下面找到集成 firebase 的文件示例,请注意 FirebaseConfig 对象内的参数。
```
```js
// 从你需要的 SDK 中导入所需的函数
import { initializeApp } from "firebase/app";
import { getAnalytics } from "firebase/analytics";
@@ -41,7 +41,7 @@ const analytics = getAnalytics(app);
```
5. 设置 Firestore - 选择 Build 并打开 Firestore. 创建一个数据库,并在生产环境中启动。选择服务器位置然后等待其部署完成。启动之后你需要配置规则。只需要复制并粘贴下面的内容,然后点击发布即可。
```
```txt
rules_version = '2';
service cloud.firestore {
match /databases/{database}/documents {
@@ -11,13 +11,13 @@ series_order: 5
Blowfish fornisce un layout della home page completamente flessibile. Sono disponibili due modelli principali tra cui scegliere con impostazioni aggiuntive per adattare il design. In alternativa, puoi anche fornire il tuo modello e avere il controllo completo sul contenuto della home page.
Il layout della home page è controllato dall'impostazione `homepage.layout` nel file di configurazione `params.toml`. Inoltre, tutti i layout hanno la possibilità di includere un elenco di [articoli recenti](#recent-articles).
Il layout della home page è controllato dall'impostazione `homepage.layout` nel file di configurazione `params.toml`. Inoltre, tutti i layout hanno la possibilità di includere un elenco di [articoli recenti](#articoli-recenti).
## Profile layout
Il layout predefinito è quello del profilo, ideale per i siti web e i blog personali. Mette i dettagli dell'autore in primo piano, fornendo un'immagine e i link ai profili sociali.
<img class="thumbnailshadow" src="img/home-profile.png"/>
{{< figure src="img/home-profile.png" class="thumbnailshadow" >}}
Le informazioni sull'autore sono fornite nel file di configurazione delle lingue. Fare riferimento alle sezioni [Guida introduttiva]({{< ref "getting-started" >}}) e [Configurazione della lingua]({{< ref "configuration##language-and-i18n" >}}) per i dettagli sui parametri.
@@ -28,7 +28,7 @@ Per abilitare il layout del profilo, impostare `homepage.layout = “profile”`
## Page layout
Il layout di pagina è semplicemente una normale pagina di contenuto che visualizza il contenuto Markdown. È ottimo per i siti web statici e offre una grande flessibilità.
<img class="thumbnailshadow" src="img/home-page.png"/>
{{< figure src="img/home-page.png" class="thumbnailshadow" >}}
Per abilitare il layout di pagina, impostare `homepage.layout = “page”` nel file di configurazione `params.toml`.
@@ -36,7 +36,7 @@ Per abilitare il layout di pagina, impostare `homepage.layout = “page”` nel
Il layout hero riunisce le idee dei layout profilo e scheda. Questo non solo mostra le informazioni sull'autore del sito, ma carica anche il markdown sotto di esso.
<img class="thumbnailshadow" src="img/home-hero.png"/>
{{< figure src="img/home-hero.png" class="thumbnailshadow" >}}
Per abilitare il layout Hero, impostare `homepage.layout = “hero”` e `homepage.homepageImage` nel file di configurazione `params.toml`.
@@ -44,7 +44,7 @@ Per abilitare il layout Hero, impostare `homepage.layout = “hero”` e `homepa
Il layout di sfondo è una versione più fluida del layout Hero. Come nel layout Hero, anche in questo caso vengono visualizzate le informazioni sull'autore del sito e viene caricato il markdown sotto di esso.
<img class="thumbnailshadow" src="img/home-background.png"/>
{{< figure src="img/home-background.png" class="thumbnailshadow" >}}
Per abilitare il layout di sfondo, impostare `homepage.layout = “background”` e `homepage.homepageImage` nel file di configurazione `params.toml`.
@@ -52,7 +52,7 @@ Per abilitare il layout di sfondo, impostare `homepage.layout = “background”
Il layout delle schede è un'estensione del layout di pagina. Offre lo stesso livello di flessibilità, visualizzando anche i contenuti markdown e aggiungendo un'immagine per visualizzare i contenuti visivi.
<img class="thumbnailshadow" src="img/home-card.png"/>
{{< figure src="img/home-card.png" class="thumbnailshadow" >}}
Per abilitare il layout a scheda, impostare `homepage.layout = “card”` e `homepage.homepageImage` nel file di configurazione `params.toml`.
@@ -65,7 +65,7 @@ Per abilitare il layout personalizzato, impostare `homepage.layout = “custom
Con il valore di configurazione impostato, creare un nuovo file `custom.html` e collocarlo in `layouts/partials/home/custom.html`. Ora tutto ciò che è contenuto nel file `custom.html` sarà collocato nell'area dei contenuti della homepage del sito. È possibile utilizzare qualsiasi funzione HTML, Tailwind o Hugo per definire il layout.
Per includere [articoli recenti](#recent-articles) nel layout personalizzato, utilizzare il partial `recent-articles/main.html`.
Per includere [articoli recenti](#articoli-recenti) nel layout personalizzato, utilizzare il partial `recent-articles/main.html`.
Ad esempio, la [homepage]({{< ref "/" >}}) di questo sito utilizza il layout personalizzato per consentire di passare dal layout del profilo a quello della pagina. Visitare il [repo GitHub](https://github.com/nunocoracao/blowfish/blob/main/exampleSite/layouts/partials/home/custom.html) per vedere come funziona.
@@ -73,7 +73,7 @@ Ad esempio, la [homepage]({{< ref "/" >}}) di questo sito utilizza il layout per
Tutti i layout delle homepage hanno la possibilità di visualizzare gli articoli recenti sotto il contenuto della pagina principale. Per attivarla, è sufficiente impostare l'opzione `homepage.showRecent` a `true` nel file di configurazione `params.toml`.
<img class="thumbnailshadow" src="img/home-list.png"/>
{{< figure src="img/home-list.png" class="thumbnailshadow" >}}
Gli articoli elencati in questa sezione sono derivati dall'impostazione `mainSections`, che consente di utilizzare i tipi di contenuto del sito web. Per esempio, se si hanno sezioni di contenuto per _post_ e _progetti_, si può impostare questa impostazione su `[“post”, “progetti”]` e tutti gli articoli di queste due sezioni saranno utilizzati per popolare l'elenco dei recenti. Il tema si aspetta che questa impostazione sia un array, quindi se si utilizza una sola sezione per tutti i contenuti, è necessario impostarla di conseguenza: `[“blog”]`.
@@ -17,7 +17,7 @@ Blowfish は完全に柔軟なホームページレイアウトを提供しま
デフォルトのレイアウトはプロフィールレイアウトで、個人ウェブサイトやブログに最適です。画像とソーシャルプロファイルへのリンクを提供することで、著者の詳細を前面に押し出します。
<img class="thumbnailshadow" src="img/home-profile.png"/>
{{< figure src="img/home-profile.png" class="thumbnailshadow" >}}
著者情報は、言語設定ファイルで提供されます。パラメータの詳細については、[始める]({{< ref "getting-started" >}})と[言語設定]({{< ref "configuration#言語と-i18n" >}})セクションを参照してください。
@@ -29,7 +29,7 @@ Blowfish は完全に柔軟なホームページレイアウトを提供しま
ページレイアウトは、Markdown コンテンツを表示する通常のコンテンツページです。静的ウェブサイトに最適で、高い柔軟性を提供します。
<img class="thumbnailshadow" src="img/home-page.png"/>
{{< figure src="img/home-page.png" class="thumbnailshadow" >}}
ページレイアウトを有効にするには、`params.toml` 設定ファイルで `homepage.layout = "page"` を設定します。
@@ -37,7 +37,7 @@ Blowfish は完全に柔軟なホームページレイアウトを提供しま
ヒーローレイアウトは、プロフィールレイアウトとカードレイアウトのアイデアを組み合わせたものです。これは、サイトの著者に関する情報を表示するだけでなく、その下に Markdown をロードします。
<img class="thumbnailshadow" src="img/home-hero.png"/>
{{< figure src="img/home-hero.png" class="thumbnailshadow" >}}
ヒーローレイアウトを有効にするには、`params.toml` 設定ファイルで `homepage.layout = "hero"` と `homepage.homepageImage` を設定します。
@@ -45,7 +45,7 @@ Blowfish は完全に柔軟なホームページレイアウトを提供しま
背景レイアウトは、ヒーローレイアウトをより滑らかにしたバージョンです。ヒーローレイアウトと同様に、サイトの著者に関する情報を表示し、その下に Markdown をロードします。
<img class="thumbnailshadow" src="img/home-background.png"/>
{{< figure src="img/home-background.png" class="thumbnailshadow" >}}
背景レイアウトを有効にするには、`params.toml` 設定ファイルで `homepage.layout = "background"` と `homepage.homepageImage` を設定します。
@@ -53,7 +53,7 @@ Blowfish は完全に柔軟なホームページレイアウトを提供しま
カードレイアウトは、ページレイアウトの拡張版です。Markdown コンテンツも表示することで同じレベルの柔軟性を提供し、ビジュアルコンテンツを表示するためのカード画像も追加します。
<img class="thumbnailshadow" src="img/home-card.png"/>
{{< figure src="img/home-card.png" class="thumbnailshadow" >}}
カードレイアウトを有効にするには、`params.toml` 設定ファイルで `homepage.layout = "card"` と `homepage.homepageImage` を設定します。
@@ -73,7 +73,7 @@ Blowfish は完全に柔軟なホームページレイアウトを提供しま
すべてのホームページレイアウトには、メインページコンテンツの下に最新記事を表示するオプションがあります。これを有効にするには、`params.toml` 設定ファイルで `homepage.showRecent` 設定を `true` に設定するだけです。
<img class="thumbnailshadow" src="img/home-list.png"/>
{{< figure src="img/home-list.png" class="thumbnailshadow" >}}
このセクションにリストされている記事は、`mainSections` 設定から派生したもので、ウェブサイトで使用しているコンテンツタイプを指定できます。たとえば、_posts_ と _projects_ のコンテンツセクションがある場合、この設定を `["posts", "projects"]` に設定すると、これら2つのセクションのすべての記事が最新リストに表示されます。テーマはこの設定を配列として想定しているため、すべてのコンテンツに1つのセクションのみを使用する場合は、それに応じて設定する必要があります: `["blog"]`。
@@ -17,7 +17,7 @@ The layout of the homepage is controlled by the `homepage.layout` setting in the
The default layout is the profile layout, which is great for personal websites and blogs. It puts the author's details front and centre by providing an image and links to social profiles.
<img class="thumbnailshadow" src="img/home-profile.png"/>
{{< figure src="img/home-profile.png" class="thumbnailshadow" >}}
The author information is provided in the languages configuration file. Refer to the [Getting Started]({{< ref "getting-started" >}}) and [Language Configuration]({{< ref "configuration##language-and-i18n" >}}) sections for parameter details.
@@ -29,7 +29,7 @@ To enable the Profile layout, set `homepage.layout = "profile"` in the `params.t
The page layout is simply a normal content page that displays your Markdown content. It's great for static websites and provides a lot of flexibility.
<img class="thumbnailshadow" src="img/home-page.png"/>
{{< figure src="img/home-page.png" class="thumbnailshadow" >}}
To enable the Page layout, set `homepage.layout = "page"` in the `params.toml` configuration file.
@@ -37,7 +37,7 @@ To enable the Page layout, set `homepage.layout = "page"` in the `params.toml` c
The hero layout brings together ideas from the profile and card layouts. This one not only displays information on the author of the site but it also loads your markdown beneath it.
<img class="thumbnailshadow" src="img/home-hero.png"/>
{{< figure src="img/home-hero.png" class="thumbnailshadow" >}}
To enable the Hero layout, set `homepage.layout = "hero"` and `homepage.homepageImage` in the `params.toml` configuration file.
@@ -45,7 +45,7 @@ To enable the Hero layout, set `homepage.layout = "hero"` and `homepage.homepage
The background layout is a more smooth version of the hero layout. As in the Hero layout, this one also displays both information on the author of the site and loads your markdown beneath it.
<img class="thumbnailshadow" src="img/home-background.png"/>
{{< figure src="img/home-background.png" class="thumbnailshadow" >}}
To enable the Background layout, set `homepage.layout = "background"` and `homepage.homepageImage` in the `params.toml` configuration file.
@@ -53,7 +53,7 @@ To enable the Background layout, set `homepage.layout = "background"` and `homep
The card layout is an extension of the page layout. It provides the same level of flexibility by also displaying your markdown content and adds a card image to display visual content.
<img class="thumbnailshadow" src="img/home-card.png"/>
{{< figure src="img/home-card.png" class="thumbnailshadow" >}}
To enable the Card layout, set `homepage.layout = "card"` and `homepage.homepageImage` in the `params.toml` configuration file.
@@ -74,7 +74,7 @@ As an example, the [homepage]({{< ref "/" >}}) on this site uses the custom layo
All homepage layouts have the option of displaying recent articles below the main page content. To enable this, simply set the `homepage.showRecent` setting to `true` in the `params.toml` configuration file.
<img class="thumbnailshadow" src="img/home-list.png"/>
{{< figure src="img/home-list.png" class="thumbnailshadow" >}}
The articles listed in this section are derived from the `mainSections` setting which allows for whatever content types you are using on your website. For instance, if you had content sections for _posts_ and _projects_ you could set this setting to `["posts", "projects"]` and all the articles in these two sections would be used to populate the recent list. The theme expects this setting to be an array so if you only use one section for all your content, you should set this accordingly: `["blog"]`.
@@ -11,13 +11,13 @@ series_order: 5
Blowfish 提供了一个完全灵活的主页布局。你可以选择两种主要模板,并提供了额外的参数来帮助调整设计。当然,你也可以提供自己的模板,完全控制主页的内容。
主页布局由 `params.toml` 配置文件中的 `homepage.layout` 参数来控制的。此外所有布局都默认包括 [最近文章](#recent-articles)。
主页布局由 `params.toml` 配置文件中的 `homepage.layout` 参数来控制的。此外所有布局都默认包括 [最近文章](#最近文章)。
## 个人资料布局 (profile)
默认的布局是 profile 布局,这非常适合个人网站和博客。它将作者的详细信息置于中心位置,并附带了头像和社交平台的链接。
<img class="thumbnailshadow" src="img/home-profile.png"/>
{{< figure src="img/home-profile.png" class="thumbnailshadow" >}}
作者信息是在语言配置文件中提供的。具体的参数详情,请参考[快速入门]({{< ref "getting-started" >}})和[语言配置]({{< ref "configuration##language-and-i18n" >}})的内容。
@@ -29,7 +29,7 @@ Blowfish 提供了一个完全灵活的主页布局。你可以选择两种主
页面布局只会简单的显示你的 Markdown 内容,这种方式非常适合静态网站,并提供了很多灵活性。
<img class="thumbnailshadow" src="img/home-page.png"/>
{{< figure src="img/home-page.png" class="thumbnailshadow" >}}
如果想要启用 page 布局,请在 `params.toml` 配置文件中设置 `homepage.layout = "page"`。
@@ -37,7 +37,7 @@ Blowfish 提供了一个完全灵活的主页布局。你可以选择两种主
英雄布局(hero)组合了个人资料布局(profile)和卡片布局(card)。它不仅显示了网站作者的个人信息,还在个人资料下方加载了你的 markdown 内容。
<img class="thumbnailshadow" src="img/home-hero.png"/>
{{< figure src="img/home-hero.png" class="thumbnailshadow" >}}
如果想要启用 hero 布局,请在 `params.toml` 配置文件中设置 `homepage.layout = "hero"`。
@@ -45,7 +45,7 @@ Blowfish 提供了一个完全灵活的主页布局。你可以选择两种主
背景布局(background)相对于英雄布局(hero)更叫平滑。和英雄布局(hero)类似,它也显示了网站作者的信息,并在其下方加载 markdown 内容。
<img class="thumbnailshadow" src="img/home-background.png"/>
{{< figure src="img/home-background.png" class="thumbnailshadow" >}}
如果想要启用 background 布局,请在 `params.toml` 配置文件中设置 `homepage.layout = "background"` 和 `homepage.homepageImage` 。
@@ -53,7 +53,7 @@ Blowfish 提供了一个完全灵活的主页布局。你可以选择两种主
卡片模板(card)是在页面布局上的扩展,它同样提供了灵活性。在显示了你的 markdown 内容的同时,展示了一个卡片组件中的图像。
<img class="thumbnailshadow" src="img/home-card.png"/>
{{< figure src="img/home-card.png" class="thumbnailshadow" >}}
如果想要启用 card 布局,请在 `params.toml` 配置文件中设置 `homepage.layout = "card"` 和 `homepage.homepageImage` 。
@@ -65,7 +65,7 @@ Blowfish 提供了一个完全灵活的主页布局。你可以选择两种主
配置好参数后,在 `layouts/partials/home` 目录下创建一个 `custom.html` 文件。 `custom.html` 文件中定义的任何内容都会被放置在网站主页的内容区域。你可以使用 HTML、Tailwind 或 Hugo 模板函数来定义你的布局。
如果你想在自定义布局上添加 [最近文章](#recent-articles),请使用 `recent-articles/main.html` 中的内容。
如果你想在自定义布局上添加 [最近文章](#最近文章),请使用 `recent-articles/main.html` 中的内容。
如果你想在网站[主页]({{< ref "/" >}})使用自定义布局来实现在个人资料和页面布局之间的切换。这里的[GitHub 仓库](https://github.com/nunocoracao/blowfish/blob/main/exampleSite/layouts/partials/home/custom.html)有一个例子可以参考。
@@ -73,7 +73,7 @@ Blowfish 提供了一个完全灵活的主页布局。你可以选择两种主
所有的主页布局都可以在主要内容下方显示最近文章。如果想要启用此功能,只需要在 `params.toml` 配置文件中将 `homepage.showRecent` 参数设置为 `true` 即可。
<img class="thumbnailshadow" src="img/home-list.png"/>
{{< figure src="img/home-list.png" class="thumbnailshadow" >}}
这部分会列举出你在 `mainSections` 参数中设置的文章列表,此参数允许你使用网站上的任何内容类型。例如,如果你想在最新文章中展示 _posts_ 和 _projects_ 内容中的文章,你可以将此值设置为 `["posts", "projects"]`,这两个部分中的所有文章都会填充到最近文章列表中。Blowfish 主题期望这个参数是一个数组,如果你只想设置一个部分的所有文章,你可以设置为 `["blog"]` 即可。
@@ -47,7 +47,7 @@ on:
jobs:
build-deploy:
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
@@ -47,7 +47,7 @@ on:
jobs:
build-deploy:
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
@@ -47,7 +47,7 @@ on:
jobs:
build-deploy:
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
@@ -47,7 +47,7 @@ on:
jobs:
build-deploy:
runs-on: ubuntu-20.04
runs-on: ubuntu-24.04
concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
steps:
@@ -11,7 +11,7 @@ series_order: 2
Segui semplicemente la procedura standard [Avvio Rapido](https://gohugo.io/getting-started/quick-start/) di Hugo per iniziare subito.
Sono riportate le istruzioni dettagliate per l'installazione. Sono disponibili anche le istruzioni per [aggiornare il tema](#installazione-aggiornamenti).
Sono riportate le istruzioni dettagliate per l'installazione. Sono disponibili anche le istruzioni per [aggiornare il tema](#installazione-degli-aggiornamenti).
## Installazione
@@ -66,9 +66,9 @@ La cartella del progetto può essere chiamata come si vuole, ma le istruzioni ch
Esistono diversi modi per installare il tema Blowfish nel proprio sito web Hugo. Dal più facile al più difficile da installare e mantenere, sono:
- [Git submodule](#install-using-git) (recommended)
- [Hugo module](#install-using-hugo)
- [Copia manuale dei file](#install-manually)
- [Git submodule](#installazione-usando-git) (recommended)
- [Hugo module](#installazione-usando-hugo)
- [Copia manuale dei file](#installazione-manuale)
Se non sei sicuro, scegli il metodo Git submodule.
@@ -84,7 +84,7 @@ git init
git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blowfish
```
poi continua a [impostare i file di configurazione del tema](#set-up-theme-configuration-files).
poi continua a [impostare i file di configurazione del tema](#imposta-i-file-di-configurazione-del-tema).
#### Installazione usando Hugo
@@ -115,7 +115,7 @@ Per questo metodo utilizzerai Hugo per gestire i tuoi temi. Hugo utilizza **Go**
```
4. Avvia il tuo server utilizzando `hugo server` e il tema verrà scaricato automaticamente.
5. Continua con [impostare i file di configurazione del tema](#set-up-theme-configuration-files).
5. Continua con [impostare i file di configurazione del tema](#imposta-i-file-di-configurazione-del-tema).
#### Installazione manuale
1. Scarica l'ultima versione del codice sorgente del tema.
@@ -124,7 +124,7 @@ Per questo metodo utilizzerai Hugo per gestire i tuoi temi. Hugo utilizza **Go**
"blowfish" e "themes/"
2. Estrai l'archivio, rinomina la cartella in `blowfish` spostala nella directory `themes/` all'interno della cartella principale del tuo progetto Hugo.
3. Continua con [impostare i file di configurazione del tema](#set-up-theme-configuration-files).
3. Continua con [impostare i file di configurazione del tema](#imposta-i-file-di-configurazione-del-tema).
#### Imposta i file di configurazione del tema
@@ -167,9 +167,9 @@ Di tanto in tanto verranno pubblicate [nuove versioni](https://github.com/nunoco
Il modo in cui procedere dipenderà dal metodo di installazione scelto al momento dell'installazione originale del tema. Le istruzioni per ciascun metodo sono disponibili di seguito.
- [Git submodule](#update-using-git)
- [Hugo module](#update-using-hugo)
- [Copia manuale del file](#aggiornamento-manuale)
- [Git submodule](#aggiornamento-utilizzando-git)
- [Hugo module](#aggiornamento-utilizzando-hugo)
- [Copia manuale del file](#aggiornamenti-manuali)
### Aggiornamento utilizzando Git
@@ -11,7 +11,7 @@ series_order: 2
如果想快速上手,可以按照标准的 Hugo [快速启动](https://gohugo.io/getting-started/quick-start/) 文档。
更详细的安装如下,[更新主题](#installing-updates)的教程也可以看此文档。
更详细的安装如下,[更新主题](#更新主题)的教程也可以看此文档。
## 前言
@@ -66,9 +66,9 @@ blowfish-tools new mynewsite
有多种方法可以将 Blowfish 主题安装在 Hugo 站点中。下面我们由易到难逐一介绍:
- [使用 Git 子模块安装](#install-using-git) (推荐)
- [使用 Hugo 模块安装](#install-using-hugo)
- [手动文件复制](#install-manually)
- [使用 Git 子模块安装](#使用-git-子模块安装) (推荐)
- [使用 Hugo 模块安装](#使用-hugo-模板安装)
- [手动文件复制](#手动复制文件)
如果你不确定用哪一个,请直接选择 Git 子模块的方式。
@@ -84,7 +84,7 @@ git init
git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blowfish
```
然后 [设置主题的配置文件](#set-up-theme-configuration-files)。
然后 [设置主题的配置文件](#手动复制文件)。
#### 使用 Hugo 模板安装
@@ -115,7 +115,7 @@ git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blo
```
4. 使用`hugo server` 命令后,主题将会自动下载。
5. 然后 [设置主题的配置文件](#set-up-theme-configuration-files).
5. 然后 [设置主题的配置文件](#手动复制文件).
#### 手动复制文件
@@ -124,7 +124,7 @@ git submodule add -b main https://github.com/nunocoracao/blowfish.git themes/blo
{{< button href="https://github.com/nunocoracao/blowfish/releases/latest" target="_blank" >}}从 Github 下载{{< /button >}}
2. 解压缩, 并将文件夹重命名为 `blowfish`,将其移动到你的 Hugo 项目根目录下的 `themes/` 目录中。
3. 然后 [设置主题的配置文件](#set-up-theme-configuration-files).
3. 然后 [设置主题的配置文件](#手动复制文件).
#### 设置主题的配置文件
@@ -167,11 +167,11 @@ config/_default/
如何更新主题取决于最初安装主题时选择的安装方式,具体如下:
- [使用 Git 子模块安装](#update-using-git)
- [使用 Hugo 模块安装](#update-using-hugo)
- [手动文件复制](#update-manually)
- [使用 Git 子模块安装](#使用-git-更新)
- [使用 Hugo 模块安装](#使用-hugo-更新)
- [手动文件复制](#手动更新)
### 利用 git 更新
### 使用 git 更新
Git 子模块的方式,可以使用 `git` 命令更新。只需执行以下命令,最新版的主题将会下载到你的本地仓库中:
@@ -18,7 +18,7 @@ In addition to all the [default Hugo shortcodes](https://gohugo.io/content-manag
<!-- prettier-ignore-start -->
| Parameter | Description |
| ----------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `icon` | **Optional.** the icon to display on the left side.<br>**Default:** `exclaimation triangle icon` (Check out the [icon shortcode](#icon) for more details on using icons.) |
| `icon` | **Optional.** the icon to display on the left side.<br>**Default:** `triangle-exclamation` (Check out the [icon shortcode](#icon) for more details on using icons.) |
| `iconColor` | **Optional.** the color for the icon in basic CSS style.<br>Can be either hex values (`#FFFFFF`) or color names (`white`)<br>By default chosen based on the current color theme . |
| `cardColor` | **Optional.** the color for the card background in basic CSS style.<br>Can be either hex values (`#FFFFFF`) or color names (`white`)<br>By default chosen based on the current color theme . |
| `textColor` | **Optional.** the color for the text in basic CSS style.<br>Can be either hex values (`#FFFFFF`) or color names (`white`)<br>By default chosen based on the current color theme . |
@@ -286,6 +286,26 @@ Blowfish also supports automatic conversion of images included using standard Ma
<br/><br/><br/>
## Forgejo Card
`forgejo` allows you to quickly link a Forgejo repository via the forgejo API, providing real-time updates on stats such as stars and forks.
<!-- prettier-ignore-start -->
| Parameter | Description |
| --------- | ----------------------------------------------------- |
| `repo` | [String] forgejo repo in the format of `username/repo`|
| `server` | [String] server URL like `https://v8.next.forgejo.org`|
<!-- prettier-ignore-end -->
**Example 1:**
```md
{{</* forgejo server="https://v8.next.forgejo.org" repo="forgejo/forgejo" */>}}
```
{{< forgejo server="https://v8.next.forgejo.org" repo="forgejo/forgejo" >}}
<br/><br/><br/>
## Gallery
`gallery` allows you to showcase multiple images at once, in a responsive manner with more varied and interesting layouts.
@@ -345,6 +365,51 @@ In order to add images to the gallery, use `img` tags for each image and add `cl
<br/><br/><br/>
## Gist
`gist` shortcode allows you to embed a GitHub Gist directly into your content by specifying the Gist user, ID, and optionally a specific file.
| Parameter | Description |
| -------------- | ------------------------------------------------------------------ |
| `[0]` | [String] GitHub username |
| `[1]` | [String] Gist ID |
| `[2]` (optional)| [String] Filename within the Gist to embed (optional) |
**Example 1: Embed entire Gist**
```md
{{</* gist "octocat" "6cad326836d38bd3a7ae" */>}}
````
**Example 2: Embed specific file from Gist**
```md
{{</* gist "rauchg" "2052694" "README.md" */>}}
```
<br/><br/><br/>
## Gitea Card
`gitea` allows you to quickly link a Gitea repository via the gitea API, providing real-time updates on stats such as stars and forks.
<!-- prettier-ignore-start -->
| Parameter | Description |
| --------- | ----------------------------------------------------- |
| `repo` | [String] gitea repo in the format of `username/repo` |
| `server` | [String] server URL like `https://git.fsfe.org` |
<!-- prettier-ignore-end -->
**Example 1:**
```md
{{</* gitea server="https://git.fsfe.org" repo="FSFE/fsfe-website" */>}}
```
{{< gitea server="https://git.fsfe.org" repo="FSFE/fsfe-website" >}}
<br/><br/><br/>
## GitHub Card
`github` allows you to quickly link a github repository, all while showing and updating in realtime stats about it, such as the number of stars and forks it has.
@@ -678,7 +743,7 @@ With other shortcodes
{{< timeline >}}
{{< timelineItem icon="github" header="header" badge="badge test" subheader="subheader" >}}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus non magna ex. Donec sollicitudin ut lorem quis lobortis. Nam ac ipsum libero. Sed a ex eget ipsum tincidunt venenatis quis sed nisl. Pellentesque sed urna vel odio consequat tincidunt id ut purus. Nam sollicitudin est sed dui interdum rhoncus.
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus non magna ex. Donec sollicitudin ut lorem quis lobortis. Nam ac ipsum libero. Sed a ex eget ipsum tincidunt venenatis quis sed nisl. Pellentesque sed urna vel odio consequat tincidunt id ut purus. Nam sollicitudin est sed dui interdum rhoncus.
{{</ timelineItem >}}
@@ -362,6 +362,34 @@ Blowfish も、標準の Markdown 構文を使用して含まれる画像の自
<br/><br/><br/>
## Gist
`gist`ショートコードは、Gistのユーザー名、ID、必要に応じて特定のファイル名を指定することで、GitHub Gistをコンテンツに直接埋め込むことができます。
| パラメーター | 説明 |
| ------------ | -------------------------------- |
| `[0]` | \[文字列] GitHubのユーザー名 |
| `[1]` | \[文字列] GistのID |
| `[2]`(オプション) | \[文字列] Gist内で埋め込む特定のファイル名(オプション) |
**例1:Gist全体を埋め込む**
```md
{{</* gist "octocat" "6cad326836d38bd3a7ae" */>}}
```
{{< gist "octocat" "6cad326836d38bd3a7ae" >}}
**例2:Gistの特定ファイルを埋め込む**
```md
{{</* gist "rauchg" "2052694" "README.md" */>}}
```
{{< gist "rauchg" "2052694" "README.md" >}}
<br/><br/><br/>
## Gitea カード
`gitea` を使用すると、gitea API を介して Gitea リポジトリをすばやくリンクでき、スターやフォークなどの統計に関するリアルタイムに更新できます。
+34 -5
View File
@@ -365,6 +365,34 @@ In order to add images to the gallery, use `img` tags for each image and add `cl
<br/><br/><br/>
## Gist
`gist` shortcode allows you to embed a GitHub Gist directly into your content by specifying the Gist user, ID, and optionally a specific file.
| Parameter | Description |
| -------------- | ------------------------------------------------------------------ |
| `[0]` | [String] GitHub username |
| `[1]` | [String] Gist ID |
| `[2]` (optional)| [String] Filename within the Gist to embed (optional) |
**Example 1: Embed entire Gist**
```md
{{</* gist "octocat" "6cad326836d38bd3a7ae" */>}}
````
{{< gist "octocat" "6cad326836d38bd3a7ae" >}}
**Example 2: Embed specific file from Gist**
```md
{{</* gist "rauchg" "2052694" "README.md" */>}}
```
{{< gist "rauchg" "2052694" "README.md" >}}
<br/><br/><br/>
## Gitea Card
`gitea` allows you to quickly link a Gitea repository via the gitea API, providing real-time updates on stats such as stars and forks.
@@ -390,18 +418,19 @@ In order to add images to the gallery, use `img` tags for each image and add `cl
`github` allows you to quickly link a github repository, all while showing and updating in realtime stats about it, such as the number of stars and forks it has.
<!-- prettier-ignore-start -->
| Parameter | Description |
| --------- | ----------------------------------------------------- |
| `repo` | [String] github repo in the format of `username/repo` |
| Parameter | Description |
|-----------------|---------------------------------------------------------------|
| `repo` | [String] github repo in the format of `username/repo` |
| `showThumbnail` | **Optional** [boolean] display a thumbnail for the repository |
<!-- prettier-ignore-end -->
**Example 1:**
```md
{{</* github repo="nunocoracao/blowfish" */>}}
{{</* github repo="nunocoracao/blowfish" showThumbnail=true */>}}
```
{{< github repo="nunocoracao/blowfish" >}}
{{< github repo="nunocoracao/blowfish" showThumbnail=true >}}
<br/><br/><br/>
@@ -18,7 +18,7 @@ series_order: 8
<!-- prettier-ignore-start -->
| 参数 | 功能 |
| ----------- | -------------------------------------------------------------------------------------------------------------------------------- |
| `icon` | **可选** 显示在左侧的图标。<br>**默认:** `exclaimation triangle icon` (查看[图标简码](#icon),了解有关使用图标的更多详细信息。) |
| `icon` | **可选** 显示在左侧的图标。<br>**默认:** `exclaimation triangle icon` (查看[图标简码](#图标),了解有关使用图标的更多详细信息。) |
| `iconColor` | **可选** 基本 CSS 样式中图标的颜色。<br>可以是十六进制值 (`#FFFFFF`) 或颜色名称 (`white`)<br>默认情况下由当前配色方案决定。 |
| `cardColor` | **可选** 基本 CSS 样式中卡片背景的颜色。<br>可以是十六进制值 (`#FFFFFF`) 或颜色名称 (`white`)<br>默认情况下由当前配色方案决定。 |
| `textColor` | **可选** 基本 CSS 样式中文本的颜色。<br>可以是十六进制值 (`#FFFFFF`) 或颜色名称 (`white`)<br>默认情况下由当前配色方案决定。 |
@@ -346,6 +346,53 @@ Blowfish 还支持使用标准 Markdown 语法自动转换图像。只需使用
<br/><br/><br/>
## Gist
`gist` 短代码允许你通过指定 Gist 用户名、ID 以及可选的特定文件,直接将 GitHub Gist 嵌入到内容中。
| 参数 | 描述 |
| --------- | ------------------------ |
| `[0]` | \[字符串] GitHub 用户名 |
| `[1]` | \[字符串] Gist ID |
| `[2]`(可选) | \[字符串] Gist 中要嵌入的文件名(可选) |
**示例 1:嵌入整个 Gist**
```md
{{</* gist "octocat" "6cad326836d38bd3a7ae" */>}}
```
**示例 2:嵌入 Gist 中的特定文件**
```md
{{</* gist "rauchg" "2052694" "README.md" */>}}
```
<br/><br/><br/>
## Gitea 卡片
`gitea` 允许你通过 gitea API 快速链接一个 Gitea 仓库,提供诸如 stars 和 forks 等统计数据的实时更新。
<!-- prettier-ignore-start -->
| 参数 | 描述 |
| -------- | --------------------------------------- |
| `repo` | \[字符串] 以 `用户名/仓库名` 格式表示的 gitea 仓库 |
| `server` | \[字符串] 服务器 URL,如 `https://git.fsfe.org` |
<!-- prettier-ignore-end -->
**示例 1:**
```md
{{</* gitea server="https://git.fsfe.org" repo="FSFE/fsfe-website" */>}}
```
{{< gitea server="https://git.fsfe.org" repo="FSFE/fsfe-website" >}}
<br/><br/><br/>
## GitHub 卡片
`github` 允许您快速链接到 github Repo,同时显示和更新有关它的实时统计信息,例如它的 star 和 fork 数。
@@ -679,17 +726,17 @@ With other shortcodes
{{< timelineItem icon="github" header="header" badge="badge test" subheader="subheader" >}}
Lorem ipsum dolor sit amet, consectetur adipiscing elit. Vivamus non magna ex. Donec sollicitudin ut lorem quis lobortis. Nam ac ipsum libero. Sed a ex eget ipsum tincidunt venenatis quis sed nisl. Pellentesque sed urna vel odio consequat tincidunt id ut purus. Nam sollicitudin est sed dui interdum rhoncus.
{{</ timelineItem >}}
{{< /timelineItem >}}
{{< timelineItem icon="code" header="Another Awesome Header" badge="date - present" subheader="Awesome Subheader">}}
{{< timelineItem icon="code" header="Another Awesome Header" badge="date - present" subheader="Awesome Subheader" >}}
With html code
<ul>
<li>Coffee</li>
<li>Tea</li>
<li>Milk</li>
</ul>
{{</ timelineItem >}}
{{< /timelineItem >}}
{{< timelineItem icon="star" header="Shortcodes" badge="AWESOME" >}}
With other shortcodes
@@ -702,12 +749,13 @@ With other shortcodes
<img src="gallery/06.jpg" class="grid-w33" />
<img src="gallery/07.jpg" class="grid-w33" />
{{< /gallery >}}
{{< /timelineItem >}}
{{< timelineItem icon="code" header="Another Awesome Header">}}
{{< github repo="nunocoracao/blowfish" >}}
{{</ timelineItem >}}
{{</ timelineItem >}}
{{< /timelineItem >}}
{{</ timeline >}}
{{< /timeline >}}
<br/><br/><br/>
+3 -4
View File
@@ -24,7 +24,7 @@ Tailwind CSS è il cuore di Blowfish e questa versione contiene l'ultima [Tailwi
Blowfish è ora multilingue! Una funzionalità molto richiesta. Se pubblichi i tuoi contenuti in più lingue, il sito verrà realizzato con tutte le traduzioni disponibili.
<div class="text-2xl text-center" style="font-size: 2.8rem">:gb: :de: :fr: :es: :cn: :brazil: :tr: :bangladesh:</div>
<div class="text-2xl text-center" style="font-size: 2.8rem">🇬🇧 🇩🇪 🇫🇷 🇪🇸 🇨🇳 🇧🇷 🇹🇷 🇧🇩</div>
Grazie ai contributi della community, Blowfish è già stato tradotto in [trenta lingue](https://github.com/nunocoracao/blowfish/tree/main/i18n) e altre verranno aggiunte nel tempo. A proposito, le [richieste pull](https://github.com/nunocoracao/blowfish/pulls) per nuove lingue sono sempre benvenute!
@@ -38,7 +38,7 @@ RTL è controllato in base alla lingua, quindi puoi mescolare e abbinare sia il
Un grande cambiamento in Blowfish 2.0 è l'aggiunta del ridimensionamento automatico delle immagini. Utilizzando la potenza di Hugo Pipes, le immagini nei contenuti Markdown vengono ora ridimensionate automaticamente in diverse dimensioni di output. Questi vengono poi presentati utilizzando gli attributi HTML "srcset" che consentono di offrire dimensioni di file ottimizzate ai visitatori del tuo sito.
![](image-resizing.png)
![Image with alternate text](image-resizing.png)
```html
<!-- Markdown: ![My image](image.jpg) -->
@@ -46,8 +46,7 @@ Un grande cambiamento in Blowfish 2.0 è l'aggiunta del ridimensionamento automa
srcset="
/image_320x0_resize_q75_box.jpg 320w,
/image_635x0_resize_q75_box.jpg 635w,
/image_1024x0_resize_q75_box.jpg 1024w,
/image_1270x0_resize_q75_box.jpg 2x"
/image_1024x0_resize_q75_box.jpg 1024w"
src="/image_635x0_resize_q75_box.jpg"
alt="My image"
/>
+2 -3
View File
@@ -38,7 +38,7 @@ RTL は言語ごとに制御されるため、プロジェクト内で RTL と L
Blowfish 2.0 の大きな変更点は、自動画像リサイズ機能の追加です。Hugo Pipes の力を使って、Markdown コンテンツ内の画像が自動的に異なる出力サイズにスケーリングされるようになりました。これらは HTML の `srcset` 属性を使用して表示され、最適化されたファイルサイズをサイト訪問者に提供できます。
![](image-resizing.png)
![Image with alternate text](image-resizing.png)
```html
<!-- Markdown: ![私の画像](image.jpg) -->
@@ -46,8 +46,7 @@ Blowfish 2.0 の大きな変更点は、自動画像リサイズ機能の追加
srcset="
/image_320x0_resize_q75_box.jpg 320w,
/image_635x0_resize_q75_box.jpg 635w,
/image_1024x0_resize_q75_box.jpg 1024w,
/image_1270x0_resize_q75_box.jpg 2x"
/image_1024x0_resize_q75_box.jpg 1024w"
src="/image_635x0_resize_q75_box.jpg"
alt="私の画像"
/>
+2 -3
View File
@@ -38,7 +38,7 @@ RTL is controlled on a per-language basis so you can mix and match both RTL and
A big change in Blowfish 2.0 is the addition of automatic image resizing. Using the power of Hugo Pipes, images in Markdown content are now automatically scaled to different output sizes. These are then presented using HTML `srcset` attributes enabling optimised file sizes to be served to your site visitors.
![](image-resizing.png)
![Image with alternate text](image-resizing.png)
```html
<!-- Markdown: ![My image](image.jpg) -->
@@ -46,8 +46,7 @@ A big change in Blowfish 2.0 is the addition of automatic image resizing. Using
srcset="
/image_320x0_resize_q75_box.jpg 320w,
/image_635x0_resize_q75_box.jpg 635w,
/image_1024x0_resize_q75_box.jpg 1024w,
/image_1270x0_resize_q75_box.jpg 2x"
/image_1024x0_resize_q75_box.jpg 1024w"
src="/image_635x0_resize_q75_box.jpg"
alt="My image"
/>
@@ -27,7 +27,7 @@ Tailwind CSS 带来了性能优化,并提供了一些出色的新的 CSS 特
这是一个高频需求,Blowfish 现在支持多语言!
如果你使用多语言发布你的内容,网站将会构建包含所有可用翻译的版本。
<div class="text-2xl text-center" style="font-size: 2.8rem">:gb: :de: :fr: :es: :cn: :brazil: :tr: :bangladesh:</div>
<div class="text-2xl text-center" style="font-size: 2.8rem">🇬🇧 🇩🇪 🇫🇷 🇪🇸 🇨🇳 🇧🇷 🇹🇷 🇧🇩</div>
感谢社区的贡献,目前 Blowfish 已经翻译成三十种语言,并且随着时间的推移还会支持更多。 顺便一提,欢迎你为支持新语言提交 [PR](https://github.com/nunocoracao/blowfish/pulls)。
@@ -43,7 +43,7 @@ RTL 是基于单独语言控制的,所以你可以在项目中通过支持多
Blowfish 2.0版本的重大变化是增加了自动调整图片大小的功能。基于 Hugo Pipes 提供的能力,实现了 Markdown 中的图片自动缩放到不同尺寸的功能。同时 Blowfish 2.0 还支持了 HTML `srcset` 以实现响应式图像,这能够为访问者优化图片大小。
![](image-resizing.png)
![Image with alternate text](image-resizing.png)
```html
<!-- Markdown: ![My image](image.jpg) -->
@@ -51,8 +51,7 @@ Blowfish 2.0版本的重大变化是增加了自动调整图片大小的功能
srcset="
/image_320x0_resize_q75_box.jpg 320w,
/image_635x0_resize_q75_box.jpg 635w,
/image_1024x0_resize_q75_box.jpg 1024w,
/image_1270x0_resize_q75_box.jpg 2x"
/image_1024x0_resize_q75_box.jpg 1024w"
src="/image_635x0_resize_q75_box.jpg"
alt="My image"
/>
@@ -1,10 +1,6 @@
---
title: "Showcase"
description: "See what's possible with Blowfish."
showLikes: true
showViews: true
cascade:
showEdit: false
showReadingTime: false
@@ -1,10 +1,6 @@
---
title: "ショーケース"
description: "Blowfish で何が出来るか見てみる。"
showLikes: true
showViews: true
cascade:
showEdit: false
showReadingTime: false
-4
View File
@@ -1,10 +1,6 @@
---
title: "Showcase"
description: "See what's possible with Blowfish."
showLikes: true
showViews: true
cascade:
showEdit: false
showReadingTime: false
@@ -1,10 +1,6 @@
---
title: "Showcase"
description: "See what's possible with Blowfish."
showLikes: true
showViews: true
cascade:
showEdit: false
showReadingTime: false
@@ -28,6 +28,7 @@ The full list of built-in icons and their corresponding names can referenced bel
| check | {{< icon check >}} |
| circle-info | {{< icon circle-info >}} |
| code | {{< icon code>}} |
| codeberg | {{< icon codeberg >}} |
| codepen | {{< icon codepen >}} |
| comment | {{< icon comment >}} |
| dev | {{< icon dev >}} |
@@ -58,6 +59,7 @@ The full list of built-in icons and their corresponding names can referenced bel
| heart | {{< icon heart >}} |
| image | {{< icon image >}} |
| instagram | {{< icon instagram >}} |
| itch-io | {{< icon itch-io >}} |
| keybase | {{< icon keybase >}} |
| kickstarter | {{< icon kickstarter >}} |
| ko-fi | {{< icon ko-fi >}} |
@@ -78,10 +80,12 @@ The full list of built-in icons and their corresponding names can referenced bel
| orcid | {{< icon orcid >}} |
| patreon | {{< icon patreon >}} |
| paypal | {{< icon paypal >}} |
| peertube | {{< icon peertube >}} |
| pencil | {{< icon pencil >}} |
| pgpkey | {{< icon pgpkey >}} |
| phone | {{< icon phone >}} |
| pinterest | {{< icon pinterest >}} |
| pixelfed | {{< icon pixelfed >}} |
| poo | {{< icon poo >}} |
| reddit | {{< icon reddit >}} |
| researchgate | {{< icon researchgate >}} |
@@ -94,6 +98,7 @@ The full list of built-in icons and their corresponding names can referenced bel
| slack | {{< icon slack >}} |
| snapchat | {{< icon snapchat >}} |
| soundcloud | {{< icon soundcloud >}} |
| spotify | {{< icon spotify >}} |
| stack-overflow | {{< icon stack-overflow >}} |
| star | {{< icon star >}} |
| steam | {{< icon steam >}} |
@@ -113,4 +118,4 @@ The full list of built-in icons and their corresponding names can referenced bel
| x-twitter | {{< icon x-twitter >}} |
| xing | {{< icon xing >}} |
| xmark | {{< icon xmark >}} |
| youtube | {{< icon youtube >}} |
| youtube | {{< icon youtube >}} |
@@ -28,6 +28,7 @@ Blowfish はいくつもの [FontAwesome 6](https://fontawesome.com/icons) の
| check | {{< icon check >}} |
| circle-info | {{< icon circle-info >}} |
| code | {{< icon code>}} |
| codeberg | {{< icon codeberg >}} |
| codepen | {{< icon codepen >}} |
| comment | {{< icon comment >}} |
| dev | {{< icon dev >}} |
@@ -79,10 +80,12 @@ Blowfish はいくつもの [FontAwesome 6](https://fontawesome.com/icons) の
| orcid | {{< icon orcid >}} |
| patreon | {{< icon patreon >}} |
| paypal | {{< icon paypal >}} |
| peertube | {{< icon peertube >}} |
| pencil | {{< icon pencil >}} |
| pgpkey | {{< icon pgpkey >}} |
| phone | {{< icon phone >}} |
| pinterest | {{< icon pinterest >}} |
| pixelfed | {{< icon pixelfed >}} |
| poo | {{< icon poo >}} |
| reddit | {{< icon reddit >}} |
| researchgate | {{< icon researchgate >}} |
@@ -115,5 +118,4 @@ Blowfish はいくつもの [FontAwesome 6](https://fontawesome.com/icons) の
| x-twitter | {{< icon x-twitter >}} |
| xing | {{< icon xing >}} |
| xmark | {{< icon xmark >}} |
| youtube | {{< icon youtube >}} |
| codeberg | {{< icon codeberg >}} |
| youtube | {{< icon youtube >}} |
+4 -2
View File
@@ -28,6 +28,7 @@ The full list of built-in icons and their corresponding names can referenced bel
| check | {{< icon check >}} |
| circle-info | {{< icon circle-info >}} |
| code | {{< icon code>}} |
| codeberg | {{< icon codeberg >}} |
| codepen | {{< icon codepen >}} |
| comment | {{< icon comment >}} |
| dev | {{< icon dev >}} |
@@ -79,10 +80,12 @@ The full list of built-in icons and their corresponding names can referenced bel
| orcid | {{< icon orcid >}} |
| patreon | {{< icon patreon >}} |
| paypal | {{< icon paypal >}} |
| peertube | {{< icon peertube >}} |
| pencil | {{< icon pencil >}} |
| pgpkey | {{< icon pgpkey >}} |
| phone | {{< icon phone >}} |
| pinterest | {{< icon pinterest >}} |
| pixelfed | {{< icon pixelfed >}} |
| poo | {{< icon poo >}} |
| reddit | {{< icon reddit >}} |
| researchgate | {{< icon researchgate >}} |
@@ -115,5 +118,4 @@ The full list of built-in icons and their corresponding names can referenced bel
| x-twitter | {{< icon x-twitter >}} |
| xing | {{< icon xing >}} |
| xmark | {{< icon xmark >}} |
| youtube | {{< icon youtube >}} |
| codeberg | {{< icon codeberg >}} |
| youtube | {{< icon youtube >}} |
@@ -15,8 +15,8 @@ Blowfish 内置了许多 [FontAwesome 6](https://fontawesome.com/icons) 中的
下面是所有的内置图标及其名称。
| 图标名称 | 预览 |
|----------------------|-----------------------------------|
| 图标名称 | 预览 |
| -------------------- | --------------------------------- |
| amazon | {{< icon amazon >}} |
| apple | {{< icon apple >}} |
| bars | {{< icon bars >}} |
@@ -28,6 +28,7 @@ Blowfish 内置了许多 [FontAwesome 6](https://fontawesome.com/icons) 中的
| check | {{< icon check >}} |
| circle-info | {{< icon circle-info >}} |
| code | {{< icon code>}} |
| codeberg | {{< icon codeberg >}} |
| codepen | {{< icon codepen >}} |
| comment | {{< icon comment >}} |
| dev | {{< icon dev >}} |
@@ -58,6 +59,7 @@ Blowfish 内置了许多 [FontAwesome 6](https://fontawesome.com/icons) 中的
| heart | {{< icon heart >}} |
| image | {{< icon image >}} |
| instagram | {{< icon instagram >}} |
| itch-io | {{< icon itch-io >}} |
| keybase | {{< icon keybase >}} |
| kickstarter | {{< icon kickstarter >}} |
| ko-fi | {{< icon ko-fi >}} |
@@ -78,10 +80,12 @@ Blowfish 内置了许多 [FontAwesome 6](https://fontawesome.com/icons) 中的
| orcid | {{< icon orcid >}} |
| patreon | {{< icon patreon >}} |
| paypal | {{< icon paypal >}} |
| peertube | {{< icon peertube >}} |
| pencil | {{< icon pencil >}} |
| pgpkey | {{< icon pgpkey >}} |
| phone | {{< icon phone >}} |
| pinterest | {{< icon pinterest >}} |
| pixelfed | {{< icon pixelfed >}} |
| poo | {{< icon poo >}} |
| reddit | {{< icon reddit >}} |
| researchgate | {{< icon researchgate >}} |
@@ -94,6 +98,7 @@ Blowfish 内置了许多 [FontAwesome 6](https://fontawesome.com/icons) 中的
| slack | {{< icon slack >}} |
| snapchat | {{< icon snapchat >}} |
| soundcloud | {{< icon soundcloud >}} |
| spotify | {{< icon spotify >}} |
| stack-overflow | {{< icon stack-overflow >}} |
| star | {{< icon star >}} |
| steam | {{< icon steam >}} |
@@ -113,4 +118,4 @@ Blowfish 内置了许多 [FontAwesome 6](https://fontawesome.com/icons) 中的
| x-twitter | {{< icon x-twitter >}} |
| xing | {{< icon xing >}} |
| xmark | {{< icon xmark >}} |
| youtube | {{< icon youtube >}} |
| youtube | {{< icon youtube >}} |
@@ -17,9 +17,9 @@ Below is an example using the built-in `youtube` shortcode.
## Twitter
This example uses the `twitter_simple` shortcode to output a Tweet. It requires two named parameters `user` and `id`.
This example uses the `x` shortcode to output a Tweet. It requires two named parameters `user` and `id`.
{{< twitter_simple user="DesignReviewed" id="1085870671291310081" >}}
{{< x user="DesignReviewed" id="1085870671291310081" >}}
Alternatively, the `tweet` shortcode can be used to embed a fully marked up Twitter card.
@@ -17,9 +17,9 @@ Hugo には、リッチコンテンツのためのいくつかの[組み込み
## Twitter
この例はツイートを `twitter_simple` ショートコードを利用して出力しています。こちらは `user` と `id` の二つのパラメータを必須としています。
この例はツイートを `x` ショートコードを利用して出力しています。こちらは `user` と `id` の二つのパラメータを必須としています。
{{< twitter_simple user="DesignReviewed" id="1085870671291310081" >}}
{{< x user="DesignReviewed" id="1085870671291310081" >}}
代わりとして、 `tweet` ショートコードが完全にマークアップされた Twitter カードの埋め込みに利用できます、
@@ -17,9 +17,9 @@ Below is an example using the built-in `youtube` shortcode.
## Twitter
This example uses the `twitter_simple` shortcode to output a Tweet. It requires two named parameters `user` and `id`.
This example uses the `x` shortcode to output a Tweet. It requires two named parameters `user` and `id`.
{{< twitter_simple user="DesignReviewed" id="1085870671291310081" >}}
{{< x user="DesignReviewed" id="1085870671291310081" >}}
Alternatively, the `tweet` shortcode can be used to embed a fully marked up Twitter card.
@@ -17,9 +17,9 @@ Hugo 附带了几个用于丰富内容的[内置简码](https://gohugo.io/conten
## Twitter
此示例使用 `twitter_simple` 简码来显示推文。它需要两个参数 `user` 和 `id` 。
此示例使用 `x` 简码来显示推文。它需要两个参数 `user` 和 `id` 。
{{< twitter_simple user="DesignReviewed" id="1085870671291310081" >}}
{{< x user="DesignReviewed" id="1085870671291310081" >}}
或者,`tweet` 简码可用于生成嵌入式的 Twitter 卡片。
Binary file not shown.

Before

Width:  |  Height:  |  Size: 21 KiB

@@ -1,13 +0,0 @@
---
title: "lelouvincx.github.io"
tags: [Personal site]
externalUrl: "https://lelouvincx.github.io/"
weight: 311
showDate: false
showAuthor: false
showReadingTime: false
showEdit: false
showLikes: false
showViews: false
layoutBackgroundHeaderSpace: false
---
Binary file not shown.

Before

Width:  |  Height:  |  Size: 23 KiB

After

Width:  |  Height:  |  Size: 9.8 KiB

@@ -2,7 +2,7 @@
title: "nveshaan"
tags: [Sito personale]
externalUrl: "https://nveshaan.github.io/"
weight: 771
weight: 731
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "nveshaan"
tags: [パーソナルサイト]
externalUrl: "https://nveshaan.github.io/"
weight: 771
weight: 731
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "nveshaan"
tags: [Personal Site]
externalUrl: "https://nveshaan.github.io/"
weight: 771
weight: 731
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "nveshaan"
tags: [个人网站]
externalUrl: "https://nveshaan.github.io/"
weight: 771
weight: 731
showDate: false
showAuthor: false
showReadingTime: false
Binary file not shown.

Before

Width:  |  Height:  |  Size: 158 KiB

After

Width:  |  Height:  |  Size: 58 KiB

@@ -2,7 +2,7 @@
title: "DXPetti.com"
tags: [Sito personale, Blog]
externalUrl: "https://www.dxpetti.com/"
weight: 581
weight: 561
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "DXPetti.com"
tags: [パーソナルサイト, ブログ]
externalUrl: "https://www.dxpetti.com/"
weight: 581
weight: 561
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "DXPetti.com"
tags: [Personal site,Blog]
externalUrl: "https://www.dxpetti.com/"
weight: 581
weight: 561
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "DXPetti.com"
tags: [个人网站, 博客]
externalUrl: "https://www.dxpetti.com/"
weight: 581
weight: 561
showDate: false
showAuthor: false
showReadingTime: false
Binary file not shown.

Before

Width:  |  Height:  |  Size: 108 KiB

After

Width:  |  Height:  |  Size: 40 KiB

@@ -2,7 +2,7 @@
title: "lazarusoverlook.com"
tags: [Sito personale, Blog]
externalUrl: "https://lazarusoverlook.com"
weight: 851
weight: 801
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "lazarusoverlook.com"
tags: [パーソナルサイト, ブログ]
externalUrl: "https://lazarusoverlook.com"
weight: 851
weight: 801
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "lazarusoverlook.com"
tags: [Personal site,Blog]
externalUrl: "https://lazarusoverlook.com"
weight: 851
weight: 801
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "lazarusoverlook.com"
tags: [个人网站, 博客]
externalUrl: "https://lazarusoverlook.com"
weight: 851
weight: 801
showDate: false
showAuthor: false
showReadingTime: false
Binary file not shown.

Before

Width:  |  Height:  |  Size: 36 KiB

After

Width:  |  Height:  |  Size: 13 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 92 KiB

After

Width:  |  Height:  |  Size: 40 KiB

@@ -2,7 +2,7 @@
title: "Beauty Formulation"
tags: [Sito aziendale]
externalUrl: "https://www.beautyformulation.com/"
weight: 731
weight: 701
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "Beauty Formulation"
tags: [会社のサイト]
externalUrl: "https://www.beautyformulation.com/"
weight: 731
weight: 701
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "Beauty Formulation"
tags: [Company site]
externalUrl: "https://www.beautyformulation.com/"
weight: 731
weight: 701
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "Beauty Formulation"
tags: [公司网站]
externalUrl: "https://www.beautyformulation.com/"
weight: 731
weight: 701
showDate: false
showAuthor: false
showReadingTime: false
Binary file not shown.

Before

Width:  |  Height:  |  Size: 145 KiB

After

Width:  |  Height:  |  Size: 55 KiB

@@ -2,7 +2,7 @@
title: "vkmki001.github.io"
tags: [Sito personale]
externalUrl: "https://vkmki001.github.io/"
weight: 391
weight: 371
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "vkmki001.github.io"
tags: [パーソナルサイト]
externalUrl: "https://vkmki001.github.io/"
weight: 391
weight: 371
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "vkmki001.github.io"
tags: [Personal site]
externalUrl: "https://vkmki001.github.io/"
weight: 391
weight: 371
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "vkmki001.github.io"
tags: [个人网站]
externalUrl: "https://vkmki001.github.io/"
weight: 391
weight: 371
showDate: false
showAuthor: false
showReadingTime: false
Binary file not shown.

Before

Width:  |  Height:  |  Size: 44 KiB

After

Width:  |  Height:  |  Size: 18 KiB

@@ -2,7 +2,7 @@
title: "Chill-Try"
tags: [Blog tecnologico, Sito personale, Blog]
externalUrl: "https://ctry.tech/"
weight: 1011
weight: 951
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "Chill-Try"
tags: [テクノロジーブログ, パーソナルサイト, ブログ]
externalUrl: "https://ctry.tech/"
weight: 1011
weight: 951
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "Chill-Try"
tags: [Technology Blog,Personal site,Blog]
externalUrl: "https://ctry.tech/"
weight: 1011
weight: 951
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "Chill-Try"
tags: [技术博客, 个人网站, 博客]
externalUrl: "https://ctry.tech/"
weight: 1011
weight: 951
showDate: false
showAuthor: false
showReadingTime: false
Binary file not shown.

Before

Width:  |  Height:  |  Size: 91 KiB

After

Width:  |  Height:  |  Size: 41 KiB

@@ -2,7 +2,7 @@
title: "merox.dev"
tags: [Sito personale, Blog, Documentazione, Cv]
externalUrl: "https://merox.dev"
weight: 901
weight: 851
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "merox.dev"
tags: [パーソナルサイト, ブログ, ドキュメント, cv]
externalUrl: "https://merox.dev"
weight: 901
weight: 851
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "merox.dev"
tags: [Personal site,Blog,Documentation,CV]
externalUrl: "https://merox.dev"
weight: 901
weight: 851
showDate: false
showAuthor: false
showReadingTime: false
@@ -2,7 +2,7 @@
title: "merox.dev"
tags: [个人网站, 博客, 文档, 简历]
externalUrl: "https://merox.dev"
weight: 901
weight: 851
showDate: false
showAuthor: false
showReadingTime: false
Binary file not shown.

Before

Width:  |  Height:  |  Size: 112 KiB

After

Width:  |  Height:  |  Size: 42 KiB

@@ -2,7 +2,7 @@
title: "hyperbowl3d.com"
tags: [Sito di gioco]
externalUrl: "https://hyperbowl3d.com/"
weight: 261
weight: 251
showDate: false
showAuthor: false
showReadingTime: false
Loaded 100 of 547 files, more files were not shown because too many files have changed in this diff. Show more