diff options
Diffstat (limited to 'Master/texmf-dist/doc/xmltex/passivetex/Changes-2003-01')
-rw-r--r-- | Master/texmf-dist/doc/xmltex/passivetex/Changes-2003-01 | 150 |
1 files changed, 150 insertions, 0 deletions
diff --git a/Master/texmf-dist/doc/xmltex/passivetex/Changes-2003-01 b/Master/texmf-dist/doc/xmltex/passivetex/Changes-2003-01 new file mode 100644 index 00000000000..a6491765fbe --- /dev/null +++ b/Master/texmf-dist/doc/xmltex/passivetex/Changes-2003-01 @@ -0,0 +1,150 @@ +1. Facilitating <fo:block span="all"> +FOTEX.XMT +in \XMLelement{fo:block}: detect the span="all" attribute and if so, end +multicol layout before (if present), and resume multicol layout (if there +was one) after. +FOTEX.STY +new user-interface macros for loading nomulticols.sty if present, otherwise +resorting to multicols, if present, otherwise defining a fake multicols +environment. If nomulticols could not be loaded, care is taken that fo:block +span="all" is disabled, otherwise the TeX run will fail. +In \@outputpage, call refreshmulticols, which will possibly refresh the +multicol layout. +NOMULTICOL.STY +new file, same functionality as MULTICOL.STY, but does not use an +environment. With some extra macros to interrupt a multicolumnlayout. It is +now possible to say + +begin multicol layout + start group + *1* + start group + end multicol layout *2* + start group + do something interesting + end group + begin multicol layout *4* + end group + *3* + end group +end multicol layout + +CAVEAT 1: a lot of assignments of nomulticol have been made global, may be +too much. For example, if something is set at point *1*, it should be +restored at point *3*, but if this thing is also set by nomulticol, it will +undergo a global change at point *2* and/or *4*, and hence will not be +restored by TeX's grouping mechanism anymore. +So may be it is needed to carefully discriminate between counts, dimens, +boxes, and macros that are particular to multicol (the should be treated +wholly globally), and the (La)TeX-quantities that are dependent on them, and +they might be set locally. + +CAVEAT 2: care must be taken that nomulticol interacts well with an other +change by me: every time a page is output, a fresh page setup will be +computed, if necessary. After this page setup, the multicol environment must +be refreshed (if it was in force). But refreshing should not occur twice in +a row for the same page. Although it seems that I have succeeded in +preventing this double refreshment, I still wonder why it can occur at the +first place. +2. Facilitating multiple special pages +XSL-FO facilitates the specification of a sequence of special pages before +an unbounded, repeating page sequence starts. +PassiveTeX only allowed one special page, labelled First. I allow for the +definition of a sequence of such pages, labelled Lead<counter>. In \@output +page a counter keeps track of which Lead page should be set up. A page setup +will be done if necessary. +This change interacts with multicol, see previous item. +Note also, that blank pages, caused by explicit page-breaks of number +continuating properties, will be detected as blank pages, and hence react to +the blank-or-not-blank attribute. +3. Implementation of xsl-footnote-separator +A rather crude implementation, by storing the static content of +xsl-footnote-separator in the macro \footnoterule, and adjusting the +\skip\footins too match the height+ depth of the new \footnoterule. +4. Enabling footnotes in tables +Footnotes in tables work. This is done by saving footnotes insides tables +into a tokenlist \BoxedFootnotes, doing the corresponding \insert-s at the +end of the table. + +CAVEAT: this is not reallly a nice implementation: if the table breaks +across pages, the footnotetexts will not appear on the same page as the +footnotemarks. +5. Vertical align in tables +If I work with an explicit line-height, the vertical space allocation for +the first and last row of a table comes out wrong. Also, when there is a +line-break inside a cell, the cell-height comes out too small. Something +gets discarded. I have made some changes to the interlineskip (following the +TeXBook definition of \offinterlineskip), in order to fix this, but I have +not succeeded completely. +6. Inheriting table-cell properties from table-column +According to XSL-FO table-cells my inherit properties from corresponding +table-columns by using +att-x="from-column(att-x)" +PassiveTeX only implements inheritance of column-width and column-number, +without the need to use from-column("column-width"). +I have made only an adhoc improvement: text-align will be inherited from the +column, and it happens automatically, without using from-column(text-align). +I have done this with the Array implementation, used for column-width and +column-number. More properties can added easily. It should not be too +difficult to implement from-column(att-x) for a fixed set of attributes, but +implementing this for all possible attributes is more difficult. +7. vskip vs kern +In the code for typesetting blocks, I have changed some vskips in kern, +because I trust the kern better than te vskip (kerns will not be discarded, +vskips might be, and I am not completely sure about the conditions). +8. Bug in FOBoxedBlock +There is some weird code at the start of \FOBoxedBlock (see comments in +fotex.sty at that point). +I have also added some \relax calls after assignments to be sure that the +text after \fi etc is not gobbled up by the preceding assignment. +9. Percenttests +I have increased the use of percented attribute values. Also, \percenttest +was not always able to see the % character, because it was still unexpanded +when fed to it. I have changed that, so that any percent in the +attributetext is surely expanded to a % with catcode 12 before being fed to +percenttest. +(Mostly % appears as an active char, and by means of a limitied-scope +definition of % to be % with catcode 12, this case will be brought to meet +the assumption). +10. Overline +I have added the overline formatting for inlines, but not nearly as nice as +the underline of ulem.sty. I just needed it in simple cases, so I took the +easy option. +11. Pagenumber filtering +The algorithm to filter page number sequences generated by indexes (a very +nice feature of passivetex, by the way), had a few obvious mistakes. I have +corrected them. +12. Horizontal alignment +There were still some problems with alignment, I made some corrections to +\FOOutputblock in fotex.sty. +See also mlnames.sty, definition of \Q@end +13 Page breaks +In \FONormalBlcok I found that a \penalty -\@M did not generate a page +break, so I changed it to \newpage (a few times). (see also changes in +\FOEndBlockTwo +14 Sub- Superscript +PassiveTeX adjusted the fontsize of sub/superscripts, but this should be +governed by the fo-tree. +So I adjusted \textsub/superscript in fotex.sty +15 Dimensions of the page +Page dimensions now work additive, more according to the XSL-FO spec. +16 attribute="inherit" +Now the inherit mechanism can also be triggered by the explicit value of +"inherit". This was achieved by redefining a macro of xmltex: \XML@attrib@x +(in fotex.xmt) +17. fo:external-graphic +scale-to-fit behaviour modified: scaled to the local container instead of +the page (hsize, vsize instead of linewidth, textheight) +18. fo:leader implemetation improved +The code for fo:leader in xmt has been improved +19. fo-retrieve-marker +Some trivial improvements in the code of fo:retrieve-marker +20. More unicode characters +Added definitions for unicode   and   (em and n squares) in +ucharacters.sty +A. Nested fo:block in fo:table-cell +Something goes wrong with <fo:table-cell><fo:block><fo:block>. +The count \FOinTable records whether we are inside a table. But I think that +it should also record wheter we are immediately below a <fo:table-cell> or +deeper. But I have not found out what to do in the latter case ... + |