davideisinger.com

My personal website
Log | Files | Refs | README

commit 94bd5aacfaee08f2ddc85fab1400106ebf131602
parent b7449a616d0b8d5eb507a9540b28dbed71ab020e
Author: David Eisinger <[email protected]>
Date:   Tue, 10 Nov 2026 01:16:16 -0500

Fix warnings; replaces SASS w/ CSS

Diffstat:
Mconfig.toml | 2+-
Athemes/v2/assets/css/style.css | 540+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Dthemes/v2/assets/css/style.scss | 575-------------------------------------------------------------------------------
Mthemes/v2/layouts/partials/head.html | 2+-
4 files changed, 542 insertions(+), 577 deletions(-)

diff --git a/config.toml b/config.toml @@ -1,5 +1,5 @@ baseURL = 'https://davideisinger.com/' -languageCode = 'en-us' +locale = 'en-us' title = 'David Eisinger' theme = 'v2' enableGitInfo = true diff --git a/themes/v2/assets/css/style.css b/themes/v2/assets/css/style.css @@ -0,0 +1,540 @@ +@charset "UTF-8"; +body { + margin: 8px; + font-family: "courier", monospace; + font-size: 18px; + padding: 50px; + line-height: 1.5em; + background-color: #f6f6f6; + color: #333; +} + +@media only screen and (max-width: 800px) { + body { + -webkit-text-size-adjust: 100%; + font-size: 16px; + } +} + +@media only screen and (max-width: 600px) { + body { + padding: 10px; + } +} + +h1, +h2, +h3 { + font-size: 1em; + margin: 1em 0; +} + +h1 span, +h2 span, +h3 span { + color: #aaa; +} + +h3 { + color: #aaa; +} + +a { + color: #00a; + text-underline-offset: 2px; +} + +header > h1 { + margin: 1em 0; +} + +hr { + border: 0; + border-top: 2px solid #ddd; +} + +ul { + list-style: none; + padding: 0 0 0 2ch; + position: relative; +} + +ul > li::before { + color: #aaa; + content: "∗"; + left: 0ch; + position: absolute; +} + +ol { + margin: 0; + padding: 0; + counter-reset: item; +} + +ol li { + counter-increment: item; + display: table; + table-layout: fixed; + width: 100%; +} + +ol li::before { + content: counter(item) "."; + display: table-cell; + padding-right: 1ch; + white-space: nowrap; + width: 3ch; +} + +ol + a.footnote-backref { + margin-left: -1ch; +} + +blockquote { + border-left: 1ch solid #ddd; + font-style: italic; + margin: 0; + padding-left: 1ch; +} + +blockquote em { + font-style: normal; +} + +header, +#content, +footer { + max-width: 800px; +} + +footer { + color: #aaa; + text-align: center; +} + +footer hr { + margin-bottom: 12px; +} + +@media only screen and (max-width: 600px) { + footer { + text-align: left; + } + footer a { + display: block; + } + footer .mobile-hidden { + display: none; + } +} + +sup { + line-height: 0; + font-size: 0.8em; +} + +.nowrap { + white-space: nowrap; +} + +.references, +.footnotes { + font-size: 0.8em; +} + +.references h3, +.footnotes h3 { + margin-bottom: 0; +} + +.references ul, +.footnotes ul { + margin-top: 0.5em; +} + +/* IMAGES */ +figure { + margin: 0; +} + +.captioned-image { + margin: 1em 0; +} + +.captioned-image > a { + display: block; + line-height: 0; +} + +.captioned-image figcaption { + margin-top: 0.5em; + font-size: 0.8em; + font-style: italic; + line-height: 1.5; +} + +img { + mix-blend-mode: multiply; + width: 100%; + height: auto; +} + +img.inline { + width: auto; + vertical-align: middle; +} + +p:has(img) { + display: flex; + gap: 1em; + margin-block-start: 1em; + margin-block-end: 1em; + align-items: center; +} + +p:has(img) a { + line-height: 0; +} + +a:has(> img.float-right) { + display: block; + float: right; + width: 50%; + margin: 0 0 1em 1.5em; + line-height: 0; +} + +@media only screen and (max-width: 600px) { + a:has(> img.float-right) { + float: none; + width: 100%; + margin: 1em 0; + } +} + +/* CODE */ +code { + background-color: #ddd; + border-radius: 3px; + font-family: "courier", monospace; + padding: 1px 1ch; +} + +.highlight, +pre { + overflow: auto; +} + +.highlight code, +pre code { + background: none; + padding: 0; + border-radius: 0; +} + +pre { + background-color: #2e3440; + color: #d8dee9; + margin: 0; + padding: 1ch 1ch; + border-radius: 3px; +} + +/* HOMEPAGE INTRO */ +.home-intro { + display: grid; + grid-template-areas: "name" "bio" "about"; + margin-top: 1em; + margin-bottom: 0; +} + +.home-intro + #content > hr:first-child, +.home-intro + #content > section:first-child > hr:first-child { + margin-top: 0; +} + +.home-intro.home-intro-with-music { + grid-template-columns: minmax(0, 1fr) 330px; + grid-template-areas: "name music-heading" "bio music" "about more-music"; +} + +.home-intro.home-intro-with-music .home-name, +.home-intro.home-intro-with-music .home-bio, +.home-intro.home-intro-with-music .home-about { + padding-right: 26px; +} + +.home-intro h1 { + grid-area: name; + margin: 0; + padding-bottom: 14px; +} + +.home-intro p { + margin: 0; +} + +.home-intro .home-bio { + grid-area: bio; + padding-bottom: 10px; +} + +.home-intro .home-about, +.home-intro .more-music { + font-size: 14px; + padding-bottom: 20px; +} + +.home-intro .home-about { + grid-area: about; + display: flex; + flex-wrap: wrap; + gap: 8px 24px; +} + +.home-intro .home-about a { + white-space: nowrap; +} + +.home-intro .more-music { + grid-area: more-music; +} + +.home-music-cell { + border-left: 2px solid #ddd; + padding-left: 26px; + min-width: 0; +} + +.home-music-heading { + grid-area: music-heading; + color: #666; + font-size: 13px; + font-weight: normal; + letter-spacing: 1.1px; + line-height: 28.8px; + text-transform: uppercase; + margin: 0; + padding-top: 4px; + padding-bottom: 10px; +} + +.home-music { + grid-area: music; + padding-bottom: 18px; +} + +.home-music .track-title { + font-size: inherit; + font-weight: bold; + margin-bottom: 4px; +} + +.home-music .track-source { + color: #666; + font-size: 14px; + line-height: 1.5; + margin-bottom: 16px; +} + +.home-music audio { + display: block; + width: 100%; + min-width: 0; + height: 42px; +} + +@media only screen and (max-width: 800px) { + .home-intro { + margin-bottom: 26px; + } + .home-intro.home-intro-with-music { + grid-template-columns: 1fr; + grid-template-areas: "name" "bio" "about" "music-heading" "music" "more-music"; + } + .home-intro.home-intro-with-music .home-name, + .home-intro.home-intro-with-music .home-bio, + .home-intro.home-intro-with-music .home-about { + padding-right: 0; + } + .home-intro .home-about, + .home-intro .more-music { + padding-bottom: 0; + } + .home-music-cell { + border-left: 0; + padding-left: 0; + } + .home-music-heading { + border-top: 2px solid #ddd; + padding-top: 20px; + margin-top: 26px; + } +} + +/* AUDIO */ +.track-toggle { + flex: 0 0 96px; + display: inline-grid; + grid-template-columns: 1.25em 1fr; + align-items: center; + column-gap: 0; + box-sizing: border-box; + width: 96px; + text-align: center; + padding: 8px 12px; + border: 1px solid #ccc; + border-radius: 4px; + background: #eee; + color: #00a; + font: inherit; + font-size: 14px; + cursor: pointer; +} + +.track-toggle .track-toggle-icon { + text-align: center; + line-height: 1; +} + +.track-toggle:hover { + background: #e3e3e3; +} + +.track-toggle:focus-visible { + outline: 2px solid #00a; + outline-offset: 3px; +} + +.track-playback { + display: block; + color: #666; + font-size: 14px; + font-variant-numeric: tabular-nums; + text-align: right; + white-space: nowrap; + /* Preserve the text baseline before a timestamp appears. */ +} + +.track-playback:empty::before { + content: "\00a0"; +} + +.music-track { + align-items: center; + display: flex; + gap: 2ch; + padding: 1ch 0; +} + +.music-track > div { + flex: 1; + min-width: 0; +} + +.music-track .track-heading { + display: grid; + grid-template-columns: minmax(0, 1fr) 13ch; + align-items: baseline; + column-gap: 1ch; +} + +.music-track .track-title { + font-weight: bold; + margin: 0; +} + +.music-track .track-source { + color: #666; + font-size: 14px; + line-height: 1.5; + margin: 0; +} + +@media only screen and (max-width: 600px) { + .music-track { + display: block; + } + .music-track .track-toggle { + margin-bottom: 1ch; + } + .music-track audio { + padding-bottom: 1ch; + } +} + +audio::-webkit-media-controls-panel { + background-color: rgba(0, 0, 0, 0.05); +} + +@media print { + body { + background-color: white; + font-size: 18px; + padding: 0; + } + @page { + size: a5; + margin: 1in 0.8in; + } + footer { + display: none; + } + .home-intro.home-intro-with-music { + grid-template-columns: minmax(0, 1fr); + grid-template-areas: "name" "bio" "about"; + } + .home-intro.home-intro-with-music .home-music-cell { + display: none; + } + .home-intro.home-intro-with-music .home-name, + .home-intro.home-intro-with-music .home-bio, + .home-intro.home-intro-with-music .home-about { + padding-right: 0; + } + h2, + h3, + hr { + page-break-after: avoid; + } + blockquote, + li { + page-break-inside: avoid; + } + #content { + max-width: none; + } + .page-break { + page-break-after: always; + } + a.footnote-backref { + display: none; + } + code { + background: none; + border-radius: 0; + padding: 0; + } + code::before, + code::after { + content: "`"; + } + ol p { + display: inline; + } +} + +.visually-hidden { + position: absolute; + width: 1px; + height: 1px; + padding: 0; + overflow: hidden; + clip-path: inset(50%); + white-space: nowrap; +} + +#content:focus { + outline: none; +} diff --git a/themes/v2/assets/css/style.scss b/themes/v2/assets/css/style.scss @@ -1,575 +0,0 @@ -body { - margin: 8px; - font-family: "courier", monospace; - font-size: 18px; - padding: 50px; - line-height: 1.5em; - background-color: #f6f6f6; - color: #333; -} - -@media only screen and (max-width: 800px) { - body { - -webkit-text-size-adjust: 100%; - font-size: 16px; - } -} - -@media only screen and (max-width: 600px) { - body { - padding: 10px; - } -} - -h1, -h2, -h3 { - font-size: 1em; - margin: 1em 0; - - span { - color: #aaa; - } -} - -h3 { - color: #aaa; -} - -a { - color: #00a; - text-underline-offset: 2px; -} - -header>h1 { - margin: 1em 0; -} - -hr { - border: 0; - border-top: 2px solid #ddd; -} - -ul { - list-style: none; - padding: 0 0 0 2ch; - position: relative; - - >li { - &::before { - color: #aaa; - content: '∗'; - left: 0ch; - position: absolute; - } - } -} - -ol { - margin: 0; - padding: 0; - counter-reset: item; - - - li { - counter-increment: item; - display: table; - table-layout: fixed; - width: 100%; - } - - li::before { - content: counter(item) "."; - display: table-cell; - padding-right: 1ch; - white-space: nowrap; - width: 3ch; - } - - &+a.footnote-backref { - margin-left: -1ch; - } -} - -blockquote { - border-left: 1ch solid #ddd; - font-style: italic; - margin: 0; - padding-left: 1ch; - - em { - font-style: normal; - } -} - -header, -#content, -footer { - max-width: 800px; -} - -footer { - color: #aaa; - text-align: center; - - hr { - margin-bottom: 12px; - } -} - -@media only screen and (max-width: 600px) { - footer { - text-align: left; - - a { - display: block; - } - - .mobile-hidden { - display: none; - } - } -} - -sup { - line-height: 0; - font-size: 0.8em; -} - - -.nowrap { - white-space: nowrap; -} - -.references, -.footnotes { - font-size: 0.8em; - - h3 { - margin-bottom: 0; - } - - ul { - margin-top: 0.5em; - } -} - -// IMAGES - -figure { - margin: 0; -} - -.captioned-image { - margin: 1em 0; - - > a { - display: block; - line-height: 0; - } - - figcaption { - margin-top: 0.5em; - font-size: 0.8em; - font-style: italic; - line-height: 1.5; - } -} - -img { - mix-blend-mode: multiply; - width: 100%; - height: auto; - - &.inline { - width: auto; - vertical-align: middle; - } -} - -p:has(img) { - display: flex; - gap: 1em; - margin-block-start: 1em; - margin-block-end: 1em; - align-items: center; - - a { - line-height: 0; - } -} - -a:has(> img.float-right) { - display: block; - float: right; - width: 50%; - margin: 0 0 1em 1.5em; - line-height: 0; -} - -@media only screen and (max-width: 600px) { - a:has(> img.float-right) { - float: none; - width: 100%; - margin: 1em 0; - } -} - -// CODE - -code { - background-color: #ddd; - border-radius: 3px; - font-family: "courier", monospace; - padding: 1px 1ch; -} - -.highlight, -pre { - overflow: auto; - - code { - background: none; - padding: 0; - border-radius: 0; - } -} - -pre { - background-color: #2e3440; - color: #d8dee9; - margin: 0; - padding: 1ch 1ch; - border-radius: 3px; -} - -// HOMEPAGE INTRO - -.home-intro { - display: grid; - grid-template-areas: "name" "bio" "about"; - margin-top: 1em; - margin-bottom: 0; - - + #content > hr:first-child, - + #content > section:first-child > hr:first-child { - margin-top: 0; - } - - &.home-intro-with-music { - grid-template-columns: minmax(0, 1fr) 330px; - grid-template-areas: - "name music-heading" - "bio music" - "about more-music"; - - .home-name, - .home-bio, - .home-about { - padding-right: 26px; - } - } - - h1 { - grid-area: name; - margin: 0; - padding-bottom: 14px; - } - - p { - margin: 0; - } - - .home-bio { - grid-area: bio; - padding-bottom: 10px; - } - - .home-about, - .more-music { - font-size: 14px; - padding-bottom: 20px; - } - - .home-about { - grid-area: about; - display: flex; - flex-wrap: wrap; - gap: 8px 24px; - - a { - white-space: nowrap; - } - } - - .more-music { - grid-area: more-music; - } -} - -.home-music-cell { - border-left: 2px solid #ddd; - padding-left: 26px; - min-width: 0; -} - -.home-music-heading { - grid-area: music-heading; - color: #666; - font-size: 13px; - font-weight: normal; - letter-spacing: 1.1px; - line-height: 28.8px; - text-transform: uppercase; - margin: 0; - padding-top: 4px; - padding-bottom: 10px; -} - -.home-music { - grid-area: music; - padding-bottom: 18px; - - .track-title { - font-size: inherit; - font-weight: bold; - margin-bottom: 4px; - } - - .track-source { - color: #666; - font-size: 14px; - line-height: 1.5; - margin-bottom: 16px; - } - - audio { - display: block; - width: 100%; - min-width: 0; - height: 42px; - } -} - -@media only screen and (max-width: 800px) { - .home-intro { - margin-bottom: 26px; - - &.home-intro-with-music { - grid-template-columns: 1fr; - grid-template-areas: - "name" - "bio" - "about" - "music-heading" - "music" - "more-music"; - - .home-name, - .home-bio, - .home-about { - padding-right: 0; - } - } - - .home-about, - .more-music { - padding-bottom: 0; - } - } - - .home-music-cell { - border-left: 0; - padding-left: 0; - } - - .home-music-heading { - border-top: 2px solid #ddd; - padding-top: 20px; - margin-top: 26px; - } -} - -// AUDIO - -.track-toggle { - flex: 0 0 96px; - display: inline-grid; - grid-template-columns: 1.25em 1fr; - align-items: center; - column-gap: 0; - box-sizing: border-box; - width: 96px; - text-align: center; - padding: 8px 12px; - border: 1px solid #ccc; - border-radius: 4px; - background: #eee; - color: #00a; - font: inherit; - font-size: 14px; - cursor: pointer; - - .track-toggle-icon { - text-align: center; - line-height: 1; - } - - &:hover { - background: #e3e3e3; - } - - &:focus-visible { - outline: 2px solid #00a; - outline-offset: 3px; - } -} - -.track-playback { - display: block; - color: #666; - font-size: 14px; - font-variant-numeric: tabular-nums; - text-align: right; - white-space: nowrap; - - // Preserve the text baseline before a timestamp appears. - &:empty::before { - content: "\00a0"; - } -} - -.music-track { - align-items: center; - display: flex; - gap: 2ch; - padding: 1ch 0; - - > div { - flex: 1; - min-width: 0; - } - - .track-heading { - display: grid; - grid-template-columns: minmax(0, 1fr) 13ch; - align-items: baseline; - column-gap: 1ch; - } - - .track-title { - font-weight: bold; - margin: 0; - } - - .track-source { - color: #666; - font-size: 14px; - line-height: 1.5; - margin: 0; - } -} - -@media only screen and (max-width: 600px) { - .music-track { - display: block; - - .track-toggle { - margin-bottom: 1ch; - } - - audio { - padding-bottom: 1ch; - } - } -} - -audio::-webkit-media-controls-panel { - background-color: rgba(0, 0, 0, 0.05); -} - -@media print { - body { - background-color: white; - font-size: 18px; - padding: 0; - } - - @page { - size: a5; - margin: 1in 0.8in; - } - - footer { - display: none; - } - - .home-intro.home-intro-with-music { - grid-template-columns: minmax(0, 1fr); - grid-template-areas: "name" "bio" "about"; - - .home-music-cell { - display: none; - } - - .home-name, - .home-bio, - .home-about { - padding-right: 0; - } - } - - h2, - h3, - hr { - page-break-after: avoid; - } - - blockquote, - li { - page-break-inside: avoid; - } - - #content { - max-width: none; - } - - .page-break { - page-break-after: always; - } - - a.footnote-backref { - display: none; - } - - code { - background: none; - border-radius: 0; - padding: 0; - - &::before, - &::after { - content: "`" - } - } - - ol { - p { - display: inline; - } - } -} - -.visually-hidden { - position: absolute; - width: 1px; - height: 1px; - padding: 0; - overflow: hidden; - clip-path: inset(50%); - white-space: nowrap; -} - -#content:focus { - outline: none; -} diff --git a/themes/v2/layouts/partials/head.html b/themes/v2/layouts/partials/head.html @@ -6,7 +6,7 @@ {{ .Title }} – {{ .Site.Title }} {{- end -}} </title> -{{ $css := resources.Get "css/style.scss" | toCSS | minify | fingerprint }} +{{ $css := resources.Get "css/style.css" | minify | fingerprint }} <link rel="stylesheet" href="{{ $css.RelPermalink }}"> {{ $navigation := resources.Get "js/navigation.js" | minify | fingerprint }} <script defer src="{{ $navigation.RelPermalink }}" data-site-navigation></script>