aboutsummaryrefslogtreecommitdiff
path: root/layouts/section.gemini_atom.xml
diff options
context:
space:
mode:
Diffstat (limited to 'layouts/section.gemini_atom.xml')
-rw-r--r--layouts/section.gemini_atom.xml52
1 files changed, 52 insertions, 0 deletions
diff --git a/layouts/section.gemini_atom.xml b/layouts/section.gemini_atom.xml
new file mode 100644
index 0000000..6425e31
--- /dev/null
+++ b/layouts/section.gemini_atom.xml
@@ -0,0 +1,52 @@
+{{ "<?xml version=\"1.0\" encoding=\"UTF-8\"?>" | safeHTML }}
+{{/* The XML declaration is emitted before anything else, including the
+ variables below, since whitespace may not precede it. */}}
+{{ $authorName := "" }}
+{{ with site.Params.author }}
+ {{ if reflect.IsMap . }}
+ {{ with .name }}
+ {{ $authorName = . }}
+ {{ end }}
+ {{ else }}
+ {{ $authorName = . }}
+ {{ end }}
+{{ end }}
+{{ if not $authorName }}
+ {{ errorf "Missing author" }}
+{{ end }}
+
+{{ $authorEmail := "" }}
+{{ with site.Params.author }}
+ {{ if reflect.IsMap . }}
+ {{ with .email }}
+ {{ $authorEmail = . }}
+ {{ end }}
+ {{ end }}
+{{ end }}
+
+{{ $pages := .Pages.ByPublishDate.Reverse }}
+{{ $limit := .Site.Config.Services.RSS.Limit }}
+{{ if ge $limit 1 }}
+{{ $pages = first $limit $pages }}
+{{ end }}
+<feed xmlns="http://www.w3.org/2005/Atom">
+ <id>{{ .Permalink | strings.TrimSuffix "index.gmi" }}</id>
+ <title>{{ .Site.Title }}</title>
+ <updated>{{ .PublishDate.Format "2006-01-02T15:04:05-0700" | safeHTML }}</updated>
+ <link href="{{ .Permalink | replaceRE `index.gmi$` "atom.xml" | safeURL }}" rel="self" />
+ <link href="{{ .Permalink | strings.TrimSuffix "index.gmi" | safeURL }}" rel="alternate" />
+ <author>
+ <name>{{ $authorName }}</name>
+ {{ with $authorEmail }}
+ <email>{{ . }}</email>{{ end }}
+ </author>
+ <generator>Hugo -- gohugo.io</generator>
+ <rights type="html">{{ replace .Site.Copyright "{currentYear}" (now.Format "2006") }}</rights>
+ <subtitle>{{ .Site.Params.Description }}</subtitle>{{ range $pages }}
+ <entry>
+ <id>{{ .Permalink | strings.TrimSuffix "index.gmi" }}</id>
+ <title>{{ .Title }}</title>
+ <updated>{{ .PublishDate.Format "2006-01-02T15:04:05-0700" | safeHTML }}</updated>
+ <link href="{{ .Permalink | strings.TrimSuffix "index.gmi" | safeURL }}" rel="alternate" />
+ </entry>{{ end }}
+</feed>