migrate to decoupled Blowfish layout, fix TOC scrollspy, and update docs

- Theme Decoupling & Cleanup:
      - Fully decoupled and vendored the Blowfish theme directly into root directories (layouts/,
  assets/, static/, data/, i18n/).
      - De-registered and cleaned up legacy Git submodules (themes/blowfish, themes/hugo-admonitions)
  from the Git index to protect the build from upstream breakages.
      - Configured .gitignore to ignore development preview symlinks (content, static,
  config/_default/menus.en.toml), build folders (public/, resources/), and locks.

    - TOC & Layout Fixes:
      - Replaced the custom layouts/_default/single.html template with the Blowfish default to restore
  native container widths and the side-by-side flex layout.
      - Restored TOC to float on the right sidebar on desktop viewports and render inline on mobile
  viewports.
      - Fixed a parameter resolution bug in layouts/partials/toc.html by checking both .Site.Params.
  smartTOC and .Site.Params.article.smartTOC (where it is defined in params.toml).
      - Upgraded the TOC scrollspy JavaScript to target all '#TableOfContents' containers on the page,
  enabling highlight tracking on both desktop and mobile layouts.

    - Documentation Updates (README.md):
      - Restored YAML front matter metadata block at the top.
      - Added detailed notes on the CI/CD build process and Gitea runner deployment targets
  (/srv/www/docs-public and /srv/www/docs-private).
      - Added a categorized and sorted "Shortcodes Quick Reference" table at the top of the shortcodes
  section (ordered by Custom, Hugo Default, and Blowfish).
      - Documented custom shortcodes (Include, Screenshot, Raw HTML) and missing Hugo default
  shortcodes (Highlight, Instagram, Param, Ref, Relref, Twitter, Vimeo, Youtube).
      - Restructured headings to ensure all sub-shortcodes are H3, removed block break tags (<br/>),
  and appended horizontal separators (---) after H2 sections.
This commit is contained in:
2026-06-06 19:26:33 +00:00
Unverified
parent d329fe9dfb
commit 835b118d1a
443 changed files with 33405 additions and 1220 deletions

View File

@@ -0,0 +1,113 @@
# -- Theme Options --
# These options control how the theme functions and allow you to
# customise the display of your website.
#
# Refer to the theme docs for more details about each of these parameters.
# https://nunocoracao.github.io/blowfish/docs/configuration/#theme-parameters
colorScheme = "github"
defaultAppearance = "dark" # valid options: light or dark
autoSwitchAppearance = true
enableSearch = true
enableCodeCopy = true
customCSS = true
# mainSections = ["section1", "section2"]
# robots = ""
[header]
layout = "fixed" # valid options: basic, fixed
[footer]
# showMenu = true
showCopyright = true
showThemeAttribution = true
showAppearanceSwitcher = true
showScrollToTop = true
[homepage]
layout = "background" # valid options: page, profile, hero, card, background, custom
homepageImage = "me/me_stream_doom.PNG" # used in: hero, and card
showRecent = false
showRecentItems = 5
showMoreLink = false
showMoreLinkDest = "/posts"
cardView = false
cardViewScreenWidth = false
layoutBackgroundBlur = false # only used when layout equals background
[search]
enable = true
type = "fuse"
showPercent = true
showWidth = true
[article] # https://blowfish.page/docs/configuration/
showDate = true
showViews = false
showLikes = false
showDateUpdated = true
showHero = true
heroStyle = "basic" # valid options: basic, big, background
showBreadcrumbs = true
showDraftLabel = true
seriesOpened = true
showHeadingAnchors = true
showPagination = true
invertPagination = false
showReadingTime = true
showTableOfContents = true
showTaxonomies = true
showWordCount = true
showSummary = true
sharingLinks = [ "linkedin", "twitter", "whatsapp", "pinterest", "reddit", "facebook", "email"]
showAuthor = true
showAuthorsBadges = true # This helps style the author profile
showEdit = true
showEditURL = true
editAppendPath = true
showZenMode = false
smartTOC = true
[list]
showBreadcrumbs = true
showSummary = true
showTableOfContents = true
showCards = true
groupByYear = true
cardView = true
cardViewScreenWidth = false
columnCount = 3
showReadMore = true
[sitemap]
excludedKinds = []
[taxonomy]
showTermCount = true
[firebase]
# apiKey = "XXXXXX"
# authDomain = "XXXXXX"
# projectId = "XXXXXX"
# storageBucket = "XXXXXX"
# messagingSenderId = "XXXXXX"
# appId = "XXXXXX"
# measurementId = "XXXXXX"
[fathomAnalytics]
# site = "ABC12345"
# domain = "llama.yoursite.com"
[verification]
# google = ""
# bing = ""
# pinterest = ""
# yandex = ""
[app]
# Some versions of Blowfish look for 'mainIcon' or 'themeIcon'
# Try both if one fails.
mainIcon = "icons/icon.svg"
themeIcon = "icons/icon.svg"