[comp.sys.mac.apps] Array formula command in Word 4.0

scavo@cie.uoregon.edu (Tom Scavo) (06/11/91)

I sometimes use Word's \Array command as a LaTeX-like "eqnarray" 
environment.  For example,

     \A\al\hs5\vs0\co3(lhs1,=,rhs1,lhs2,=,rhs2,lhs3,=,rhs3)

gives the structure

                lhs1  =  rhs1
                lhs2  =  rhs2   .
                lhs3  =  rhs3

I had hoped to use a similar Word formula to do a commutative diagram, 
something like

                     f
                A  ---->  A
                ^         ^
             h  |         |  h
                |         |
                B  ---->  B
                     g

but with the vertical arrows pointing in the opposite direction.  Well, 
to make a long story short, I'm not having much luck.  I can get a 
partial result without the top and bottom function names, but as soon as 
I try to take it any further, the whole thing falls apart (literally).

I was hoping someone could tell me where I'm going wrong.  Here's what 
the code looks like so far (without the spaces or carriage returns):

     \A\ac\hs0\vs0\co8(  ,A,-,-,-,->,A,  ,
                         ,^, , , ,  ,^,  ,
                       h ,|, , , ,  ,|, h,
                         ,|, , , ,  ,|,  ,
                         ,B,-,-,-,->,B,    )

I've checked and double-checked the number of commas, which is where I 
originally thought the problem might be.  (Curiously, the trailing comma 
needs to be removed before the formula will display.  Word's real fussy 
about it.)  What I'd like to do is add two more rows, one at the top and 
the bottom, but I just can't get it to work.  Seems like the formula 
processor chokes on anything more than five rows.  Does anybody have any 
idea how I might finish this?  (Please don't say "switch to OzTeX or 
Textures" because that isn't a viable option at this point!)

Thanks in advance,
Tom Scavo
scavo@cie.uoregon.edu

scavo@cie.uoregon.edu (Tom Scavo) (06/13/91)

Thanks to everyone who responded to the problem with Word's
Array formula command.  An overwhelming majority suggested
I dump the formula approach and use a drawing program to
construct the commutative diagram.  In the end, it worked
out, however.

The key idea came from idsardi@athena.mit.edu (thanks Bill!)
who used nested Array structures to overcome Word's apparent
inability to handle more than 39 arguments in a single Array
command (a documented bug?).

Here's the end result (I hope this single, long line comes
thru unscathed):

\A(\A\ac\hs0\vs0\co8(,,,,f,,,),\A\ac\hs0\vs0\co8(,A, <190>,\D\ba1()<190>,\D\ba2()<190>,\D\ba2()<174> ,A,),\A\ac\hs0\vs0\co8(,\S\di-2\do2(<189>),,,,,\S\di-2\do2(<189>),,h ,\S\di-3\do3(<189>),,,,,\S\di-3\do3(<189>), h,,<175>,,,,,<175>,,,B, <190>,\D\ba1()<190>,\D\ba2()<190>,\D\ba2()<174> ,B),\A\ac\hs0\vs0\co8(,,,,g,,,))

Cut and paste this beast, and make the following changes:

1) replace all backslashes with the formula character (use
   ^\ in Word's Change utility);

2) replace the forms <nnn> with the corresponding ascii char-
   acter taken from the Symbol font (use command-option-Q);

3) italicize the function and set names;

4) edit out the \hs0\vs0 options if you wish (I was hoping
   to use negative spacing options, rather than \D, to line
   up the arrows and bars, but this doesn't work).

I stored mine in a Mathematics Glossary formatted with the
Normal style (except for the Symbol characters) so that the
resulting structure takes on the font of the surrounding text.

I dare say it looks pretty good!

Thanks again for all the help,
-- 
Tom Scavo
scavo@cie.uoregon.edu