mirror of
https://github.com/nunocoracao/blowfish.git
synced 2026-10-10 22:09:31 +00:00
* Add reading progress bar for articles * Let page-level showReadingProgress override the site setting Hugo's default treats false as empty, so a page-level false could not disable the bar once it was enabled site-wide. Resolve the value by initialising from the site setting and overriding it only when the front matter parameter is actually present, and use the same resolved boolean in single.html and head.html. * Guard the reading progress handler and mark the listener passive The script loads in the head without defer, so the scroll listener is registered before the progress bar element exists. A scroll event fired during parsing, such as when the browser restores the scroll position on reload, would throw. Bail out when the element is missing, matching the guard in background-blur.js, and mark the scroll listener passive as toc.html already does.
202 lines
6.6 KiB
TOML
202 lines
6.6 KiB
TOML
# -- 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://blowfish.page/docs/configuration/#theme-parameters
|
||
|
||
colorScheme = "blowfish"
|
||
defaultAppearance = "light" # valid options: light or dark
|
||
autoSwitchAppearance = true
|
||
|
||
enableA11y = false
|
||
enableSearch = true
|
||
enableCodeCopy = false
|
||
enableStructuredBreadcrumbs = false
|
||
# enableStyledScrollbar = true # disable to use native scrollbar style (defaults to true)
|
||
|
||
replyByEmail = false
|
||
|
||
# mainSections = ["section1", "section2"]
|
||
# robots = ""
|
||
|
||
disableImageOptimization = false
|
||
disableImageOptimizationMD = false
|
||
disableTextInHeader = false
|
||
# backgroundImageWidth = 1200
|
||
|
||
# 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)
|
||
hotlinkFeatureImage = false
|
||
# Thumbnail aspect ratio as a number (e.g., "1.5", "1.0", "1.777")
|
||
# thumbnailAspectRatio = "1.5"
|
||
# imagePosition = "50% 50%"
|
||
|
||
# highlightCurrentMenuArea = true
|
||
# smartTOC = true
|
||
# smartTOCHideUnfocusedChildren = true
|
||
|
||
fingerprintAlgorithm = "sha512" # Valid values are "sha512" (default), "sha384", "sha256"
|
||
|
||
giteaDefaultServer = "https://git.fsfe.org"
|
||
forgejoDefaultServer = "https://v11.next.forgejo.org"
|
||
|
||
[languageRedirect]
|
||
enabled = false # Enable client-side language redirects for multilingual sites.
|
||
storageKey = "blowfish_preferred_language" # localStorage key for manual language selections.
|
||
# fallbackLanguage = "" # Language to use when no browser language matches. Defaults to Hugo's default content language.
|
||
browserRedirectHomeOnly = true # Restrict browser-language redirects to home pages.
|
||
storedLanguageRedirect = true # Redirect to the stored language when a matching translation exists.
|
||
|
||
[seo]
|
||
# metaDescriptionOrder = ["summary", "description", "site"] # Controls the fallback order for the HTML meta description. Valid values are "summary", "description", and "site".
|
||
|
||
[header]
|
||
layout = "basic" # valid options: basic, fixed, fixed-fill, fixed-gradient, fixed-fill-blur
|
||
|
||
[footer]
|
||
showMenu = true
|
||
showCopyright = true
|
||
showThemeAttribution = true
|
||
showAppearanceSwitcher = true
|
||
showScrollToTop = true
|
||
|
||
[homepage]
|
||
layout = "profile" # valid options: page, profile, hero, card, background, custom
|
||
#homepageImage = "IMAGE.jpg" # 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
|
||
disableHeroImageFilter = false # only used when layout equals hero
|
||
|
||
[article]
|
||
showDate = true
|
||
showViews = false
|
||
showLikes = false
|
||
showDateOnlyInArticle = false
|
||
showDateUpdated = false
|
||
showAuthor = true
|
||
# showAuthorBottom = false
|
||
showHero = false
|
||
# heroStyle = "basic" # valid options: basic, big, background, thumbAndBackground
|
||
layoutBackgroundBlur = true # only used when heroStyle equals background or thumbAndBackground
|
||
layoutBackgroundHeaderSpace = true # only used when heroStyle equals background
|
||
showBreadcrumbs = false
|
||
showDraftLabel = true
|
||
showEdit = false
|
||
# editURL = "https://github.com/username/repo/"
|
||
editAppendPath = true
|
||
seriesOpened = false
|
||
showHeadingAnchors = true
|
||
showPagination = true
|
||
invertPagination = false
|
||
showReadingTime = true
|
||
showReadingProgress = false
|
||
showTableOfContents = false
|
||
# showRelatedContent = false
|
||
# relatedContentLimit = 3
|
||
showTaxonomies = false # Enable the display of taxonomies for the related article.
|
||
showCategories = true # These will show if showTaxonomies is true.
|
||
showTags = true # These will show if showTaxonomies is true.
|
||
showCategoriesInSecondaryColor = false # This will change the color of category badges, so the user can better distinguish between the two. Only if showTaxonomies is true.
|
||
showAuthorsBadges = false
|
||
showWordCount = true
|
||
# sharingLinks = [ "linkedin", "twitter", "bluesky", "mastodon", "reddit", "pinterest", "facebook", "email", "whatsapp", "telegram", "line"]
|
||
showZenMode = false
|
||
# externalLinkForceNewTab = false # disable to allow external links in the same tab (defaults to true)
|
||
|
||
[list]
|
||
showHero = false
|
||
# heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
|
||
layoutBackgroundBlur = true # only used when heroStyle equals background or thumbAndBackground
|
||
layoutBackgroundHeaderSpace = true # only used when heroStyle equals background
|
||
showBreadcrumbs = false
|
||
showSummary = false
|
||
showViews = false
|
||
showLikes = false
|
||
showTableOfContents = false
|
||
showCards = false
|
||
orderByWeight = false
|
||
groupByYear = true
|
||
cardView = false
|
||
cardViewScreenWidth = false
|
||
constrainItemsWidth = false
|
||
|
||
[sitemap]
|
||
excludedKinds = ["taxonomy", "term"]
|
||
|
||
[taxonomy]
|
||
showTermCount = true
|
||
showHero = false
|
||
# heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
|
||
layoutBackgroundBlur = true # only used when heroStyle equals background or thumbAndBackground
|
||
layoutBackgroundHeaderSpace = true # only used when heroStyle equals background
|
||
showBreadcrumbs = false
|
||
showViews = false
|
||
showLikes = false
|
||
showTableOfContents = false
|
||
cardView = false
|
||
|
||
[term]
|
||
showHero = false
|
||
# heroStyle = "background" # valid options: basic, big, background, thumbAndBackground
|
||
layoutBackgroundBlur = true # only used when heroStyle equals background or thumbAndBackground
|
||
layoutBackgroundHeaderSpace = true # only used when heroStyle equals background
|
||
showBreadcrumbs = false
|
||
showViews = false
|
||
showLikes = false
|
||
showTableOfContents = true
|
||
groupByYear = false
|
||
cardView = false
|
||
cardViewScreenWidth = false
|
||
|
||
[firebase]
|
||
# apiKey = "XXXXXX"
|
||
# authDomain = "XXXXXX"
|
||
# projectId = "XXXXXX"
|
||
# storageBucket = "XXXXXX"
|
||
# messagingSenderId = "XXXXXX"
|
||
# appId = "XXXXXX"
|
||
# measurementId = "XXXXXX"
|
||
|
||
[fathomAnalytics]
|
||
# site = "ABC12345"
|
||
# domain = "llama.yoursite.com"
|
||
|
||
[umamiAnalytics]
|
||
# websiteid = "ABC12345"
|
||
# domain = "llama.yoursite.com"
|
||
# dataDomains = "yoursite.com,yoursite2.com"
|
||
# scriptName = ""
|
||
# enableTrackEvent = true
|
||
|
||
[selineAnalytics]
|
||
# token = "XXXXXX"
|
||
# enableTrackEvent = true
|
||
|
||
[buymeacoffee]
|
||
# identifier = ""
|
||
# globalWidget = true
|
||
# globalWidgetMessage = "Hello"
|
||
# globalWidgetColor = "#FFDD00"
|
||
# globalWidgetPosition = "right"
|
||
|
||
[verification]
|
||
# google = ""
|
||
# bing = ""
|
||
# pinterest = ""
|
||
# yandex = ""
|
||
# fediverse = ""
|
||
|
||
[rssnext]
|
||
# feedId = ""
|
||
# userId = ""
|
||
|
||
[advertisement]
|
||
# adsense = ""
|