| Commit message (Collapse) | Author | Age |
| |
|
|
|
|
|
|
|
|
| |
Every listing in the theme is built from .PublishDate, but the feeds
timestamped entries with .Date and left them in Hugo's default order.
An entry that set both front matter keys was therefore advertised to
readers with a different date, and potentially in a different order,
than it appeared in on the site.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
|
|
| |
The homepage lists only pages in the "entry" section, but its feeds
ranged over every regular page. Standalone pages such as an about page
were therefore published to subscribers while never appearing on the
homepage itself.
Apply the same section filter the homepage templates use, so the feed
and the page it describes agree on what an entry is.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
| |
RFC 4287 requires every feed to carry an atom:author unless all of its
entries carry one. Entries here never do, and the feed-level author was
emitted only when params.author was set, so any site that did not set it
published feeds that no conforming validator accepts.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
The chunking regex required at least one character before a preformatted
block, so a block starting on the first line of an entry could never
match the preformatted branch and fell through to the prose branch. Its
contents were then run through the prose substitutions: asterisks were
stripped, ordered list items were rewritten as unordered ones and links
were turned into references, inside text that must be reproduced
verbatim.
Allow the leading segment to be empty. Blocks elsewhere in an entry,
multiple blocks and reference numbering are unaffected.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
Hugo's default for services.rss.limit is -1 (unlimited), and passing a
negative length to "first" aborts the build with "sequence length must
be non-negative". Every feed template did this unconditionally, so any
site that did not explicitly set services.rss.limit failed to build at
all, rather than degrading to an unlimited feed.
Only apply "first" when a positive limit is configured, which is the
same guard Hugo's own internal RSS template uses.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
| |
This improves page performance and load times.
|
| |
|
|
|
| |
I'm not sure if this change makes a difference, but .Title seems to be
the canonical option in this context.
|
| |
|
|
| |
Less visual clutter, improves readability.
|
| | |
|
| | |
|
| |
|
|
|
| |
This Hugo theme no longer supports the Hugo versions that can utilize
the key "site.Author", so this code never executes.
|
| |
|
|
|
| |
This was the only way I could get term pages to consistently render
correctly.
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Hugo's template system was reimplemented in Hugo version 0.146.0.
"We [the Hugo developers] have aimed to maintain as much backward
compatibility as possible by mapping "old to new," but some reported
breakages have occurred."
Reference: https://gohugo.io/templates/new-templatesystem-overview/
The "mapping "old to new,"" is not yet documented, but moving the
taxonomy and term layouts to layouts/_default seems to be sufficient to
properly generate this theme on Hugo versions later than 0.146.0.
To retain backward compatibility with older Hugo versions, the other
recommended changes to the layouts directory are not made.
Reference: https://gohugo.io/templates/new-templatesystem-overview/#changes-to-the-layouts-folder
|
| |
|
|
|
|
| |
The spaces in tag names must be non-breaking because tag names
split across multiple lines are visually indistinguishable from distinct
tags.
|
| |
|
|
|
|
| |
Spaces are more aesthetically pleasing. The Gemtext output format cannot
remove the commas because then there would be no way to distinguish tags
containing spaces from distinct tags.
|
| | |
|
| |
|
|
|
|
|
|
|
| |
The spaces directly following emojis must be non-breaking because having
emojis alone on their own line is ugly and visually confusing.
The spaces within pageinfo "segments" must be non-breaking because
splitting dates and read times across multiple lines is ugly and
visually confusing.
|
| |
|
|
|
| |
It's good practice to keep static website assets isolated to their own
subdirectory.
|
| |
|
|
|
| |
This removes the extra iterations over reference numbers caused by using
the replace function.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
This avoids littering the gemtext templates with regex to change the
protocol.
|
| |
|
|
| |
This avoids littering the gemtext templates with "safeHTML".
|
| |
|
|
|
|
|
| |
Timestamp obfuscation is a niche privacy feature which contradicts how
users expect Hugo to work. If the user desires such a feature, they can
override the theme with their own custom timestamp-obfuscating
archetypes.
|
| |
|
|
|
|
|
| |
The entry archetype already wipes the time of day of entries and
converts their dates to UTC, for the sake of user privacy. If the user
overrides this behavior and purposely includes times and/or time zones,
the theme should not interfere.
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| | |
|
| |
|
|
|
| |
Elements which are optional in the Atom feed spec should also be
optional in the templates.
|
| | |
|
| | |
|
| |
|
|
| |
Bold/italics regex must not match greedily.
|
| | |
|
| | |
|
| |
|
|
|
|
|
|
| |
This reverts commit f34e453196b85e756b16f5ff668d15c2462948e6778657907ff52821d360309b.
Adding rel="noreferrer" to non-http-prefixed links was believed to be a
noop, but this overlooks relative links. For privacy reasons, relative
links must not send referrer headers.
|
| | |
|
| |
|
|
| |
This removes the need to recount.
|