- Drop copyright symbol: I put it there because certain programs
explicitly look for it, but between rel=license, schema.org microdata,
and creative commons RDFa, I think scrapers should be covered.
- Update the theme-color and friends to work with my site's updated dark
theme.
Explicitly mark RSS feeds as "legacy" because I have joined the A-Town
Atom gang and they have a strict full-time attendance policy.
Thanks Forever for pointing out the spelling/grammar error here.
- Re-order rel for my homepage's representative h-crad
- Fix the aria-current for the homepage
- Microdata: remove unnecessary "sameAs"
- Reduce "update without adding date updated" timeout to 15min
- Add u-uid and rel=me to my h-card on every page.
It's useless and invalid in those contexts, and removing it
significantly trims the file sizes.
Edit a post featuring a microdata code snippet to avoid conflicts.
- Remove XHTML content-type meta header from HTML documents, reverting
back to the meta charset
- Give XHTML documents their own XHTML declaration
- Remove now-redundant meta charset from XHTML
- Since XHTML and HTML documents differ now, compress after running
xhtmlize and make xhtmlize only act on uncompressed files.
- Validate XHTML using vnu
The site now has polygot markup and can handle both XHTML5 and HTML5
parsing rules. My staging site will be XHTML but my main site will be
HTML5, just in case of parse errors.
If other tools (e.g. LightHouse) end up supporting XHTML5, I'll consider
switching the content-type to XHTML.
I go out of my way to make sure the site works on viewports well under
240 CSS pixels wide. Some pages are very long, so a single mistake in
one part of the page shouldn't cause small text throughout the page.
Some article extractors get confused when the article body references
another author with microdata. Declare the author itemprop a second time
to make them happy.
Add an RSS feed for notes. Next up, replacing the RSS navlink with a
page containing links to both my posts and notes RSS feeds. When I get
ATOM and WebSub, it'll have links ot those too.
Also fixed some typos and switched "Posted" to "Noted" in the context of
notes.
- Stop using draft WAI-ARIA 1.3 that isn't supported yet
- Make in-page links focusable across shortcodes/partials
- Replace existing in-page heading anchor links with a more accessible
option.
- Make backlinks aria-labelledby instead of giving them an aria-label,
so they can be translated.
They're not interactive elements and there's no hint that they should be
hovered on. Wrapping them in an <abbr> would just make the markup even
more overcomplicated, so I just dropped the titles.
Allow specifying open graph images for individual pages. Change default
site-wide open graph image alt-text to an empty string since the default
image only has visual value, and is better off hidden from assistive
technologies.
Set an open graph image for two articles.
- Streamline CSS to reduce duplication
- Better backlink accessible names for endnotes with multiple backlinks
This required updating a false positive filter in my vnu jq filter.
- Adopt more shortcodes in older posts.
- Contain figures, excluding images. Slightly decreases paint times.
- Fix spacing issues for nested articles.
- Always enable vertical scrollbar, since pretty much all pages are
taller than the viewport. Eliminates a layout shift.
- Moar microdata
- Set fixed updated dates for some posts so they don't get new
date-updated values until I actually change the content significantly
- Change a quote of a code snippet to a code snippet with a citation
- Mention tkhtml
- Mention pandoc and printfriendly as exmples of moving figure elements
like floating blocks.
- Make TPGi a publisher, not an author.
- Use brackets to clarify a reference in a quotation.
- Add personal example of why it's important to test both low- and
high-end displays.
- Identify the transcript with a subheading, ending in a period so that
the aria-description separates the identifier from the concept.
- Put the transcript in a <section>
- Snuck in a trivial syntax fix for the generator element.
- Make webring links touch-friendly and accessible by using spaced-out
details elements.
- Make details elements touch-friendly by indicating interactive region
area and making summary padded.
- Sort featured posts by featured order.
- Ensure that at least one non-interactive tappable region exists on the
screen at all times, 48x48 px.
Increased font size to decrease chars-per-line (SC 1.4.8) and increase
tap target size.
Pad the nav links more and add some extra space between them to meet SC
2.5.5.
- New shortcode for quotation. Not using this yet.
- Make picture shortcode round image dimensions to integer values.
- Make quotecaption support code snippets borrowed from other places.
Not using this yet.
Split up some verbose and repetitive templates to use nested templates.
Cache some templates that don't need to be re-built every time.
Reading time: switch "a" to "an" when followed by the number "8".
Improve whitespace alignment a bit.
- Better print stylesheet, now with a file dedicated just for print
style improvements.
- Hide extra stuff in print.
- Bring back navbar for print because it also tells users the current
section and the site name.
- Dark theme: make superscripts bold instead of using a higher-contrast
color.
- Don't auto-minify HTML but minify other resources, inc. the RSS feed
- Manually optimize whitespace a little to balance readability and
compressed size
- Goldmark 1.4.12 switches footnotes from a <section> to a <div>; update
regexes and stylesheet to account for this.
- Goldmark 1.4.12 allows multiple footnotes with the same reference; use
that.
- Clean up templates for unminified output. Also delete an unused class.
- Switch to unminified output by default.
- microdata for CompleteDataFeed on /posts.html instead of DataFeed
- make the home link <strong> when it's the current page, just like the
other navlinks.
- give code blocks their own figure numbers/names/ID
- Split figcaption into quotecaption and codecaption
- create codefigure partial to reduce markup for SoftwareSourceCode
figures
Create a for <figcaption> and a render hook for code snippets inside
figures, replacing some ugly and complex inline HTML in my markdown
sources.
The only visible change is slightly worse HTML alignment and programming
language indicators (with microdata).
This removed the need to use one of the regex replacements in the
processed_content.html shortcode, and increased the minimum required
Hugo version to 0.93.
Add headings and re-order the items in the article footers to improve
heading-based navigation. Now all sections should have a landmark
recognized by most AT, or a heading.
WCAG recommends telling visitors about their current place in a site's
hierarchy. All pages are exactly zero or one level below a section, so
simply emphasizing a member of the navigation links should be
sufficient.
Some old browser engines don't fully support hyphenation, so they need
some extra help. Now, the entire site should fit in a 150 CSS-pixel wide
viewport.
Clean up some link text too so the text alone is more useful.
All pages except bookmarks can now fit on your smartwatch without any
adjustments, so we can disable the auto-zoom-out-to-match-mobile
wizardry that watch browsers do (comparable to the
zoom-out-to-match-desktop stuff that early mobile browsers did).
Yay.
- Use borders instead of <hr>
- Distinguish <kbd> from <code> and body text with boldness
- Improve dark contrast and make dark visited links look distinct from
regular text
- Improve focus indicators
- Shrink some excessive alt text
- Remove some redundant links
- Screenreaders that split elements up aren't just on touchscreens
- Mention ChromeVox in list of screen readers
- Move TOC higher in page
- Spelling
- Drop more unused classes
Putting the heading in the navigation element makes the structure more
logical and matches the behavior of most other websites.
Move it before the introduction in my web best practices post.
- Replace hashes in code snippets with variables for screen-readability
- Use hyphens where valid instead of combined words for screen reader
pronunciation
- Typo
- Add WIP section on screen reader support tips not already covered.
Order is significant for the ToC and post list so make them ordered.
I opted to make post-lists a reversed list, so I don't end up having
every post change its number every time I post.
Visitors can see that on post update dates; I can see that in
builds.sr.ht.
This results in not having to upload every page on a trivial change. Add
the "-c" rsync flag to take advantage of that. Doing so should also
result in longer-lived cached copies, with etags and last-modified
headers.
- Re-phrase a line referring to a previous section; after some
re-arrangements, that section is no longer a "previous" section.
- Replace spatial terminology ("bottom") with sequential terminology
("end")
- Add note on font enumeration without the Font Access API
- Acknowledge testing in grayscale but emphasize that it isn't enough.
- Move defense of link underlines to just after the section on custom
colors, since it's more relevant to it.
- Add xkcd image into the page instead of just linking, since the linked
page content is an image that doesn't include a transcript or
descriptive alt-text.
- Trivial rephrasings
- Even less halation for dark theme
- More contrast for borders
- Slightly larger font, fixes APCA contrast issue for <small>
- Make responsive navbar work in NetSurf
- Make aria-current page bold
- Use content-visibility to unload footers and endnotes
- Add aria-labels to unclear webring link text
- Replace <hr> elements with css borders; the semantic meaning of <hr>
was unnecessary with section breaks.
- Give the intro a heading
- Make the preface an <aside> with a "doc-preface" DPUB-ARIA role
- Move the TOC before the intro
- Give the TOC a "doc-toc" DPUB-ARIA role
- Provide a TLDR
- Some webrings I might eventually join require sending the origin via
referrer. Make per-link exceptions to my "no-referrer" policy sent via
HTTP header.
- Add hotline webring
- Add criteria for me to join a webring.
No browser I know of falls back to a PNG when given an SVG with a PNG
fallback. The Tor version of my site uses no SVGs.
Exclude the SVG favicon in the Tor version of the site, since the Tor
Browser disables SVG on the safest setting.
- SearchMySite.net uses the "keywords" meta property to categorize
sites, so include keywords on the homepage
- Exclude the published date if it doesn't exist.
Pulls content exported from Buku, so I don't have to commit every time I
add a bookmark.
Since I added another nav item, I had to adjust the navbar css.
- apple-touch-icon not needed, will be fetched from doc root
- re-order <head> elements to optimize for compression algorithm size
savings. shaved off like 15 bytes. this was a good use of my time.
This should reduce a lot of repetition. Supports first/last names,
nicknames, generic names that don't conform to first/last norms, and
has basic support for affiliated organizations.
Also snuck in more info on website colors to the web best practices
article, inc. a link to Chris' Wiki.
The only visible change to page display should be author names in
webmentions. Besides that, this commit only alters the underlying markup
to improve metadata extraction.
- Add more microdata for webmentions, authors, dates, etc.
- Add microformats2 for webmentions
- Add authors to webmention text, when available.
- Remove reference to unused syntax.css
- Stop Apple's magic phone-number-linkification. If I need to link a
telephone number I'll use a tel: URI, thank you very much.
Some browsers/addons allow shortcuts for going to the next/prev page by
matching links with the word "next" or "previous"; Tridactyl is one
example. I thought I'd add a next/prev link to make it easy to binge
this blog.
The favicon is 175 bytes, smaller than the size of the HTTP headers to
fetch it. It can be inlined.
Now, pages that don't have any other images need just a single request.