(html (head (title "sph-lib (sph lang config)") (link (@ (rel "stylesheet") (type "text/css") (href "/css/sph.css"))) (meta (@ (name "viewport") (content "width=device-width,initial-scale=1"))) #f) (body () (div (@ (class top)) (nav (a (@ (href "/")) "start") ", " (a (@ (href "/feed.xml")) "feed")) "") (div (@ (class "middle")) (div (@ (class mtime) (title "last modification time of the current page")) "2023-04-05") (section (h1 "(sph lang config)") (div (p "a scheme syntax configuration file format that parses to a alist or hashtable, possibly nested.") (p "part of " (a (@ (href "../../sph-lib.html")) "sph-lib")) ((section (@ (class "library-description")) (h1 "library description") (div (p "* all elements are scheme literals") (p "* key and value are specified alternatingly") (p "* keys are symbols") (p "* indent of two spaces is used for nesting") (p "* nesting is unlimited") (p "example:") (p (((*ENTITY* "nbsp") (*ENTITY* "nbsp")) "default-type \"text\"")) (p (((*ENTITY* "nbsp") (*ENTITY* "nbsp")) "mode development")) (p (((*ENTITY* "nbsp") (*ENTITY* "nbsp")) "start-id #xa")) (p (((*ENTITY* "nbsp") (*ENTITY* "nbsp")) "preview-image-size (unquote (+ 255 1))")) (p (((*ENTITY* "nbsp") (*ENTITY* "nbsp")) "browse")) (p (((*ENTITY* "nbsp") (*ENTITY* "nbsp") (*ENTITY* "nbsp") (*ENTITY* "nbsp")) "page-size 75")) (p (((*ENTITY* "nbsp") (*ENTITY* "nbsp") (*ENTITY* "nbsp") (*ENTITY* "nbsp")) "include-types (\"itml\" \"plaintext\")")) (p (((*ENTITY* "nbsp") (*ENTITY* "nbsp")) "other #(1 2 4)")))) (section (@ (class "library-name")) (h1 "module name") (p "(sph lang config)")) (section (@ (class "library-exports")) (h1 "exported bindings") (div (div (@ (class "doc-bindings")) (div (@ (id "doc-b-" "config-read") (class "doc-b")) (div (span (@ (class "type")) "procedure") ": " (span (@ (class "name")) "config-read") " " (span (@ (class "first-sig")) "port #:hashtable ->")) (div (@ (class "rest-sig")) (div "port #:hashtable boolean -> list:((symbol:key . any:value) ...)")) (div (@ (class "description")) (("if hashtable is true, the result is a hashtable, possibly with nested hashtables")))) (div (@ (id "doc-b-" "config-read-file") (class "doc-b")) (div (span (@ (class "type")) "procedure") ": " (span (@ (class "name")) "config-read-file") " " (span (@ (class "first-sig")) "a b ... ->")) "" "") (div (@ (id "doc-b-" "config-read-string") (class "doc-b")) (div (span (@ (class "type")) "procedure") ": " (span (@ (class "name")) "config-read-string") " " (span (@ (class "first-sig")) "a b ... ->")) "" "") (div (@ (id "doc-b-" "config-write") (class "doc-b")) (div (span (@ (class "type")) "procedure") ": " (span (@ (class "name")) "config-write") " " (span (@ (class "first-sig")) "a port ->")) (div (@ (class "rest-sig")) (div "alist/hashtable port -> unspecified")) (div (@ (class "description")) (("write a config alist or hashtable to port." (br) "one key/value pair per line and nested values indented after key"))))))))))) ()))