Mercurial > emacs
view etc/schema/xhtml-btable.rnc @ 107594:40b49fa464cf
Retrospective commit from 2009-10-04.
Continue working on determining paragraph's base direction.
bidi.c (bidi_at_paragraph_end): Check for paragraph-start if
paragraph-separate failed to match. Return the length of the
matched separator.
(bidi_line_init): New function.
(bidi_paragraph_init): Use bidi_line_init. Do nothing if in the
middle of a paragraph-separate sequence. Don't override existing
paragraph direction if no strong characters found in this
paragraph. Set separator_limit according to what
bidi_at_paragraph_end returns. Reset new_paragraph flag when a
new paragraph is found.
(bidi_init_it): Reset separator_limit.
dispextern.h (struct bidi_it): New member separator_limit.
bidi.c (bidi_find_paragraph_start): Return the byte position of
the paragraph beginning.
xdisp.c (set_iterator_to_next): Call bidi_paragraph_init if the
new_paragraph flag is set in the bidi iterator.
bidi.c (bidi_at_paragraph_end, bidi_find_paragraph_start): Use
the buffer-local value of paragraph-start and paragraph-separate.
author | Eli Zaretskii <eliz@gnu.org> |
---|---|
date | Fri, 01 Jan 2010 06:17:13 -0500 |
parents | 309bef8b751c |
children |
line wrap: on
line source
# Basic Tables Module table = element table { table.attlist, caption?, tr+ } table.attlist = Common.attrib, attribute summary { Text.datatype }? caption = element caption { caption.attlist, Inline.model } caption.attlist = Common.attrib tr = element tr { tr.attlist, (th | td)+ } tr.attlist = Common.attrib, CellHAlign.attrib, CellVAlign.attrib th = element th { th.attlist, Flow.model } th.attlist = Cell.attrib td = element td { td.attlist, Flow.model } td.attlist = Cell.attrib Cell.attrib = Common.attrib, attribute abbr { Text.datatype }?, attribute axis { text }?, attribute headers { IDREFS.datatype }?, scope.attrib, attribute rowspan { Number.datatype }?, attribute colspan { Number.datatype }?, CellHAlign.attrib, CellVAlign.attrib CellHAlign.attrib = attribute align { "left" | "center" | "right" }? CellVAlign.attrib = attribute valign { "top" | "middle" | "bottom" }? scope.attrib = attribute scope { "row" | "col" }? Block.class |= table