From 42ce6ceb6f8164d50eab9a6e359faf4e0f886738 Mon Sep 17 00:00:00 2001 From: Lee Cattarin Date: Wed, 18 Feb 2026 10:58:36 -0800 Subject: [PATCH] chugging away, no i am not splitting this into fine-grained commits --- .editorconfig | 2 +- _includes/footer.njk | 24 +++ _includes/header.njk | 22 +++ _includes/{ => layouts}/base.njk | 9 +- _includes/layouts/page.njk | 6 + _includes/layouts/post.njk | 8 + _includes/postlist.njk | 2 +- css/main.css | 199 ++++++++++++++++++++- css/nav.css | 190 ++++++++++++++++++++ eleventy.config.js | 16 +- package-lock.json | 42 ++++- package.json | 6 +- src/img/2026/cormorant.jpg | Bin 0 -> 83837 bytes src/index.njk | 7 +- src/pages/about.md | 8 + src/pages/colophon.md | 3 + src/pages/contact.md | 8 + src/pages/gallery.njk | 16 ++ src/pages/pages.11tydata.js | 6 + src/pages/reference.njk | 16 ++ src/pages/style.md | 123 +++++++++++++ src/posts/2026/2026-01-05-moving-images.md | 137 ++++++++++++++ src/posts/2026/2026-02-17-sample.md | 2 +- src/posts/posts.11tydata.js | 2 +- src/src.11tydata.js | 3 + 25 files changed, 844 insertions(+), 13 deletions(-) create mode 100644 _includes/footer.njk create mode 100644 _includes/header.njk rename _includes/{ => layouts}/base.njk (88%) create mode 100644 _includes/layouts/page.njk create mode 100644 _includes/layouts/post.njk create mode 100644 css/nav.css create mode 100644 src/img/2026/cormorant.jpg create mode 100644 src/pages/about.md create mode 100644 src/pages/colophon.md create mode 100644 src/pages/contact.md create mode 100644 src/pages/gallery.njk create mode 100644 src/pages/pages.11tydata.js create mode 100644 src/pages/reference.njk create mode 100644 src/pages/style.md create mode 100644 src/posts/2026/2026-01-05-moving-images.md create mode 100644 src/src.11tydata.js diff --git a/.editorconfig b/.editorconfig index a4d523e..69e2c6d 100644 --- a/.editorconfig +++ b/.editorconfig @@ -8,5 +8,5 @@ charset = utf-8 indent_style = tab indent_size = 2 -[.{yaml,yml,md,njk}] +[*.{yaml,yml,md,njk}] indent_style = space diff --git a/_includes/footer.njk b/_includes/footer.njk new file mode 100644 index 0000000..4afee14 --- /dev/null +++ b/_includes/footer.njk @@ -0,0 +1,24 @@ + diff --git a/_includes/header.njk b/_includes/header.njk new file mode 100644 index 0000000..e40a95c --- /dev/null +++ b/_includes/header.njk @@ -0,0 +1,22 @@ +
+ + + + + +
diff --git a/_includes/base.njk b/_includes/layouts/base.njk similarity index 88% rename from _includes/base.njk rename to _includes/layouts/base.njk index e7c4a07..33d59e9 100644 --- a/_includes/base.njk +++ b/_includes/layouts/base.njk @@ -16,6 +16,7 @@ {# Styles #} + {# Fonts #} @@ -26,5 +27,11 @@ - {{ content | safe }} + {% include "header.njk" %} + +
+ {{ content | safe }} +
+ + {% include "footer.njk" %} diff --git a/_includes/layouts/page.njk b/_includes/layouts/page.njk new file mode 100644 index 0000000..4112e92 --- /dev/null +++ b/_includes/layouts/page.njk @@ -0,0 +1,6 @@ +--- +layout: base.njk +--- +

{{ title }}

+ +{{ content | safe }} diff --git a/_includes/layouts/post.njk b/_includes/layouts/post.njk new file mode 100644 index 0000000..24b2445 --- /dev/null +++ b/_includes/layouts/post.njk @@ -0,0 +1,8 @@ +--- +layout: base.njk +--- +
+

{{ title }}

+ + {{ content | safe }} +
diff --git a/_includes/postlist.njk b/_includes/postlist.njk index 4007a32..cb892d6 100644 --- a/_includes/postlist.njk +++ b/_includes/postlist.njk @@ -7,7 +7,7 @@ {% endif %}

{{ post.data.title }}

diff --git a/css/main.css b/css/main.css index 714cafc..c616143 100644 --- a/css/main.css +++ b/css/main.css @@ -3,10 +3,12 @@ --font-family: 'Atkinson Hyperlegible Next', sans-serif; --font-family-code: 'Atkinson Hyperlegible Mono', monospace; + --color-dark: #2e303e; --color-dark-alt: #3c3f52; --color-light: #ebeeef; --color-light-alt: #dbe1e3; + --color-teal-dark: #18737b; --color-teal-light: #25b0bc; --color-pink-dark: #94195d; @@ -47,8 +49,12 @@ --color-blue: light-dark(var(--color-blue-dark), var(--color-blue-light)); --color-purple: light-dark(var(--color-purple-dark), var(--color-purple-light)); --color-grey: light-dark(var(--color-grey-dark), var(--color-grey-light)); + + --header-offset: 3.1rem; } +/* Base */ + * { box-sizing: border-box; margin: 0; @@ -59,6 +65,195 @@ body { font-family: var(--font-family); color: var(--color-text); background-color: var(--color-bg); - max-width: 60vw; - margin: 0 auto; } + +main { + width: 60vw; + margin: 0 auto; + scroll-margin-top: var(--header-offset); +} + +@media (max-width: 650px) { + main { + width: 92vw; + } +} + +/* Headers */ +h1, h2, h3, h4, h5, h6 { + line-height: 1.25; + color: var(--color-teal); + scroll-margin-top: var(--header-offset); +} + +h1 { + margin-top: 3rem; + font-size: 3.5rem; +} +h2 { + margin-top: 1rem; + font-size: 2.2rem; +} +h3 { + margin-top: 1.5rem; + font-size: 1.6rem; +} +h4, h5, h6 { + margin-top: 1rem; + font-size: 1.2rem; +} + +/* Images */ +img { + display: block; + max-width: 100%; + height: auto; + border-radius: 1rem; +} + +/* Paragraphs */ +p { + margin: 1.25rem 0; + line-height: 1.4; +} + +strong, +b { + font-weight: 900; +} + +/* Links */ +a { + color: var(--color-font); + border-radius: 1rem; + text-decoration: underline; + text-decoration-style: solid; + text-decoration-thickness: .2em; + text-decoration-color: var(--color-teal); + transition: text-decoration-thickness .5s; + padding: 0 .1rem; /* These stop the focus outline from covering text */ + margin: 0 .1rem; +} + +a:focus-visible { + text-decoration: none; + outline: .15rem solid var(--color-teal); +} + +@media (any-hover: hover) { + a:hover { + text-decoration-thickness: .4em; + } +} + +a:active { + text-decoration-thickness: .4em; +} + +/* Lists */ +::marker { + color: var(--color-pink); +} + +ul, ol, li { + margin-left: 1rem; +} + +li { + line-height: 1.5; +} + +li ul, li ol { + margin: .5rem 0; +} + +/* Blockquotes */ +blockquote { + margin: .5rem 1rem; + padding: 0 1rem; + border-radius: .25rem 1rem 1rem .25rem; + line-height: 1.25; + border-left: .5rem solid var(--color-pink); +} + +blockquote, +blockquote p, +blockquote ol, +blockquote ul { + background-color: var(--color-bg-alt); + padding: .5rem; +} + +blockquote p { + margin: 0; +} + +/* Tables */ +table { + width: 100%; + border-spacing: 0; /* border collapse doesn't play nice with radii */ + border-radius: .3rem; + border: thin solid var(--color-pink); +} + +th { + color: var(--color-bg); + background-color: var(--color-pink); +} + +th, td { + padding: .5rem; + text-align: left; +} + +tr:nth-child(even) { background-color: var(--color-bg-alt); } +th:not(:first-child) { border-left: thin solid var(--color-bg); } +th:first-child { border-top-left-radius: .25rem; } +th:last-child { border-top-right-radius: .25rem; } +td:not(:first-child) { border-left: thin solid var(--color-pink); } + +/* Code */ +/* Syntax highlighting in highlighting.css */ +code, +pre { + font-family: var(--font-family-code); + background-color: var(--color-bg-alt); + font-size: .9rem; +} + +code { + padding: .2rem; + border-radius: .25rem; +} + +pre { + display: block; + margin: 1rem 0; + padding: 1rem; + line-height: 1.5; + white-space: pre-wrap; + word-break: break-word; + overflow-wrap: break-word; + tab-size: 4; + border-radius: .5rem; +} + +pre code { + padding: 0; +} + +/* Times */ +time { + color: var(--color-grey); +} + +/* Horizontal rules */ +hr { + color: var(--color-teal); + border: .25rem solid var(--color-teal); + margin: 2rem 0; +} +hr:last-child { + margin-bottom: 0; +} + diff --git a/css/nav.css b/css/nav.css new file mode 100644 index 0000000..a1b3d03 --- /dev/null +++ b/css/nav.css @@ -0,0 +1,190 @@ +/* Header */ +header { + position: sticky; + top: 0; + background-color: var(--color-bg); + box-shadow: 0 .25rem .15rem var(--color-shadow); + padding: .75rem 0; +} + +/* Header links */ +header a { + border-radius: 1rem; + border: .125rem solid var(--color-pink); + color: var(--color-pink); + text-decoration: none; + padding: 0 .25rem; + box-shadow: .15rem .15rem var(--color-shadow); + font-size: 1.2rem; + padding-right: .35rem; + /* click animation handling */ + position: relative; + top: 0; + left: 0; + transition: top .05s ease-in, left .05s ease-in; +} + +header a:focus-visible { + color: var(--color-bg); + border-color: var(--color-pink); + background-color: var(--color-pink); + outline: none; +} + +@media (any-hover: hover) { + header a:hover { + color: var(--color-bg); + border-color: var(--color-pink); + background-color: var(--color-pink); + } +} + +@media (forced-colors: active) { + .site-header a:focus-visible { + outline-offset: .125rem; + outline: .125rem solid; + } + + @media (any-hover: hover) { + .site-header a:hover { + outline-offset: .125rem; + outline: .125rem solid; + } + } +} + +/* Click animation */ +header a:active { + top: .1rem; + left: .1rem; + box-shadow: .05rem .05rem var(--color-shadow); +} + +/* Current page */ +header a[aria-current="page"] { + border-color: var(--color-teal); + color: var(--color-teal); +} + +header a[aria-current="page"]:focus-visible { + color: var(--color-bg); + border-color: var(--color-teal); + background-color: var(--color-teal); +} + +@media (any-hover: hover) { + header a[aria-current="page"]:hover { + color: var(--color-bg); + background-color: var(--color-teal); + border-color: var(--color-teal); + } +} + +/* Header link icons */ +header i { + color: var(--color-teal); + padding-left: .25rem; +} + +header a[aria-current="page"] i { + color: var(--color-pink); +} + +header a:focus-visible i, +a[aria-current="page"] a:focus-visible i { + color: var(--color-bg); +} + +@media (any-hover: hover) { + header a:hover i, + header a[aria-current="page"]:hover i { + color: var(--color-bg); + } +} + +/* Skip link */ +#skip { + left: -999px; + position: absolute; + top: auto; + width: 1px; + height: 1px; + overflow: hidden; + z-index: -99; +} + +#skip:focus-visible { + display: inline-block; + left: auto; + top: auto; + width: auto; + height: auto; + overflow: auto; + margin: 0 10%; + z-index: 999; +} + +/* Nav */ +header ul { + display: flex; + list-style: none; + gap: 1rem; + justify-content: center; +} + +@media (max-width: 650px) { + .menu-text { + display: none; /* Icons only on small screens */ + } + + header a { + padding: .15rem .5rem; + } + + header i { + padding: 0; + } +} + +/* Footer */ +footer { + padding: 1rem 0; + font-size: .9rem; +} + +footer ul { + display: flex; + list-style: none; + gap: .5rem; + justify-content: center; +} + +footer li { + margin: 0; +} + +footer li:nth-child(2)::before, +footer li:nth-child(2)::after { + content: " ● " / ""; + color: var(--color-teal); +} + +@media (max-width: 650px) { + footer ul { + flex-flow: column; + text-align: center; + } + + footer li:nth-child(2)::before, + footer li:nth-child(2)::after { + content: none; + } +} + +footer a { + text-decoration-color: var(--color-pink); +} + +footer a:focus-visible { + outline-color: var(--color-pink); +} diff --git a/eleventy.config.js b/eleventy.config.js index 7ff7ade..f54c3d7 100644 --- a/eleventy.config.js +++ b/eleventy.config.js @@ -1,7 +1,14 @@ -import { feedPlugin } from "@11ty/eleventy-plugin-rss"; import { eleventyImageTransformPlugin } from "@11ty/eleventy-img"; +import eleventyNavigationPlugin from "@11ty/eleventy-navigation"; +import { feedPlugin } from "@11ty/eleventy-plugin-rss"; +import syntaxHighlight from "@11ty/eleventy-plugin-syntaxhighlight"; export default async function(eleventyConfig) { + /* Filters */ + eleventyConfig.addFilter("removeBasicTags", (tags) => { + return tags.filter(tag => ["all", "posts", "gallery", "reference"].indexOf(tag) === -1); + }); + /* Passthroughs */ eleventyConfig.addPassthroughCopy({"css": "assets/css"}); @@ -43,6 +50,12 @@ export default async function(eleventyConfig) { }, }); + /* Navigation */ + eleventyConfig.addPlugin(eleventyNavigationPlugin); + + /* Syntax highlighting */ + eleventyConfig.addPlugin(syntaxHighlight); + /* Watch when serving */ eleventyConfig.addWatchTarget("css"); }; @@ -51,6 +64,7 @@ export const config = { dir: { input: "src", includes: "../_includes", + layouts: "../_includes/layouts", data: "../_data" }, markdownTemplateEngine: "njk", diff --git a/package-lock.json b/package-lock.json index af81979..933318b 100644 --- a/package-lock.json +++ b/package-lock.json @@ -11,7 +11,9 @@ "devDependencies": { "@11ty/eleventy": "^3.1.2", "@11ty/eleventy-img": "^6.0.4", - "@11ty/eleventy-plugin-rss": "^2.0.4" + "@11ty/eleventy-navigation": "^1.0.5", + "@11ty/eleventy-plugin-rss": "^2.0.4", + "@11ty/eleventy-plugin-syntaxhighlight": "^5.0.2" } }, "node_modules/@11ty/dependency-tree": { @@ -165,6 +167,20 @@ "url": "https://opencollective.com/11ty" } }, + "node_modules/@11ty/eleventy-navigation": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@11ty/eleventy-navigation/-/eleventy-navigation-1.0.5.tgz", + "integrity": "sha512-zb6xe29cM9viSdYtZywKIkJw2HIROyBINdBcFWC9uD0c/jYOTAex5nwy3HNEuh5t6/Ld/S9V4gEizfmeYuYpCQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "dependency-graph": "^1.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/11ty" + } + }, "node_modules/@11ty/eleventy-plugin-bundle": { "version": "3.0.7", "resolved": "https://registry.npmjs.org/@11ty/eleventy-plugin-bundle/-/eleventy-plugin-bundle-3.0.7.tgz", @@ -201,6 +217,20 @@ "url": "https://opencollective.com/11ty" } }, + "node_modules/@11ty/eleventy-plugin-syntaxhighlight": { + "version": "5.0.2", + "resolved": "https://registry.npmjs.org/@11ty/eleventy-plugin-syntaxhighlight/-/eleventy-plugin-syntaxhighlight-5.0.2.tgz", + "integrity": "sha512-T6xVVRDJuHlrFMHbUiZkHjj5o1IlLzZW+1IL9eUsyXFU7rY2ztcYhZew/64vmceFFpQwzuSfxQOXxTJYmKkQ+A==", + "dev": true, + "license": "MIT", + "dependencies": { + "prismjs": "^1.30.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/11ty" + } + }, "node_modules/@11ty/eleventy-utils": { "version": "2.0.7", "resolved": "https://registry.npmjs.org/@11ty/eleventy-utils/-/eleventy-utils-2.0.7.tgz", @@ -2059,6 +2089,16 @@ "node": ">=12" } }, + "node_modules/prismjs": { + "version": "1.30.0", + "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.30.0.tgz", + "integrity": "sha512-DEvV2ZF2r2/63V+tK8hQvrR2ZGn10srHbXviTlcv7Kpzw8jWiNTqbVgjO3IY8RxrrOUF8VPMQQFysYYYv0YZxw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, "node_modules/prr": { "version": "1.0.1", "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", diff --git a/package.json b/package.json index 0b7f06f..6286483 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "description": "Lee's personal website, take 2, built with 11ty", "main": "index.js", "scripts": { - "serve": "rm -rf _site && npx @11ty/eleventy --serve" + "start": "rm -rf _site && npx @11ty/eleventy --serve --quiet" }, "keywords": [], "author": "Lee Cattarin", @@ -13,6 +13,8 @@ "devDependencies": { "@11ty/eleventy": "^3.1.2", "@11ty/eleventy-img": "^6.0.4", - "@11ty/eleventy-plugin-rss": "^2.0.4" + "@11ty/eleventy-navigation": "^1.0.5", + "@11ty/eleventy-plugin-rss": "^2.0.4", + "@11ty/eleventy-plugin-syntaxhighlight": "^5.0.2" } } diff --git a/src/img/2026/cormorant.jpg b/src/img/2026/cormorant.jpg new file mode 100644 index 0000000000000000000000000000000000000000..eedff75d0c7b49a8d1a0c26994306fd21fa72f17 GIT binary patch literal 83837 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 literal 0 HcmV?d00001 diff --git a/src/index.njk b/src/index.njk index 19eaf5e..00ad05f 100644 --- a/src/index.njk +++ b/src/index.njk @@ -1,11 +1,14 @@ --- -layout: base.njk -eleventyExcludeFromCollections: true pagination: data: collections.posts size: 13 reverse: true alias: postlist +eleventyNavigation: + key: home + order: 3 +icon: fa fa-solid fa-crow +title: home ---

Home

diff --git a/src/pages/about.md b/src/pages/about.md new file mode 100644 index 0000000..e133ec8 --- /dev/null +++ b/src/pages/about.md @@ -0,0 +1,8 @@ +--- +eleventyNavigation: + key: about + order: 4 +title: about +icon: fa-regular fa-user +label: about Lee +--- diff --git a/src/pages/colophon.md b/src/pages/colophon.md new file mode 100644 index 0000000..c8fc1c4 --- /dev/null +++ b/src/pages/colophon.md @@ -0,0 +1,3 @@ +--- +title: colophon +--- diff --git a/src/pages/contact.md b/src/pages/contact.md new file mode 100644 index 0000000..edb4cb4 --- /dev/null +++ b/src/pages/contact.md @@ -0,0 +1,8 @@ +--- +eleventyNavigation: + key: contact + order: 5 +title: contact +icon: fa-solid fa-envelope-open-text +label: contact Lee +--- diff --git a/src/pages/gallery.njk b/src/pages/gallery.njk new file mode 100644 index 0000000..b9dd769 --- /dev/null +++ b/src/pages/gallery.njk @@ -0,0 +1,16 @@ +--- +pagination: + data: collections["gallery"] + size: 13 + reverse: true + alias: postlist +eleventyNavigation: + key: gallery + order: 2 +title: gallery +icon: fa-regular fa-images +label: view the gallery +--- +

the gallery page is for finished art

+ +{% include "postlist.njk" %} diff --git a/src/pages/pages.11tydata.js b/src/pages/pages.11tydata.js new file mode 100644 index 0000000..647410f --- /dev/null +++ b/src/pages/pages.11tydata.js @@ -0,0 +1,6 @@ +export default { + permalink: function ({ title }) { + return `/${this.slugify(title)}/index.html`; + }, + layout: "page.njk" +}; diff --git a/src/pages/reference.njk b/src/pages/reference.njk new file mode 100644 index 0000000..52da598 --- /dev/null +++ b/src/pages/reference.njk @@ -0,0 +1,16 @@ +--- +pagination: + data: collections["reference"] + size: 13 + reverse: true + alias: postlist +eleventyNavigation: + key: reference + order: 2 +title: reference +icon: fa-regular fa-folder-open +label: read reference posts +--- +

the reference page is for informational posts

+ +{% include "postlist.njk" %} diff --git a/src/pages/style.md b/src/pages/style.md new file mode 100644 index 0000000..1fdbd82 --- /dev/null +++ b/src/pages/style.md @@ -0,0 +1,123 @@ +--- +title: style +--- + +Adaped from an introduction to Markdown in order to test and display styling of basic components of the site. + +## Heading level 2 + +Since your title (defined in the front matter) is your heading level 1, you should never use another heading level 1 in your body. + +### Heading level 3 + +The number of pound signs determines the heading level. + +#### Heading level 4 + +It's also important not to skip heading levels. Don't jump from a 2 to a 4 or similar. + +## Paragraphs + +You'll notice that I am putting blank lines between headings and plain text. This is necessary, or they won't render correctly. + +It's also important to put a blank line in between each paragraph. See what happens without it: +This is supposed to be a new paragraph, but it isn't. + +### Inline styles + +We can, of course, create **bold** and *italicized* text, or `inline monospace text`. + +We can also create links, like this [link to the home page](/). + +## Horizontal lines + +Sometimes you want to insert a visual break in your text that isn't just a new paragraph. You can use three dashes to create a horizontal line: + +--- + +This text will be below the line. + +## Lists + +### Unordered lists + +Unordered lists can be created with dashes or asterisks. With dashes: + +- this is an item +- this is another item + +With asterisks: + +* this is an item +* this is another item + +### Ordered lists + +Ordered (numbered) lists can be created with (surprise!) numbers. You can write numbers as you would normally, *or* you can just write the number 1 over and over, like so: + +1. this is item 1 +1. despite being written with a 1, this is item 2 + +This allows you to insert more information into lists in the future without having to renumber every following item. + +### Nested lists + +Both unordered and ordered lists can be nested. Just tab the nested section inwards: + +- this is an item + - this is nested below it + - this is also nested +- this is another item + +You can mix unordered and ordered lists when you nest. + +## Quotes + +You can always just use quotation marks, of course, but if you are quoting a larger chunk of text it can be nice to use a blockquote. + +You format a blockquote by starting the line with a caret: + +> This is a quote, and it will render differently than a paragraph. + +If you want a quote to have multiple separate paragraphs, and still contiguously display as one quote, make sure to put a caret on the empty line between the paragraphs. + +> This is a multi-paragraph quote. +> +> Here's the second paragraph. +> +> - Blockquotes can also have lists +> - They still have the caret at the front + +## Monospace + +You can write single words `in monospace`, or create code blocks: + +``` +3 backticks surround code blocks +``` + +Code blocks can have syntax highlighting: + +```html +

Hello, world

+``` + +## Tables + +Tables in Markdown are kind of annoying to format. You use the pipe (`|`) character as well as dashes. + +``` +| Header 1 | Header 2 | +|---|---| +| data 1a | data 1b | +| data 2a | data 2b | +| data 3a | data 3b | +``` + +When I remove the monospace block, you can see how this formats: + +| Header 1 | Header 2 | +|---|---| +| data 1a | data 1b | +| data 2a | data 2b | +| data 3a | data 3b | diff --git a/src/posts/2026/2026-01-05-moving-images.md b/src/posts/2026/2026-01-05-moving-images.md new file mode 100644 index 0000000..1130028 --- /dev/null +++ b/src/posts/2026/2026-01-05-moving-images.md @@ -0,0 +1,137 @@ +--- +title: moving images +image: + src: 2026/cormorant.jpg + alt: "Image unrelated to post. A cormorant, a type of black waterfowl, poses with wings spread on a buoy in Puget Sound. Off to the left, another bird floats." +tags: + - reference + - software +--- + +## problem statement + +today I decided to finally clean up the `assets/img` directory for this site. Since 2022, when I started this project, I've just been adding images directly to that directory with no further segmentation - messy of me, I know! It's gotten unwieldy and I'm starting to get worried about generic names leading to duplicates at some point, particularly for the non-gallery images where I have a tendency to [use](/stationery-exchange) [lots](/favorite-git-flag) [of](/trans-networks) [mushroom](/no-politics) [images](/domain-and-site-setup). + +so it's time to move them into year-based folders. Let's talk about how I did that. `bash` away! + +(want to [skip right to the completed script?](#result)) + +## find + +let's start with the basics: a list of posts. `find` gets us everything under a specific directory - in this case, the `_posts` directory. We can filter out the directories a few different ways, but I piped the `find` output through a basic `grep` looking for `.md` in the filename. + +```sh +for FILE in $(find _posts | grep .md) +do + # TBD +done +``` + +## grep + +`grep` can also help us get image names with the regex `"name:.+jpg|png"`. I add `name:` to the regex because there are *very occasionally* images that aren't the featured image for the post, and those don't fit the pattern of `name: `. Since there's so few of those, I ended up handling them manually. + +to make `grep` work with regex, it needs the `-E` flag. + +```sh +# gives us +# name: +# note the 4 spaces at the beginning of the line +IMAGE_LINE=$(cat $FILE | grep -E "name:.+jpg|png$") +``` + +## cut + +that output gets us the full line of text that includes the image filename. Let's trim out what we actually want. + +below, `-d` sets a delimiter, and `-f` chooses what field we want to return. Because there's 4 spaces before `name`, our field index is actually pretty high - `cut` is creating 4 empty strings. + +```sh +IMAGE=$(echo $IMAGE_LINE | cut -d ' ' -f 6 -) +``` + +or, for brevity: + +```sh +IMAGE=$(cat $FILE | grep -E "name:.+jpg|png$" | cut -d ' ' -f 6 -) +``` + +with `cut`, we can also get the year of the post: + +```sh +YEAR=$(echo $FILE | cut -d '/' -f 2 -) +``` + +## sed + +there's two major things we need to do with the information we've gathered: + +1. replace the image filename in-place in the post's markdown file +1. move the image file from its original location into a new directory + +we can do replacement with `sed`, where our pattern should be something like this: `s/$IMAGE/$YEAR\/&\` (the `&` subs in the found string - in this case `$IMAGE`). We could also use comma separators if we don't want to escape the slash, like `s,$IMAGE,$YEAR/&,` - I did this for ease of reading. + +by default, `sed` prints to standard output, so we'll tell it to edit in-place instead with `-i`. Here's our full `sed` command: + +```sh +sed "s,$IMAGE,$YEAR/&," -i $FILE +``` + +## mving and shaking + +(my mom thinks I'm funny.) + +now we'll handle moving the image file from its original location into a new directory. let's create our image paths, source and destination: + +```sh +IMG_DIR=assets/img +NEW_IMAGE=$IMG_DIR/$YEAR/$IMAGE +IMAGE=$IMG_DIR/$IMAGE +``` + +trying to `mv` the images will immediately cause problems, because the year directories don't exist yet. A simple check gets us past that: + +```sh +if [ ! -d $IMG_DIR/$YEAR ] +then + mkdir $IMG_DIR/$YEAR +fi +``` + +finally, we can `mv` the image: + +```sh +mv $IMAGE $NEW_IMAGE +``` + +## result + +here's our final script: + +```sh +for FILE in $(find _posts | grep .md) +do + # parse image and year info + IMAGE=$(cat $FILE | grep -E "name:.+jpg|png$" | cut -d ' ' -f 6 -) + YEAR=$(echo $FILE | cut -d '/' -f 2 -) + + # replace in-place in file + sed "s,$IMAGE,$YEAR/&," -i $FILE + + # path creation + IMG_DIR=assets/img + NEW_IMAGE=$IMG_DIR/$YEAR/$IMAGE + IMAGE=$IMG_DIR/$IMAGE + + # create dir for year if it doesn't exist + if [ ! -d $IMG_DIR/$YEAR ] + then + mkdir $IMG_DIR/$YEAR + fi + + # move image + mv $IMAGE $NEW_IMAGE +done +``` + +questions? errors? [ping me!](/contact) diff --git a/src/posts/2026/2026-02-17-sample.md b/src/posts/2026/2026-02-17-sample.md index 809001c..6cd1ff2 100644 --- a/src/posts/2026/2026-02-17-sample.md +++ b/src/posts/2026/2026-02-17-sample.md @@ -2,7 +2,7 @@ title: Sample date: 2026-02-17 tags: -- test + - gallery image: src: 2026/sample-0.jpg alt: filler diff --git a/src/posts/posts.11tydata.js b/src/posts/posts.11tydata.js index 33e2e32..da7e93a 100644 --- a/src/posts/posts.11tydata.js +++ b/src/posts/posts.11tydata.js @@ -5,5 +5,5 @@ export default { tags: [ "posts" ], - layout: "base.njk" + layout: "post.njk" }; diff --git a/src/src.11tydata.js b/src/src.11tydata.js new file mode 100644 index 0000000..3ebf645 --- /dev/null +++ b/src/src.11tydata.js @@ -0,0 +1,3 @@ +export default { + layout: "base.njk" +};