47 lines
1009 B
Racket
47 lines
1009 B
Racket
#lang scheme/base
|
|
|
|
(require "base.rkt"
|
|
"core.rkt"
|
|
"decode.rkt")
|
|
|
|
(provide title
|
|
section
|
|
subsection
|
|
subsubsection
|
|
subsubsub*section
|
|
include-section
|
|
|
|
author
|
|
author+email
|
|
|
|
intern-taglet
|
|
module-path-index->taglet
|
|
module-path-prefix->string
|
|
|
|
itemize item item?
|
|
|
|
hspace
|
|
elem aux-elem
|
|
italic bold smaller
|
|
tt
|
|
subscript superscript
|
|
|
|
section-index index index* as-index index-section
|
|
get-index-entries index-block
|
|
|
|
table-of-contents
|
|
local-table-of-contents
|
|
|
|
span-class)
|
|
|
|
(define (span-class classname . str)
|
|
(make-element classname (decode-content str)))
|
|
|
|
(define (aux-elem . s)
|
|
(make-element (make-style #f (list 'aux)) (decode-content s)))
|
|
|
|
(define (itemize #:style [style #f] . items)
|
|
(let ([items (filter (lambda (v) (not (whitespace? v))) items)])
|
|
(apply itemlist #:style style items)))
|
|
|