From fba366ca111bc783dc3e3920f2b1b2e5e36b10a2 Mon Sep 17 00:00:00 2001 From: Rohan Kumar Date: Fri, 17 Jun 2022 20:36:35 -0700 Subject: [PATCH] Check and fix broken links --- .gitignore | 1 + Makefile | 8 ++++ content/_index.md | 2 +- content/notes/answer-engines.md | 2 +- content/notes/signal-security.md | 2 +- .../posts/search-engines-with-own-indexes.md | 2 +- content/posts/website-best-practices.gmi | 6 +-- content/posts/website-best-practices.md | 8 ++-- layouts/partials/webmentions.html | 11 +++-- linter-configs/htmltest.yml | 46 +++++++++++++++++++ linter-configs/lychee.toml | 8 ---- scripts/bin/check-whole-site | 3 +- scripts/bin/firefox | 7 +++ 13 files changed, 84 insertions(+), 22 deletions(-) create mode 100644 linter-configs/htmltest.yml delete mode 100644 linter-configs/lychee.toml create mode 100755 scripts/bin/firefox diff --git a/.gitignore b/.gitignore index e0499c4..fd5126f 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ public_*/ .hugo_build.lock csv/webrings.csv results/ +linter-configs/htmltest/ diff --git a/Makefile b/Makefile index 649dd5a..1d944a6 100644 --- a/Makefile +++ b/Makefile @@ -52,6 +52,14 @@ validate-json: validate-html: $(VNU) --stdout --format json --skip-non-html --also-check-svg $(OUTPUT_DIR) | sh scripts/filter-vnu.sh +.PHONY: htmlproofer +htmlproofer: + htmlproofer $(OUTPUT_DIR) --disable-external --report-invalid-tags --report-missing-names --report-missing-doctype --report-eof-tags --report-mismatched-tags --check-html --check-opengraph --check-favicon --empty-alt-ignore --file-ignore $(OUTPUT_DIR)/search/index.html --url-ignore '../music.txt' + +.PHONY: htmltest +htmltest: + htmltest -c linter-configs/htmltest.yml $(OUTPUT_DIR) + .PHONY: hint hint: hugo .hintrc-local hint --config .hintrc-local -f codeframe $(OUTPUT_DIR) diff --git a/content/_index.md b/content/_index.md index f0d012a..4af687d 100644 --- a/content/_index.md +++ b/content/_index.md @@ -29,7 +29,7 @@ This is a basic [IndieWeb site](https://indieweb.org/) that contains articles, n About me -------- -The Director's Cut of my bio is at my [About page](/about.html "{itemprop='subjectOf'}"). +The Director's Cut of my bio is at my [About page](./about/ "{itemprop='subjectOf'}").
diff --git a/content/notes/answer-engines.md b/content/notes/answer-engines.md index d387588..3d1a8bc 100644 --- a/content/notes/answer-engines.md +++ b/content/notes/answer-engines.md @@ -13,7 +13,7 @@ I read your article and share similar concerns. Using Microsoft Bing and Google Most of these agreements are confidential, so users don't really get transparency. On rare occasions, certain engines have successfully negotiated exceptions to result-mixing, but we don't know what other terms are involved in these agreements. -I've catalogued some other engines in my post {{}}{{}}{{}}, and there are many alternatives that don't have this conflict of interest. +I've catalogued some other engines in my post {{}}{{}}{{}}, and there are many alternatives that don't have this conflict of interest. Most of these are not as good as Google/Bing when it comes to finding specific pieces of information, but many are far better when it comes to website discovery under a particular topic. Mainstream engines always seem to serve up webpages carefully designed to answer a specific question when I'm really just trying to learn about a larger topic. When using an engine like Marginalia or Alexandria, I can find "webpages about a topic" rather than "webpages designed to show up for a particular query". diff --git a/content/notes/signal-security.md b/content/notes/signal-security.md index bad1ef0..ce8cdce 100644 --- a/content/notes/signal-security.md +++ b/content/notes/signal-security.md @@ -10,5 +10,5 @@ replyAuthorURI: "https://tuxcrafting.online/" --- What do you mean by "false sense of security"? Signal's cryptography is pretty solid. It's one of the only messengers with such a lack of metadata leakage; if you combine it with Tor you can add enough noise to the network-layer metadata to be more private than almost any alternative. -Don't get me wrong, [I dislike it on the grounds of being a closed platform](../../../../../posts/2021/01/27/whatsapp-and-the-domestication-of-users/), but few alternatives exist that support both offline messaging and have such little metadata leakage. I'm willing to hear suggested alternatives that do not bake a "cryptographically-secure, decentralized pyramid scheme" (cryptocurrency) into the protocol. I'm not aware of any such alternative at the moment. +Don't get me wrong, [I dislike it on the grounds of being a closed platform]({{}}), but few alternatives exist that support both offline messaging and have such little metadata leakage. I'm willing to hear suggested alternatives that do not bake a "cryptographically-secure, decentralized pyramid scheme" (cryptocurrency) into the protocol. I'm not aware of any such alternative at the moment. diff --git a/content/posts/search-engines-with-own-indexes.md b/content/posts/search-engines-with-own-indexes.md index 9646989..bfb30af 100644 --- a/content/posts/search-engines-with-own-indexes.md +++ b/content/posts/search-engines-with-own-indexes.md @@ -271,7 +271,7 @@ Some search engines are integrated into other appliances, but don't have a web p - Apple's search engine is usable in the form of "Siri Suggested Websites". Its index is built from the Applebot web crawler. If Apple already has working search engine, it's not much of a stretch to say that they'll make a web interface for it someday. -- Amazon bought Alexa Internet (a web traffic analysis company, at the time unrelated to the Amazon Alexa virtual assistant) and discontinued its website ranking product. Amazon still runs the relevant crawlers, and also have [a bot called "Amazonbot"](developer.amazon.com/support/amazonbot). While Applebot powers the Siri personal assistant, Amazonbot powers the Alexa personal assistant to answer even more questions for customers. Crawling the web to answer questions is the basis of a search engine. +- Amazon bought Alexa Internet (a web traffic analysis company, at the time unrelated to the Amazon Alexa virtual assistant) and discontinued its website ranking product. Amazon still runs the relevant crawlers, and also have [a bot called "Amazonbot"](https://developer.amazon.com/support/amazonbot). While Applebot powers the Siri personal assistant, Amazonbot powers the Alexa personal assistant to answer even more questions for customers. Crawling the web to answer questions is the basis of a search engine. Graveyard --------- diff --git a/content/posts/website-best-practices.gmi b/content/posts/website-best-practices.gmi index a628eaf..72180cf 100644 --- a/content/posts/website-best-practices.gmi +++ b/content/posts/website-best-practices.gmi @@ -1450,8 +1450,8 @@ This article is, and will probably always be, an ongoing work-in-progress. Some * Keyboard-driven browsers and extensions. Qutebrowser, Luakit, visurf, Tridactyl, etc. * Ways to support non-mainstream and older browsers by supporting subsets of specifications and using progressive enhancement. * Avoiding "_blank" targets in URLs unless absolutely necessary. -* Ways to improve comprehension by readers who struggle to understand non-literal language (certain manifestations of cognitive disabilities, non-native speakers unfamiliar with idioms, etc.). I might wait until this WAI draft specification matures and its vocabularies gain adoption before going in depth: -=> https://w3c.github.io/personalization-semantics/help/index.html Personalization Help and Support 1.0 +* Ways to improve comprehension by readers who struggle to understand non-literal language (certain manifestations of cognitive disabilities, non-native speakers unfamiliar with idioms, etc.). I might wait until this WAI- draft specification matures and its vocabularies gain adoption before going in depth: +=> https://www.w3.org/TR/adapt-help/ WAI-Adapt: Help and Support Module ## Conclusion @@ -1563,7 +1563,7 @@ A special thanks goes out to GothAlice for the questions she answered in #webdev ³ Here's an overview of PE and my favorite write-up on the subject. => https://en.wikipedia.org/wiki/Progressive_enhancement Progressive Enhancement (Wikipedia) -=> https://whalecoiner.com/articles/progressive-enhancement Yes, progressive enhancement is a fucking moral argument +=> https://web.archive.org/web/20220316060312/https://whalecoiner.com/articles/progressive-enhancement Yes, progressive enhancement is a fucking moral argument ⁴ Each of these flows can be visually displayed using a breadcrumbs list; doing so can meet a AAA WCAG criterion: diff --git a/content/posts/website-best-practices.md b/content/posts/website-best-practices.md index 2c3d079..d71e82c 100644 --- a/content/posts/website-best-practices.md +++ b/content/posts/website-best-practices.md @@ -1110,7 +1110,9 @@ Readers with hand tremors depend on this space to scroll without accidentally se {{}} {{}}
-I made sure to leave enough non-interactive space in my homepage’s webring list to accommodate a 48 px tap target, with extra space in between. + +I made sure to leave enough non-interactive space in [my homepage's webring list]({{}}) to accommodate a 48 px tap target, with extra space in between. +
{{
}} @@ -1500,7 +1502,7 @@ This article is, and will probably always be, an ongoing work-in-progress. Some * Avoiding `_blank` targets in URLs unless absolutely necessary. -* Ways to improve compre­hension by readers who struggle to understand non-literal language (certain cognitive disabilities, non-native speakers unfamiliar with idioms, etc.). I might wait until the WAI [Personali­zation Help and Support 1.0](https://w3c.github.io/personalization-semantics/help/index.html) draft specification matures and its vocabularies gain adoption before going in depth. +* Ways to improve compre­hension by readers who struggle to understand non-literal language (certain cognitive disabilities, non-native speakers unfamiliar with idioms, etc.). I might wait until the [WAI-Adapt: Help and Support Module](https://www.w3.org/TR/adapt-help/) draft specification matures and its vocabularies gain adoption before going in depth. * Other accessible writing tips, maybe after I get a copy of {{}} by {{. A relevant excerpt on writing accessibly is [on A List Apart](https://alistapart.com/article/standards-for-writing-accessibly/). @@ -1601,7 +1603,7 @@ A special thanks goes out to GothAlice for the questions she answered in # [^2]: Some addons will have reduced functionality; for instance, [Tridactyl](https://github.com/tridactyl/tridactyl) can't create an `