mandocsite

an attempt to use mandoc(1) as a site framework
Download | Log | Files | Refs

commit 350e2c070152725cf404c27ea7fd3cb00040a767
Author: amrfti <andrew@kloet.net>
Date:   Mon, 24 Nov 2025 06:30:21 -0500

initial commit

Diffstat:
A.gitignore | 2++
AMakefile | 15+++++++++++++++
Aindex.8 | 71+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Alurk.png | 0
Astyle.css | 72++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
5 files changed, 160 insertions(+), 0 deletions(-)

diff --git a/.gitignore b/.gitignore @@ -0,0 +1,2 @@ +index.xml +index.html diff --git a/Makefile b/Makefile @@ -0,0 +1,15 @@ +INDEX = index.xml +SRC = index.8 +CSS = style.css + +$(INDEX): $(SRC) $(CSS) + mandoc -Thtml -mdoc -O style=$(CSS) $(SRC) > $(INDEX) + + sed -i '1,2c\ +<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"\ + "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">\ +<html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">\ + ' $(INDEX) + +clean: + rm -f $(INDEX) diff --git a/index.8 b/index.8 @@ -0,0 +1,71 @@ +.Dd November 21, 2025 +.Dt kloet.net +. +.Sh NAME +.Nm Andrew Kloet +.Nd technophile +. +.Sh SYNOPSIS +.Nm signal +\(em +.Lk https://signal.me/#eu/-dVI-8q9hTaeL9RvQ-ek6bbYmSV2ju_a7LjM_J-Y9gaJjbrHKCVNsIp_p2JBpaE9 kloet.45 +.Nm mail +\(em +.Lk mailto:andrew@kloet.net andrew@kloet.net +.Nm gpg +\(em +.Lk https://kloet.net/pub/kloet.asc "AEC2 ... 817E" +. +.Sh DESCRIPTION +Vying to divorce from the beast system. +Free as in free salvation. +Time flies like an arrow. +Fruit flies like a banana. +. +.Pp +.Lk https://radio.kloet.net radio +\(em +.Lk https://pub.kloet.net pub +\(em +.Lk https://git.kloet.net code +. +.Pp +\fBHere are some of my writings:\fP +.Bl -tag +.It Lk https://kloet.net/usr/spamhaus Spamhaus is Evil +and why the clearnet is an orwellian place +.It Lk https://kloet.net/usr/trolley Trolley Theology +or rather, God on the trolley problem +.It Lk https://kloet.net/usr/trolley Submariner's Paean +psalms from such great depths. Cast indigo +.It Lk https://kloet.net/usr/offlinemusic Digital Music Collection +building a scalable offline music collection +.It Lk https://kloet.net/usr/sublunary Sublunary Message +submarine seeks pride from depths hard to find +.It Lk https://kloet.net/usr/amorfati Amor Fati +how to love everything. On becoming a yes-sayer +.El +. +.Pp +\fBThese are some computer things I've done:\fP +.Bl -tag +.It Lk https://kloet.net/halftone halftone qr gen +qr-code image embedder using the halftone algorithm +.It Lk https://kloet.net/dither dither engine +monochromatic dithering engine made with HTML5 canvas +.It Lk https://kloet.net/rails rails game +javascript implementation of Trains Tracks puzzle from The Times +.It Lk ssh://fish@kloet.net fish@kloet.net +terminal eye-candy virtual aquarium over +.Xr ssh 1 +.El +. +.Sh SEE ALSO +.Bl -bullet +.It +.Lk /bin/ somethign +.It +.Lk lands.html something2 +.It +.Lk alpha.html something3 +.El diff --git a/lurk.png b/lurk.png Binary files differ. diff --git a/style.css b/style.css @@ -0,0 +1,72 @@ +:root { + --header: #FBFADA; + --body: #BFBFBF; + --bodyalt: #808080; + --background: #020100; + --backgroundt: #3033320f; + --background-content: #02020280; + --accent: #000302; + --grid: #171813; + --grid-width: 2px; + --grid-size: 60px; + --grid-speed: 10s; +} + +html::before { + content: ''; + z-index: -1; + width: calc(100% + var(--grid-size)); + height: calc(100% + var(--grid-size)); + top: calc(-1 * var(--grid-size)); + left: calc(-1 * var(--grid-size)); + pointer-events: none; + position: fixed; + background-size: var(--grid-size) var(--grid-size); + background-image: + linear-gradient(to right, var(--grid) var(--grid-width), transparent var(--grid-width)), + linear-gradient(to bottom, var(--grid) var(--grid-width), var(--background) var(--grid-width)); + animation: bg-scroll var(--grid-speed) linear infinite; +} + +@keyframes bg-scroll { + to { + transform: translate(var(--grid-size), var(--grid-size)); + } +} + +#SYNOPSIS.Sh::before{ + content: ''; + display: block; + width: 500px; + height: 169px; + background-image: url('./lurk.png'); + margin: 0.75em auto; +} + +table.head, table.foot { width: 100%; } +td.head-rtitle, td.foot-os { text-align: right; } +td.head-vol { text-align: center; } +div.Pp { margin: 1ex 0ex; } +div.Nd, div.Bf, div.Op { display: inline; } +span.Pa, span.Ad { font-style: italic; } +span.Ms { font-weight: bold; } +dl.Bl-diag > dt { font-weight: bold; } +code.Nm, code.Fl, code.Cm, code.Ic, code.In, code.Fd, code.Fn, +code.Cd { font-weight: bold; font-family: inherit; } + +div.head, div.foot { display: flex; justify-content: space-between; } +.head-ltitle, .foot-date { flex: 1; } +.head-vol { flex: 0 1 auto; text-align: center; } +.head-rtitle, .foot-os { flex: 1; text-align: right; } + +html { font-family: monospace; line-height: 1.25em; } +body { max-width: 70ch; margin: 1em auto; padding: 0 1ch;} +table { border-collapse: collapse; } +table.Nm code.Nm { padding-right: 1ch; } +table.foot { margin-top: 1em; } + +html { background-color: var(--background); color: var(--body); font-size: 16px; } +a { color: var(--header); } +a:visited { color: var(--header); } +a.permalink { color: var(--header); text-decoration: none; } +h1.Sh { font-size: 1.5em;}