mirror of
https://git.sr.ht/~seirdy/seirdy.one
synced 2024-11-27 14:12:09 +00:00
Compare commits
No commits in common. "25f038f34500bbf5af6b3dd0f96abfeba5a93b76" and "13e0f05ad1d8689fbb10e62d5e5c307e464f7f80" have entirely different histories.
25f038f345
...
13e0f05ad1
18 changed files with 15 additions and 53 deletions
|
@ -145,9 +145,9 @@ html {
|
||||||
margin: -.75em -.25em;
|
margin: -.75em -.25em;
|
||||||
}
|
}
|
||||||
|
|
||||||
header a[href="#main"],
|
|
||||||
div[itemprop="comment"] dd > a ,
|
div[itemprop="comment"] dd > a ,
|
||||||
footer > nav,
|
footer > nav,
|
||||||
|
header > nav,
|
||||||
/* List items with direct hyperlink children should only have one hyperlink. */
|
/* List items with direct hyperlink children should only have one hyperlink. */
|
||||||
li > a,
|
li > a,
|
||||||
aside > a,
|
aside > a,
|
||||||
|
@ -156,12 +156,6 @@ html {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
}
|
}
|
||||||
|
|
||||||
/* The nav has to be distant-enough from the top to make room for a skip-link. */
|
|
||||||
header > nav {
|
|
||||||
margin: .75em 0 0 -.25em;
|
|
||||||
display: block;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* Multiple consecutive <dt> that share a <dd> shouldn't have tap targets overlap */
|
/* Multiple consecutive <dt> that share a <dd> shouldn't have tap targets overlap */
|
||||||
dt + dt > a {
|
dt + dt > a {
|
||||||
padding-top: 0;
|
padding-top: 0;
|
||||||
|
@ -182,16 +176,6 @@ html {
|
||||||
section[role="doc-endnotes"] li {
|
section[role="doc-endnotes"] li {
|
||||||
margin-bottom: 1.75em;
|
margin-bottom: 1.75em;
|
||||||
}
|
}
|
||||||
|
|
||||||
header a[href="#main"] {
|
|
||||||
position: absolute;
|
|
||||||
top: -2em;
|
|
||||||
padding: 0 .25em;
|
|
||||||
}
|
|
||||||
|
|
||||||
header a[href="#main"]:focus {
|
|
||||||
top: 0;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* narrow screens: reduce list indentation, hyphenate nested lists
|
/* narrow screens: reduce list indentation, hyphenate nested lists
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Hide screen-only content */
|
/* Hide screen-only content */
|
||||||
header a[href="#main"], /* Skip link */
|
|
||||||
aside:not([role="note"]),
|
aside:not([role="note"]),
|
||||||
/* An un-opened summary inside an article has no use in print.
|
/* An un-opened summary inside an article has no use in print.
|
||||||
* Outside an article it's used in my webring list where it has some
|
* Outside an article it's used in my webring list where it has some
|
||||||
|
|
|
@ -22,7 +22,6 @@ disableKinds = ["taxonomy", "term"]
|
||||||
dark = "auto"
|
dark = "auto"
|
||||||
highlight = false
|
highlight = false
|
||||||
icon = "/favicon.svg"
|
icon = "/favicon.svg"
|
||||||
indieAuth = "https://indielogin.com/auth"
|
|
||||||
|
|
||||||
[frontmatter]
|
[frontmatter]
|
||||||
lastmod = ['lastmod', ':git', 'date', 'publishDate']
|
lastmod = ['lastmod', ':git', 'date', 'publishDate']
|
||||||
|
|
|
@ -1,15 +0,0 @@
|
||||||
---
|
|
||||||
title: "Re: trying real websites in the SerenityOS browser"
|
|
||||||
date: 2022-07-08T14:53:39-07:00
|
|
||||||
replyURI: "https://linus.dev/posts/trying-real-websites-in-the-serenityos-browser/"
|
|
||||||
replyTitle: "Trying Real™ Websites in the SerenityOS Browser"
|
|
||||||
replyType: "BlogPosting"
|
|
||||||
replyAuthor: "Linus Groh"
|
|
||||||
replyAuthorURI: "https://linus.dev/"
|
|
||||||
---
|
|
||||||
|
|
||||||
Most of these are pages that blur the line between "document" and "app", containing many interactive controls. Being concerned about them is valid; however, I think the concern is misplaced at this stage.
|
|
||||||
|
|
||||||
*For an independent engine,* I'm more interested in simple "web documents". Those need to work well before tackling "Web 2.0" territory. Specifically: articles progressively enhanced with images, stylesheets, and maybe a script or two. Understanding how well Web 2.0 sites render isn't really useful to me without first understanding how well documents render.
|
|
||||||
|
|
||||||
When testing my site, my main pain points are: a lack of support for `<details>`, misplaced `<figcaption>` elements, my SVG profile photo not rendering (it renders when I open it in a new tab), and occasional overlapping text. The only non-mainstream independent engine I know of that supports `<details>` is Servo.
|
|
|
@ -1,6 +1,5 @@
|
||||||
{{ define "main" -}}
|
{{ define "main" -}}
|
||||||
<main id="main" tabindex="-1"
|
<main itemprop="mainEntity" class="h-feed hfeed" itemscope="" itemtype="https://schema.org/DataFeed">
|
||||||
itemprop="mainEntity" class="h-feed hfeed" itemscope="" itemtype="https://schema.org/DataFeed">
|
|
||||||
<h1 id="bookmarks" class="p-name" itemprop="name headline">My book­marks</h1>
|
<h1 id="bookmarks" class="p-name" itemprop="name headline">My book­marks</h1>
|
||||||
{{ partial "processed-content.html" . }}
|
{{ partial "processed-content.html" . }}
|
||||||
<p role="doc-tip">
|
<p role="doc-tip">
|
||||||
|
|
|
@ -1,6 +1,5 @@
|
||||||
{{ define "main" -}}
|
{{ define "main" -}}
|
||||||
<main id="main" tabindex="-1"
|
<main itemprop="mainEntity" class="h-feed hfeed" itemscope="" itemtype="https://schema.org/DataFeed">
|
||||||
itemprop="mainEntity" class="h-feed hfeed" itemscope="" itemtype="https://schema.org/DataFeed">
|
|
||||||
{{ partial "processed-content.html" . }}
|
{{ partial "processed-content.html" . }}
|
||||||
<p role="doc-tip">
|
<p role="doc-tip">
|
||||||
Timestamp format: <code>YYYY-MM-DD HH:MM</code>, as per <cite><a href="https://www.ietf.org/rfc/rfc3339.txt">RFC 3339</a></cite>. Sorted newest to oldest.
|
Timestamp format: <code>YYYY-MM-DD HH:MM</code>, as per <cite><a href="https://www.ietf.org/rfc/rfc3339.txt">RFC 3339</a></cite>. Sorted newest to oldest.
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{{ define "main" -}}
|
{{ define "main" -}}
|
||||||
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
||||||
<main id="main" tabindex="-1">
|
<main >
|
||||||
<h1>Search</h1>
|
<h1>Search</h1>
|
||||||
<p role="note">This page is an unfinished work-in-progress.</p>
|
<p role="note">This page is an unfinished work-in-progress.</p>
|
||||||
{{ partial "search.html" . }}
|
{{ partial "search.html" . }}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{{ define "main" -}}
|
{{ define "main" -}}
|
||||||
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
||||||
<main id="main" tabindex="-1"
|
<main itemprop="mainEntity" itemscope="" itemtype="https://schema.org/Article" itemid="{{ .Site.Params.CanonicalBaseURL }}{{ $canonicalRelPermalink }}">
|
||||||
itemprop="mainEntity" itemscope="" itemtype="https://schema.org/Article" itemid="{{ .Site.Params.CanonicalBaseURL }}{{ $canonicalRelPermalink }}">
|
|
||||||
{{ partial "full-article.html" . }}
|
{{ partial "full-article.html" . }}
|
||||||
</main>
|
</main>
|
||||||
{{ end }}
|
{{ end }}
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
{{ define "main" -}}
|
{{ define "main" -}}
|
||||||
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
||||||
<main id="main" tabindex="-1">
|
<main>
|
||||||
{{- $articleTag := printf `<article class="h-entry hentry" itemprop="mainEntity" itemscope="" itemtype="https://schema.org/Article" itemid="%s%s">` .Site.Params.CanonicalBaseURL $canonicalRelPermalink -}}
|
{{- $articleTag := printf `<article class="h-entry hentry" itemprop="mainEntity" itemscope="" itemtype="https://schema.org/Article" itemid="%s%s">` .Site.Params.CanonicalBaseURL $canonicalRelPermalink -}}
|
||||||
{{ partial "full-article.html" . | replaceRE `<article class="h-entry hentry">` $articleTag | safeHTML }}
|
{{ partial "full-article.html" . | replaceRE `<article class="h-entry hentry">` $articleTag | safeHTML }}
|
||||||
<hr />
|
<hr />
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
{{ define "main" -}}
|
{{ define "main" -}}
|
||||||
<main id="main" tabindex="-1">
|
<main>
|
||||||
{{ partial "processed-content.html" . }}
|
{{ partial "processed-content.html" . }}
|
||||||
{{ partial "posts.html" . }}
|
{{ partial "posts.html" . }}
|
||||||
{{ partial "webrings.html" . }}
|
{{ partial "webrings.html" . }}
|
||||||
|
|
|
@ -1,7 +1,6 @@
|
||||||
{{- define "main" -}}
|
{{- define "main" -}}
|
||||||
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
||||||
<main id="main" tabindex="-1"
|
<main itemprop="hasPart" itemscope="" itemtype="https://schema.org/SocialMediaPosting" itemid="{{ .Site.Params.CanonicalBaseURL }}{{ $canonicalRelPermalink }}">
|
||||||
itemprop="hasPart" itemscope="" itemtype="https://schema.org/SocialMediaPosting" itemid="{{ .Site.Params.CanonicalBaseURL }}{{ $canonicalRelPermalink }}">
|
|
||||||
<link itemprop="isPartOf" href="{{ .Site.Params.CanonicalBaseURL }}/" />
|
<link itemprop="isPartOf" href="{{ .Site.Params.CanonicalBaseURL }}/" />
|
||||||
{{ partial "full-article.html" . }}
|
{{ partial "full-article.html" . }}
|
||||||
{{ partial "webmentions.html" . }}
|
{{ partial "webmentions.html" . }}
|
||||||
|
|
|
@ -2,7 +2,7 @@
|
||||||
{{- if and (not .IsHome) (not .Parent.IsHome) -}}
|
{{- if and (not .IsHome) (not .Parent.IsHome) -}}
|
||||||
<hr />
|
<hr />
|
||||||
<nav aria-labelledby="bc-label"
|
<nav aria-labelledby="bc-label"
|
||||||
itemscope="" itemprop="breadcrumb" itemtype="https://schema.org/BreadcrumbList">
|
itemscope="" itemprop="breadcrumb" itemtype="https://schema.org/BreadcrumbList" itemref="body">
|
||||||
<span id="bc-label">You are here:</span>
|
<span id="bc-label">You are here:</span>
|
||||||
<ol>
|
<ol>
|
||||||
{{ template "breadcrumbnav" (dict "p1" . "p2" .) }}
|
{{ template "breadcrumbnav" (dict "p1" . "p2" .) }}
|
||||||
|
|
|
@ -34,7 +34,6 @@
|
||||||
<link rel="alternate" type="application/atom+xml" href="{{ site.BaseURL }}posts/atom.xml" title="Articles" />
|
<link rel="alternate" type="application/atom+xml" href="{{ site.BaseURL }}posts/atom.xml" title="Articles" />
|
||||||
<link rel="alternate" type="application/atom+xml" href="{{ site.BaseURL }}notes/atom.xml" title="Notes" />
|
<link rel="alternate" type="application/atom+xml" href="{{ site.BaseURL }}notes/atom.xml" title="Notes" />
|
||||||
{{- end }}
|
{{- end }}
|
||||||
<link rel="authorization_endpoint" href="{{ site.Params.IndieAuth }}" />
|
|
||||||
<title>{{ .Title }}{{ if and (lt (len .Title) 54) (ne $canonicalRelPermalink "/") }} - Seirdy{{ end }}</title>
|
<title>{{ .Title }}{{ if and (lt (len .Title) 54) (ne $canonicalRelPermalink "/") }} - Seirdy{{ end }}</title>
|
||||||
{{ $description := .Site.Params.Description -}}
|
{{ $description := .Site.Params.Description -}}
|
||||||
{{- if .Params.description -}}
|
{{- if .Params.description -}}
|
||||||
|
@ -82,4 +81,5 @@
|
||||||
<meta property="og:image:alt" content="{{ $og_image_alt }}" />
|
<meta property="og:image:alt" content="{{ $og_image_alt }}" />
|
||||||
<meta property="og:url" content="{{ .Site.Params.CanonicalBaseURL }}{{ $canonicalRelPermalink }}" />
|
<meta property="og:url" content="{{ .Site.Params.CanonicalBaseURL }}{{ $canonicalRelPermalink }}" />
|
||||||
<meta property="og:description" content="{{ $description }}" />
|
<meta property="og:description" content="{{ $description }}" />
|
||||||
|
{{ hugo.Generator }}
|
||||||
</head>
|
</head>
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
<header>
|
<header>
|
||||||
<a href="#main">Skip to content</a>
|
|
||||||
<nav aria-label="Global">
|
<nav aria-label="Global">
|
||||||
<ul>
|
<ul>
|
||||||
{{- $currentPage := . -}}
|
{{- $currentPage := . -}}
|
||||||
|
|
|
@ -10,7 +10,7 @@
|
||||||
<meta itemprop="urlTemplate" content="{{ $action }}?q={q}" />
|
<meta itemprop="urlTemplate" content="{{ $action }}?q={q}" />
|
||||||
</label>
|
</label>
|
||||||
<div><!--We need the extra divs to serve as pseudo-table-cells.-->
|
<div><!--We need the extra divs to serve as pseudo-table-cells.-->
|
||||||
<input itemprop="query-input" id="search" type="search" required="" aria-required="true" autocomplete="on" name="q" />
|
<input itemprop="query-input" id="search" type="search" required="" name="q" />
|
||||||
<div><input type="submit" value="search" /></div>
|
<div><input type="submit" value="search" /></div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
|
@ -8,7 +8,7 @@
|
||||||
<input type="hidden" name="target" value="{{ .Site.Params.canonicalBaseURL }}{{ $canonicalRelPermalink }}" />
|
<input type="hidden" name="target" value="{{ .Site.Params.canonicalBaseURL }}{{ $canonicalRelPermalink }}" />
|
||||||
<label for="menchie">URL of page linking here</label>
|
<label for="menchie">URL of page linking here</label>
|
||||||
<div><!--We need the extra divs to serve as pseudo-table-cells.-->
|
<div><!--We need the extra divs to serve as pseudo-table-cells.-->
|
||||||
<input id="menchie" type="url" autocomplete="off" required="" aria-required="true" name="source" /><!--disable autocomplete bc it's a unique URL.-->
|
<input id="menchie" type="url" required="" name="source" />
|
||||||
<div><input type="submit" value="submit" /></div>
|
<div><input type="submit" value="submit" /></div>
|
||||||
</div>
|
</div>
|
||||||
</form>
|
</form>
|
||||||
|
|
|
@ -1,8 +1,7 @@
|
||||||
{{- define "main" -}}
|
{{- define "main" -}}
|
||||||
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
{{- $canonicalRelPermalink := .RelPermalink | replaceRE "^/~seirdy/" "/" }}
|
||||||
{{- .Scratch.Set "codeIndex" 1 -}}
|
{{- .Scratch.Set "codeIndex" 1 -}}
|
||||||
<main id="main" tabindex="-1"
|
<main itemprop="mainEntity" itemscope="" itemtype="https://schema.org/BlogPosting{{ with .Params.articleType }} https://schema.org/{{ . }}{{ end }}" itemid="{{ .Site.Params.CanonicalBaseURL }}{{ $canonicalRelPermalink }}">
|
||||||
itemprop="mainEntity" itemscope="" itemtype="https://schema.org/BlogPosting{{ with .Params.articleType }} https://schema.org/{{ . }}{{ end }}" itemid="{{ .Site.Params.CanonicalBaseURL }}{{ $canonicalRelPermalink }}">
|
|
||||||
<link itemprop="isPartOf" href="{{ .Site.Params.CanonicalBaseURL }}/" />
|
<link itemprop="isPartOf" href="{{ .Site.Params.CanonicalBaseURL }}/" />
|
||||||
{{ partial "full-article.html" . }}
|
{{ partial "full-article.html" . }}
|
||||||
{{ partial "webmentions.html" . }}
|
{{ partial "webmentions.html" . }}
|
||||||
|
|
|
@ -61,7 +61,7 @@ validate_feed() {
|
||||||
# 'should not contian" has a false positive triggered by ARIA
|
# 'should not contian" has a false positive triggered by ARIA
|
||||||
# entries with the same timestamp isn't a big deal
|
# entries with the same timestamp isn't a big deal
|
||||||
# unregistered link relationship is a false positive caused by an unknown namespace.
|
# unregistered link relationship is a false positive caused by an unknown namespace.
|
||||||
full_regex="Use of unknown namespace|Self reference doesn't match|should not contain (role|aria-labelledby|aria-label|aria-describedby|aria-hidden|controls) attribute|$rel_mention_string|entries with the same value|Validating $url"
|
full_regex="Use of unknown namespace|Self reference doesn't match|should not contain (role|aria-labelledby|aria-label|aria-describedby) attribute|$rel_mention_string|entries with the same value|Validating $url"
|
||||||
|
|
||||||
run_validator \
|
run_validator \
|
||||||
| grep -Ev "$full_regex"
|
| grep -Ev "$full_regex"
|
||||||
|
|
Loading…
Reference in a new issue