24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
;; Tag functions used by pollen.rkt when HTML is the output format.
(require (for-syntax racket/base racket/syntax))
(require racket/list
racket/function
pollen/decode
pollen/tag
txexpr
"dust.rkt")
(provide html-fn
html-fndef)
;; Customized paragraph decoder replaces single newlines within paragraphs
|
>
|
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
;; Tag functions used by pollen.rkt when HTML is the output format.
(require (for-syntax racket/base racket/syntax))
(require racket/list
racket/function
pollen/decode
pollen/tag
net/uri-codec
txexpr
"dust.rkt")
(provide html-fn
html-fndef)
;; Customized paragraph decoder replaces single newlines within paragraphs
|
72
73
74
75
76
77
78
79
80
81
82
83
84
85
|
html-section
html-subsection
html-newthought
html-smallcaps
html-center
html-block
html-blockcode
html-dialogue
html-say
html-verse
html-link
html-url
html-fn
html-fndef
|
>
|
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
|
html-section
html-subsection
html-newthought
html-smallcaps
html-center
html-block
html-blockcode
html-index
html-dialogue
html-say
html-verse
html-link
html-url
html-fn
html-fndef
|
111
112
113
114
115
116
117
118
119
120
121
122
123
124
|
`(body ,@second-pass))
(define (html-blockcode attrs elems)
(define file (or (assoc 'filename attrs) ""))
(define codeblock `(pre [[class "code"]] (code ,@elems)))
(cond [(string>? file "") `(@ (div [[class "listing-filename"]] 128196 " " ,file) ,codeblock)]
[else codeblock]))
(define (html-say . elems)
`(@ (dt ,(car elems) (span [[class "x"]] ": ")) (dd ,@(cdr elems))))
(define (html-verse attrs elems)
(let* ([title (maybe-attr 'title attrs "")]
[italic? (assoc 'italic attrs)]
|
>
>
>
>
>
>
|
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
|
`(body ,@second-pass))
(define (html-blockcode attrs elems)
(define file (or (assoc 'filename attrs) ""))
(define codeblock `(pre [[class "code"]] (code ,@elems)))
(cond [(string>? file "") `(@ (div [[class "listing-filename"]] 128196 " " ,file) ,codeblock)]
[else codeblock]))
(define (html-index . elems)
`(a [[id ,(here-id (list "_idx-" (uri-encode (car elems))))]
[data-index-entry ,(car elems)]
[class "index-link"]]
,@(cdr elems)))
(define (html-say . elems)
`(@ (dt ,(car elems) (span [[class "x"]] ": ")) (dd ,@(cdr elems))))
(define (html-verse attrs elems)
(let* ([title (maybe-attr 'title attrs "")]
[italic? (assoc 'italic attrs)]
|