home *** CD-ROM | disk | FTP | other *** search
Text File | 1993-05-31 | 83.0 KB | 2,427 lines |
- Newsgroups: comp.sources.misc
- From: jeff@joyce.cs.su.oz.au (Jeff Kingston)
- Subject: v37i099: lout - Lout document formatting system, v2, Part01/30
- Message-ID: <csm-v37i099=lout.224826@sparky.IMD.Sterling.COM>
- X-Md4-Signature: 83e2dfb69e6867db9221df18dba329ae
- Sender: kent@sparky.imd.sterling.com (Kent Landfield)
- Organization: Sterling Software
- Date: Mon, 31 May 1993 03:50:37 GMT
- Approved: kent@sparky.imd.sterling.com
-
- Submitted-by: jeff@joyce.cs.su.oz.au (Jeff Kingston)
- Posting-number: Volume 37, Issue 99
- Archive-name: lout/part01
- Environment: UNIX
-
- This is version 2 of the Lout document formatting system. Lout offers an wide
- range of advanced features, including equation formatting, tables, diagrams,
- rotation and scaling, sorted indexes, bibliographic databases, running headers
- and odd-even pages, automatic cross referencing, and much more, all ready to
- go. Furthermore, Lout is easily extended with definitions which are very
- much easier to write than troff of TeX macros because Lout is a high-level
- language, the outcome of an eight-year research project that went back to
- the beginning.
-
- New features introduced by Version 2 include optimal paragraph breaking,
- automatic hyphenation, PostScript EPS file inclusion, ligatures, and
- many small enhancements and bug fixes. This version has been beta
- tested at a number of sites around the world over the last few months.
-
- Lout is written in C, is highly portable to Unix systems, and produces
- PostScript output (used by most laser printers). Lout is also available
- via ftp from ftp.cs.su.oz.au in jeff/lout.2.03.tar.Z. The FTP distribution
- contains formatted outfile.ps files that are not a part of the c.s.misc
- posting.
-
- This distribution contains
-
- * Complete C source code
- * Standard packages of definitions for tech reports, books, equations,
- tables, diagrams, and Pascal prettyprinting (all written in Lout)
- * Complete user documentation in the form of seven technical reports
- and a Unix manual page
- * A makefile and installation instructions
-
- Lout was designed and implemented by Jeffrey H. Kingston (jeff@cs.su.oz.au)
- of the Basser Department of Computer Science at the University of Sydney.
- ---------------
- #! /bin/sh
- # This is a shell archive. Remove anything before this line, then feed it
- # into a shell via "sh file" or similar. To overwrite existing files,
- # type "sh file -c".
- # Contents: lout lout/data lout/doc lout/doc/tr.begin lout/doc/tr.eq
- # lout/doc/tr.fig lout/doc/tr.impl lout/doc/tr.lout lout/doc/tr.over
- # lout/doc/tr.tab lout/font0 lout/font0/ZapfDin.AFM lout/font1
- # lout/include lout/include/dl lout/man
- # Wrapped by kent@sparky on Sun May 30 19:43:53 1993
- PATH=/bin:/usr/bin:/usr/ucb:/usr/local/bin:/usr/lbin ; export PATH
- echo If this archive is complete, you will see the following message:
- echo ' "shar: End of archive 1 (of 30)."'
- if test ! -d 'lout' ; then
- echo shar: Creating directory \"'lout'\"
- mkdir 'lout'
- fi
- if test ! -d 'lout/data' ; then
- echo shar: Creating directory \"'lout/data'\"
- mkdir 'lout/data'
- fi
- if test ! -d 'lout/doc' ; then
- echo shar: Creating directory \"'lout/doc'\"
- mkdir 'lout/doc'
- fi
- if test ! -d 'lout/doc/tr.begin' ; then
- echo shar: Creating directory \"'lout/doc/tr.begin'\"
- mkdir 'lout/doc/tr.begin'
- fi
- if test ! -d 'lout/doc/tr.eq' ; then
- echo shar: Creating directory \"'lout/doc/tr.eq'\"
- mkdir 'lout/doc/tr.eq'
- fi
- if test ! -d 'lout/doc/tr.fig' ; then
- echo shar: Creating directory \"'lout/doc/tr.fig'\"
- mkdir 'lout/doc/tr.fig'
- fi
- if test ! -d 'lout/doc/tr.impl' ; then
- echo shar: Creating directory \"'lout/doc/tr.impl'\"
- mkdir 'lout/doc/tr.impl'
- fi
- if test ! -d 'lout/doc/tr.lout' ; then
- echo shar: Creating directory \"'lout/doc/tr.lout'\"
- mkdir 'lout/doc/tr.lout'
- fi
- if test ! -d 'lout/doc/tr.over' ; then
- echo shar: Creating directory \"'lout/doc/tr.over'\"
- mkdir 'lout/doc/tr.over'
- fi
- if test ! -d 'lout/doc/tr.tab' ; then
- echo shar: Creating directory \"'lout/doc/tr.tab'\"
- mkdir 'lout/doc/tr.tab'
- fi
- if test ! -d 'lout/font0' ; then
- echo shar: Creating directory \"'lout/font0'\"
- mkdir 'lout/font0'
- fi
- if test -f 'lout/font0/ZapfDin.AFM' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'lout/font0/ZapfDin.AFM'\"
- else
- echo shar: Extracting \"'lout/font0/ZapfDin.AFM'\" \(9316 characters\)
- sed "s/^X//" >'lout/font0/ZapfDin.AFM' <<'END_OF_FILE'
- XStartFontMetrics 2.0
- XComment Copyright (c) 1984 Adobe Systems Incorporated. All Rights Reserved.
- XComment Creation Date:Tue Mar 3 15:22:45 PST 1987
- XFontName ZapfDingbats
- XEncodingScheme FontSpecific
- XFullName ITC Zapf Dingbats
- XFamilyName ITC Zapf Dingbats
- XWeight Medium
- XItalicAngle 0.0
- XIsFixedPitch false
- XUnderlinePosition -98
- XUnderlineThickness 54
- XVersion 001.001
- XNotice ITC Zapf Dingbats is a registered trademark of International Typeface Corporation.
- XFontBBox -1 -143 981 820
- XStartCharMetrics 202
- XC 32 ; WX 278 ; N space ; B 0 0 0 0 ;
- XC 33 ; WX 974 ; N a1 ; B 35 72 939 621 ;
- XC 34 ; WX 961 ; N a2 ; B 35 81 927 611 ;
- XC 35 ; WX 974 ; N a202 ; B 35 72 939 621 ;
- XC 36 ; WX 980 ; N a3 ; B 35 0 945 692 ;
- XC 37 ; WX 719 ; N a4 ; B 34 139 685 566 ;
- XC 38 ; WX 789 ; N a5 ; B 35 -14 755 705 ;
- XC 39 ; WX 790 ; N a119 ; B 35 -14 755 705 ;
- XC 40 ; WX 791 ; N a118 ; B 35 -14 761 705 ;
- XC 41 ; WX 690 ; N a117 ; B 35 138 655 553 ;
- XC 42 ; WX 960 ; N a11 ; B 35 123 925 568 ;
- XC 43 ; WX 939 ; N a12 ; B 35 134 904 559 ;
- XC 44 ; WX 549 ; N a13 ; B 29 -11 516 705 ;
- XC 45 ; WX 855 ; N a14 ; B 34 59 820 632 ;
- XC 46 ; WX 911 ; N a15 ; B 35 50 876 642 ;
- XC 47 ; WX 933 ; N a16 ; B 35 139 899 550 ;
- XC 48 ; WX 911 ; N a105 ; B 35 50 876 642 ;
- XC 49 ; WX 945 ; N a17 ; B 35 139 909 553 ;
- XC 50 ; WX 974 ; N a18 ; B 35 104 938 586 ;
- XC 51 ; WX 755 ; N a19 ; B 34 -14 721 704 ;
- XC 52 ; WX 846 ; N a20 ; B 36 -14 811 705 ;
- XC 53 ; WX 762 ; N a21 ; B 35 0 727 692 ;
- XC 54 ; WX 761 ; N a22 ; B 35 0 727 692 ;
- XC 55 ; WX 571 ; N a23 ; B -1 -68 571 661 ;
- XC 56 ; WX 677 ; N a24 ; B 36 -14 642 705 ;
- XC 57 ; WX 763 ; N a25 ; B 35 0 728 692 ;
- XC 58 ; WX 760 ; N a26 ; B 35 0 726 692 ;
- XC 59 ; WX 759 ; N a27 ; B 35 0 725 692 ;
- XC 60 ; WX 754 ; N a28 ; B 35 0 720 692 ;
- XC 61 ; WX 494 ; N a6 ; B 35 0 460 692 ;
- XC 62 ; WX 552 ; N a7 ; B 35 0 517 692 ;
- XC 63 ; WX 537 ; N a8 ; B 35 0 503 692 ;
- XC 64 ; WX 577 ; N a9 ; B 35 96 542 596 ;
- XC 65 ; WX 692 ; N a10 ; B 35 -14 657 705 ;
- XC 66 ; WX 786 ; N a29 ; B 35 -14 751 705 ;
- XC 67 ; WX 788 ; N a30 ; B 35 -14 752 705 ;
- XC 68 ; WX 788 ; N a31 ; B 35 -14 753 705 ;
- XC 69 ; WX 790 ; N a32 ; B 35 -14 756 705 ;
- XC 70 ; WX 793 ; N a33 ; B 35 -14 759 705 ;
- XC 71 ; WX 794 ; N a34 ; B 35 -14 759 705 ;
- XC 72 ; WX 816 ; N a35 ; B 35 -14 782 705 ;
- XC 73 ; WX 823 ; N a36 ; B 35 -14 787 705 ;
- XC 74 ; WX 789 ; N a37 ; B 35 -14 754 705 ;
- XC 75 ; WX 841 ; N a38 ; B 35 -14 807 705 ;
- XC 76 ; WX 823 ; N a39 ; B 35 -14 789 705 ;
- XC 77 ; WX 833 ; N a40 ; B 35 -14 798 705 ;
- XC 78 ; WX 816 ; N a41 ; B 35 -13 782 705 ;
- XC 79 ; WX 831 ; N a42 ; B 35 -14 796 705 ;
- XC 80 ; WX 923 ; N a43 ; B 35 -14 888 705 ;
- XC 81 ; WX 744 ; N a44 ; B 35 0 710 692 ;
- XC 82 ; WX 723 ; N a45 ; B 35 0 688 692 ;
- XC 83 ; WX 749 ; N a46 ; B 35 0 714 692 ;
- XC 84 ; WX 790 ; N a47 ; B 34 -14 756 705 ;
- XC 85 ; WX 792 ; N a48 ; B 35 -14 758 705 ;
- XC 86 ; WX 695 ; N a49 ; B 35 -14 661 706 ;
- XC 87 ; WX 776 ; N a50 ; B 35 -6 741 699 ;
- XC 88 ; WX 768 ; N a51 ; B 35 -7 734 699 ;
- XC 89 ; WX 792 ; N a52 ; B 35 -14 757 705 ;
- XC 90 ; WX 759 ; N a53 ; B 35 0 725 692 ;
- XC 91 ; WX 707 ; N a54 ; B 35 -14 672 705 ;
- XC 92 ; WX 708 ; N a55 ; B 35 -14 672 705 ;
- XC 93 ; WX 682 ; N a56 ; B 35 -14 647 705 ;
- XC 94 ; WX 701 ; N a57 ; B 35 -14 666 705 ;
- XC 95 ; WX 826 ; N a58 ; B 35 -14 791 705 ;
- XC 96 ; WX 815 ; N a59 ; B 35 -14 780 705 ;
- XC 97 ; WX 789 ; N a60 ; B 35 -14 754 705 ;
- XC 98 ; WX 789 ; N a61 ; B 35 -14 754 705 ;
- XC 99 ; WX 707 ; N a62 ; B 34 -14 673 705 ;
- XC 100 ; WX 687 ; N a63 ; B 36 0 651 692 ;
- XC 101 ; WX 696 ; N a64 ; B 35 0 661 691 ;
- XC 102 ; WX 689 ; N a65 ; B 35 0 655 692 ;
- XC 103 ; WX 786 ; N a66 ; B 34 -14 751 705 ;
- XC 104 ; WX 787 ; N a67 ; B 35 -14 752 705 ;
- XC 105 ; WX 713 ; N a68 ; B 35 -14 678 705 ;
- XC 106 ; WX 791 ; N a69 ; B 35 -14 756 705 ;
- XC 107 ; WX 785 ; N a70 ; B 36 -14 751 705 ;
- XC 108 ; WX 791 ; N a71 ; B 35 -14 757 705 ;
- XC 109 ; WX 873 ; N a72 ; B 35 -14 838 705 ;
- XC 110 ; WX 761 ; N a73 ; B 35 0 726 692 ;
- XC 111 ; WX 762 ; N a74 ; B 35 0 727 692 ;
- XC 112 ; WX 762 ; N a203 ; B 35 0 727 692 ;
- XC 113 ; WX 759 ; N a75 ; B 35 0 725 692 ;
- XC 114 ; WX 759 ; N a204 ; B 35 0 725 692 ;
- XC 115 ; WX 892 ; N a76 ; B 35 0 858 705 ;
- XC 116 ; WX 892 ; N a77 ; B 35 -14 858 692 ;
- XC 117 ; WX 788 ; N a78 ; B 35 -14 754 705 ;
- XC 118 ; WX 784 ; N a79 ; B 35 -14 749 705 ;
- XC 119 ; WX 438 ; N a81 ; B 35 -14 403 705 ;
- XC 120 ; WX 138 ; N a82 ; B 35 0 104 692 ;
- XC 121 ; WX 277 ; N a83 ; B 35 0 242 692 ;
- XC 122 ; WX 415 ; N a84 ; B 35 0 380 692 ;
- XC 123 ; WX 392 ; N a97 ; B 35 263 357 705 ;
- XC 124 ; WX 392 ; N a98 ; B 34 263 357 705 ;
- XC 125 ; WX 668 ; N a99 ; B 35 263 633 705 ;
- XC 126 ; WX 668 ; N a100 ; B 36 263 634 705 ;
- XC 161 ; WX 732 ; N a101 ; B 35 -143 697 806 ;
- XC 162 ; WX 544 ; N a102 ; B 56 -14 488 706 ;
- XC 163 ; WX 544 ; N a103 ; B 34 -14 508 705 ;
- XC 164 ; WX 910 ; N a104 ; B 35 40 875 651 ;
- XC 165 ; WX 667 ; N a106 ; B 35 -14 633 705 ;
- XC 166 ; WX 760 ; N a107 ; B 35 -14 726 705 ;
- XC 167 ; WX 760 ; N a108 ; B 0 121 758 569 ;
- XC 168 ; WX 776 ; N a112 ; B 35 0 741 705 ;
- XC 169 ; WX 595 ; N a111 ; B 34 -14 560 705 ;
- XC 170 ; WX 694 ; N a110 ; B 35 -14 659 705 ;
- XC 171 ; WX 626 ; N a109 ; B 34 0 591 705 ;
- XC 172 ; WX 788 ; N a120 ; B 35 -14 754 705 ;
- XC 173 ; WX 788 ; N a121 ; B 35 -14 754 705 ;
- XC 174 ; WX 788 ; N a122 ; B 35 -14 754 705 ;
- XC 175 ; WX 788 ; N a123 ; B 35 -14 754 705 ;
- XC 176 ; WX 788 ; N a124 ; B 35 -14 754 705 ;
- XC 177 ; WX 788 ; N a125 ; B 35 -14 754 705 ;
- XC 178 ; WX 788 ; N a126 ; B 35 -14 754 705 ;
- XC 179 ; WX 788 ; N a127 ; B 35 -14 754 705 ;
- XC 180 ; WX 788 ; N a128 ; B 35 -14 754 705 ;
- XC 181 ; WX 788 ; N a129 ; B 35 -14 754 705 ;
- XC 182 ; WX 788 ; N a130 ; B 35 -14 754 705 ;
- XC 183 ; WX 788 ; N a131 ; B 35 -14 754 705 ;
- XC 184 ; WX 788 ; N a132 ; B 35 -14 754 705 ;
- XC 185 ; WX 788 ; N a133 ; B 35 -14 754 705 ;
- XC 186 ; WX 788 ; N a134 ; B 35 -14 754 705 ;
- XC 187 ; WX 788 ; N a135 ; B 35 -14 754 705 ;
- XC 188 ; WX 788 ; N a136 ; B 35 -14 754 705 ;
- XC 189 ; WX 788 ; N a137 ; B 35 -14 754 705 ;
- XC 190 ; WX 788 ; N a138 ; B 35 -14 754 705 ;
- XC 191 ; WX 788 ; N a139 ; B 35 -14 754 705 ;
- XC 192 ; WX 788 ; N a140 ; B 35 -14 754 705 ;
- XC 193 ; WX 788 ; N a141 ; B 35 -14 754 705 ;
- XC 194 ; WX 788 ; N a142 ; B 35 -14 754 705 ;
- XC 195 ; WX 788 ; N a143 ; B 35 -14 754 705 ;
- XC 196 ; WX 788 ; N a144 ; B 35 -14 754 705 ;
- XC 197 ; WX 788 ; N a145 ; B 35 -14 754 705 ;
- XC 198 ; WX 788 ; N a146 ; B 35 -14 754 705 ;
- XC 199 ; WX 788 ; N a147 ; B 35 -14 754 705 ;
- XC 200 ; WX 788 ; N a148 ; B 35 -14 754 705 ;
- XC 201 ; WX 788 ; N a149 ; B 35 -14 754 705 ;
- XC 202 ; WX 788 ; N a150 ; B 35 -14 754 705 ;
- XC 203 ; WX 788 ; N a151 ; B 35 -14 754 705 ;
- XC 204 ; WX 788 ; N a152 ; B 35 -14 754 705 ;
- XC 205 ; WX 788 ; N a153 ; B 35 -14 754 705 ;
- XC 206 ; WX 788 ; N a154 ; B 35 -14 754 705 ;
- XC 207 ; WX 788 ; N a155 ; B 35 -14 754 705 ;
- XC 208 ; WX 788 ; N a156 ; B 35 -14 754 705 ;
- XC 209 ; WX 788 ; N a157 ; B 35 -14 754 705 ;
- XC 210 ; WX 788 ; N a158 ; B 35 -14 754 705 ;
- XC 211 ; WX 788 ; N a159 ; B 35 -14 754 705 ;
- XC 212 ; WX 894 ; N a160 ; B 35 58 860 634 ;
- XC 213 ; WX 838 ; N a161 ; B 35 153 803 539 ;
- XC 214 ; WX 1016 ; N a163 ; B 34 151 981 541 ;
- XC 215 ; WX 458 ; N a164 ; B 35 -127 422 820 ;
- XC 216 ; WX 748 ; N a196 ; B 35 94 698 597 ;
- XC 217 ; WX 924 ; N a165 ; B 35 140 890 552 ;
- XC 218 ; WX 748 ; N a192 ; B 35 94 698 597 ;
- XC 219 ; WX 918 ; N a166 ; B 35 167 884 525 ;
- XC 220 ; WX 927 ; N a167 ; B 35 32 892 660 ;
- XC 221 ; WX 928 ; N a168 ; B 35 129 891 562 ;
- XC 222 ; WX 928 ; N a169 ; B 35 128 893 563 ;
- XC 223 ; WX 834 ; N a170 ; B 35 155 799 537 ;
- XC 224 ; WX 873 ; N a171 ; B 35 93 838 599 ;
- XC 225 ; WX 828 ; N a172 ; B 35 104 791 588 ;
- XC 226 ; WX 924 ; N a173 ; B 35 98 889 594 ;
- XC 227 ; WX 924 ; N a162 ; B 35 97 889 593 ;
- XC 228 ; WX 917 ; N a174 ; B 35 0 882 692 ;
- XC 229 ; WX 930 ; N a175 ; B 35 84 896 608 ;
- XC 230 ; WX 931 ; N a176 ; B 35 84 896 608 ;
- XC 231 ; WX 463 ; N a177 ; B 35 -99 429 791 ;
- XC 232 ; WX 883 ; N a178 ; B 35 71 848 623 ;
- XC 233 ; WX 836 ; N a179 ; B 35 44 802 648 ;
- XC 234 ; WX 836 ; N a193 ; B 35 44 802 648 ;
- XC 235 ; WX 867 ; N a180 ; B 35 101 832 591 ;
- XC 236 ; WX 867 ; N a199 ; B 35 101 832 591 ;
- XC 237 ; WX 696 ; N a181 ; B 35 44 661 648 ;
- XC 238 ; WX 696 ; N a200 ; B 35 44 661 648 ;
- XC 239 ; WX 874 ; N a182 ; B 35 77 840 619 ;
- XC 241 ; WX 874 ; N a201 ; B 35 73 840 615 ;
- XC 242 ; WX 760 ; N a183 ; B 35 0 725 692 ;
- XC 243 ; WX 946 ; N a184 ; B 35 160 911 533 ;
- XC 244 ; WX 771 ; N a197 ; B 34 37 736 655 ;
- XC 245 ; WX 865 ; N a185 ; B 35 207 830 481 ;
- XC 246 ; WX 771 ; N a194 ; B 34 37 736 655 ;
- XC 247 ; WX 888 ; N a198 ; B 34 -19 853 712 ;
- XC 248 ; WX 967 ; N a186 ; B 35 124 932 568 ;
- XC 249 ; WX 888 ; N a195 ; B 34 -19 853 712 ;
- XC 250 ; WX 831 ; N a187 ; B 35 113 796 579 ;
- XC 251 ; WX 873 ; N a188 ; B 36 118 838 578 ;
- XC 252 ; WX 927 ; N a189 ; B 35 150 891 542 ;
- XC 253 ; WX 970 ; N a190 ; B 35 76 931 616 ;
- XC 254 ; WX 918 ; N a191 ; B 34 99 884 593 ;
- XC -1 ; WX 509 ; N a205 ; B 35 0 475 692 ;
- XC -1 ; WX 410 ; N a206 ; B 35 0 375 692 ;
- XC -1 ; WX 509 ; N a85 ; B 35 0 475 692 ;
- XC -1 ; WX 410 ; N a86 ; B 35 0 375 692 ;
- XC -1 ; WX 234 ; N a87 ; B 35 -14 199 705 ;
- XC -1 ; WX 234 ; N a88 ; B 35 -14 199 705 ;
- XC -1 ; WX 390 ; N a89 ; B 35 -14 356 705 ;
- XC -1 ; WX 390 ; N a90 ; B 35 -14 355 705 ;
- XC -1 ; WX 276 ; N a91 ; B 35 0 242 692 ;
- XC -1 ; WX 276 ; N a92 ; B 35 0 242 692 ;
- XC -1 ; WX 317 ; N a93 ; B 35 0 283 692 ;
- XC -1 ; WX 317 ; N a94 ; B 35 0 283 692 ;
- XC -1 ; WX 334 ; N a95 ; B 35 0 299 692 ;
- XC -1 ; WX 334 ; N a96 ; B 35 0 299 692 ;
- XEndCharMetrics
- XEndFontMetrics
- END_OF_FILE
- if test 9316 -ne `wc -c <'lout/font0/ZapfDin.AFM'`; then
- echo shar: \"'lout/font0/ZapfDin.AFM'\" unpacked with wrong size!
- fi
- # end of 'lout/font0/ZapfDin.AFM'
- fi
- if test ! -d 'lout/font1' ; then
- echo shar: Creating directory \"'lout/font1'\"
- mkdir 'lout/font1'
- fi
- if test ! -d 'lout/include' ; then
- echo shar: Creating directory \"'lout/include'\"
- mkdir 'lout/include'
- fi
- if test -f 'lout/include/dl' -a "${1}" != "-c" ; then
- echo shar: Will not clobber existing file \"'lout/include/dl'\"
- else
- echo shar: Extracting \"'lout/include/dl'\" \(67583 characters\)
- sed "s/^X//" >'lout/include/dl' <<'END_OF_FILE'
- X
- X###############################################################################
- X# #
- X# Lout @DocumentLayout package (Version 2.0) #
- X# #
- X# Version 1.0 by Jeffrey H. Kingston, 17 July 1991. #
- X# Version 2.0 by Jeffrey H. Kingston, 22 December 1992. #
- X# #
- X# This Lout package contains the basic definitions for documents, such as #
- X# simple documents, technical reports, and books. See "A Beginners' Guide #
- X# to Lout" for user information. #
- X# #
- X###############################################################################
- X
- Xexport
- X @InitialFont @InitialBreak @Hyphenate
- X @MajorHeadingFont @HeadingFont @MinorHeadingFont @ParaGap @ParaIndent
- X @DispGap @DispIndent @DefaultIndent @WideIndent @VeryWideIndent
- X
- X @Roman @UCRoman @Alpha @UCAlpha @Months @ShortMonths
- X @WeekDays @ShortWeekDays
- X
- X "--" "---" @Bullet @ParSym @SectSym @Dagger @DaggerDbl @CDot @Sterling
- X @Yen @Florin @Star @Degree @Minute @Second @Multiply @Divide @Lozenge
- X @Register @CopyRight @TradeMark
- X
- X @R @I @B @S @MajorHeading @Heading @MinorHeading "^" "&-" @Date
- X
- X associate associates declination obligatory philanthropic present presents
- X project projects reciprocity recognizance reformation retribution table
- X
- X @Runner @PageMark @PageOf @NumberOf
- X
- X @PP @LP @DP @NP @CNP
- X
- X @BAD @BeginAlignedDisplays
- X @EAD @EndAlignedDisplays
- X @BND @BeginNumberedDisplays
- X @END @EndNumberedDisplays
- X
- X @D @Display
- X @LD @LeftDisplay
- X @ID @IndentedDisplay
- X @CD @CentredDisplay @CenteredDisplay
- X @AD @AlignedDisplay
- X @LAD @LeftAlignedDisplay
- X @IAD @IndentedAlignedDisplay
- X @CAD @CentredAlignedDisplay @CenteredAlignedDisplay
- X @ND @NumberedDisplay
- X @LND @LeftNumberedDisplay
- X @IND @IndentedNumberedDisplay
- X @CND @CentredNumberedDisplay @CenteredNumberedDisplay
- X @AND @AlignedNumberedDisplay
- X @LAND @LeftAlignedNumberedDisplay
- X @IAND @IndentedAlignedNumberedDisplay
- X @CAND @CentredAlignedNumberedDisplay @CenteredAlignedNumberedDisplay
- X
- X @RD @RawDisplay
- X @RLD @RawLeftDisplay
- X @RID @RawIndentedDisplay
- X @RCD @RawCentredDisplay @RawCenteredDisplay
- X @RAD @RawAlignedDisplay
- X @RLAD @RawLeftAlignedDisplay
- X @RIAD @RawIndentedAlignedDisplay
- X @RCAD @RawCentredAlignedDisplay @RawCenteredAlignedDisplay
- X @RND @RawNumberedDisplay
- X @RLND @RawLeftNumberedDisplay
- X @RIND @RawIndentedNumberedDisplay
- X @RCND @RawCentredNumberedDisplay @RawCenteredNumberedDisplay
- X @RAND @RawAlignedNumberedDisplay
- X @RLAND @RawLeftAlignedNumberedDisplay
- X @RIAND @RawIndentedAlignedNumberedDisplay
- X @RCAND @RawCentredAlignedNumberedDisplay
- X @RawCenteredAlignedNumberedDisplay
- X
- X @LI @ListItem
- X @EL @EndList
- X
- X @RLL @RawLeftList
- X @RCL @RawCentredList @RawCenteredList
- X
- X @LL @LeftList
- X @CL @CentredList @CenteredList
- X
- X @RIL @RawIndentedList
- X @RNL @RawNumberedList
- X @RPNL @RawParenNumberedList
- X @RRL @RawRomanList
- X @RPRL @RawParenRomanList
- X @RUCRL @RawUCRomanList
- X @RPUCRL @RawParenUCRomanList
- X @RAL @RawAlphaList
- X @RPAL @RawParenAlphaList
- X @RUCAL @RawUCAlphaList
- X @RPUCAL @RawParenUCAlphaList
- X @RBL @RawBulletList
- X @RSL @RawStarList
- X @RDL @RawDashList
- X
- X @IL @IndentedList
- X @NL @NumberedList
- X @PNL @ParenNumberedList
- X @RL @RomanList
- X @PRL @ParenRomanList
- X @UCRL @UCRomanList
- X @PUCRL @ParenUCRomanList
- X @AL @AlphaList
- X @PAL @ParenAlphaList
- X @UCAL @UCAlphaList
- X @PUCAL @ParenUCAlphaList
- X @BL @BulletList
- X @SL @StarList
- X @DL @DashList
- X
- X @TI @TagItem
- X @RTL @RawTaggedList
- X @RWTL @RawWideTaggedList
- X @RVWTL @RawVeryWideTaggedList
- X
- X @TL @TaggedList
- X @WTL @WideTaggedList
- X @VWTL @VeryWideTaggedList
- X
- X @Document @Doc @Report @Book # root galley objects
- X @Abstract @Preface @Introduction # outer level galleys
- X @Chapter @Section @Appendix @Text @ColText
- X @Figure @EndFigures @Table @EndTables # inner level galleys
- X @Reference @RefStyle @RefPrint
- X @ReferenceSection @Ref @ChapRefSection @ChapRef
- X @IndexSection @Index @SubIndex @SubSubIndex @RawIndex
- X @RawSubIndex @RawSubSubIndex @IndexBlanks
- X @ContentsSection
- X
- X
- X
- Xdef @DocumentLayout
- X named @InitialFont { Times Base 12p } # initial font
- X named @InitialBreak { adjust 1.20fx } # initial break
- X named @Hyphenate { Yes } # Want hyphenation? Yes or No
- X named @MajorHeadingFont { Bold 2.0f } # font for major headings
- X named @HeadingFont { Bold } # font for ordinary headings
- X named @MinorHeadingFont { Bold } # font for minor headings
- X named @BookCoverFont { Helvetica Base } # font for book cover
- X
- X named @ParaGap { 1.30vx } # gap between paragraphs
- X named @ParaIndent { 2.00f } # paragraph first-line indent
- X
- X named @DispGap { 1.00v } # gap above and below displays
- X named @DispIndent { 2.00f } # @IndentedDisplay indent
- X named @DefaultIndent { 0.5rt } # @Display indent
- X named @WideIndent { 4.00f } # @WideTaggedList indent
- X named @VeryWideIndent { 8.00f } # @VeryWideTaggedList indent
- X
- X named @PageWidth { 21.00c } # width of page
- X named @PageHeight { 29.70c } # height of page
- X named @PageMargin { 2.50c } # size of all four margins
- X named @Columns { Single } # Single, Double, Multi
- X named @DoubleColWidth { 7.50c } # column width used by Double
- X named @MultiColWidth { 4.67c } # column width used by Multi
- X named @ColGap { 1.00c } # gap between columns
- X named @TopGap { 0.75c } # gap between figures
- X named @MidGap { 0.75c } # gap above and below body text
- X
- X named @FootNoteFont { 0.80f } # font for footnotes
- X named @FootNoteBreak { 1.20fx } # break for footnotes
- X named @FootLen { 2.00c } # footnote line and indent size
- X named @ColFootLen { 1.20c } # @FootLen when Double, Multi
- X named @FootGap { 0.20c } # gap between footnotes
- X
- X named @MakeIndex { No } # Want index? Yes or No
- X named @IndexColumns { Double } # Single, Double, Multi
- X
- X named @TableOfContents { No } # Want contents? Yes or No
- X named @MajorContentsGap { 1.30v } # gap above major entry
- X named @ContentsGap { 1.00v } # gap above ordinary entry
- X
- X named @ChapterNumbers { Yes } # Yes or No
- X named @SectionNumbers { Yes } # Yes or No
- X named @SubSectionNumbers { Yes } # Yes or No
- X named @AppendixNumbers { Yes } # Yes or No
- X named @SubAppendixNumbers{ Yes } # Yes or No
- X named @ChapterGap { 1.10b } # gap before each chapter
- X named @SectionGap { 2.00v } # gap before each section
- X named @SubSectionGap { 1.50v } # gap before each subsection
- X named @AppendixGap { 2.00v } # gap before each appendix
- X named @SubAppendixGap { 2.00v } # gap before each subappendix
- X
- X named @PageNumbers { Yes } # Want page numbers? Yes or No
- X named @FirstPageNumber { 1 } # Number of first page
- X named @PageOneTopFormat right @PageNum { @Null }
- X named @PageOneFootFormat right @PageNum { @Null }
- X named @PageTopFormat right @PageNum { |0.5rt - @PageNum - }
- X named @PageFootFormat right @PageNum { @Null }
- X named @BookTitleFormat right @Title { Bold @Font @Title }
- X
- X@Begin
- X
- X ###########################################################################
- X # #
- X # @Protect x #
- X # #
- X # Like @CNP, this reserves space on the current page or else makes sure #
- X # x appears on the following page. Lookahead is proportional to font #
- X # size. #
- X # #
- X ###########################################################################
- X
- X def @Protect right x { 3.0f @High //0io // x }
- X
- X
- X ###########################################################################
- X # #
- X # @HLine #
- X # #
- X # Draws a horizontal line to fill available space. #
- X # #
- X ###########################################################################
- X
- X def @HLine { {0 0 moveto xsize 0 lineto stroke} @Graphic {} }
- X
- X
- X ###########################################################################
- X # #
- X # Symbols stored in the "standard" database: #
- X # #
- X # @Roman lower case Roman numerals i, ii, ... , c #
- X # @UCRoman upper case Roman numerals I, II, ... , C #
- X # @Alpha lower case Roman alphabet a, b, ... , z #
- X # @UCAlpha upper case Roman alphabet A, B, ... , Z #
- X # @Months months of the year: January, ... , December #
- X # @ShortMonths months of the year, abbreviated: Jan, ... , Dec #
- X # @WeekDays days of the week: Sunday, ... , Saturday #
- X # @ShortWeekDays days of the week, abbreviated: Sun, ... , Sat #
- X # #
- X ###########################################################################
- X
- X def @Roman left @Tag right @Val { @Val }
- X def @UCRoman left @Tag right @Val { @Val }
- X def @Alpha left @Tag right @Val { @Val }
- X def @UCAlpha left @Tag right @Val { @Val }
- X def @Months left @Tag right @Val { @Val }
- X def @ShortMonths left @Tag right @Val { @Val }
- X def @WeekDays left @Tag right @Val { @Val }
- X def @ShortWeekDays left @Tag right @Val { @Val }
- X
- X @SysDatabase @Roman @UCRoman @Alpha @UCAlpha @Months
- X @ShortMonths @WeekDays @ShortWeekDays
- X { "standard" }
- X
- X
- X ###########################################################################
- X # #
- X # Selected characters from Adobe's fonts. #
- X # #
- X ###########################################################################
- X
- X def "--" { "\261" }
- X def "---" { "\320" }
- X def @Bullet { "\267" }
- X def @ParSym { "\266" }
- X def @SectSym { "\247" }
- X def @Dagger { "\262" }
- X def @DaggerDbl { "\263" }
- X def @CDot { "\264" }
- X def @Sterling { "\243" }
- X def @Yen { "\245" }
- X def @Florin { "\246" }
- X def @Star { { Symbol Base } @Font "\052" }
- X def @Degree { { Symbol Base } @Font "\260" }
- X def @Minute { { Symbol Base } @Font "\242" }
- X def @Second { { Symbol Base } @Font "\262" }
- X def @Multiply { { Symbol Base } @Font "\264" }
- X def @Divide { { Symbol Base } @Font "\270" }
- X def @Lozenge { { Symbol Base } @Font "\340" }
- X def @Register { { Symbol Base } @Font "\342" }
- X def @CopyRight { { Symbol Base } @Font "\343" }
- X def @TradeMark { { Symbol Base } @Font "\344" }
- X
- X
- X ###########################################################################
- X # #
- X # Miscellaneous. #
- X # #
- X ###########################################################################
- X
- X def @R right x { Base @Font x }
- X def @I right x { Slope @Font x }
- X def @B right x { Bold @Font x }
- X def @S right x { @OneRow { //0.04fo 0.8f @Font x } }
- X def "^" { {} ^& {} }
- X def "&-" left x right y { x &0ch y }
- X def @MajorHeading right x { ragged @Break @MajorHeadingFont @Font x }
- X def @Heading right x { ragged @Break @HeadingFont @Font x }
- X def @MinorHeading right x { ragged @Break @MinorHeadingFont @Font x }
- X def @Date { @Moment&&now @Open {@Day {@Months&&@Month}, @Century{@Year}} }
- X
- X
- X ###########################################################################
- X # #
- X # Exception list for hyphenation. #
- X # #
- X ###########################################################################
- X
- X def associate { "as" &- "so" &- "ciate" }
- X def associates { "as" &- "so" &- "ciates" }
- X def declination { "dec" &- "li" &- "na" &- "tion" }
- X def obligatory { "oblig" &- "a" &- "tory" }
- X def philanthropic { "phil" &- "an" &- "thropic" }
- X def present { "present" }
- X def presents { "presents" }
- X def project { "project" }
- X def projects { "projects" }
- X def reciprocity { "reci" &- "procity" }
- X def recognizance { "re" &- "cog" &- "ni" &- "zance" }
- X def reformation { "ref" &- "or" &- "ma" &- "tion" }
- X def retribution { "ret" &- "ri" &- "bu" &- "tion" }
- X def table { "ta" &- "ble" }
- X
- X
- X ###########################################################################
- X # #
- X # Page and item markers. @Runner is used only by books. #
- X # #
- X ###########################################################################
- X
- X export @Tag
- X def @PageMarker
- X right @Tag
- X {
- X @Null
- X }
- X
- X def @PageMark
- X right x
- X {
- X @PageMarker&&preceding @Tagged x
- X }
- X
- X def @PageOf
- X right x
- X {
- X @PageMarker&&x @Open { @Tag }
- X }
- X
- X export @Tag
- X def @NumberMarker
- X right @Tag
- X {
- X @Null
- X }
- X
- X def @NumberOf
- X right x
- X {
- X @NumberMarker&&x @Open { @Tag }
- X }
- X
- X export @TopOdd @TopEven @FootOdd @FootEven
- X def @Runner
- X named @TopOdd right @PageNum { @Null }
- X named @TopEven right @PageNum { @Null }
- X named @FootOdd right @PageNum { @Null }
- X named @FootEven right @PageNum { @Null }
- X named @Tag {}
- X { @Null
- X }
- X
- X
- X ###########################################################################
- X # #
- X # @Hyph x #
- X # #
- X # Return "hyphen" if x is "Yes" or "yes", else "nohyphen". #
- X # #
- X ###########################################################################
- X
- X def @Hyph right x
- X {
- X x @Case {
- X {Yes yes} @Yield "hyphen"
- X else @Yield "nohyphen"
- X }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # x @OrElse y #
- X # #
- X # This returns x unless its value is "dft", in which case it returns y. #
- X # Useful for defaulting the value of one parameter to another. #
- X # #
- X ###########################################################################
- X
- X def @OrElse
- X left x
- X right y
- X {
- X x @Case {
- X dft @Yield y
- X else @Yield x
- X }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Paragraphs. #
- X # #
- X ###########################################################################
- X
- X macro @PP { //@ParaGap @ParaIndent @Wide &0i }
- X macro @LP { //@ParaGap }
- X macro @DP { //@DispGap }
- X macro @NP { //1.1b }
- X macro @CNP { // 3.2v @High //0io // }
- X
- X
- X ###########################################################################
- X # #
- X # Beginning and ending of aligned displays. #
- X # #
- X ###########################################################################
- X
- X def @APlace { @Galley }
- X def @EndAlignedPlace { @Galley }
- X def @AlignedPlace { @Galley }
- X
- X def @BAligned into { @APlace&&preceding }
- X {
- X def @AlignedList { @AlignedPlace /1.1b @AlignedList }
- X
- X //1.1b @AlignedList
- X // @EndAlignedPlace
- X }
- X
- X macro @BAD { // @APlace | @BAligned }
- X def @EAD force into { @EndAlignedPlace&&preceding } {}
- X
- X macro @BeginAlignedDisplays { @BAD }
- X macro @EndAlignedDisplays { @EAD }
- X
- X
- X ###########################################################################
- X # #
- X # Beginning and ending of numbered displays. #
- X # #
- X ###########################################################################
- X
- X def @BeginNumberedPlace { @Galley }
- X def @EndNumberedPlace { @Galley }
- X def @NextNumberPlace { @Galley }
- X
- X def @NNumber into { @NextNumberPlace&&following } {}
- X macro @NN { @NNumber @BeginNumberedPlace }
- X
- X def @BNumbered into { @BeginNumberedPlace&&preceding }
- X named style right tag { (tag) }
- X named start { 1 }
- X {
- X def @NList right num
- X {
- X |1rt style num & @NumberMarker num & @NextNumberPlace
- X // @NList @Next num
- X }
- X
- X // @NList start
- X // @EndNumberedPlace
- X }
- X
- X macro @BND { // @BeginNumberedPlace // @BNumbered }
- X def @END force into { @EndNumberedPlace&&preceding } {}
- X
- X macro @BeginNumberedDisplays { @BND }
- X macro @EndNumberedDisplays { @END }
- X
- X
- X ###########################################################################
- X # #
- X # Galleys which carry displays to their places. #
- X # #
- X ###########################################################################
- X
- X def @DispPlace { @Galley }
- X
- X def @Disp into { @DispPlace&&preceding }
- X right x
- X {
- X @OneRow x
- X }
- X
- X def @NDisp into { @DispPlace&&preceding }
- X named @Tag {}
- X right x
- X {
- X @OneRow {
- X @NumberMarker&&following @Tagged @Tag
- X @PageMarker&&preceding @Tagged @Tag
- X ^//
- X @OneRow x
- X }
- X }
- X
- X def @ADisp into { @AlignedPlace&&preceding }
- X right x
- X {
- X @OneRow x
- X }
- X
- X def @ANDisp into { @AlignedPlace&&preceding }
- X named @Tag {}
- X right x
- X {
- X @OneRow {
- X @NumberMarker&&following @Tagged @Tag
- X @PageMarker&&preceding @Tagged @Tag
- X ^/
- X @OneRow x
- X }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Displays and raw displays. #
- X # #
- X ###########################################################################
- X
- X macro @G { |@DefaultIndent }
- X macro @LG { | }
- X macro @IG { |@DispIndent }
- X macro @CG { |0.5rt }
- X
- X macro @D { @DP @G @DispPlace | @DP // @Disp }
- X macro @LD { @DP @LG @DispPlace | @DP // @Disp }
- X macro @ID { @DP @IG @DispPlace | @DP // @Disp }
- X macro @CD { @DP @CG @DispPlace | @DP // @Disp }
- X
- X macro @AD { @DP @G @APlace | @DP // @ADisp }
- X macro @LAD { @DP @LG @APlace | @DP // @ADisp }
- X macro @IAD { @DP @IG @APlace | @DP // @ADisp }
- X macro @CAD { @DP @CG @APlace | @DP // @ADisp }
- X
- X macro @ND { @DP @G @DispPlace |1rt @NN @DP // @NDisp }
- X macro @LND { @DP @LG @DispPlace |1rt @NN @DP // @NDisp }
- X macro @IND { @DP @IG @DispPlace |1rt @NN @DP // @NDisp }
- X macro @CND { @DP @CG @DispPlace |1rt @NN @DP // @NDisp }
- X
- X macro @AND { @DP @G @APlace |1rt @NN @DP // @ANDisp }
- X macro @LAND { @DP @LG @APlace |1rt @NN @DP // @ANDisp }
- X macro @IAND { @DP @IG @APlace |1rt @NN @DP // @ANDisp }
- X macro @CAND { @DP @CG @APlace |1rt @NN @DP // @ANDisp }
- X
- X
- X macro @RD { @G @DispPlace | @Disp }
- X macro @RLD { @LG @DispPlace | @Disp }
- X macro @RID { @IG @DispPlace | @Disp }
- X macro @RCD { @CG @DispPlace | @Disp }
- X
- X macro @RAD { @G @APlace | @ADisp }
- X macro @RLAD { @LG @APlace | @ADisp }
- X macro @RIAD { @IG @APlace | @ADisp }
- X macro @RCAD { @CG @APlace | @ADisp }
- X
- X macro @RND { @G @DispPlace |1rt @NN @NDisp }
- X macro @RLND { @LG @DispPlace |1rt @NN @NDisp }
- X macro @RIND { @IG @DispPlace |1rt @NN @NDisp }
- X macro @RCND { @CG @DispPlace |1rt @NN @NDisp }
- X
- X macro @RAND { @G @APlace |1rt @NN @ANDisp }
- X macro @RLAND { @LG @APlace |1rt @NN @ANDisp }
- X macro @RIAND { @IG @APlace |1rt @NN @ANDisp }
- X macro @RCAND { @CG @APlace |1rt @NN @ANDisp }
- X
- X
- X macro @Display { @D }
- X macro @LeftDisplay { @LD }
- X macro @IndentedDisplay { @ID }
- X macro @CentredDisplay { @CD }
- X macro @CenteredDisplay { @CD }
- X
- X macro @AlignedDisplay { @AD }
- X macro @LeftAlignedDisplay { @LAD }
- X macro @IndentedAlignedDisplay { @IAD }
- X macro @CentredAlignedDisplay { @CAD }
- X macro @CenteredAlignedDisplay { @CAD }
- X
- X macro @NumberedDisplay { @ND }
- X macro @LeftNumberedDisplay { @LND }
- X macro @IndentedNumberedDisplay { @IND }
- X macro @CentredNumberedDisplay { @CND }
- X macro @CenteredNumberedDisplay { @CND }
- X
- X macro @AlignedNumberedDisplay { @AND }
- X macro @LeftAlignedNumberedDisplay { @LAND }
- X macro @IndentedAlignedNumberedDisplay { @IAND }
- X macro @CentredAlignedNumberedDisplay { @CAND }
- X macro @CenteredAlignedNumberedDisplay { @CAND }
- X
- X
- X macro @RawDisplay { @RD }
- X macro @RawLeftDisplay { @RLD }
- X macro @RawIndentedDisplay { @RID }
- X macro @RawCentredDisplay { @RCD }
- X macro @RawCenteredDisplay { @RCD }
- X
- X macro @RawAlignedDisplay { @RAD }
- X macro @RawLeftAlignedDisplay { @RLAD }
- X macro @RawIndentedAlignedDisplay { @RIAD }
- X macro @RawCentredAlignedDisplay { @RCAD }
- X macro @RawCenteredAlignedDisplay { @RCAD }
- X
- X macro @RawNumberedDisplay { @RND }
- X macro @RawLeftNumberedDisplay { @RLND }
- X macro @RawIndentedNumberedDisplay { @RIND }
- X macro @RawCentredNumberedDisplay { @RCND }
- X macro @RawCenteredNumberedDisplay { @RCND }
- X
- X macro @RawAlignedNumberedDisplay { @RAND }
- X macro @RawLeftAlignedNumberedDisplay { @RLAND }
- X macro @RawIndentedAlignedNumberedDisplay { @RIAND }
- X macro @RawCentredAlignedNumberedDisplay { @RCAND }
- X macro @RawCenteredAlignedNumberedDisplay { @RCAND }
- X
- X
- X ###########################################################################
- X # #
- X # Lists and raw lists (except indented lists). #
- X # #
- X ###########################################################################
- X
- X def @ItemPlace { @Galley }
- X def @ListItem into { @ItemPlace&&preceding } right x { x }
- X macro @LI { @ListItem }
- X
- X def @EndListPlace { @Galley }
- X def @EndList force into { @EndListPlace&&preceding } {}
- X macro @EL { @EndList }
- X
- X def @RLL
- X named indent { @DispIndent }
- X named gap { @DispGap }
- X {
- X def @List { |indent @ItemPlace | //gap @List }
- X
- X @List // @EndListPlace
- X }
- X
- X def @RCL { @RLL indent { 0.5rt } }
- X macro @LL { @DP @RLL @DP }
- X macro @CL { @DP @RCL @DP }
- X
- X macro @RawLeftList { @RLL }
- X macro @RawCentredList { @RCL }
- X macro @RawCenteredList { @RCL }
- X macro @LeftList { @LL }
- X macro @CentredList { @CL }
- X macro @CenteredList { @CL }
- X
- X
- X ###########################################################################
- X # #
- X # Indented lists and raw indented lists, tagged automatically. #
- X # #
- X ###########################################################################
- X
- X def @RawIndentedList
- X named style right tag { }
- X named indent { @DispIndent }
- X named gap { @DispGap }
- X named start { 1 }
- X {
- X def @IList right num
- X { indent @Wide {style num} | @ItemPlace |
- X //gap @IList @Next num
- X }
- X
- X @IList start // @EndListPlace
- X }
- X
- X def @RawNumberedList { @RawIndentedList style { tag. } }
- X def @RawParenNumberedList { @RawIndentedList style { (tag) } }
- X def @RawRomanList { @RawIndentedList style { {@Roman&&tag}. } }
- X def @RawParenRomanList { @RawIndentedList style { ({@Roman&&tag}) } }
- X def @RawUCRomanList { @RawIndentedList style { {@UCRoman&&tag}. } }
- X def @RawParenUCRomanList { @RawIndentedList style { ({@UCRoman&&tag}) } }
- X def @RawAlphaList { @RawIndentedList style { {@Alpha&&tag}. } }
- X def @RawParenAlphaList { @RawIndentedList style { ({@Alpha&&tag}) } }
- X def @RawUCAlphaList { @RawIndentedList style { {@UCAlpha&&tag}. } }
- X def @RawParenUCAlphaList { @RawIndentedList style { ({@UCAlpha&&tag}) } }
- X def @RawBulletList { @RawIndentedList style { @Bullet } }
- X def @RawStarList { @RawIndentedList style { @Star } }
- X def @RawDashList { @RawIndentedList style { -- } }
- X
- X macro @IndentedList { @DP @RawIndentedList @DP }
- X macro @NumberedList { @DP @RawNumberedList @DP }
- X macro @ParenNumberedList { @DP @RawParenNumberedList @DP }
- X macro @RomanList { @DP @RawRomanList @DP }
- X macro @ParenRomanList { @DP @RawParenRomanList @DP }
- X macro @UCRomanList { @DP @RawUCRomanList @DP }
- X macro @ParenUCRomanList { @DP @RawParenUCRomanList @DP }
- X macro @AlphaList { @DP @RawAlphaList @DP }
- X macro @ParenAlphaList { @DP @RawParenAlphaList @DP }
- X macro @UCAlphaList { @DP @RawUCAlphaList @DP }
- X macro @ParenUCAlphaList { @DP @RawParenUCAlphaList @DP }
- X macro @BulletList { @DP @RawBulletList @DP }
- X macro @StarList { @DP @RawStarList @DP }
- X macro @DashList { @DP @RawDashList @DP }
- X
- X macro @RIL { @RawIndentedList }
- X macro @RNL { @RawNumberedList }
- X macro @RPNL { @RawParenNumberedList }
- X macro @RRL { @RawRomanList }
- X macro @RPRL { @RawParenRomanList }
- X macro @RUCRL { @RawUCRomanList }
- X macro @RPUCRL { @RawParenUCRomanList }
- X macro @RAL { @RawAlphaList }
- X macro @RPAL { @RawParenAlphaList }
- X macro @RUCAL { @RawUCAlphaList }
- X macro @RPUCAL { @RawParenUCAlphaList }
- X macro @RBL { @RawBulletList }
- X macro @RSL { @RawStarList }
- X macro @RDL { @RawDashList }
- X
- X macro @IL { @IndentedList }
- X macro @NL { @NumberedList }
- X macro @PNL { @ParenNumberedList }
- X macro @RL { @RomanList }
- X macro @PRL { @ParenRomanList }
- X macro @UCRL { @UCRomanList }
- X macro @PUCRL { @ParenUCRomanList }
- X macro @AL { @AlphaList }
- X macro @PAL { @ParenAlphaList }
- X macro @UCAL { @UCAlphaList }
- X macro @PUCAL { @ParenUCAlphaList }
- X macro @BL { @BulletList }
- X macro @SL { @StarList }
- X macro @DL { @DashList }
- X
- X
- X ###########################################################################
- X # #
- X # Indented lists and raw indented lists, tagged by the author. #
- X # #
- X ###########################################################################
- X
- X def @TagPlace { @Galley }
- X
- X def @TagItem into { @ItemPlace&&preceding }
- X left x
- X right y
- X {
- X def senditem into { @TagPlace&&preceding } { x }
- X
- X senditem | y
- X }
- X
- X macro @TI { @TagItem }
- X
- X def @RawTaggedList
- X named style right tag { tag }
- X named indent { @DispIndent }
- X named gap { @DispGap }
- X {
- X def @LList
- X { indent @Wide {style @TagPlace} | @ItemPlace
- X //gap @LList
- X }
- X
- X @LList // @EndListPlace
- X }
- X
- X def @RawWideTaggedList { @RawTaggedList indent { @WideIndent } }
- X def @RawVeryWideTaggedList { @RawTaggedList indent { @VeryWideIndent } }
- X macro @TaggedList { @DP @RawTaggedList @DP }
- X macro @WideTaggedList { @DP @RawWideTaggedList @DP }
- X macro @VeryWideTaggedList { @DP @RawVeryWideTaggedList @DP }
- X
- X macro @RTL { @RawTaggedList }
- X macro @RWTL { @RawWideTaggedList }
- X macro @RVWTL { @RawVeryWideTaggedList }
- X macro @TL { @TaggedList }
- X macro @WTL { @WideTaggedList }
- X macro @VWTL { @VeryWideTaggedList }
- X
- X
- X
- X ###########################################################################
- X # #
- X # Definitions for laying out one general-purpose page. #
- X # #
- X ###########################################################################
- X
- X def @FullPlace { @Galley }
- X def @ColPlace { @Galley }
- X def @IndexPlace { @Galley }
- X
- X export @Tag
- X def @TopList right @Tag
- X {
- X @Galley
- X //@TopGap @TopList @Next @Tag
- X }
- X
- X export @Tag
- X def @FootList right @Tag
- X {
- X @Galley
- X //@FootGap @FootList @Next @Tag
- X }
- X
- X def @FootSect
- X {
- X @FootLen @Wide @HLine
- X //@FootGap @FootList 1 ||@FootLen
- X }
- X
- X export @Tag
- X def @ColFootList right @Tag
- X {
- X @Galley
- X //@FootGap @ColFootList @Next @Tag
- X }
- X
- X def @ColFootSect
- X {
- X @ColFootLen @Wide @HLine
- X //@FootGap @ColFootList 1 ||@ColFootLen
- X }
- X
- X def @ColList right col
- X {
- X def @Column
- X {
- X @VExpand { @ColPlace //1rt @OneRow { //@MidGap @ColFootSect } }
- X }
- X
- X col @Case {
- X
- X Single @Yield @Column
- X
- X Double @Yield { @DoubleColWidth @Wide @Column
- X ||@ColGap @ColList col }
- X
- X Multi @Yield { @MultiColWidth @Wide @Column
- X ||@ColGap @ColList col }
- X
- X }
- X }
- X
- X def @IndexColList right col
- X {
- X col @Case {
- X
- X Single @Yield @VExpand @IndexPlace
- X
- X Double @Yield { @DoubleColWidth @Wide @VExpand @IndexPlace
- X ||@ColGap @IndexColList col }
- X
- X Multi @Yield { @MultiColWidth @Wide @VExpand @IndexPlace
- X ||@ColGap @IndexColList col }
- X
- X }
- X }
- X
- X def @Page right x
- X { @PageWidth @Wide @PageHeight @High
- X { //@PageMargin ||@PageMargin
- X @HExpand @VExpand x
- X ||@PageMargin //@PageMargin
- X }
- X }
- X
- X def @OnePage
- X named @Columns {}
- X named @PageTop {}
- X named @PageFoot {}
- X {
- X @Page {
- X @PageTop
- X //@MidGap @TopList
- X //@MidGap @FullPlace
- X //@MidGap @ColList @Columns
- X //@MidGap @IndexColList @IndexColumns
- X // //1rt @OneRow { //@MidGap @FootSect //@MidGap @PageFoot }
- X }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Introductory page (with @IntroFullPlace and @IntroColPlace). #
- X # #
- X ###########################################################################
- X
- X def @IntroFullPlace { @Galley }
- X def @IntroColPlace { @Galley }
- X
- X def @IntroColList right col
- X {
- X def @Column
- X {
- X @VExpand { @IntroColPlace //1rt @OneRow { //@MidGap @ColFootSect } }
- X }
- X
- X col @Case {
- X
- X Single @Yield @Column
- X
- X Double @Yield { @DoubleColWidth @Wide @Column
- X ||@ColGap @IntroColList col }
- X
- X Multi @Yield { @MultiColWidth @Wide @Column
- X ||@ColGap @IntroColList col }
- X
- X }
- X }
- X
- X def @OneIntroPage
- X named @Columns {}
- X named @PageTop {}
- X named @PageFoot {}
- X {
- X @Page {
- X @PageTop
- X //@MidGap @TopList
- X //@MidGap @IntroFullPlace
- X //@MidGap @IntroColList @Columns
- X //@MidGap @IndexColList @IndexColumns
- X // //1rt @OneRow { //@MidGap @FootSect //@MidGap @PageFoot }
- X }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Page layout for documents other than books (simple and tech. reports) #
- X # #
- X ###########################################################################
- X
- X def @SimplePageList
- X named @Columns {}
- X named @PageNumbers {}
- X right @PageNum
- X {
- X @PageMarker @PageNum
- X // @OnePage
- X @Columns { @Columns }
- X @PageTop {
- X @PageNumbers @Case
- X {
- X {Yes yes} @Yield
- X {
- X @PageNum @Case
- X {
- X 1 @Yield @PageOneTopFormat @PageNum
- X else @Yield @PageTopFormat @PageNum
- X }
- X }
- X else @Yield @Null
- X }
- X }
- X @PageFoot {
- X @PageNumbers @Case
- X {
- X {Yes yes} @Yield
- X {
- X @PageNum @Case
- X {
- X 1 @Yield @PageOneFootFormat @PageNum
- X else @Yield @PageFootFormat @PageNum
- X }
- X }
- X else @Yield @Null
- X }
- X }
- X // @SimplePageList
- X @Columns { @Columns }
- X @PageNumbers { @PageNumbers }
- X @Next @PageNum
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Page list for ordinary pages of books. #
- X # #
- X ###########################################################################
- X
- X def @OddPageList
- X named @Columns {}
- X right @PageNum
- X {
- X def @EvenPageList
- X named @Columns {}
- X right @PageNum
- X {
- X @PageMarker @PageNum
- X // @Runner&&following @Open
- X {
- X @OnePage
- X @Columns { @Columns }
- X @PageTop { @TopEven @PageNum }
- X @PageFoot { @FootEven @PageNum }
- X }
- X // @OddPageList
- X @Columns { @Columns }
- X @Next @PageNum
- X }
- X
- X @PageMarker @PageNum
- X // @Runner&&following @Open
- X {
- X @OnePage
- X @Columns { @Columns }
- X @PageTop { @TopOdd @PageNum }
- X @PageFoot { @FootOdd @PageNum }
- X }
- X // @EvenPageList
- X @Columns { @Columns }
- X @Next @PageNum
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Page list for introductory pages of books. #
- X # #
- X ###########################################################################
- X
- X def @IntroOddPageList
- X named @Columns {}
- X right @PageNum
- X {
- X @PageMarker @Roman&&@PageNum
- X // @Runner&&following @Open
- X {
- X @OneIntroPage
- X @Columns { @Columns }
- X @PageTop { @TopOdd @Roman&&@PageNum }
- X @PageFoot { @FootOdd @Roman&&@PageNum }
- X }
- X // @PageMarker @Roman&&{@Next @PageNum}
- X // @Runner&&following @Open
- X {
- X @OneIntroPage
- X @Columns { @Columns }
- X @PageTop { @TopEven @Roman&&{@Next @PageNum} }
- X @PageFoot { @FootEven @Roman&&{@Next @PageNum} }
- X }
- X // @IntroOddPageList
- X @Columns { @Columns }
- X @Next @Next @PageNum
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Table of contents. #
- X # #
- X ###########################################################################
- X
- X def @ContentsPlace { @Galley }
- X
- X def @ContentsEntry
- X left lpart
- X named pregap { @ContentsGap }
- X right rpart
- X {
- X def @Leaders { .. &4s @Leaders }
- X
- X def sendentry into { @ContentsPlace&&preceding }
- X {
- X //pregap
- X lpart |1rt &2s @Leaders & 2f @Wide {|1rt rpart}
- X }
- X
- X @TableOfContents @Case {
- X {Yes yes} @Yield sendentry
- X else @Yield @Null
- X }
- X }
- X
- X def @MajorContentsEntry
- X left lpart
- X named pregap { @MajorContentsGap }
- X right rpart
- X {
- X {@B lpart} @ContentsEntry pregap { pregap } rpart
- X }
- X
- X def @ContentsSection
- X {
- X def @ContentsList { @ContentsPlace // @ContentsList }
- X
- X @TableOfContents @Case {
- X {Yes yes} @Yield { @BookTitleFormat Contents // @ContentsList }
- X else @Yield @Null
- X }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Footnotes. #
- X # #
- X ###########################################################################
- X
- X def @FullFootNote
- X named @Tag {}
- X right x
- X {
- X def ftag
- X { @OneRow { @FootList&&@Tag @Open { 0.8f @Font @Tag } ^/0.3vo }
- X }
- X
- X def fnote into { @FootList&&following }
- X {
- X @FootNoteFont @Font @FootNoteBreak @Break
- X { @FootList&&preceding @Tagged @Tag ftag & x }
- X }
- X
- X @Null & @FootNoteFont @Font ftag & fnote
- X }
- X
- X def @ColFootNote
- X named @Tag {}
- X right x
- X {
- X def ftag
- X { @OneRow { @ColFootList&&@Tag @Open { 0.8f @Font @Tag } ^/0.3vo }
- X }
- X
- X def fnote into { @ColFootList&&following }
- X {
- X @FootNoteFont @Font @FootNoteBreak @Break
- X { @ColFootList&&preceding @Tagged @Tag ftag & x }
- X }
- X
- X @Null & @FootNoteFont @Font ftag & fnote
- X }
- X
- X
- X ###########################################################################
- X # #
- X # References. #
- X # #
- X ###########################################################################
- X
- X export @Type @Author @Title @Institution
- X @Number @Publisher @Year @Proceedings
- X @Journal @Volume @Pages @Comment
- X
- X def @Reference
- X named @Tag { TAG? }
- X named @Type { TYPE? }
- X named @Author { AUTHOR? }
- X named @Title { TITLE? }
- X named @Institution { INSTITUTION? }
- X named @Number { NUMBER? }
- X named @Publisher { PUBLISHER? }
- X named @Year { YEAR? }
- X named @Proceedings { PROCEEDINGS? }
- X named @Journal { JOURNAL? }
- X named @Volume { VOLUME? }
- X named @Pages { PAGES? }
- X named @Comment { @Null }
- X { @Null }
- X
- X export @Style
- X def @RefStyle
- X left @Tag
- X named @Style right reftag {}
- X {}
- X
- X @SysDatabase @RefStyle { "refstyles" }
- X
- X def @RefPrint right reftag
- X { @RefStyle&&{ @Reference&&reftag @Open { @Type } }
- X @Open { @Style reftag }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Reference collection at end of chapter. #
- X # #
- X ###########################################################################
- X
- X def @ChapRefPlace { @Galley }
- X
- X def @ChapRefSection
- X named @Title { References }
- X named style right tag { tag. }
- X named indent { @DispIndent }
- X named gap { @DispGap }
- X named start { 1 }
- X {
- X def @RefList right num
- X {
- X @NumberMarker num &
- X indent @Wide {style num} | @ChapRefPlace
- X //gap @RefList @Next num
- X }
- X
- X @Heading @Protect @Title
- X //@DispGap
- X @RefList start
- X }
- X
- X def @ChapRef right x
- X {
- X def sendref into { @ChapRefPlace&&following }
- X right @Key
- X {
- X @NumberMarker&&preceding @Tagged x &
- X @PageMarker&&preceding @Tagged x &
- X @RefPrint x
- X }
- X
- X @NumberMarker&&x @Open { @Tag } sendref x
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Reference collection at end of document. #
- X # #
- X ###########################################################################
- X
- X def @RefPlace { @Galley }
- X
- X def @Ref right x
- X {
- X def sendref into { @RefPlace&&following }
- X right @Key
- X {
- X @NumberMarker&&preceding @Tagged x &
- X @PageMarker&&preceding @Tagged x &
- X @RefPrint x
- X }
- X
- X @NumberMarker&&x @Open { @Tag } sendref x
- X }
- X
- X def @ReferenceSection
- X named @Tag {}
- X named @Title { References }
- X named @RunningTitle { dft }
- X named style right tag { tag. }
- X named headstyle right @Title { @Heading @Title }
- X named indent { @DispIndent }
- X named gap { @DispGap }
- X named start { 1 }
- X {
- X def @RefList right num
- X {
- X @NumberMarker num &
- X indent @Wide {style num} | @RefPlace
- X //gap @RefList @Next num
- X }
- X
- X @Protect headstyle @Title
- X // @PageMarker&&preceding @Tagged @Tag
- X // @Title @MajorContentsEntry {@PageOf @Tag}
- X // @Runner
- X @FootEven { |0.5rt 0.8f @Font @B @PageNum }
- X @FootOdd { |0.5rt 0.8f @Font @B @PageNum }
- X //@DispGap @RefList start
- X // @Runner
- X @TopEven { @B @PageNum }
- X @TopOdd { @I {@RunningTitle @OrElse @Title} |1rt @B @PageNum }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Floating figures. #
- X # #
- X ###########################################################################
- X
- X def @FigurePlace { @Galley }
- X def @EndFigurePlace { @Galley }
- X
- X def @FigureGalley into { @TopList&&following }
- X right prefix
- X {
- X def @FigureList right x
- X {
- X @NumberMarker {prefix}x & ||0.5rt @FigurePlace ||
- X //@TopGap
- X @FigureList @Next x
- X }
- X
- X @FigureList 1
- X //
- X @EndFigurePlace
- X }
- X
- X def @EndFigures force into { @EndFigurePlace&&following } {}
- X
- X def @Figure into { @FigurePlace&&following }
- X named @Caption {}
- X named @Tag {}
- X right @Body
- X {
- X @OneRow
- X {
- X ||0.5rt @HContract @Body
- X //@DispGap
- X ||0.5rt
- X @NumberMarker&&preceding @Tagged @Tag
- X @PageMarker&&preceding @Tagged @Tag
- X @B { Figure {@NumberOf @Tag}. } @Caption
- X }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Floating tables. #
- X # #
- X ###########################################################################
- X
- X def @TablePlace { @Galley }
- X def @EndTablePlace { @Galley }
- X
- X def @TableGalley into { @TopList&&following }
- X right prefix
- X {
- X def @TableList right x
- X {
- X @NumberMarker {prefix}x & ||0.5rt @TablePlace ||
- X //@TopGap
- X @TableList @Next x
- X }
- X
- X @TableList 1
- X //
- X @EndTablePlace
- X }
- X
- X def @EndTables force into { @EndTablePlace&&following } {}
- X
- X def @Table into { @TablePlace&&following }
- X named @Caption {}
- X named @Tag {}
- X right @Body
- X {
- X @OneRow
- X {
- X ||0.5rt @HContract @Body
- X //@DispGap
- X ||0.5rt
- X @NumberMarker&&preceding @Tagged @Tag
- X @PageMarker&&preceding @Tagged @Tag
- X @B { Table {@NumberOf @Tag}. } @Caption
- X }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Lists of chapters, sections, subsections, and appendices. #
- X # #
- X ###########################################################################
- X
- X export @Tag
- X def @ChapterList right @Tag
- X {
- X @Galley
- X //@ChapterGap @ChapterList @Next @Tag
- X }
- X
- X export @Tag
- X def @SectionList right @Tag
- X {
- X @Galley
- X //@SectionGap @SectionList @Next @Tag
- X }
- X
- X export @Tag
- X def @SubSectionList right @Tag
- X {
- X @Galley
- X //@SubSectionGap @SubSectionList @Next @Tag
- X }
- X
- X export @Tag
- X def @AppendixList right @Tag
- X {
- X @Galley
- X //@AppendixGap @AppendixList @Next @Tag
- X }
- X
- X export @Tag
- X def @SubAppendixList right @Tag
- X {
- X @Galley
- X //@SubAppendixGap @SubAppendixList @Next @Tag
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Body text. #
- X # #
- X ###########################################################################
- X
- X export @ColText @FootNote
- X @BeginSections @EndSections @BeginAppendices @EndAppendices
- X
- X def @Text force into { @FullPlace&&preceding }
- X body x
- X {
- X def @FootNote right x { @FullFootNote x }
- X
- X def @EndSectionsPlace { @Galley }
- X def @EndSections force into { @EndSectionsPlace&&preceding } {}
- X macro @BeginSections
- X { //@SectionGap @SectionList 1 // @EndSectionsPlace // }
- X
- X def @EndAppendicesPlace { @Galley }
- X def @EndAppendices force into { @EndAppendicesPlace&&preceding } {}
- X macro @BeginAppendices
- X { //@AppendixGap @AppendixList 1 // @EndAppendicesPlace //}
- X
- X
- X export @FootNote
- X def @ColText force into { @ColPlace&&following }
- X body x
- X {
- X def @FootNote right x { @ColFootNote x }
- X
- X x
- X }
- X
- X x
- X }
- X
- X export @FootNote
- X @BeginSections @EndSections @BeginAppendices @EndAppendices
- X def @ColText force into { @ColPlace&&preceding }
- X body x
- X {
- X def @FootNote right x { @ColFootNote x }
- X
- X def @EndSectionsPlace { @Galley }
- X def @EndSections force into { @EndSectionsPlace&&preceding } {}
- X macro @BeginSections
- X { //@SectionGap @SectionList 1 // @EndSectionsPlace // }
- X
- X def @EndAppendicesPlace { @Galley }
- X def @EndAppendices force into { @EndAppendicesPlace&&preceding } {}
- X macro @BeginAppendices
- X { //@AppendixGap @AppendixList 1 // @EndAppendicesPlace //}
- X x
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Abstract. #
- X # #
- X ###########################################################################
- X
- X def @AbstractPlace { @Galley }
- X
- X export @FootNote
- X def @Abstract into { @AbstractPlace&&preceding }
- X named @Title { ABSTRACT }
- X body x
- X {
- X def @FootNote right x { @FullFootNote x }
- X
- X |0.5rt @I @Title
- X //@DispGap x
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Preface. #
- X # #
- X ###########################################################################
- X
- X def @PrefacePlace { @Galley }
- X
- X export @FootNote @BeginFigures @BeginTables
- X def @Preface force into { @PrefacePlace&&preceding }
- X named @Tag {}
- X named @Title { Preface }
- X named @RunningTitle { dft }
- X body @Body
- X {
- X def @FootNote right x { @ColFootNote x }
- X macro @BeginFigures { // @FigureGalley {} // }
- X macro @BeginTables { // @TableGalley {} // }
- X
- X ragged @Break @BookTitleFormat @Title
- X // @PageMarker&&preceding @Tagged @Tag
- X // @Body
- X //@SectionGap @ChapRefSection
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Introduction. #
- X # #
- X ###########################################################################
- X
- X def @IntroductionPlace { @Galley }
- X
- X export @FootNote @BeginFigures @BeginTables
- X def @Introduction force into { @IntroductionPlace&&preceding }
- X named @Tag {}
- X named @Title { Introduction }
- X named @RunningTitle { dft }
- X body @Body
- X {
- X def @FootNote right x { @ColFootNote x }
- X macro @BeginFigures { // @FigureGalley {} // }
- X macro @BeginTables { // @TableGalley {} // }
- X
- X ragged @Break @BookTitleFormat @Title
- X // @Runner
- X @FootEven { |0.5rt 0.8f @Font @B @PageNum }
- X @FootOdd { |0.5rt 0.8f @Font @B @PageNum }
- X // @PageMarker&&preceding @Tagged @Tag
- X // @Title @MajorContentsEntry {@PageOf @Tag}
- X // @Body
- X //@SectionGap @ChapRefSection
- X // @Runner
- X @TopEven { @B @PageNum }
- X @TopOdd { @I {@RunningTitle @OrElse @Title} |1rt @B @PageNum }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Chapters containing sections and subsections. #
- X # #
- X ###########################################################################
- X
- X export @FootNote @BeginFigures @BeginTables
- X @BeginSections @EndSections @Section
- X def @Chapter force into { @ChapterList&&preceding }
- X named @Tag {}
- X named @Title {}
- X named @RunningTitle { dft }
- X body @Body
- X {
- X def @FootNote right x { @ColFootNote x }
- X macro @BeginFigures { // @FigureGalley {@NumberOf @Tag}. // }
- X macro @BeginTables { // @TableGalley {@NumberOf @Tag}. // }
- X
- X def @EndSectionsPlace { @Galley }
- X def @EndSections force into { @EndSectionsPlace&&preceding } {}
- X macro @BeginSections
- X { //@SectionGap @SectionList 1 // @EndSectionsPlace // }
- X
- X export @BeginSubSections @EndSubSections @SubSection
- X def @Section force into { @SectionList&&preceding }
- X named @Tag {}
- X named @Title {}
- X named @RunningTitle { dft }
- X body @Body
- X {
- X
- X def @EndSubSectsPlace { @Galley }
- X def @EndSubSections force into { @EndSubSectsPlace&&preceding } {}
- X macro @BeginSubSections
- X { //@SubSectionGap @SubSectionList 1// @EndSubSectsPlace//}
- X
- X def @SubSection force into { @SubSectionList&&preceding }
- X named @Tag {}
- X named @Title {}
- X named @RunningTitle { dft }
- X body @Body
- X {
- X def @SubSectionTitle
- X {
- X @SubSectionNumbers @Case {
- X {Yes yes} @Yield { {@NumberOf @Tag}. |2s @Title }
- X else @Yield @Title
- X }
- X }
- X
- X @MinorHeading @Protect @SubSectionTitle
- X // @NumberMarker {
- X {@ChapterList&&@Tag @Open { @Tag }}.{
- X @SectionList&&@Tag @Open { @Tag }}.{
- X @SubSectionList&&@Tag @Open { @Tag }}
- X }
- X // @ChapterList&&preceding @Tagged @Tag
- X // @SectionList&&preceding @Tagged @Tag
- X // @SubSectionList&&preceding @Tagged @Tag
- X // @NumberMarker&&preceding @Tagged @Tag
- X // @PageMarker&&preceding @Tagged @Tag
- X // {&5f @SubSectionTitle} @ContentsEntry {@PageOf @Tag}
- X //0io @Body
- X }
- X
- X def @SectionTitle
- X {
- X @SectionNumbers @Case {
- X {Yes yes} @Yield { {@NumberOf @Tag}. |2s @Title }
- X else @Yield @Title
- X }
- X }
- X
- X @Heading @Protect @SectionTitle
- X // @NumberMarker {
- X {@ChapterList&&@Tag @Open { @Tag }}.{
- X @SectionList&&@Tag @Open { @Tag }}
- X }
- X // @ChapterList&&preceding @Tagged @Tag
- X // @SectionList&&preceding @Tagged @Tag
- X // @NumberMarker&&preceding @Tagged @Tag
- X // @PageMarker&&preceding @Tagged @Tag
- X // { &3f @SectionTitle } @ContentsEntry {@PageOf @Tag}
- X //0io @Body
- X
- X }
- X
- X def @ChapterTitle
- X {
- X @ChapterNumbers @Case {
- X {Yes yes} @Yield { Chapter {@NumberOf @Tag}. |2s @Title }
- X else @Yield @Title
- X }
- X }
- X
- X def @ChapterNum
- X {
- X @ChapterNumbers @Case {
- X {Yes yes} @Yield { Chapter {@NumberOf @Tag} }
- X else @Yield @Null
- X }
- X }
- X
- X ragged @Break @BookTitleFormat @ChapterTitle
- X // @NumberMarker {
- X @ChapterList&&@Tag @Open { @Tag }
- X }
- X // @ChapterList&&preceding @Tagged @Tag
- X // @NumberMarker&&preceding @Tagged @Tag
- X // @PageMarker&&preceding @Tagged @Tag
- X // { @ChapterTitle } @MajorContentsEntry {@PageOf @Tag}
- X // @Runner
- X @FootEven { |0.5rt 0.8f @Font @B @PageNum }
- X @FootOdd { |0.5rt 0.8f @Font @B @PageNum }
- X // @Body
- X //@SectionGap @ChapRefSection
- X // @Runner
- X @TopEven { @B @PageNum |1rt @I @ChapterNum }
- X @TopOdd { @I {@RunningTitle @OrElse @Title} |1rt @B @PageNum }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Sections containing subsections. #
- X # #
- X ###########################################################################
- X
- X export @FootNote @BeginFigures @BeginTables
- X @BeginSubSections @SubSection @EndSubSections
- X def @Section force into { @SectionList&&preceding }
- X named @Tag {}
- X named @Title {}
- X named @RunningTitle { dft }
- X body @Body
- X {
- X def @FootNote right x { @ColFootNote x }
- X macro @BeginFigures { // @FigureGalley {@NumberOf @Tag}. // }
- X macro @BeginTables { // @TableGalley {@NumberOf @Tag}. // }
- X
- X def @EndSubSectsPlace { @Galley }
- X def @EndSubSections force into { @EndSubSectsPlace&&preceding } {}
- X macro @BeginSubSections
- X { //@SubSectionGap @SubSectionList 1 // @EndSubSectsPlace // }
- X
- X def @SubSection force into { @SubSectionList&&preceding }
- X named @Tag {}
- X named @Title {}
- X named @RunningTitle { dft }
- X right @Body
- X {
- X def @SubSectionTitle
- X {
- X @SubSectionNumbers @Case {
- X {Yes yes} @Yield { {@NumberOf @Tag}. |2s @Title }
- X else @Yield @Title
- X }
- X }
- X
- X @MinorHeading @Protect @SubSectionTitle
- X // @NumberMarker {
- X {@SectionList&&@Tag @Open { @Tag }}.{
- X @SubSectionList&&@Tag @Open { @Tag }}
- X }
- X // @SubSectionList&&preceding @Tagged @Tag
- X // @SectionList&&preceding @Tagged @Tag
- X // @NumberMarker&&preceding @Tagged @Tag
- X // @PageMarker&&preceding @Tagged @Tag
- X //0io @Body
- X }
- X
- X def @SectionTitle
- X {
- X @SectionNumbers @Case {
- X {Yes yes} @Yield { {@NumberOf @Tag}. |2s @Title }
- X else @Yield @Title
- X }
- X }
- X
- X @Heading @Protect @SectionTitle
- X // @NumberMarker {
- X @SectionList&&@Tag @Open { @Tag }
- X }
- X // @SectionList&&preceding @Tagged @Tag
- X // @NumberMarker&&preceding @Tagged @Tag
- X // @PageMarker&&preceding @Tagged @Tag
- X //0io @Body
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Appendices. #
- X # #
- X ###########################################################################
- X
- X export @FootNote @BeginFigures @BeginTables
- X @BeginSubAppendices @SubAppendix @EndSubAppendices
- X def @Appendix force into { @AppendixList&&preceding }
- X named @Tag {}
- X named @Title {}
- X named @RunningTitle { dft }
- X body @Body
- X {
- X def @FootNote right x { @ColFootNote x }
- X macro @BeginFigures { // @FigureGalley {@NumberOf @Tag}. // }
- X macro @BeginTables { // @TableGalley {@NumberOf @Tag}. // }
- X
- X def @EndSubAppendicesPlace { @Galley }
- X def @EndSubAppendices force into {@EndSubAppendicesPlace&&preceding} {}
- X macro @BeginSubAppendices
- X { //@SubAppendixGap @SubAppendixList 1 // @EndSubAppendicesPlace // }
- X
- X def @SubAppendix force into { @SubAppendixList&&preceding }
- X named @Tag {}
- X named @Title {}
- X named @RunningTitle { dft }
- X right @Body
- X {
- X def @SubAppendixTitle
- X {
- X @SubAppendixNumbers @Case {
- X {Yes yes} @Yield { {@NumberOf @Tag}. |2s @Title }
- X else @Yield @Title
- X }
- X }
- X
- X @Heading @Protect @SubAppendixTitle
- X // @NumberMarker {
- X {@AppendixList&&@Tag @Open { @Tag }}.{
- X @SubAppendixList&&@Tag @Open { @Tag }}
- X }
- X // @SubAppendixList&&preceding @Tagged @Tag
- X // @AppendixList&&preceding @Tagged @Tag
- X // @NumberMarker&&preceding @Tagged @Tag
- X // @PageMarker&&preceding @Tagged @Tag
- X // @SubAppendixTitle @ContentsEntry {@PageOf @Tag}
- X //0io @Body
- X }
- X
- X def @AppendixTitle
- X {
- X @AppendixNumbers @Case {
- X {Yes yes} @Yield { Appendix {@NumberOf @Tag}. |2s @Title }
- X else @Yield { Appendix. @Title }
- X }
- X }
- X
- X def @AppendixNum
- X {
- X @AppendixNumbers @Case {
- X {Yes yes} @Yield { @NumberOf @Tag }
- X else @Yield @Null
- X }
- X }
- X
- X ragged @Break @BookTitleFormat @AppendixTitle
- X // @NumberMarker {
- X @AppendixList&&@Tag @Open { @UCAlpha&&@Tag }
- X }
- X // @AppendixList&&preceding @Tagged @Tag
- X // @NumberMarker&&preceding @Tagged @Tag
- X // @PageMarker&&preceding @Tagged @Tag
- X // @AppendixTitle @MajorContentsEntry {@PageOf @Tag}
- X // @Runner
- X @FootEven { |0.5rt 0.8f @Font @B @PageNum }
- X @FootOdd { |0.5rt 0.8f @Font @B @PageNum }
- X // @Body
- X //@SectionGap @ChapRefSection
- X // @Runner
- X @TopEven { @B @PageNum |1rt @I { Appendix @AppendixNum } }
- X @TopOdd { @I {@RunningTitle @OrElse @Title} |1rt @B @PageNum }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Index. #
- X # #
- X ###########################################################################
- X
- X def @IndexList { @Galley //1vx @IndexList }
- X
- X def @IndexSection
- X named @Tag {}
- X named @Title { Index }
- X named @RunningTitle { dft }
- X named headstyle right @Title { @Heading @Title //@DispGap }
- X {
- X
- X def @IndexBody into { @IndexPlace&&following }
- X { // @IndexList
- X // @Runner
- X @TopEven { @B @PageNum }
- X @TopOdd { @I {@RunningTitle @OrElse @Title} |1rt @B @PageNum }
- X }
- X
- X def indexsection
- X {
- X headstyle @Title
- X // @PageMarker&&preceding @Tagged @Tag
- X // @Title @MajorContentsEntry {@PageOf @Tag}
- X // @Runner
- X @FootEven { |0.5rt 0.8f @Font @B @PageNum }
- X @FootOdd { |0.5rt 0.8f @Font @B @PageNum }
- X // @IndexBody
- X }
- X
- X @MakeIndex @Case {
- X {Yes yes} @Yield indexsection
- X else @Yield @Null
- X }
- X }
- X
- X def @SendIndex
- X left key
- X right @Body
- X {
- X def sendindex into { @IndexList&&following }
- X left @Key
- X right @Body
- X {
- X outdent @Break @Body
- X }
- X
- X @MakeIndex @Case {
- X {Yes yes} @Yield {key sendindex @Body}
- X else @Yield @Null
- X }
- X }
- X
- X def @RawIndex left x right y { {@PageMark x} x @SendIndex { &0f y } }
- X def @RawSubIndex left x right y { {@PageMark x} x @SendIndex { &1f y } }
- X def @RawSubSubIndex left x right y { {@PageMark x} x @SendIndex { &2f y } }
- X
- X def @Index left x right y { x @RawIndex { y, {@PageOf x} } }
- X def @SubIndex left x right y { x @RawSubIndex { y, {@PageOf x} } }
- X def @SubSubIndex left x right y { x @RawSubSubIndex { y, {@PageOf x} } }
- X
- X def @IndexBlanks
- X {
- X b @RawIndex {} c @RawIndex {} d @RawIndex {} e @RawIndex {}
- X f @RawIndex {} g @RawIndex {} h @RawIndex {} i @RawIndex {}
- X j @RawIndex {} k @RawIndex {} l @RawIndex {} m @RawIndex {}
- X n @RawIndex {} o @RawIndex {} p @RawIndex {} q @RawIndex {}
- X r @RawIndex {} s @RawIndex {} t @RawIndex {} u @RawIndex {}
- X v @RawIndex {} w @RawIndex {} x @RawIndex {} y @RawIndex {}
- X z @RawIndex {}
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Document. #
- X # #
- X ###########################################################################
- X
- X def @Document
- X named @InitialFont { @InitialFont }
- X named @InitialBreak { @InitialBreak }
- X named @Hyphenate { @Hyphenate }
- X named @PageNumbers { @PageNumbers }
- X named @FirstPageNumber { @FirstPageNumber }
- X named @Columns { @Columns }
- X {
- X { Times Base 12p } @Font @InitialFont @Font
- X { {@Hyph @Hyphenate} adjust 1.20fx } @Break @InitialBreak @Break
- X {
- X // @FigureGalley {}
- X // @TableGalley {}
- X // @SimplePageList
- X @Columns { @Columns }
- X @PageNumbers { @PageNumbers }
- X @FirstPageNumber
- X }
- X }
- X
- X macro @Doc { @Document // }
- X
- X
- X ###########################################################################
- X # #
- X # Report. #
- X # #
- X ###########################################################################
- X
- X def @Report
- X named @Title {}
- X named @Author {}
- X named @Institution {}
- X named @DateLine { @Date }
- X named @InitialFont { @InitialFont }
- X named @InitialBreak { @InitialBreak }
- X named @Hyphenate { @Hyphenate }
- X named @PageNumbers { @PageNumbers }
- X named @Columns { @Columns }
- X {
- X def @TitleMaterial
- X {
- X |0.5rt @B {{clines 1.4vx} @Break @Title} |
- X //0.25i |0.5rt @I {clines @Break @Author} |
- X //0.25i |0.5rt clines @Break @Institution |
- X }
- X
- X def @ReportContent force into { @ColPlace&&following }
- X {
- X @SectionList 1
- X //@AppendixGap @AppendixList 1
- X //@SectionGap @ReferenceSection
- X }
- X
- X { Times Base 12p } @Font @InitialFont @Font
- X { {@Hyph @Hyphenate} adjust 1.20fx } @Break @InitialBreak @Break
- X {
- X # cover sheet
- X // @PageMarker 0
- X // @Page {
- X //1i @TitleMaterial
- X //0.5i |0.5rt @OneCol { |0.5i @AbstractPlace |0.5i }
- X //1i @DateLine
- X //1rt @OneRow { //@MidGap @FootSect }
- X }
- X
- X // @FigureGalley {}
- X // @TableGalley {}
- X // @ReportContent
- X
- X # first page
- X // @PageMarker 1
- X // @Page
- X {
- X @PageNumbers @Case
- X {
- X {Yes yes} @Yield @PageOneTopFormat num
- X else @Yield @Null
- X }
- X //
- X //0.5i @TitleMaterial
- X //@MidGap @ColList @Columns
- X //1rt @OneRow
- X {
- X //@MidGap
- X @PageNumbers @Case
- X {
- X {Yes yes} @Yield @PageOneFootFormat num
- X else @Yield @Null
- X }
- X }
- X }
- X
- X # subsequent pages
- X // @SimplePageList
- X @Columns { @Columns }
- X @PageNumbers { @PageNumbers }
- X 2
- X }
- X }
- X
- X
- X ###########################################################################
- X # #
- X # Book. #
- X # #
- X ###########################################################################
- X
- X def @Book
- X named @Title {}
- X named @Author {}
- X named @Edition {}
- X named @Publisher {}
- X named @InitialFont { @InitialFont }
- X named @InitialBreak { @InitialBreak }
- X named @Hyphenate { @Hyphenate }
- X {
- X def @BookIntro force into { @IntroColPlace&&preceding }
- X {
- X @BookCoverFont @Font
- X { //1i |0.5rt 2.5f @Font {1.2fx clines} @Break @Title |
- X //2i |0.5rt clines @Break @Author |
- X //1i |0.5rt clines @Break @Edition |
- X //1rt @OneRow @Publisher
- X }
- X // @Runner
- X //1.1b @PrefacePlace
- X //1.1b @ContentsSection
- X }
- X
- X def @BookBody force into { @ColPlace&&preceding }
- X {
- X @IntroductionPlace
- X //@ChapterGap @ChapterList 1
- X //@AppendixGap @AppendixList 1
- X //1.1b @ReferenceSection
- X headstyle { ragged @Break @BookTitleFormat @Title }
- X //1.1b @IndexSection
- X headstyle { ragged @Break @BookTitleFormat @Title }
- X }
- X
- X { Times Base 12p } @Font @InitialFont @Font
- X { {@Hyph @Hyphenate} adjust 1.20fx } @Break @InitialBreak @Break
- X {
- X @IntroOddPageList @Columns { Single } 1
- X // @Runner
- X @FootEven { @PageNum }
- X @FootOdd { |1rt @PageNum }
- X // @OddPageList @Columns { Single } 1
- X // @BookIntro
- X // @BookBody
- X // @Runner
- X }
- X }
- X
- X@End @DocumentLayout
- END_OF_FILE
- if test 67583 -ne `wc -c <'lout/include/dl'`; then
- echo shar: \"'lout/include/dl'\" unpacked with wrong size!
- fi
- # end of 'lout/include/dl'
- fi
- if test ! -d 'lout/man' ; then
- echo shar: Creating directory \"'lout/man'\"
- mkdir 'lout/man'
- fi
- echo shar: End of archive 1 \(of 30\).
- cp /dev/null ark1isdone
- MISSING=""
- for I in 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 ; do
- if test ! -f ark${I}isdone ; then
- MISSING="${MISSING} ${I}"
- fi
- done
- if test "${MISSING}" = "" ; then
- echo You have unpacked all 30 archives.
- rm -f ark[1-9]isdone ark[1-9][0-9]isdone
- else
- echo You still must unpack the following archives:
- echo " " ${MISSING}
- fi
- exit 0
- exit 0 # Just in case...
-