@@ -55,11 +55,11 @@ (provide html-root html-item html-section html-subsection html-newthought - html-smallcaps + html-caps html-center html-strike html-block html-blockcode html-index @@ -66,10 +66,11 @@ html-figure html-figure-@2x html-image-link html-dialogue html-say + html-saylines html-verse html-link html-url html-fn html-fndef @@ -77,11 +78,11 @@ (define html-item (default-tag-function 'li)) (define html-section (default-tag-function 'h2)) (define html-subsection (default-tag-function 'h3)) (define html-newthought (default-tag-function 'span #:class "newthought")) -(define html-smallcaps (default-tag-function 'span #:class "caps")) +(define html-caps (default-tag-function 'span #:class "caps")) (define html-center (default-tag-function 'div #:style "text-align: center")) (define html-strike (default-tag-function 'span #:style "text-decoration: line-through")) (define html-dialogue (default-tag-function 'dl #:class "dialogue")) (define (html-block . elements) @@ -112,13 +113,18 @@ [href ,(string-append "/keyword-index.html#" (uri-encode (string-downcase index-key)))] [data-index-entry ,index-key] [class "index-link"]] ,@elems)) +;; To be used within ◊dialogue (define (html-say . elems) `(@ (dt ,(car elems) (span [[class "x"]] ": ")) (dd ,@(cdr elems)))) +;; Same as ◊say, but preserve linebreaks +(define (html-saylines . elems) + (apply html-say (decode-linebreaks elems))) + (define (html-verse attrs elems) (let* ([title (maybe-attr 'title attrs "")] [italic? (assoc 'italic attrs)] [pre-attrs (cond [italic? '([class "verse"] [style "font-style: italic"])] [else '([class "verse"])])]