# HG changeset patch # User Steve Losh # Date 1709655614 18000 # Node ID 9e8676b0f2449b92753b08d963b8e31cce4467db # Parent 4aa32c99c96f460bf5125532687fa771dbbe329b Initial commit diff -r 4aa32c99c96f -r 9e8676b0f244 .lispwords --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.lispwords Tue Mar 05 11:20:14 2024 -0500 @@ -0,0 +1,1 @@ +(1 render) diff -r 4aa32c99c96f -r 9e8676b0f244 Makefile --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/Makefile Tue Mar 05 11:20:14 2024 -0500 @@ -0,0 +1,6 @@ +.PHONY: all + +all: mw + +mw: mw.lisp static/style.css + sbcl --load mw.lisp --eval '(mw:build)' diff -r 4aa32c99c96f -r 9e8676b0f244 README.markdown --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/README.markdown Tue Mar 05 11:20:14 2024 -0500 @@ -0,0 +1,18 @@ +# mw + +`mw` stands for any/all of the following: + +* My Wiki +* Make Wiki +* Markdown Wiki + +## Design + +Wiki pages are vanilla Markdown files, because writing in any other format is +awful and version control is good. Metadata will be a single Lisp list at the +beginning of the file, read with `safe-read`. + +Linking can be special-cased because it's so common. + +The output will be static, vanilla HTML files that can be served with anything. +No Javascript required. diff -r 4aa32c99c96f -r 9e8676b0f244 static/style.css --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/static/style.css Tue Mar 05 11:20:14 2024 -0500 @@ -0,0 +1,62 @@ +:root { + --text-color: black; + --link-color: brown; +} + + +header, main, footer { + max-width: 1200px; + margin: 0 auto; +} + +header, footer { + padding: 10px 0; +} + +main { + padding: 10px 0; +} + +header { + border-bottom: 1px solid #ccc; +} + +header nav { + float: right; +} + +footer { + margin-top: 10px; + border-top: 1px solid #ccc; +} + +body { + font-size: 16px; + line-height: 1.6; +} + +a { + color: var(--link-color); +} + +h1 { font-size: 28px; font-weight: bold; line-height: 1.2; } +h2 { font-size: 24px; font-weight: bold; line-height: 1.2; } +h3 { font-size: 20px; font-weight: bold; line-height: 1.4; } +h4 { font-size: 18px; font-weight: bold; line-height: 1.4; } +h5 { font-size: 16px; font-weight: bold; line-height: 1.6; } +h6 { color: red; } /* no */ + +details.table-of-contents { + max-width: 400px; + float: right; + padding: 0 0 10px 10px; +} + +h1 a, h2 a, h3 a, h4 a, h5 a, h6 a { + color: var(--text-color); + text-decoration: none; +} + +h1 a:hover, h2 a:hover, h3 a:hover, h4 a:hover, h5 a:hover, h6 a:hover { + color: var(--link-color); +}