scribble-enhanced/collects/scribble/private/manual-utils.rkt
Eli Barzilay 45a9cd48c2 ".ss" -> ".rkt" scan done.
original commit: 3157955d40f89d83fb3d5fa7a2f20639cda69579
2011-07-02 10:37:53 -04:00

35 lines
1.0 KiB
Racket

#lang scheme/base
(require "../struct.rkt"
"../decode.rkt"
"../base.rkt"
(only-in "../core.rkt"
content?)
scheme/contract
scheme/list)
(provide doc-prefix)
(provide/contract
[spacer element?]
[to-flow (content? . -> . flow?)]
[flow-spacer flow?]
[flow-empty-line flow?]
[make-table-if-necessary (content? list? . -> . (list/c (or/c omitable-paragraph? table?)))]
[max-proto-width exact-nonnegative-integer?])
(define spacer (hspace 1))
(define (to-flow e)
(make-flow (list (make-omitable-paragraph (list e)))))
(define flow-spacer (to-flow spacer))
(define flow-empty-line (to-flow (tt 'nbsp)))
(define (make-table-if-necessary style content)
(if (= 1 (length content))
(let ([paras (append-map flow-paragraphs (car content))])
(if (andmap paragraph? paras)
(list (make-omitable-paragraph (append-map paragraph-content paras)))
(list (make-table style content))))
(list (make-table style content))))
(define max-proto-width 65)