diff options
author | Karl Berry <karl@freefriends.org> | 2009-05-24 00:31:38 +0000 |
---|---|---|
committer | Karl Berry <karl@freefriends.org> | 2009-05-24 00:31:38 +0000 |
commit | 3db8854079e5f66bff8e115d3e53b74a9e6b1b94 (patch) | |
tree | c76f77b61118c210746b2b9a513369908249ae7e /Master/texmf-dist/doc/texsis/base/TXSruled.doc | |
parent | 631b5bbb9b2878fe0c658883d594124839413456 (diff) |
move doc for lesser-used formats to subdirs
git-svn-id: svn://tug.org/texlive/trunk@13440 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Master/texmf-dist/doc/texsis/base/TXSruled.doc')
-rw-r--r-- | Master/texmf-dist/doc/texsis/base/TXSruled.doc | 604 |
1 files changed, 0 insertions, 604 deletions
diff --git a/Master/texmf-dist/doc/texsis/base/TXSruled.doc b/Master/texmf-dist/doc/texsis/base/TXSruled.doc deleted file mode 100644 index 826d042c07c..00000000000 --- a/Master/texmf-dist/doc/texsis/base/TXSruled.doc +++ /dev/null @@ -1,604 +0,0 @@ -%% file: TXSruled.doc - Ruled Tables - TeXsis version 2.18 -%% @(#) $Id: TXSruled.doc,v 18.2 2000/05/17 00:19:46 myers Exp $ -%======================================================================* -% (C) copyright 1994, 1999 by Eric Myers and Frank E. Paige. -% This file is a part of TeXsis. Distribution and/or modifications -% are allowed under the terms of the LaTeX Project Public License (LPPL). -% See the file COPYING or ftp://ftp.texsis.org/texsis/LPPL -%======================================================================* -\ifx\undefined\bs \texsis\input TXSdocM.doc\draft\fi - -\noindent -While \cs{halign} in Plain \TeX\ is convenient for making simple -tables, it is still difficult to make tables with horizontal and -vertical rules. Indeed, typesetting ruled tables in \TeX\ has often -been likened to programming a computer in assembler language. Even -\TeXbook\ acknowledges that ``people who know how to make ruled tables -are generally known as \TeX\ Masters.''\reference{Masters}\relax -D.E.~Knuth, {\sl The \TeX book} (Addison Wesley, 1986), page 245 -\endreference -The macros described below take a great deal of the difficulty out of -making ruled tables, so that anybody can become a -\TeX\ Master, or at least a master of ruled tables. -\index{ruled tables}\index{tables!ruled|see{ruled tables}} - -\def\VT{\char'174} % the vertical var character ``|'' is needed below - - The basic idea behind making a ruled table is similar to -\cs{halign}, and the syntax is the same as the Princeton table macros -known as |TABLES.TEX| by Ray Cowan\reference{Cowan} Ray F.~Cowan, {\sl -Making Tables with Macros} (unpublished) -\endreference\index{Cowan, Ray F.} -(although the \TeXsis\ macros are quite different internally and run -about 5 times faster). You begin the table material with \cs{ruledtable} -and end it with \cs{endruledtable}. The table material is a list of items -to appear in the rows and columns of the tables. Just as with \cs{halign}, -you can separate items in different columns with |&|\index{&@{\tt \&}} -and end a row with -\cs{cr}. The |&| \idx{alignment character}\index{&@{\tt \&}} -separates columns without putting a -vertical rule between the columns, while \cs{cr} ends a line and puts a -thin horizontal rule under it. To get a vertical rule between columns -replace the |&|\index{&@{\tt \&}} - with a `{\tt\VT}' (the vertical line), and to end a line -without a horizontal rule under it replace the \cs{cr} with \cs{crnorule}. -One important thing to remember is to end the last line in the table -with \cs{endruledtable} instead of \cs{cr}. - -\bigskip -\pagecheck{2cm} - - As a first example, here is a simple ruled table, -{\singlespaced -\bigskip\tenpoint -\ruledtable -Year | World Population \cr -8000 B.C. | ~~~5000000 \crnorule -~~50 B.C. | ~200000000 \crnorule -1650 A.D. | ~500000000 \crnorule -1850 A.D. | 1000000000 \crnorule -1945 A.D. | 2300000000 \crnorule -1980 A.D. | 4400000000 -\endruledtable -\smallskip} -\pagecheck{2cm}\noindent -and here are the instructions that created it, -\TeXexample -|smalltt\ruledtable -Year |VT World Population \cr -8000 B.C. |VT ~~~5000000 \crnorule -~~50 B.C. |VT ~200000000 \crnorule -1650 A.D. |VT ~500000000 \crnorule -1850 A.D. |VT 1000000000 \crnorule -1945 A.D. |VT 2300000000 \crnorule -1980 A.D. |VT 4400000000 -\endruledtable -|endTeXexample -This example also appears in \TeXbook, on page~246, where it is typeset using -|\halign|. Compare how the two are constructed -and see which way you think is easier. - - By default each item in the table is centered in its column. Inside -a table the tie character ``|~|''\index{~@{\tt\char'176}} takes up the space -of exactly one digit (it is the same as saying -|\phantom{0}|),\index{phantom@{\tt\bs phantom\lb 0\rb}} and this has been -used to line up the digits of the entries in both columns. It is also -possible to change the definition of the \cs{TableItem} macro so that each -entry in each column is left or right justified. This is described a -little bit later. - - Something to note about this example table is that the outer -rules are thicker than the others. You can also get a thick -vertical rule between columns by using ``{\tt\bs\VT}'' in place of -``{\tt\VT}'', and you can get a thick horizontal rule below a row by -replacing the \cs{cr} with \cs{crthick}. The widths of thick and -thin rules are controlled by the dimensions \cs{thicksize} and -\cs{thinsize}. If you don't want thick rules at all simply say -|\thicksize=\thinsize|, which makes the thick rules as thin -as the thin rules. - - Some synonyms: \cs{CR} is the same as \cs{crthick}, \cs{nr} is the -same as \cs{crnorule}, and \cs{crrule} is the same as \cs{cr} (actually -it's the other way around). \cs{tab} is the same as |&|\index{&@{\tt \&}} ---- it separates columns without a vertical rule. \cs{vb} is the same as -{\tt\VT}, it separates columns with a thin vertical bar, while -\cs{Vb} is the same as {\tt\bs\VT} and separates the columns with a -thick vertical bar. You can also use \cs{dbl} to separate columns -with a double vertical rule. - - As in Plain \TeX\ you can use \cs{span} in place of -|&|\index{&@{\tt \&}} (or the other column separators) to join two -columns together into one, and you can use \cs{omit} as the very first -token in a column to tell it to omit the fancy column layout (the -centering or other spacing). -You can also use \cs{multispan} to \cs{span} and \cs{omit} several -columns, just as in an \cs{halign}. -The only difference is that the number of columns you tell it to -\cs{multispan} is the number of columns of the table it spans --- in a -ruled table constructed with \cs{halign} you would count the columns -{\sl and} any vertical rules (because the rules are also columns of -the \cs{halign}). - - - -\table{example-II} -\caption{Another example of a ruled table.} -\intablelist{Example of a ruled table --- AT\&T Common Stock.} -\singlespaced -\tenpoint -\ruledtable -\multispan3\hfil AT\&T Common Stock \hfil\CR - Year \dbl Price | Dividend \cr - 1971 \dbl 41-54 | \$2.60 \cr - ~~~2 \dbl 41-54 | \$2.70 \cr - ~~~3 \dbl 46-55 | \$2.87 \cr - ~~~4 \dbl 40-53 | \$3.24 \cr - ~~~5 \dbl 45-52 | \$3.40 \cr - ~~~6 \dbl 51-59 | ~~.95 -\endruledtable -\endtable - - \Tbl{example-II} is another sample table, again taken -{from} \TeXbook. Something important to notice is that the last -ruled table example didn't have a table number or a caption, -while this one does. That's because the last example was created -using just \cs{ruledtable}, while this example is inside of -\cs{table}. The point is that \cs{table} and \cs{ruledtable} do -separate things and can be used either separately or together; -\cs{table} creates the space for the table and gives it a caption -and a number, while \cs{ruledtable} actually constructs the body of -the ruled table. The instructions that created \Tbl{example-II} -are: -\smallskip\goodbreak -\TeXexample -|smalltt\table{example-II} -\caption{Another example of a ruled table.} -\singlespaced -\ruledtable -\multispan3\hfil AT\&T Common Stock \hfil\CR -Year \dbl Price |VT Dividend \cr -1971 \dbl 41-54 |VT \$2.60 \cr -~~~2 \dbl 41-54 |VT \$2.70 \cr -~~~3 \dbl 46-55 |VT \$2.87 \cr -~~~4 \dbl 40-53 |VT \$3.24 \cr -~~~5 \dbl 45-52 |VT \$3.40 \cr -~~~6 \dbl 51-59 |VT ~~.95 -\endruledtable -\endtable -|endTeXexample -\bigskip\goodbreak - -\table{SiHCl} -\caption{Parameters used in the MS-X$\alpha$ calculations for - the chlorosilane molecules, H$_{\rm x}$SiCl$_{\rm 4-x}$; - x=0--4.} -\intablelist{Example of a ruled table --- Parameters used in the - MS-X$\alpha$ calculations for the chlorosilane molecules, - H$_{\rm x}$SiCl$_{\rm 4-x}$; x=0--4.} -\singlespaced -\tenpoint -\ruledtable -\vctr{Molecule} | \vctr{Region} | Radius | - \vctr{$\alpha _{\rm HF}$}|\multispan{2} $l_{\rm max}$ \crnorule -\cskip | \cskip | \cskip |\cskip| \crule | \crule \crpart - | | (au) | | initial state | final state \CR - -SiCl$_4$ | outersphere | 6.21 | 0.7238 | 4 | 7\crnorule - | Si | 2.20 | 0.7275 | 2 | 3\crnorule - | Cl | 2.40 | 0.7233 | 2 | 3\cr - -SiHCl$_3$ | outersphere | 6.21 | 0.7260 | 4 | 7\crnorule - | Si | 2.16 | 0.7275 | 2 | 3\crnorule - | Cl | 2.40 | 0.7233 | 2 | 3\crnorule - | H | 1.20 | 0.7772 | 1 | 2\cr - -SiH$_2$Cl$_2$ | outersphere | 6.25 | 0.7295 | 4 | 7\crnorule - | Si | 2.20 | 0.7275 | 2 | 3\crnorule - | Cl | 2.40 | 0.7233 | 2 | 3\crnorule - | H | 1.20 | 0.7772 | 1 | 2\cr - -SiH$_3$Cl | outersphere | 6.30 | 0.7360 | 4 | 7\crnorule - | Si | 2.20 | 0.7275 | 2 | 3\crnorule - | Cl | 2.40 | 0.7233 | 2 | 3\cr - -SiH$_4$ | outersphere | 4.10 | 0.7524 | 4 | 7 \crnorule - | Si | 2.04 | 0.7275 | 2 | 3 \crnorule - | H | 1.20 | 0.7772 | 1 | 2 -\endruledtable -\bigskip\bigskip -\endtable - -Sometimes it is desirable to have rules across only some of the columns -of a table. In this case put \cs{crule} in the columns that are to have -rules, \cs{cskip} in the columns where no rules are desired, and -end the line with \cs{crpart}, which signals that the line contains a -partial rule. The column headings in \Tbl{SiHCl} are an example of -partial rules in a table. -That table was created with the commands,\reference{Bozek, 1991} -J.D.~Bozek, Ph.D. thesis (unpublished), Department of Chemistry, -University of Western Ontario, London, Ontario CANADA -\endreference\relax -\TeXexample -|smalltt\table{SiHCl} -\caption{...} -\singlespaced\tenpoint -\ruledtable -\vctr{Molecule} |VT \vctr{Region} |VT Radius |VT - \vctr{$\alpha _{\rm HF}$}|VT\multispan{2} $l_{\rm max}$ -\crnorule -\cskip |VT \cskip |VT \cskip |VT\cskip|VT \crule |VT \crule \crpart - |VT |VT (au) |VT |VT initial state |VT final state \CR -SiCl$_4$ |VT outersphere |VT 6.21 |VT 0.7238 |VT 4 |VT 7 \crnorule - |VT Si |VT 2.20 |VT 0.7275 |VT 2 |VT 3 \crnorule - |VT Cl |VT 2.40 |VT 0.7233 |VT 2 |VT 3 ... -... -\endruledtable -\endtable -|endTeXexample -\bigskip\goodbreak - - - Ruled tables are normally centered on the page, but you can turn -off the centering with \cs{noncenteredtables}. -Then the table becomes just another piece to add to a horizontal list. -One thing this lets you do is have two tables side by side on the -page, like so: -\nobreak -\noncenteredtables\index{ruled tables!centered} -\bigskip -\line{\tenpoint\ruledtable -Item ABC | Item DEF \cr -Item GHI | Item JKL \endruledtable -\hfil -\ruledtable -Data 111 | Data 222 \cr -Data 333 | Data 444 \cr -Data 555 | Data 666 \endruledtable} -\bigskip -\pagecheck{5\baselineskip} -\noindent -This pair of tables was produced by saying: -\TeXexample -|smalltt\noncenteredtables -\medskip -\line{\ruledtable -Item ABC |VT Item DEF \cr -Item GHI |VT Item JKL \endruledtable -\hfil -\ruledtable -Data 111 |VT Data 222 \cr -Data 333 |VT Data 444 \cr -Data 555 |VT Data 666 \endruledtable} -\smallskip -|endTeXexample -\noindent Saying \cs{centeredtables} turns table centering back on. -Tables are then centered across the page, and a table is then -added to a {\sl vertical\/} list. -\bigskip\goodbreak - - Usually \cs{ruledtable} makes tables as wide as their natural -width, but it is possible to make them wider by setting the dimension -\cs{tablewidth} to the width desired before saying \cs{ruledtable}. We can -make the same table in \Tbl{example-II} but with the width set to -10cm: \index{ruled tables!size} -\bigskip -\noncenteredtables -\tablewidth=10cm -\line{\tenpoint\hfil\vbox{\singlespaced - \ruledtable - \multispan3\hfill AT\&T Common Stock \hfill\CR - Year \dbl Price | Dividend \cr - 1971 \dbl 41-54 | \$2.60 \cr - ~~~2 \dbl 41-54 | \$2.70 \cr - ~~~3 \dbl 46-55 | \$2.87 \cr - ~~~4 \dbl 40-53 | \$3.24 \cr - ~~~5 \dbl 45-52 | \$3.40 \cr - ~~~6 \dbl 51-59 | ~~.95\rlap* - \endruledtable - \hbox{* (first quarter only)} -\vss}\hfil} -\smallskip -\noindent -The careful reader will notice that the version of -\Tbl{example-II} in \TeXbook\ had a footnote to the last entry, -and we have added that here. To do so we had to put the footnote in an -\cs{hbox} and stack it under the table, so we had to turn off table -centering. The table is therefore a bit more complicated to make, but -not much: \index{ruled tables!footnotes} -\TeXexample -|smalltt\noncenteredtables -\tablewidth=10cm -\line{\tenpoint\hfil\vbox{\singlespaced - \ruledtable - \multispan3\hfill AT\&T Common Stock \hfill\CR - Year \dbl Price |VT Dividend \cr - 1971 \dbl 41-54 |VT \$2.60 \cr - ~~~2 \dbl 41-54 |VT \$2.70 \cr - ~~~3 \dbl 46-55 |VT \$2.87 \cr - ~~~4 \dbl 40-53 |VT \$3.24 \cr - ~~~5 \dbl 45-52 |VT \$3.40 \cr - ~~~6 \dbl 51-59 |VT ~~.95\rlap* - \endruledtable - \hbox{* (first quarter only)} -\vss}\hfil} -|endTeXexample -\centeredtables % turn back on! -\noindent -If we had not wanted to add the footnote, then the table would have -been typed the same way as \Tbl{example-II} except for setting -the \cs{tablewidth}. - - Important note: \cs{tablewidth} is turned ``off'' after the -table is made, so the next table will have its natural width unless -you explicitly set \cs{tablewidth} again! \index{ruled tables!size} -\bigskip\goodbreak - - \cs{ruledtable} normally inserts a \cs{quad} of space around each -item. If you have a very wide table, especially one with many columns, -you may wish to reduce this. \cs{TightTables} make this spacing a single -space, the minimum acceptable. \cs{LooseTables} restores the default -spacing. You can define this space to be something else by -re-defining \cs{tablespace}, for example as \index{ruled tables!spacing} -\TeXexample -\def\tablespace{\ \ } -|endTeXexample -\noindent -If the table is still too wide with \cs{TightTables}, you will probably -have to reformat it or print it in landscape mode (tilted 90\degrees on -the page). -\bigskip\goodbreak - - - The careful reader may also have noticed that in the -examples in \Tbl{example-II} and \Tbl{SiHCl} we said -\cs{singlespaced}. That's -because the spacing of the rows of a table can be controlled just like -the spacing of the text with \cs{singlespaced}, \cs{doublespaced}, -etc. \index{ruled tables!spacing} -The space between the rows of a table is set by a strut called -\cs{tstrut}, which holds the rows apart. Its default definition is -\TeXexample -\def\tstrut{\vrule height 3.1ex depth 1.2ex width 0pt} -|endTeXexample -\noindent -You can change the spacing between rows by changing the definition of -this strut. One of the things \cs{singlespaced} does is define the -\cs{tstrut} to be 0.5ex higher and deeper than a parenthesis. -\cs{doublespaced}, \cs{triplespaced}, and \cs{widenspacing} all increase the -height and depth of the strut in proportion to the increase in the -baseline spacing. - - If you put something in a table which is larger than the strut, -then it will touch the rules above or below. You can fix this by -inserting your own strut into that row. More simply, you can say -\cs{bigitem}\arg{stuff}, and the ``stuff'' will be positioned correctly -with a nice amount of space above and below. \index{ruled tables!spacing} -\medskip - - You can also decide whether or not you want diagnostic messages -printed when a table is created. Saying \cs{tableinfotrue} causes a -message to be printed on your terminal every time a ruled table is -created. The message tells you how many rows and columns were in the -table. This is useful information, because it can tell you immediately -if you made a mistake in the table or left out a row or column. -\cs{tableinfotrue} is the default, but you can turn off these messages -by saying -\cs{tableinfofalse}. In any case, you will be warned if a row has a -different number of columns from the previous one. -\medskip - - The tables we have demonstrated so far all contain numbers, but -sometimes it is desirable to have an entry in a table which is a -paragraph of text. \index{ruled tables!text} For that purpose, you can -use \cs{para}\arg{text}. The width of the paragraph is determined by -the dimension \cs{parasize}, which defaults to 4 inches. -\medskip - -Tables \use{Tb.tablemac;a} and \use{Tb.tablemac;b} summarize the most -important commands for making ruled tables. - - Finally, we can discuss how you can change how each column of -a table is constructed. The macros which build the table take -each entry and pass it to a macro called \cs{TableItem}. The -default definition of \cs{TableItem} is: -\vskip 0pt\goodbreak -\TeXexample -|smalltt\def\TableItem#1{% % centers item in ruled table - \hfil\tablespace % left glue - #1\killspace % item, no space after - \tablespace\hfil % right glue - }% -|endTeXexample - - -%% TABLE A - -\bottomtable{tablemac;a} -\caption{Basic table macros for use with {\tt\bs ruledtable}.}% -\intablelist{Basic macros for {\tt\bs ruledtable}}% -\tablewidth=\hsize -\LeftJustifyTables -\ruledtable -\sl Macro name\relax - | \sl Description \relax \crthick -\tt\bs ruledtable\relax - | \para{Starts a ruled table.}\cr -\vtop{\noindent\hsize=1.6in\normalbaselines - \tt\char124\quad \rm (vertical bar)\hfil\break - or \tt\bs vb\hfil}\relax - | \para{Separates one column from the next, with a - a thin vertical rule between them.}\cr -\tt\&\ \rm or\tt\ \bs tab \relax - | \para{Separates one column from the next, but with - no rule between them.}\cr -\tt\bs cr\relax - | \para{Ends the current row, and starts the next - one. The completed row will be separated from - the next with a thin horizontal rule.}\cr -\vtop{\noindent\hsize=1.6in\normalbaselines -\tt\bs crthick \hfil\break \rm or \tt\bs CR\hfil }\relax - | \para{Similar to {\tt\bs cr}, but the rows will - be separated with a thick horizontal rule.}\cr -\vtop{\noindent\hsize=1.6in\normalbaselines -\tt\bs crnorule \hfil\break \rm or \tt\bs nr\hfil }\relax - | \para{Similar to {\tt\bs cr}, but the rows will - not be separated by a rule.}\cr -\tt\bs\char124 \relax - | \para{Same as {\tt\char124}, but with a thick vertical rule.}\cr -\tt\bs dbl - | \para{Same as {\tt\char124}, but with two thin vertical rules.}\cr -\tt\bs endruledtable\relax - | \para{Ends the ruled table.}% -\endruledtable -\line{\hfil {\sl Continued...}}% -\endtable - -%% TABLE B (FULL PAGE) - -\fulltable{tablemac;b} -\caption{Additional macros for use with {\tt\bs ruledtable}.} -\intablelist{Additional macros for {\tt\bs ruledtable}} -\tablewidth=\hsize -\LeftJustifyTables -\line{{\sl Continued...}\hfil} -\smallskip -\ruledtable -\sl Macro name\relax - | \sl Description \relax \crthick -\tt\bs multispan\lb{\it n}\rb\relax - | \para{Makes the next entry span the next $n$ - columns, where $n$ is an integer, $n>0$. - See {\tt\bs omit} below.} \cr -\tt\bs omit \relax - | \para{This \TeX\ primitive causes the normal - template for its entry to be omitted, allowing - the user to do something else with this entry.} \cr -\tt\bs para\arg{text}\relax - | \para{Formats {\sl text\/} into a neat little - paragraph like this one. The width of the - paragraph produced is determined by the dimension - {\tt\bs parasize}. The default is 4 inches. } \cr -\tt\bs parasize=\meta{dimen} \relax - | \para{Sets the width of paragraphs for the {\tt\bs para} - macro.} \cr -\tt\bs TableItem\arg{stuff}\relax - | \para{Used in the standard template, this - macro centers its argument in the column. The - user can redefine it for special effects.} \cr -\tt\bs tablespace - | \para{The spacing around each item for {\tt\bs TableItem}.}\cr -\vtop{\noindent\hsize=1.4in\normalbaselines -\tt\bs LooseTables \hfil\break -\tt\bs TightTables\hfil}\relax - | \para{Set {\tt\bs tablespace} to {\tt\bs quad} and {\tt\bs\ } - respectively.\hfill\break\ }\cr -\vtop{\noindent\hsize=1.6in\normalbaselines -\tt\bs TrailingSpaces \hfil\break -\tt\bs NoTrailingSpaces \hfil}\relax - | \para{Use trailing spaces and glue items in table entries - (default) or ignore them. See text.}\cr -\tt\bs bigitem\arg{stuff}\relax - | \para{Use this for something that would normally - not fit in one line of a table to make the spacing - between rows large enough for this item.} \cr -\tt\bs vctr\arg{stuff}\relax - | \para{Centers the item {\sl vertically\/} so that - it can appear between two rows.}\cr -\tt\bs centeredtables\relax - | \para{Turns table centering on. Each table - will be centered left-to-right on the page. - This is the default.} \cr -\tt\bs noncenteredtables\relax - | \para{Turns table centering off. Each table - is returned as an {\tt\bs hbox}, and it is up - to the user to place it as desired.} \cr -\vtop{\noindent\hsize=1.6in\normalbaselines -\tt\bs tableinfotrue \hfil\break -\tt\bs tableinfofalse\hfil}\relax - | \para{Turns on or off the diagnostic message telling - you how many rows and columns were found in the - table. }\cr -\tt\bs thicksize=\meta{dimen} \relax - | \para{This dimension specifies the thickness - of the thick rules in the table. The default - size is 1.5 points.} \cr -\tt\bs thinsize=\meta{dimen} \relax - | \para{This dimension specifies the thickness - of thin rules in the table. The default - size is 0.8 points.} \cr -\tt\bs tablewidth=\meta{dimen} \relax - | \para{Specifies how wide to make the next - table. If not specified, the table is made to - its natural width. This value is reset - following the construction of each table.} -\endruledtable -\vfill -\endtable - - -The \cs{hfil} glue on both sides of the argument causes the item to be -centered in the column, while \cs{tablespace} (which defaults to \cs{quad}) -insures that there will be at least some amount of space between the -item and the vertical rules on each side. Because of the way that -\TeX\ handles macro arguments, if you type a table with spaces between -the text and the next column separator, an extra \cs{space} will be -inserted into the table. If you first say \cs{NoTrailingSpaces}, then -\cs{killspace} in the above macro is defined to remove any trailing glue -items. \cs{hfill} is redefined by the table macros so that if it is the -last token in an entry, then that entry is properly left justified, -but to insert any other trailing glue, you must say -\example -\meta{text}\meta{glue}|\null| -\endexample -\noindent -The default is \cs{TrailingSpaces}, which does incorporate any trailing -spaces into the table but which also treats any trailing glue items -normally. - - - You can change the definition of \cs{TableItem} to suit your own -purpose. The simplest modification is to omit the \cs{hfil} on the left -or right so that each entry is right or left justified. This is so -commonly used that saying \cs{RightJustifyTables} or -\cs{LeftJustifyTables} makes the appropriate change for you. Saying -\cs{NoJustifyTables} restores \cs{TableItem} to its original centering -function. \index{ruled tables!customization} - - Since \cs{TableItem} is used to create every column of the table, you -cannot use it to modify a single column. To justify just one column -you can simply put \cs{hfill} to the left or right of each item in the -column, since \cs{hfill} is infinitely more stretchy than \cs{hfil}. (The -behavior of glue items other than \cs{hfill} depends on whether -\cs{NoTrailingSpaces} has been set.) With a little more work it is -possible to design special or unusual tables by redefining the -``preamble'' of the table. This is possible because \cs{ruledtable} -uses \cs{halign} with a preamble called \cs{TablePreamble}. The default -definition of \cs{TablePreamble} is: -\TeXexample -\def\TablePreamble{% % \ruledtable preamble - \TableItem{####}% % the first item - \plaintab\plaintab % && means repeat this - \TableItem{####}% % the subsequent items - \plaincr}% % end of preamble -|endTeXexample -\noindent -The syntax for \cs{TablePreamble} is like an \cs{halign} preamble in Plain -\TeX\, but with |&| replaced by \cs{plaintab}, \cs{cr} replaced by -\cs{plaincr}, and |#| replaced by |####|. If you have read this far and -want to try changing \cs{TablePreable} then you should read the source -code and the comments that go with it in the file |TXSruled.tex.| - -As a final note we point out that it is also possible for you to create -your own column separators with the macro \cs{nextcolumn}. This macro -takes a single argument which is used to separate one column of the -table from another. Thus for example, the \cs{dbl} macro for creating a -double vertical rule between columns is defined as: -\TeXexample -\def\dbl{% - \nextcolumn{\vrule width\thinsize - \hskip\thinsize\vrule width\thinsize}} -|endTeXexample -\relax -\index{ruled tables!customization} - -%>>> EOF TXSruled.doc <<< |