home *** CD-ROM | disk | FTP | other *** search
/ rtsi.com / 2014.01.www.rtsi.com.tar / www.rtsi.com / OS9 / OSK / APPS / lout2.lzh / LOUT2 / DOC / TR.EQ / s3 < prev    next >
Text File  |  1994-01-25  |  3KB  |  81 lines

  1. @Section
  2.    @Title { Spacing }
  3. @Begin
  4. @PP
  5. There is a basic rule governing the use of white space characters
  6. (space, tab, and newline) in the input to Lout:  white space between two
  7. objects affects the result; white space between a symbol and its
  8. parameter does not.
  9. @PP
  10. Although this rule is just right most of the time, it is not adequate
  11. for equation formatting.  Getting the horizontal spacing right in
  12. equations is a very fiddly business, involving four different sizes of
  13. space (zero, thin, medium, and thick), and different rules for spacing
  14. within superscripts and subscripts to those applying outside, according
  15. to a leading authority [{@Ref knuth84}].  Eq therefore takes the spacing
  16. decisions upon itself, and con&-sequently chooses to ignore all white
  17. space in its input, even between two objects.
  18. @FootNote {
  19. This effect is produced by enclosing the entire equation in
  20. {@Code "0c @Space"}.  The simplest way to restore the effect of white
  21. space to part of an equation is to enclose that part in a @Code "@Font"
  22. symbol.  Eq also changes the value of the @Code v unit, so if a paragraph
  23. of filled text is desired within an equation, it may be necessary to
  24. enclose it in a @Code "@Break" symbol. }
  25. @PP
  26. Every symbol provided by Eq has a {@I {full name}}, which denotes the
  27. symbol without any space attached.  Many symbols also
  28. have a {@I {short name}}, which denotes the same symbol with what Eq
  29. considers to be an appropriate amount of space for that symbol attached
  30. to it.  For example, @Eq { lessequal } has full name @Code lessequal
  31. and short name {@Code "<="}:
  32. @IL
  33. @LI {
  34. @Code "a lessequal b"
  35. |7ct
  36. @Eq { a lessequal b }
  37. }
  38. @LI {
  39. @Code "a <= b"
  40. |7ct
  41. @Eq { a <= b }
  42. }
  43. @EL
  44. Eq puts a thick space around relation symbols like {@Code "<="}, a
  45. medium space around binary operator symbols like {@Code "+"}, and a thin
  46. space after punctuation symbols (@Code ";" and {@Code ","}); except
  47. that in places where the symbols appear in a smaller size (superscripts,
  48. subscripts, etc.), these spaces are omitted.  No other horizontal space
  49. is ever inserted.
  50. @PP
  51. The short names have been carefully designed to produce good-looking
  52. mathematics most of the time.  It is best to rely
  53. on them in the first instance and only think about spacing when the result
  54. is not pleasing.  In that case, Eq's space can be removed by using the
  55. full names, and thin, medium and thick space can be added using the
  56. following symbols:
  57. @ID @Tab
  58.     vmargin { 0.5vx }
  59.     @Fmta { @Col A ! @Col B }
  60. {
  61. @Rowa
  62.   A { @Code "`" }
  63.   B { {@Code "0.18f"}  ({@Code "0.018f"} in subscripts, etc.) }
  64. @Rowa
  65.   A { @Code "``" }
  66.   B { {@Code "0.24f"}  ({@Code "0.024f"} in subscripts, etc.) }
  67. @Rowa
  68.   A { @Code "```" }
  69.   B { {@Code "0.30f"}  ({@Code "0.030f"} in subscripts, etc.) }
  70. }
  71. where @Code "1f" is the current font size.  These symbols have low
  72. precedence.  The @Code "&" symbol from standard Lout is also available;
  73. the @Code "s" unit has value 0 and so is not very useful, but one can
  74. write @Code "&2m" for example for a two em space.  The full names are
  75. tedious to remember, so Eq provides a @Code "non" symbol which removes
  76. spaces from its right parameter; thus @Code "non <=" is equivalent to
  77. {@Code "lessequal"}.  There are also {@Code "rel"}, {@Code "bin"}, and
  78. {@Code "punct"} symbols for telling Eq to add space to the following symbol as
  79. though it was a relation symbol, binary operator, or punctuation symbol.
  80. @End @Section
  81.