I had played around with strut=yes, but had not realized I also needed to set autostrut=no. That approach ended up working best; my initial solution broke aligncharacter, and I like the table environment to reset. It is a bit odd that it resets to something different than the default. As an aside, what books are good for learning TeX programming for ConTeXt? Anything besides the TeXBook (and I saw TeX by Topic mentioned on the list the other day). Thanks again, Brian On Mar 29, 2007, at 4:34 AM, Wolfgang Schuster wrote: > > > 2007/3/28, Brian R. Landy : > Hi, > > I am having a problem using nested natural tables, to which I have a > solution but feel that it my not be the proper approach. I'm pretty > much a TeX and ConTeXt novice. > > The problem is that the row height it reduced when a table is nested, > breaking vertical text alignment across cells. In my example the > cells "SSSSS" and "Swap" to not align vertically due to the presence > of the "p". I have an example of the problem and my fix below. > > I'm curious if someone knows a better way to fix this. > > Thanks for your help, > Brian > > > Hi Brian, > > I will show a few solution to your problem for the following table. > We will start with a simple table that contains the error. > > \starttext > > \bTABLE > \bTR > \bTD > {\bTABLE > \bTR > \bTD SSSS \eTD > \bTD Swap \eTD > \bTR > \eTABLE} > \bTD > \eTR > \eTABLE > > \stoptext > > > Your own solution with adding a strut to the inner table can be done > in a better way by adding the strut to the setup of the beginning > of the table. > > \starttext > > \bTABLE > \bTR > \bTD > {\bTABLE[left=\strut] > \bTR > \bTD SSSS \eTD > \bTD Swap \eTD > \bTR > \eTABLE} > \bTD > \eTR > \eTABLE > > \stoptext > > > > > > Another mothod is to use the same method, that is used for the > outer table. I took a look into the source and found the following > method, > that works also. > > \starttext > > \bTABLE > \bTR > \bTD > {\bTABLE[strut=yes,autostrut=no] > \bTR > \bTD SSSS \eTD > \bTD Swap \eTD > \bTR > \eTABLE} > \bTD > \eTR > \eTABLE > > \stoptext > > > After that a was interested why we need to set the values in the > last example again, because they are already set in core-ntb. > The solution is, the values in nested tables are removed and replaced > by new ones. This behaviour can be changed and is shown in my last > example. > > \starttext > > \setfalse\resetTABLEmode > > \bTABLE > \bTR > \bTD > {\bTABLE > \bTR > \bTD SSSS \eTD > \bTD Swap \eTD > \bTR > \eTABLE} > \bTD > \eTR > \eTABLE > > \stoptext > > > Another example that shows the effect of \resetTABLEmode is: > > \starttext > > %\settrue\resetTABLEmode % default setting > > \setupTABLE[frame=off] > > \bTABLE > \bTR > \bTD > {\bTABLE\bTR\bTD Text \eTD\eTR\eTABLE} > \eTD > \bTD > Text > \eTD > \eTR > \eTABLE > > \setfalse\resetTABLEmode > > \bTABLE > \bTR > \bTD > {\bTABLE\bTR\bTD Text \eTD\eTR\eTABLE} > \eTD > \bTD > Text > \eTD > \eTR > \eTABLE > > \stoptext > > > Wolfgang > > _______________________________________________ > ntg-context mailing list > ntg-context@ntg.nl > http://www.ntg.nl/mailman/listinfo/ntg-context >