From dc89efa0d1ba80e8a7c61ddd2d0d4243cc82e52fb2c9104311b4ba5e2af81ff6 Mon Sep 17 00:00:00 2001 From: Nicholas Johnson Date: Fri, 24 Feb 2023 00:00:00 +0000 Subject: Implement term Atom feeds --- layouts/_default/term.atom.xml | 22 ++++++++++++++++++++++ layouts/_default/term.gemini_atom.xml | 21 +++++++++++++++++++++ layouts/_default/term.gmi | 16 +++++++++++++--- layouts/_default/term.html | 13 +++++++------ layouts/index.gmi | 10 +++++++++- layouts/partials/metadata.gmi | 8 -------- 6 files changed, 72 insertions(+), 18 deletions(-) create mode 100644 layouts/_default/term.atom.xml create mode 100644 layouts/_default/term.gemini_atom.xml diff --git a/layouts/_default/term.atom.xml b/layouts/_default/term.atom.xml new file mode 100644 index 0000000..c0c9f6e --- /dev/null +++ b/layouts/_default/term.atom.xml @@ -0,0 +1,22 @@ +{{ "" | safeHTML }} + + {{ .Permalink }} + {{ .Site.Title }} + {{ .Date.Format "2006-01-02T15:04:05Z" | safeHTML }} + + + + {{ .Site.Author.name }} + {{ .Site.Author.email }} + + Hugo -- gohugo.io + {{ replace .Site.Copyright "{currentYear}" (now.Format "2006") }} + {{ .Site.Params.Description }}{{ range first .Site.Config.Services.RSS.Limit .Data.Pages }} + + {{ .Permalink }} + {{ .Title }} + {{ .Date.Format "2006-01-02T15:04:05Z" | safeHTML }} + + {{ .Content | html }} + {{ end }} + diff --git a/layouts/_default/term.gemini_atom.xml b/layouts/_default/term.gemini_atom.xml new file mode 100644 index 0000000..85ff034 --- /dev/null +++ b/layouts/_default/term.gemini_atom.xml @@ -0,0 +1,21 @@ +{{ "" | safeHTML }} + + {{ replace .Permalink "https://" "gemini://" }} + {{ .Site.Title }} + {{ .Date.Format "2006-01-02T15:04:05Z" | safeHTML }} + + + + {{ .Site.Author.name }} + {{ .Site.Author.email }} + + Hugo -- gohugo.io + {{ replace .Site.Copyright "{currentYear}" (now.Format "2006") }} + {{ .Site.Params.Description }}{{ range first .Site.Config.Services.RSS.Limit .Data.Pages }} + + {{ replace .Permalink "https://" "gemini://" | safeURL }} + {{ .Title }} + {{ .Date.Format "2006-01-02T15:04:05Z" | safeHTML }} + + {{ end }} + diff --git a/layouts/_default/term.gmi b/layouts/_default/term.gmi index 8c47843..4beb9ea 100644 --- a/layouts/_default/term.gmi +++ b/layouts/_default/term.gmi @@ -2,8 +2,18 @@ => / {{ emojify ":link:" | safeHTML }} Return to homepage -# All entries for {{ .Type | singularize | safeHTML }} "{{ .Title | safeHTML }}" -{{ range .Data.Pages }} -=> {{ .RelPermalink }} {{ emojify ":link:" | safeHTML }} {{ .Title | safeHTML }} +# {{ .Type | singularize | humanize | safeHTML }} "{{ .Title | safeHTML }}" +## Feeds +=> {{ .RelPermalink | replaceRE `(?m)index.gmi$` "atom.xml" | safeHTML }} {{ emojify ":link:" | safeHTML }} Atom Feed + +## Journal Entries +{{ $entriesMinusOne := sub (len (where .Site.RegularPages.ByTitle "Section" "entry").ByPublishDate.Reverse) 1 }} +{{- range first $entriesMinusOne .Data.Pages.ByPublishDate.Reverse }} +{{- partial "metadata.gmi" . }} +{{ end }} +{{- if gt (len .Data.Pages) 1 }} + +{{- range last 1 .Data.Pages.ByPublishDate.Reverse }} +{{- partial "metadata.gmi" . }}{{ end }} {{- end }} {{- end }} diff --git a/layouts/_default/term.html b/layouts/_default/term.html index 0f1defc..4b69ebe 100644 --- a/layouts/_default/term.html +++ b/layouts/_default/term.html @@ -3,11 +3,12 @@

{{ emojify ":link:" | safeHTML }} Return to homepage

-

All entries for {{ .Type | singularize }} "{{ .Title }}"

- +

{{ .Type | singularize | humanize }} "{{ .Title }}"

+

Feeds

+

{{ emojify ":link:" | safeHTML }} Atom Feed

+

Journal Entries

+ {{- range .Data.Pages.ByPublishDate.Reverse }} + {{ partial "metadata.html" . -}} + {{- end -}}
{{- end }} diff --git a/layouts/index.gmi b/layouts/index.gmi index ae45ded..e629fe7 100644 --- a/layouts/index.gmi +++ b/layouts/index.gmi @@ -7,4 +7,12 @@ => {{ .URL }} {{ emojify ":link:" | safeHTML }} {{ .Name | safeHTML }} {{ end }} ## Journal Entries -{{ partial "metadata.gmi" . }}{{ end }} +{{ $entriesMinusOne := sub (len (where .Site.RegularPages.ByTitle "Section" "entry").ByPublishDate.Reverse) 1 }} +{{- range first $entriesMinusOne (where .Site.RegularPages.ByTitle "Section" "entry").ByPublishDate.Reverse }} +{{- partial "metadata.gmi" . }} +{{ end }}{{- if gt (len .Data.Pages) 1 }} + +{{- range last 1 (where .Site.RegularPages.ByTitle "Section" "entry").ByPublishDate.Reverse }} +{{- partial "metadata.gmi" . }}{{ end }} +{{- end }} +{{- end }} diff --git a/layouts/partials/metadata.gmi b/layouts/partials/metadata.gmi index c3d7af4..31b1155 100644 --- a/layouts/partials/metadata.gmi +++ b/layouts/partials/metadata.gmi @@ -1,10 +1,2 @@ -{{ $entriesMinusOne := sub (len (where .Site.RegularPages.ByTitle "Section" "entry").ByPublishDate.Reverse) 1 }} -{{- range first $entriesMinusOne (where .Site.RegularPages.ByTitle "Section" "entry").ByPublishDate.Reverse }} {{- partial "pageinfo.gmi" . }} => {{ .RelPermalink }} {{ emojify ":link:" | safeHTML }} {{ .Title | safeHTML }} - -{{ end }} - -{{- range last 1 (where .Site.RegularPages.ByTitle "Section" "entry").ByPublishDate.Reverse }} -{{- partial "pageinfo.gmi" . }} -=> {{ .RelPermalink }} {{ emojify ":link:" | safeHTML }} {{ .Title | safeHTML }}{{ end }} \ No newline at end of file -- cgit v1.2.3