fix grammar alignment; allow row-independent 'alignment and 'valignment associations in a table style

svn: r14063

original commit: e43b393253ff65b3aeb8d2a49e4dbcbb04341e9c
This commit is contained in:
Matthew Flatt 2009-03-12 00:59:54 +00:00
parent 9eb42b71ee
commit fd1bb626d6
3 changed files with 18 additions and 7 deletions

View File

@ -1052,8 +1052,10 @@
`(tr (,@(if (string? style) `([class ,style]) null))
,@(let loop ([ds flows]
[as (cdr (or (and (list? style) (assq 'alignment style))
(t-style-get 'alignment)
(cons #f (map (lambda (x) #f) flows))))]
[vas (cdr (or (and (list? style) (assq 'valignment style))
(t-style-get 'valignment)
(cons #f (map (lambda (x) #f) flows))))]
[sts (cdr (or (and (list? style) (assq 'style style))
(cons #f (map (lambda (x) #f) flows))))]

View File

@ -303,8 +303,11 @@
[row-style (car row-styles)])
(let loop ([flows flows]
[col-v-styles (and (list? row-style)
(let ([p (assoc 'valignment row-style)])
(and p (cdr p))))])
(or (let ([p (assoc 'valignment row-style)])
(and p (cdr p)))
(let ([p (and (list? (table-style t))
(assoc 'valignment (table-style t)))])
(and p (cdr p)))))])
(unless (null? flows)
(when index? (printf "\\item "))
(unless (eq? 'cont (car flows))

View File

@ -420,6 +420,14 @@ The @scheme[style] can be any of the following:
@item{@scheme['style] to a string for a CSS class for HTML output.}
@item{@scheme['alignment] to a list of symbols and
@scheme[#f]s (one for each column); each symbol can be
@scheme['left], @scheme['right], or @scheme['center].}
@item{@scheme['valignment] to a list of symbols and
@scheme[#f]s (one for each column); each symbol can be
@scheme['top], @scheme['baseline], or @scheme['bottom].}
@item{@scheme['row-styles] to a list of association lists,
one for each row in the table. Each of these nested
association lists can map @scheme['alignment] and
@ -427,11 +435,9 @@ The @scheme[style] can be any of the following:
@scheme[#f]s (one for each column cell) and/or
@scheme['style] to a list of strings and @scheme[#f]s
(one for each column cell) for a CSS class in HTML
output. The symbols in an @scheme['alignment] list can
be @scheme['left], @scheme['right], or
@scheme['center]. The symbols in a @scheme['valignment]
list can be @scheme['top], @scheme['baseline], or
@scheme['bottom].}
output. Row-specific @scheme['valignment] and
@scheme['alignment] associations override row-independent
associations.}
]}