From 07b3a14103db1692ab5c5806d71681c707e8d752 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sun, 12 Nov 2023 16:37:52 +0000 Subject: [PATCH 01/10] Theme Files Update --- README.md | 115 ++++++++++++++--------------------- layouts/_default/single.html | 2 +- layouts/posts/single.html | 4 +- 3 files changed, 47 insertions(+), 74 deletions(-) diff --git a/README.md b/README.md index 40512f1..8d58ea7 100644 --- a/README.md +++ b/README.md @@ -1,16 +1,26 @@ -# Hugo theme Hermit - V2 +# hermit-V2 -: The Minimal Hugo Theme -Initially, when I started my Blog journey, I was enthralled by this very theme and I am using it since. However, original developer has ceased maintaining the theme and it is riddled with many bugs. Hence, I have taken upon myself to maintain this theme. +> OG : [Hermit Theme](https://github.com/Track3/hermit) by [Track3](https://github.com/Track3) -I fully intend to keep the essence of the theme as-it-is and only add minor updates and squash bugs which may arise. +Hermit-V2 is a minimal and fast theme for Hugo, built for bloggers who want a simple and focused website. This is a maintained fork of [Hermit](https://github.com/Track3/hermit), which iterates over the original work to have a almost-stable experience with ug fixes and new features. -> Let's make __Hermit__ great again +![](https://github.com/1bl4z3r/hermit-V2/blob/main/images/screenshot.png) -DEMO : [Hermit-V2](https://1bl4z3r.github.io/hermit-V2/) +### History -GoHugo Theme Page : [https://themes.gohugo.io/themes/hermit-v2/](https://themes.gohugo.io/themes/hermit-v2/) +When I had switched from jekyll to Hugo, I was in a need of a theme. I was enthralled by this very theme and I am using it since in my own personal blog. However, it looks like [OP]((https://github.com/Track3)) has stopped maintaining this theme and as a result, it is riddled with bugs and code breaks. Hence, I have taken upon myself to maintain this theme. Intention of this project is to keep the essence of the theme as-it-is and only add minor updates and squash bugs which may arise. -### Installation +> GoHugo Theme Page : [https://themes.gohugo.io/themes/hermit-v2/](https://themes.gohugo.io/themes/hermit-v2/) + +## Demo + +Demo page [https://1bl4z3r.github.io/hermit-V2](https://1bl4z3r.github.io/hermit-V2), which is both demo as well as documentation for the theme, is located in [Staging Branch](https://github.com/1bl4z3r/hermit-V2/tree/staging) + +## Configuration Guide + +Configuration Guide is present in [Explaining Configs](https://1bl4z3r.github.io/hermit-V2/en/posts/explaining-configs/) + +## Installation Run this command from the root of your Hugo directory: @@ -24,6 +34,24 @@ Or, if your Hugo site is already in git, you can include this repository as a [g git submodule add https://github.com/1bl4z3r/hermit-V2 themes/hermit-v2 ``` +## GOOD-TO-KNOW LIST + +### Features Inherited from Original Theme + +* A single-column layout and carefully crafted typography offers a great reading experience. +* Navigations and functions are placed in the bottom bar which will hide when you scroll down. +* Featured image is supported. It will be displayed as a dimmed background of the page. +* Displays all of your posts on a single page, with one section per year, simple and compact. +* Extremely lightweight and load fast. No third party framework, no unnecessary code. +* All code fields feature syntax highlighting and a code-copy function +* Responsive & Retina Ready. Scales gracefully from a big screen all the way down to the smallest mobile phone. Assets in vector format ensures that it looks sharp on high-resolution screens. + +![](https://github.com/1bl4z3r/hermit-V2/blob/main/images/hermit.png) + +### Configuration + +Site Configuration is done through `hugo.toml` or `hugo.yaml` file in root directory of your Hugo Site. To aid you, there is a [hugo.toml.example](https://github.com/1bl4z3r/hermit-V2/blob/main/hugo.toml.example) file located in theme folder. See this configuration in action [here](https://github.com/1bl4z3r/hermit-V2/blob/staging/hugo.toml). See what each configuration does [here](https://1bl4z3r.github.io/hermit-V2/en/posts/explaining-configs/#configuation-in-hugotoml). + ### Custom CSS and JS I have found that there are some requirement where custom CSS and JS should be supplied to a page to make it work. This custom files are not required for whole of the site, but is restricted to a page or few particular pages. E.g. If you make contact form. @@ -37,59 +65,7 @@ custom_js = ["js/custom-about.js"] The files itself will reside in `static/css` for CSS files and `static/js` for JS files. Refer to [Staging Branch](https://github.com/1bl4z3r/hermit-V2/tree/staging) to have a feel on how [this](https://github.com/1bl4z3r/hermit-V2/blob/staging/content/about-hugo.md) is implemented. -### Demo - -Demo page [https://1bl4z3r.github.io/hermit-V2/](https://1bl4z3r.github.io/hermit-V2/), which is both demo as well as documentation for the theme, is located in [Staging Branch](https://github.com/1bl4z3r/hermit-V2/tree/staging) - -### Configuration Guide - -Configuration Guide is present in [Explaining Configs](https://1bl4z3r.github.io/hermit-V2/en/posts/explaining-configs/) - ---- - -# Original README - -Hermit is a minimal and fast theme for Hugo. It's built for bloggers who want a simple and focused website. - -![](https://github.com/1bl4z3r/hermit-V2/blob/main/images/screenshot.png) - -## Features - -* A single-column layout and carefully crafted typography offers a great reading experience. -* Navigations and functions are placed in the bottom bar which will hide when you scroll down. -* Featured image is supported. It will be displayed as a dimmed background of the page. -* Displays all of your posts on a single page, with one section per year, simple and compact. -* Extremely lightweight and load fast. No third party framework, no unnecessary code. -* All code fields feature syntax highlighting and a code-copy function -* Responsive & Retina Ready. Scales gracefully from a big screen all the way down to the smallest mobile phone. Assets in vector format ensures that it looks sharp on high-resolution screens. - -![](https://github.com/1bl4z3r/hermit-V2/blob/main/images/hermit.png) - -## Getting started - -### Installation - -Run this command from the root of your Hugo directory: - -```bash -$ git clone https://github.com/Track3/hermit.git themes/hermit -``` - -Or, if your Hugo site is already in git, you can include this repository as a [git submodule](https://git-scm.com/book/en/v2/Git-Tools-Submodules). This makes it easier to update this theme. For this you need to run: - -```bash -$ git submodule add https://github.com/Track3/hermit.git themes/hermit -``` - -Alternatively, if you are not familiar with git, you can download the theme as a `.zip` file, unzip the theme contents, and then move the unzipped source into your `themes` directory. - -For more information, read the official [documentation](https://gohugo.io/themes/installing-and-using-themes/) of Hugo. - -### Configuration - -The example config file can be found in the theme's `exampleSite` folder. You can just copy the `config.toml` to the root directory of your Hugo site. There are instructions in the example config file, feel free to change strings as you like to customize your website. - -#### Favicon +### Favicon Use [RealFaviconGenerator](https://realfavicongenerator.net/) to generate these files, put them into your site's `static` folder: @@ -103,7 +79,7 @@ Use [RealFaviconGenerator](https://realfavicongenerator.net/) to generate these * safari-pinned-tab.svg * site.webmanifest -#### Social icons +### Social icons The following icons are supported, please make sure the `name` filed is exactly one of these: @@ -123,26 +99,24 @@ If that's not enough, you can see [Overriding templates](#overriding-templates) * Keep your regular pages in the `content` folder. To create a new page, run `hugo new page-title.md` * Keep your blog posts in the `content/posts` folder. To create a new post, run `hugo new posts/post-title.md` -### More customizations - -#### Overriding templates +### Overriding templates In Hugo, layouts can live in either the project’s (root) or the themes’ layout folders, any template inside the root layout folder will override theme's layout that relative to it, for example: `layouts/_default/baseof.html` will override `themes/hermit/layouts/_default/baseof.html`. So, you can easily customize the theme without edit it directly, which makes updating the theme easier. Here's some common customizations: -##### Customize social icons +### Customize social icons You can modify or add any svg icons in site's `layouts/partials/svg.html`. -##### Customize comment system +### Customize comment system We only have built-in support for Disqus at the moment, if that doesn't fit your needs, you can just add html to site's `layouts/partials/comments.html`. -##### Add custom analytics +### Add custom analytics If you prefer to use different analytics system other than google analytics, then add them inside `layouts/partials/analytics.html`. -#### Customize CSS +### Customize CSS If you'd like to customize theme color or fonts, you can simply override `assets/scss/_predefined.scss`, by simply copy it to site's root (keep the same relative path) then edit those variables. But keep in mind, you'll need **Hugo extended version** which has the ability to rebuild SCSS. You don't have to use extended version in production but in this case it's necessary to make sure the `resources` folder is committed and "up to date" (by running `hugo` or `hugo server` locally using the extended version). But anyway, always use the extended version if you can. -#### Code injection +### Code injection You can inject any html code to every page's document head or right above the closing body tag. This makes it easier to add any html meta data, custom css/js, dns-prefetch etc. To do this you simply need to create a file at site's `layouts/partials/extra-head.html` or `layouts/partials/extra-foot.html`, code inside will be injected to every page. @@ -152,5 +126,4 @@ You can inject any html code to every page's document head or right above the cl * [animate.css](https://daneden.github.io/animate.css/) - [MIT](https://github.com/daneden/animate.css/blob/master/LICENSE) * [feather](https://feathericons.com/) - [MIT](https://github.com/feathericons/feather/blob/master/LICENSE) * [code-copy.js](assets/js/code-copy.js) - [Tom Spencer](https://www.fiznool.com/blog/2018/09/14/adding-click-to-copy-buttons-to-a-hugo-powered-blog/) - -Thanks! +* [Everyone, who has submitted a PR](https://github.com/1bl4z3r/hermit-V2/pulls?q=is%3Apr+is%3Aclosed) \ No newline at end of file diff --git a/layouts/_default/single.html b/layouts/_default/single.html index 8511109..9ba7177 100644 --- a/layouts/_default/single.html +++ b/layouts/_default/single.html @@ -19,7 +19,7 @@

{{ .Title }}

- {{ .Content | replaceRE "()" `${1}${3}` | safeHTML }} + {{ .Content | replaceRE "()" `${1}${3}` | safeHTML }}
{{- if .Params.comments }}
diff --git a/layouts/posts/single.html b/layouts/posts/single.html index 499832a..b2bef18 100644 --- a/layouts/posts/single.html +++ b/layouts/posts/single.html @@ -24,7 +24,7 @@

{{ .Title }}

- {{ .Content | replaceRE "()" `${1}${3}` | safeHTML }} + {{ .Content | replaceRE "()" `${1}${3}` | safeHTML }}
{{- if .Site.Params.relatedPosts }} {{- partial "related-posts.html" . -}} @@ -41,7 +41,7 @@
- {{ .Content | replaceRE "()" `${1}${3}` | safeHTML }} + {{ .Content | replaceRE "()" `${1}${3}` | safeHTML }}
{{- if .Site.Params.relatedPosts }} {{- partial "related-posts.html" . -}} From 432ac8a255c791927ad899fd18f85ba9e9d751b3 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Sun, 12 Nov 2023 16:54:02 +0000 Subject: [PATCH 02/10] Theme Files Update --- README.md | 2 +- theme.toml | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 8d58ea7..ce28fc6 100644 --- a/README.md +++ b/README.md @@ -2,7 +2,7 @@ > OG : [Hermit Theme](https://github.com/Track3/hermit) by [Track3](https://github.com/Track3) -Hermit-V2 is a minimal and fast theme for Hugo, built for bloggers who want a simple and focused website. This is a maintained fork of [Hermit](https://github.com/Track3/hermit), which iterates over the original work to have a almost-stable experience with ug fixes and new features. +Hermit-V2 is a minimal and fast theme for Hugo, built for bloggers who want a simple and focused website. This is a maintained fork of [Hermit](https://github.com/Track3/hermit), which iterates over the original work to have a almost-stable experience with bug fixes and new features. ![](https://github.com/1bl4z3r/hermit-V2/blob/main/images/screenshot.png) diff --git a/theme.toml b/theme.toml index 7f98077..b68457e 100644 --- a/theme.toml +++ b/theme.toml @@ -4,7 +4,7 @@ licenselink = "https://github.com/1bl4z3r/hermit-V2/blob/main/LICENSE" description = "Continuing Hermit's legacy to be minimal and fast theme" homepage = "https://github.com/1bl4z3r/hermit-V2" demosite = "https://1bl4z3r.github.io/hermit-V2/" -tags = ["blog", "minimal", "dark", "responsive", "fast"] +tags = ["blog", "minimal", "dark", "responsive", "landing", "dark mode"] features = [ "single column", "featured image", From ed29f8f1b7c005a83aaef6d10c6d46d2d6096b1b Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 13 Nov 2023 15:12:43 +0000 Subject: [PATCH 03/10] Theme Files Update --- hugo.toml.example | 1 + layouts/partials/single-footer.html | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/hugo.toml.example b/hugo.toml.example index ee2742e..cfe3693 100644 --- a/hugo.toml.example +++ b/hugo.toml.example @@ -7,6 +7,7 @@ baseURL = "CHANGE BASE URL" defaultContentLanguage = "en" defaultContentLanguageInSubdir = true +#theme = "hermit-v2" #[languages] # [languages.en] diff --git a/layouts/partials/single-footer.html b/layouts/partials/single-footer.html index 0330073..566f068 100644 --- a/layouts/partials/single-footer.html +++ b/layouts/partials/single-footer.html @@ -1,5 +1,5 @@

- © {{ now.Format "2006" }} {{ .Site.Params.author.name }} ·{{ .Site.Params.footerCopyright | safeHTML }} + © {{ now.Format "2006" }} {{ .Site.Params.author.name }} · {{ .Site.Params.footerCopyright | safeHTML }} {{/*{{- with (not (in (.Site.Language.Get "disableKinds") "RSS")) }}*/}} · {{ partial "svg.html" (dict "context" . "name" "rss") }} {{/*{{ end }}*/}} From 60f61c9a6879419d4a338e382441a0f69d2c772e Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 13 Nov 2023 15:51:06 +0000 Subject: [PATCH 04/10] Theme Files Update --- layouts/_default/baseof.html | 15 +-------------- layouts/partials/site-meta.html | 20 ++++++++++++++++++++ 2 files changed, 21 insertions(+), 14 deletions(-) create mode 100644 layouts/partials/site-meta.html diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index 108853f..8cb889e 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -2,21 +2,8 @@ {{- partial "analytics.html" . -}} - - - - - - -{{ $author := (.Params.author | default .Site.Params.author.name) -}} - -{{ with .Site.Params.themeColor -}} - - -{{- end -}} -{{- with .Params.description -}}{{- end -}} +{{- partial "site-meta.html" -}} {{- partial "structured-data.html" . -}} -{{- partial "favicons.html" -}} {{.Title}} {{ range .AlternativeOutputFormats -}} {{ printf `` .Rel .MediaType.Type .Permalink $.Title | safeHTML }} diff --git a/layouts/partials/site-meta.html b/layouts/partials/site-meta.html new file mode 100644 index 0000000..aa72c52 --- /dev/null +++ b/layouts/partials/site-meta.html @@ -0,0 +1,20 @@ + + + + + + + + + + + + +{{ $author := (.Params.author | default .Site.Params.author.name) -}} + +{{ with .Site.Params.themeColor -}} + + + +{{- end -}} +{{- with .Params.description -}}{{- end -}} \ No newline at end of file From ee890b9f50fd72af56cdc145f5a45de53b11e46b Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Mon, 13 Nov 2023 16:00:26 +0000 Subject: [PATCH 05/10] Theme Files Update --- layouts/_default/baseof.html | 8 ++++++++ layouts/partials/site-meta.html | 10 +--------- 2 files changed, 9 insertions(+), 9 deletions(-) diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index 8cb889e..31ecb9a 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -3,6 +3,14 @@ {{- partial "analytics.html" . -}} {{- partial "site-meta.html" -}} +{{ $author := (.Params.author | default .Site.Params.author.name) -}} + +{{ with .Site.Params.themeColor -}} + + + +{{- end -}} +{{- with .Page.Params.description | default .Site.Params.description -}}{{- end -}} {{- partial "structured-data.html" . -}} {{.Title}} {{ range .AlternativeOutputFormats -}} diff --git a/layouts/partials/site-meta.html b/layouts/partials/site-meta.html index aa72c52..f5af108 100644 --- a/layouts/partials/site-meta.html +++ b/layouts/partials/site-meta.html @@ -9,12 +9,4 @@ - -{{ $author := (.Params.author | default .Site.Params.author.name) -}} - -{{ with .Site.Params.themeColor -}} - - - -{{- end -}} -{{- with .Params.description -}}{{- end -}} \ No newline at end of file + \ No newline at end of file From c6cbddfcd8ea9a4c4df4d98cdcc802fd4b3a5dd2 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 14 Nov 2023 07:08:58 +0000 Subject: [PATCH 06/10] Theme Files Update --- assets/scss/style.scss | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/assets/scss/style.scss b/assets/scss/style.scss index 422d553..80686cc 100644 --- a/assets/scss/style.scss +++ b/assets/scss/style.scss @@ -920,7 +920,7 @@ a.footnote-ref { white-space: nowrap; /* Keeps the content on a single line */ margin: 0 auto 1.5em auto; /* Gives that scrolling effect as the typing happens */ // letter-spacing: .100em; /* Adjust as needed */ - animation: typing 5s steps({{ strings.RuneCount .Site.Params.homeSubtitle }}, end),blink-caret .75s step-end infinite; + animation: typing 5s steps({{ strings.RuneCount .Site.Params.homeSubtitle }}, end),blink-caret .75s linear 5.1s infinite; } /* The typing effect */ From ad547d0f01015471dd38c8e951411e6db52d8b56 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Thu, 16 Nov 2023 16:57:38 +0000 Subject: [PATCH 07/10] Hermit-V2 Theme Update --- layouts/_default/baseof.html | 6 +- layouts/shortcodes/figure.html | 131 +++++++++++++++++++++++++-------- 2 files changed, 105 insertions(+), 32 deletions(-) diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index 31ecb9a..942c426 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -17,8 +17,8 @@ {{ printf `` .Rel .MediaType.Type .Permalink $.Title | safeHTML }} {{ end -}} {{ $style := resources.Get "scss/style.scss" | resources.ExecuteAsTemplate "css/style.css" . | toCSS | minify | fingerprint -}} - -{{- range .Params.custom_css -}}{{- end -}} + +{{- range .Params.custom_css -}}{{- end -}} {{- block "head" . -}}{{- end -}} {{- if templates.Exists "partials/extra-head.html" -}}{{- partial "extra-head.html" . -}}{{- end -}} @@ -39,7 +39,7 @@ {{ $linkshare := resources.Get "js/link-share.js" | minify | fingerprint -}} {{- end -}} - {{- range .Params.custom_js -}}{{- end }} + {{- range .Params.custom_js -}}{{- end }} {{- partial "mathjax.html" . -}} {{- if templates.Exists "partials/extra-foot.html" -}}{{- partial "extra-foot.html" . -}}{{- end }} diff --git a/layouts/shortcodes/figure.html b/layouts/shortcodes/figure.html index 0afe081..7512c50 100644 --- a/layouts/shortcodes/figure.html +++ b/layouts/shortcodes/figure.html @@ -1,30 +1,103 @@ - - {{- if .Get "link" -}} - - {{- end -}} - {{ with .Get - {{- if .Get "link" }}{{ end -}} - {{- if or (or (.Get "title") (.Get "caption")) (.Get "attr") -}} -

- {{ with (.Get "title") -}} -

{{ . }}

- {{- end -}} - {{- if or (.Get "caption") (.Get "attr") -}}

- {{- .Get "caption" | markdownify -}} - {{- with .Get "attrlink" }} - - {{- end -}} - {{- .Get "attr" | markdownify -}} - {{- if .Get "attrlink" }}{{ end }}

+{{/* Extending upon [https://github.com/gohugoio/hugo/blob/master/tpl/tplimpl/embedded/templates/shortcodes/figure.html] */}} +{{/* Help from [https://discourse.gohugo.io/t/has-anyone-a-webp-shortcode/35391] */}} +{{- $path := .Get "src" -}} +{{- $link := .Get "link" -}} +{{- $target := .Get "target" -}} +{{- $rel := .Get "rel" -}} +{{- $class := .Get "class" -}} +{{- $alt := .Get "alt" -}} +{{- $attr := .Get "attr" -}} +{{- $attrlink := .Get "attrlink" -}} +{{- $title := .Get "title" -}} +{{- $width := .Get "width" -}} +{{- $height := .Get "height" -}} +{{- $caption := .Get "caption" -}} +{{- $loading := .Get "loading" -}} +{{- $jpg := "" -}} +{{- $webp := "" -}} +{{- $fitOptionstojpg := printf "%vx%v jpg" $width $height -}} +{{- $fitOptionstowebp := printf "%vx%v webp" $width $height -}} + +{{- $msg1 := "The %q shortcode requires a parameter named %q. See %s" -}} +{{- $msg2 := "The resource %q passed to the %q shortcode is not an image. See %s" -}} +{{- $msg3 := "The resource %q passed to the %q shortcode could not be found. See %s" -}} + +{{- if not (findRE `http[s]{0,1}://` $path 1) -}} + + {{ if not $path }} + {{ errorf $msg1 .Name "path" .Position }} + {{ end }} + + + {{- with $i := resources.Get $path -}} + {{- if eq $i.MediaType.MainType "image" -}} + {{- if not $width -}}{{- $width = $i.Width -}}{{- end -}} + {{- if not $height -}}{{- $height = $i.Height -}}{{- end -}} + {{- if eq $i.MediaType "image/webp" -}} + {{- $jpg = $i.Fit $fitOptionstojpg -}} + {{- $webp = $i -}} + {{- else if eq $i.MediaType "image/jpeg" -}} + {{- $webp = $i.Fit $fitOptionstowebp -}} + {{- $jpg = $i -}} + {{- else -}} + {{- $fitOptions := printf "%vx%v jpg" $width $height -}}{{- $jpg = $i.Fit $fitOptions -}} + {{- $fitOptions = printf "%vx%v webp" $width $height -}}{{- $webp = $i.Fit $fitOptions -}} + {{- end -}} + + + {{- if $link -}} + + {{- end -}} + + + + {{ with $alt }}{{ . }}{{ else }}{{ $caption | markdownify| plainify }}{{ end }} + + {{- if $link }}{{ end -}} + {{- if or (or $title $caption) $attr -}} +
+ {{ with $title -}}

{{ . }}

{{- end -}} + {{- if or $caption $attr -}}

+ {{- $caption | markdownify -}} + {{- with $attrlink }}{{- end -}} + {{- $attr | markdownify -}} + {{- if $attrlink }}{{ end }}

{{- end }} -
- {{- end }} - +
+ {{- end -}} + + {{- else -}} + {{- errorf $msg2 $path $.Name $.Position -}} + {{- end -}} + {{- else -}} + {{- errorf $msg3 $path .Name .Position -}} + {{- end -}} + +{{- else -}} + + {{- if $link -}}{{- end -}} + {{ with $alt }}{{ . }}{{ else }}{{ $caption | markdownify| plainify }}{{ end }} + {{- if $link }}{{ end -}} + {{- if or (or $title $caption) $attr -}} +
+ {{ with $title -}}

{{ . }}

{{- end -}} + {{- if or $caption $attr -}}

+ {{- $caption | markdownify -}} + {{- with $attrlink }}{{- end -}} + {{- $attr | markdownify -}} + {{- if $attrlink }}{{ end }}

+ {{- end }} +
+ {{- end -}} + + +{{- end -}} From 6ea2b764cd74c138b3ca545adc7b86f804815894 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Fri, 17 Nov 2023 10:38:09 +0000 Subject: [PATCH 08/10] Hermit-V2 Theme Update --- README.md | 8 ++++---- layouts/_default/baseof.html | 12 +++++++++--- 2 files changed, 13 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index ce28fc6..ffbbdbc 100644 --- a/README.md +++ b/README.md @@ -56,14 +56,14 @@ Site Configuration is done through `hugo.toml` or `hugo.yaml` file in root direc I have found that there are some requirement where custom CSS and JS should be supplied to a page to make it work. This custom files are not required for whole of the site, but is restricted to a page or few particular pages. E.g. If you make contact form. -To provision for the same, I have added custom css and js. Please add this to page frontmatter as required. +To make use of custom CSS and JS, add the below section to page frontmatter. If there is any folder structure, that should be mentioned as well. ``` -custom_css = ["css/foo.css","css/bar.css"] -custom_js = ["js/custom-about.js"] +custom_css = ["custom_css/foo.css","custom_css/bar.css"] +custom_js = ["custom_js/custom-about.js"] ``` -The files itself will reside in `static/css` for CSS files and `static/js` for JS files. Refer to [Staging Branch](https://github.com/1bl4z3r/hermit-V2/tree/staging) to have a feel on how [this](https://github.com/1bl4z3r/hermit-V2/blob/staging/content/about-hugo.md) is implemented. +The files itself will reside in `assets` directory. Refer to [Staging Branch](https://github.com/1bl4z3r/hermit-V2/tree/staging) to have a feel on how [this](https://github.com/1bl4z3r/hermit-V2/blob/staging/content/about-hugo.md) is implemented. ### Favicon diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index 942c426..d388fc7 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -17,8 +17,11 @@ {{ printf `` .Rel .MediaType.Type .Permalink $.Title | safeHTML }} {{ end -}} {{ $style := resources.Get "scss/style.scss" | resources.ExecuteAsTemplate "css/style.css" . | toCSS | minify | fingerprint -}} - -{{- range .Params.custom_css -}}{{- end -}} + +{{- range .Params.custom_css -}} +{{ $c_css := resources.Get . | resources.ExecuteAsTemplate "css/style.css" . | toCSS | minify | fingerprint -}} + +{{- end -}} {{- block "head" . -}}{{- end -}} {{- if templates.Exists "partials/extra-head.html" -}}{{- partial "extra-head.html" . -}}{{- end -}} @@ -39,7 +42,10 @@ {{ $linkshare := resources.Get "js/link-share.js" | minify | fingerprint -}} {{- end -}} - {{- range .Params.custom_js -}}{{- end }} + {{- range .Params.custom_js -}} + {{ $c_js := resources.Get . | minify | fingerprint -}} + + {{- end }} {{- partial "mathjax.html" . -}} {{- if templates.Exists "partials/extra-foot.html" -}}{{- partial "extra-foot.html" . -}}{{- end }} From d815aab4db0991c39d4236dad24181b648e92e17 Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 28 Nov 2023 07:50:33 +0000 Subject: [PATCH 09/10] Hermit-V2 Theme Update --- layouts/partials/site-meta.html | 1 + 1 file changed, 1 insertion(+) diff --git a/layouts/partials/site-meta.html b/layouts/partials/site-meta.html index f5af108..b995d1f 100644 --- a/layouts/partials/site-meta.html +++ b/layouts/partials/site-meta.html @@ -4,6 +4,7 @@ + From ac03834fbb987b202eb5486187ee844bb370378e Mon Sep 17 00:00:00 2001 From: GitHub Action Date: Tue, 28 Nov 2023 14:47:18 +0000 Subject: [PATCH 10/10] Hermit-V2 Theme Update --- hugo.toml.example | 3 +- layouts/_default/baseof.html | 48 +++++++++++---------- layouts/partials/googleTagManager_body.html | 1 + layouts/partials/googleTagManager_head.html | 1 + 4 files changed, 29 insertions(+), 24 deletions(-) create mode 100644 layouts/partials/googleTagManager_body.html create mode 100644 layouts/partials/googleTagManager_head.html diff --git a/hugo.toml.example b/hugo.toml.example index cfe3693..4a1db72 100644 --- a/hugo.toml.example +++ b/hugo.toml.example @@ -83,7 +83,8 @@ enableEmoji = true readTimeSeparator = "CHANGE ME READ TIME" # legacyLayout = false shareSocial = true - + # googleTagManager = "GTM-XXXXXXXX" + [[params.socialLinks]] name = "mastodon" url = "https://joinmastodon.org/" diff --git a/layouts/_default/baseof.html b/layouts/_default/baseof.html index d388fc7..88e18e3 100644 --- a/layouts/_default/baseof.html +++ b/layouts/_default/baseof.html @@ -1,6 +1,7 @@ +{{- if .Site.Params.googleTagManager -}}{{- partial "googleTagManager_head.html" . -}}{{- end -}} {{- partial "analytics.html" . -}} {{- partial "site-meta.html" -}} {{ $author := (.Params.author | default .Site.Params.author.name) -}} @@ -25,29 +26,30 @@ {{- block "head" . -}}{{- end -}} {{- if templates.Exists "partials/extra-head.html" -}}{{- partial "extra-head.html" . -}}{{- end -}} - {{- block "header" . -}}{{ end -}} - {{- block "main" . -}}{{ end -}} - {{- block "footer" . -}}{{ end }} - {{- partial "scroll-to-top.html" . }} - {{- $main := resources.Get "js/main.js" -}} - {{- if .Site.Params.code_copy_button | default true -}} - {{ $codeCopy := resources.Get "js/code-copy.js" -}} - {{ $script := slice $main $codeCopy | resources.Concat "js/bundle.js" | minify | fingerprint -}} - - {{- else -}} - {{ $script := $main | minify | fingerprint -}} - - {{- end -}} - {{- if and (not (eq .Site.Params.shareSocial nil)) (.Site.Params.shareSocial) -}} - {{ $linkshare := resources.Get "js/link-share.js" | minify | fingerprint -}} - - {{- end -}} - {{- range .Params.custom_js -}} - {{ $c_js := resources.Get . | minify | fingerprint -}} - - {{- end }} - {{- partial "mathjax.html" . -}} - {{- if templates.Exists "partials/extra-foot.html" -}}{{- partial "extra-foot.html" . -}}{{- end }} +{{- if .Site.Params.googleTagManager -}}{{- partial "googleTagManager_body.html" . -}}{{- end -}} +{{- block "header" . -}}{{ end -}} +{{- block "main" . -}}{{ end -}} +{{- block "footer" . -}}{{ end }} +{{- partial "scroll-to-top.html" . }} +{{- $main := resources.Get "js/main.js" -}} +{{- if .Site.Params.code_copy_button | default true -}} + {{ $codeCopy := resources.Get "js/code-copy.js" -}} + {{ $script := slice $main $codeCopy | resources.Concat "js/bundle.js" | minify | fingerprint -}} + +{{- else -}} + {{ $script := $main | minify | fingerprint -}} + +{{- end -}} +{{- if and (not (eq .Site.Params.shareSocial nil)) (.Site.Params.shareSocial) -}} +{{ $linkshare := resources.Get "js/link-share.js" | minify | fingerprint -}} + +{{- end -}} +{{- range .Params.custom_js -}} +{{ $c_js := resources.Get . | minify | fingerprint -}} + +{{- end }} +{{- partial "mathjax.html" . -}} +{{- if templates.Exists "partials/extra-foot.html" -}}{{- partial "extra-foot.html" . -}}{{- end }} diff --git a/layouts/partials/googleTagManager_body.html b/layouts/partials/googleTagManager_body.html new file mode 100644 index 0000000..0031b45 --- /dev/null +++ b/layouts/partials/googleTagManager_body.html @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/layouts/partials/googleTagManager_head.html b/layouts/partials/googleTagManager_head.html new file mode 100644 index 0000000..8648b01 --- /dev/null +++ b/layouts/partials/googleTagManager_head.html @@ -0,0 +1 @@ + \ No newline at end of file