summaryrefslogtreecommitdiff
path: root/info/ltx3pub/l3d002a.tex
blob: 49ad54251057a0cd95ce4f9e05e8fa027164bc89 (plain)
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
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
1001
1002
1003
1004
1005
1006
1007
1008
1009
1010
1011
1012
1013
1014
1015
1016
1017
1018
1019
1020
1021
1022
1023
1024
1025
1026
1027
1028
1029
1030
1031
1032
1033
1034
1035
1036
1037
1038
1039
1040
1041
1042
1043
1044
1045
1046
1047
1048
1049
1050
1051
1052
1053
1054
1055
1056
1057
1058
1059
1060
1061
1062
1063
1064
1065
1066
1067
1068
1069
1070
1071
1072
1073
1074
1075
1076
1077
1078
1079
1080
1081
1082
1083
1084
1085
1086
1087
1088
1089
1090
1091
1092
1093
1094
1095
1096
1097
1098
1099
1100
1101
1102
1103
1104
1105
1106
1107
1108
1109
1110
1111
1112
1113
1114
1115
1116
1117
1118
1119
1120
1121
1122
1123
1124
1125
1126
1127
1128
1129
1130
1131
1132
1133
1134
1135
1136
1137
1138
1139
1140
1141
1142
1143
1144
1145
1146
1147
1148
1149
1150
1151
1152
1153
1154
1155
1156
1157
1158
1159
1160
1161
1162
1163
1164
1165
1166
1167
1168
1169
1170
1171
1172
1173
1174
1175
1176
1177
1178
1179
1180
1181
1182
1183
1184
1185
1186
1187
1188
1189
1190
1191
1192
1193
1194
1195
1196
1197
1198
1199
1200
1201
1202
1203
1204
1205
1206
1207
1208
1209
1210
1211
1212
1213
1214
1215
1216
1217
1218
1219
1220
1221
1222
1223
1224
1225
1226
1227
1228
1229
1230
1231
1232
1233
1234
1235
1236
1237
1238
1239
1240
1241
1242
1243
1244
1245
1246
1247
1248
1249
1250
1251
1252
1253
1254
1255
1256
1257
1258
1259
1260
1261
1262
1263
1264
1265
1266
1267
1268
1269
1270
1271
1272
1273
1274
1275
1276
1277
1278
1279
1280
1281
1282
1283
1284
1285
1286
1287
1288
1289
1290
1291
1292
1293
1294
1295
1296
1297
1298
1299
1300
1301
1302
1303
1304
1305
1306
1307
1308
1309
1310
1311
1312
1313
1314
1315
1316
1317
1318
1319
1320
1321
1322
1323
1324
1325
1326
1327
1328
1329
1330
1331
1332
1333
1334
1335
1336
1337
1338
1339
1340
1341
1342
1343
1344
1345
1346
1347
1348
1349
1350
1351
1352
1353
1354
1355
1356
1357
1358
1359
1360
1361
1362
1363
1364
1365
1366
1367
1368
1369
1370
1371
1372
1373
1374
1375
1376
1377
1378
1379
1380
1381
1382
1383
1384
1385
1386
1387
1388
1389
1390
1391
1392
1393
1394
1395
1396
1397
1398
1399
1400
1401
1402
1403
1404
1405
1406
1407
1408
1409
1410
1411
1412
1413
1414
1415
1416
1417
1418
1419
1420
1421
1422
1423
1424
1425
1426
1427
1428
1429
1430
1431
1432
1433
1434
1435
1436
1437
1438
1439
1440
1441
1442
1443
1444
1445
1446
1447
1448
1449
1450
1451
1452
1453
1454
1455
1456
1457
1458
1459
1460
1461
1462
1463
1464
1465
1466
1467
1468
1469
1470
1471
1472
1473
1474
1475
1476
1477
1478
1479
1480
1481
1482
1483
1484
1485
1486
1487
1488
1489
1490
1491
1492
1493
1494
1495
1496
1497
1498
1499
1500
1501
1502
1503
1504
1505
1506
1507
1508
1509
1510
1511
1512
1513
1514
1515
1516
1517
1518
1519
1520
1521
1522
1523
1524
1525
1526
1527
1528
1529
1530
1531
1532
1533
1534
1535
1536
1537
1538
1539
1540
1541
1542
1543
1544
1545
1546
1547
1548
1549
1550
1551
1552
1553
1554
1555
1556
1557
1558
1559
1560
1561
1562
1563
1564
1565
1566
1567
1568
1569
1570
1571
1572
1573
1574
1575
1576
1577
1578
1579
1580
1581
1582
1583
1584
1585
1586
1587
1588
1589
1590
1591
1592
1593
1594
1595
1596
1597
1598
1599
1600
1601
1602
1603
1604
1605
1606
1607
1608
1609
1610
1611
1612
1613
1614
1615
1616
1617
1618
1619
1620
1621
1622
1623
1624
1625
1626
1627
1628
1629
1630
1631
1632
1633
1634
1635
1636
1637
1638
1639
1640
1641
1642
1643
1644
1645
1646
1647
1648
1649
1650
1651
1652
1653
1654
1655
1656
1657
1658
1659
1660
1661
1662
1663
1664
1665
1666
1667
1668
1669
1670
1671
1672
1673
1674
1675
1676
1677
1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
1699
1700
1701
1702
1703
1704
1705
1706
1707
1708
1709
1710
1711
1712
1713
1714
1715
1716
1717
1718
1719
1720
1721
1722
1723
1724
1725
1726
1727
1728
1729
1730
1731
1732
1733
1734
1735
1736
1737
1738
1739
1740
1741
1742
1743
1744
1745
1746
1747
1748
%%% ====================================================================
%%%  @LaTeX3-article{ LaTeX3-LTX3-002a,
%%%  filename        = "l3d002a.tex",
%%%  archived        = "ctan:/tex-archive/info/ltx3pub/",
%%%  related-files   = "part of l3d002.tex",
%%%  author          = "David Rhead",
%%%  doc-group       = "Project core team",
%%%  title           = "Some ideas for improving {\LaTeX}\\ General",
%%%  version         = "1.1",
%%%  date            = "18-Mar-1993",
%%%  time            = "20:19:36 GMT",
%%%  status          = "public, official",
%%%  abstract        = "Ideas and suggestions from David Rhead for
%%%                     improving various areas in LaTeX",
%%%  note            = "prepared for the workshop at Dedham 91",
%%%  keywords        = "",
%%%  project-address = "LaTeX3 Project            \\
%%%                     c/o Dr. Chris Rowley      \\
%%%                     The Open University       \\
%%%                     Parsifal College          \\
%%%                     Finchley Road             \\
%%%                     London NW3 7BG, England, UK",
%%%  project-tel     = "+44 171 794 0575",
%%%  project-FAX     = "+44 171 433 6196",
%%%  project-email   = "LTX3-Mgr@SHSU.edu",
%%%  copyright       = "Copyright (C) 1993 LaTeX3 Project
%%%                     All rights reserved.
%%%
%%%                     Permission is granted to make and distribute
%%%                     verbatim copies of this publication or of
%%%                     coherent parts from this publication provided
%%%                     this copyright notice and this permission
%%%                     notice are preserved on all copies.
%%%
%%%                     Permission is granted to copy and distribute
%%%                     translations of this publication or of
%%%                     individual items from this publication into
%%%                     another language provided that the translation
%%%                     is approved by the original copyright holders.
%%%
%%%                     No other permissions to copy or distribute this
%%%                     publication in any form are granted and in
%%%                     particular no permission to copy parts of it
%%%                     in such a way as to materially change its
%%%                     meaning.",
%%%  generalinfo     = "To subscribe to the LaTeX3 discussion list:
%%%
%%%                      Send mail to listserv@vm.urz.uni-heidelberg.de
%%%                      with the following line as the body of the
%%%                      message (substituting your own name):
%%%
%%%                        subscribe LaTeX-L First-name Surname
%%%
%%%                     To find out about volunteer work:
%%%
%%%                      look at the document vol-task.tex which can
%%%                      be obtained electronically, see below.
%%%
%%%                     To retrieve project publications electronically:
%%%
%%%                      Project publications are available for
%%%                      retrieval by anonymous ftp from ctan hosts:
%%%                          ftp.tex.ac.uk
%%%                          ftp.dante.de
%%%                          ftp.shsu.edu
%%%                      in the directory /tex-archive/info/ltx3pub.
%%%
%%%                      The file ltx3pub.bib in that directory gives
%%%                      full bibliographical information including
%%%                      abstracts in BibTeX format.  A brief history
%%%                      of the project and a description of its aims
%%%                      is contained in l3d001.tex.
%%%
%%%                     If you only have access to email, and not ftp
%%%                      You may use the ftpmail service.
%%%                      Send a message just containg the word
%%%                          help
%%%                      to ftpmail@ftp.shsu.edu
%%%                      for more information about this service.
%%%
%%%                     For offers of financial contributions or
%%%                      contributions of computing equipment or
%%%                      software, contact the project at the above
%%%                      address, or the TeX Users Group.
%%%
%%%                     For offers of technical assistance, contact the
%%%                      project at the above address.
%%%
%%%                     For technical enquiries and suggestions, send
%%%                      e-mail to the latex-l list or contact the
%%%                      project at the above address.",
%%%  checksum        = "14238 1748 11090 80596",
%%%  docstring       = "The checksum field above contains a CRC-16
%%%                     checksum as the first value, followed by the
%%%                     equivalent of the standard UNIX wc (word
%%%                     count) utility output of lines, words, and
%%%                     characters.  This is produced by Robert
%%%                     Solovay's checksum utility.",
%%%  }
%%% ====================================================================

\chapter{General}

\section{Assumptions about structure}
\label{general-structure}

\LaTeX\ 2.09's assumptions about the structure of a {\tt book} or {\tt
report} seem at odds with the usual assumptions in publishing
practice.  Consequently, the author often ends up doing things that
are really the designer's responsibility.

In publishing practice, a book-like document would have the following major
divisions:
\begin{itemize}
\item ``preliminary pages'' or ``front matter'', containing table of contents,
      acknowledgements, etc.  These pages are usually numbered in roman.
\item main text, containing the chapters.
\item ``end pages'' or ``back matter'', containing appendices, bibliography,
      index, etc.
\end{itemize}
See \cite[p.\ 4--5]{chicago-82}, \cite[p.\ 119, 165--166]{butcher-81},
\cite[ch.\ 8]{williamson-83}, \cite [ch.\ 10]{mclean-80}, \cite[p.\
157--161]{white-88} and \cite[p.\ 73--77]{tei-90}.

Thus, for \lq\lq front matter'' and \lq\lq back matter'', the
divergence between the real structure and that assumed by \LaTeX\ 2.09
forces the author to think visually rather than logically.  The author gets
involved with:
\begin{itemize}
\item \verb+\chapter*+ plus \verb+\addcontentsline+ for most ``top level''
     units in the front and back matter.
\item having to put \verb+\pagenumbering{roman}+
      and \verb+\pagenumbering{arabic}+ around the ``front matter''.
\end{itemize}
See Figures \ref{fig-root}, \ref{fig-front} and \ref{fig-back}.

\begin{figure}
\begin{footnotesize}\begin{verbatim}
\documentstyle[11pt]{report}

\begin{document}       %  A single-sided project report.

\pagenumbering{roman}  %  Table of contents and other preliminary pages are
\setcounter{page}{2}   %  to be numbered in roman.  If numbering notionally
                       %  starts with the title-page (which is being typeset
                       %  separately), actual numbering should start at "ii"
                       %  on the table of contents.
\tableofcontents
\include{other-front-matter}

\clearpage             %  Switch to arabic page-numbering for the rest of
\pagenumbering{arabic} %  the report.

\include{a-chapter}
\include{another-chapter}

\appendix              %  Arrange that \chapter will actually give units
                       %  entitled "Appendix ...".
\include{an-appendix}
\include{another-appendix}

\include{other-back-matter}

\end{document}
\end{verbatim}\end{footnotesize}

\caption{A \LaTeX\ 2.09 root file\label{fig-root}}
\end{figure}

\begin{figure}
\begin{footnotesize}\begin{verbatim}
\chapter*{Acknowledgements}
\addcontentsline{toc}{chapter}{Acknowledgements}

Text text text text text text text text text text text text text text text text.
Text text text text text text text text text text text text text text text text.
Text text text text text text text text text text text text text text text text.
Text text text text text text text text text text text text text text text text.

\chapter*{Preface}
\addcontentsline{toc}{chapter}{Preface}

Text text text text text text text text text text text text text text text text.
Text text text text text text text text text text text text text text text text.
Text text text text text text text text text text text text text text text text.
Text text text text text text text text text text text text text text text text.
\end{verbatim}\end{footnotesize}

\caption{{\tt other-front-matter.tex}\label{fig-front}}
\end{figure}

\begin{figure}
\begin{footnotesize}\begin{verbatim}
\chapter*{Glossary}
\addcontentsline{toc}{chapter}{Glossary}

Text text text text text text text text text text text text text text text text.
Text text text text text text text text text text text text text text text text.
Text text text text text text text text text text text text text text text text.
Text text text text text text text text text text text text text text text text.

\begin{thebibliography}{width of label}
\addcontentsline{toc}{chapter}{Bibliography}

\bibitem[Item label]{a-book} Author author author.
      {\em Title title title title title.\/}
      Publisher, etc.

\bibitem[Another label]{another-book}
      Another author another author.
      {\em Another title another title another title.\/}
      Another publisher, etc.

\end{thebibliography}
\end{verbatim}\end{footnotesize}
\caption{{\tt other-back-matter.tex}\label{fig-back}}
\end{figure}


I think it would be better if \LaTeX\ 3.0 worked more in terms of the
concepts used in publishing practice.  The author might, for example,
create an input file of the form shown in Figure \ref{fig-better}.  Then
details such as roman-numbering, table-of-contents entry, etc.\ could be
dealt with in the style file (as questions of \lq\lq design'') without the
author being involved.  Although the author would have to learn a bit
of publishing jargon (\lq\lq front matter'', etc.), this might at least
help him/her to understand the language used in books about typesetting
and by publishers.  Most authors would no longer need to learn about the
the \verb+\chapter*+, \verb+\addcontentsline+ and \verb+\pagenumbering+
commands.  (The \verb+\chapter*+ and \verb+\addcontentsline+ commands might
appear in style files, where there could be a distinction between the
table of contents, which does not need an \verb+\addcontentsline+, and the
other front and back matter units that, for many designs, do need
an \verb+\addcontentsline+.)

\begin{figure}
\vspace*{-2\baselineskip}               % To get caption above page number.
\begin{scriptsize}\begin{verbatim}
\documentstyle ...

\begin{document}                                 % With this information, the
                                                 % style file should be able
\begin{frontmatter}                              % to work out where to
                                                 % start/stop roman numbers,
      \tableofcontents                           % and that "Preface" is to
                                                 % appear in the table-of-
      \toplevel{Preface}  %  \chapter* is a      % contents but "Table of
                          %  bad name for a      % contents" is not to appear
      ...                 %  top-level unit      % in itself.  I.e. author
                          %  that's NOT a        % specifies structure; design
\end{frontmatter}         %  chapter"            % decisions go in style file.

\begin{maintext}                                 % With this information, a
                                                 % style file could, if desired,
      \chapter{A chapter}                        % put the word "Chapter" in
                                                 % in the toc file at the start
      ...                                        % of the list of chapters in
                                                 % the table of contents.
      \chapter{Another chapter}                  % Similarly, with the
                                                 % information below, the style
      ...                                        % file could put "Appendix"
                                                 % in the toc file above the
\end{maintext}                                   % list of appendices.

\begin{backmatter}                               % It would be nice if,
                                                 % with this information
      \begin{appendices}                         % and the aux file, the
                                                 % style file could work
            \toplevel{An appendix}               % out whether there is
                                                 % only one appendix
            ...                                  % and, if so, give a
                                                 % heading of "Appendix"
            \toplevel{Another appendix}          % rather than "Appendix A".
                                                 % If not, perhaps the
            ...                                  % user should have the
                                                 % choice of \begin{appendix}
      \end{appendices}                           % of \begin{appendices} so
                                                 % as to avoid "Appendix A"
      \toplevel{Glossary}                        % when there is no
                                                 % "Appendix B".
      ...
                                                 % Within frontmatter and
      \toplevel{Index}                           % backmatter, a 3.0 style
                                                 % file might treat
      ...                                        % \toplevel like 2.09's
                                                 % {\chapter*
      \toplevel{References}                      % + \addcontentsline}.

      ...

\end{backmatter}

\end{document}
\end{verbatim}\end{scriptsize}
\caption{A better way to specify the units in a book?\label{fig-better}}
\end{figure}

Obviously decisions will need to be taken about the terminology, commands
and environments to be used for markup schemes.  Figure \ref{fig-better}
gives the basis for one scheme.  The Text Encoding Initiative's terminology
\cite[p.\ 73--77]{tei-90} is another option.  Presumably another scheme
could be produced by studying the Association of American Publishers'
recommendations about SGML markup (although I haven't yet been able to
study them myself) \cite{aap-1,aap-2,aap-3,aap-4,aap-5}.  There would
presumbly be advantages in some compatibility with conventions used outside
the \LaTeX\ community.

Appendix \ref{structure} contains some extracts from e-mail discussions
about such matters.

\section{Use of {\tt count}s}

Although \TeX\ provides 10 \verb+\count+ registers \cite[p.\ 119]{knuth-90}
for page-identification, neither the \lq\lq plain'' macros nor the \LaTeX\
2.09 standard styles use anything but \verb+\count0+.  From the
point-of-view of a \LaTeX\ user, this can create situations in which
page-selection is difficult at the previewing/printing stage.

For example:
\begin{itemize}
\item in the \LaTeX\ 2.09 report and book styles, both (roman-numbered) page
     iv in the \lq\lq front matter'', and (arabic-numbered) page 4 in
     chapter 1 have a \verb+\count0+ value of 4 in the {\tt dvi} file, so
     it is difficult to instruct a {\tt dvi}-file processing command to
     print page 4 rather than page iv.
\item if a style-file for a document that numbers pages \lq\lq within
     chapters'' follows the precedent of the standard styles and just uses
     \verb+\count0+, page-selection will be difficult because
     there will often be several pages with the
     same \verb+\count0+ value.  If a {\tt dvi} file represents
     10 chapters, it will be difficult to select the first page of
     chapter 9, because {\tt dvi}-processing software is not usually
     designed for tasks such as \lq\lq find the 9th
     time that \verb+\count0+ has the value {\tt 1}''.
\end{itemize}

I think that the \LaTeX\ 3.0 standard styles should use the \verb+\count+s
in such a way that pages can be selected unambiguously at the {\tt dvi}-file
processing stage.  Appendix \ref{counts} suggests some schemes that
might achieve this objective.

\section{Ragged right}

People may wish to implement ``ragged right'' designs.  They may want
\TeX's mathematical typesetting capability and the help that \LaTeX\ can
give with section-numbering, cross-referencing, etc., but not want any of
the right-justification that \TeX\ supplies by default.  This seems
respectable, since there are books on design that advocate ``ragged right''
\cite[p.\ 19]{white-88}.

Unfortunately, to implement a ``ragged right'' design in \LaTeX\ 2.09, it seems
necessary to make individual changes to any definitions in a style file that
involves ``paragraph makeup''.  For example, it is necessary to specify
``ragged right'' for main text, footnotes, captions and list-elements
separately.

However, if the ``main text'' is to be typeset ``ragged right'', it is most
likely that ``ragged right'' will be required everywhere else, too.  Could
there be some easy mechanism for specifying, in a style file, that
``everything is to be ragged right''?  Better still, could there be some
easy way of choosing, in a style file, to have everything as what White
\cite[p.\ 21]{white-88} calls ``rough rag'', ``tight rag'' or ``minimal
rag''?

\section{File names}

Might it be worth introducing a naming convention such as:
\begin{itemize}
\item extension {\tt sty} for a style file
\item extension {\tt opt} for a style-option file?
\end{itemize}
It may help people to find their way round archives such as that
at Aston.

\subsection*{An e-mail comment}
\begin{footnotesize}\begin{verbatim}
From:     Don Hosek <DHOSEK@EDU.CLAREMONT.HMCVAX>
Date:     Fri, 1 Feb 91 21:54:00 PST

...
  I'd like to see LaTeX 3.0 use different extensions for style
  files and options. My recommendations would be style files have
  extensions of .dst and options .dop (.opt is too commonly used
  for other purposes)  ...  part of the
  advantage gained by the new extensions would be the emphasis that
  style files will probably need mods to work under the new
  LaTeX.
...
\end{verbatim}\end{footnotesize}
\chapter{Preliminary pages}

\section{Title-page}

In \LaTeX\ 2.09, \verb+titlepage+ does a \verb+\setcounter{page}{0}+.
Unfortunately, when \verb+twoside+ is used, this setting leads to the
titlepage having the margins appropriate for a left-hand page, when it
should really have the margins for a right-hand page.

Since \verb+\thispagestyle{empty}+ is used, the actual number makes no
difference in \verb+titlepage+.  Presumably the intention is to ensure
that the following page is, by default, numbered ``1''.

Could some way be found of ensuring that a title-page is given the
margins for a right-hand page even when {\tt twoside} is in effect?

This might well come about anyway if the markup scheme for reports and
books is reconsidered (as suggested in section \ref{general-structure}).
If not, perhaps \lq\lq 0'' should be treated as \lq\lq odd'' for the
purpose of margins.

\section{Those pages without printed numbers}

It seems as though, in publishing practice (\cite[p.\ 4]{chicago-82},
\cite[p.\ 120]{butcher-81}) the first 4 or 6 ``preliminary pages'' of a book
will probably be un-numbered, the title-page being just one of these.  If
the user is expected to use such an environment for pages other than the
title-page \cite[p.\ 162]{lamport-86}, it might be worth thinking of a more
appropriate name ({\tt unnumbered}, perhaps).  On the other hand, if the
markup scheme for reports and books is reconsidered (as suggested in
section \ref{general-structure}), the situations in which people are
expected to use {\tt titlepage} for pages other than the title-page might
be eliminated anyway.

\chapter{Floats}

\section{Confusion}

The {\tt figure} and {\tt table} environments arrange for:
\begin{itemize}
\item captions to be numbered
\item material to be floated.
\end{itemize}

Our \LaTeX\ users seem to want the caption-numbering, but to get
confused by the floating.  Typically, they go \verb+\begin{table}[h]+
without reading the ``small print'' \cite[p.\ 176--178]{lamport-86}, and
then come to our Advisory Service asking why the table hasn't appeared
``here'' and why they're being told ``{\tt Too many unprocessed floats}''.

Admittedly, much of the problem is that (a) they haven't studied printed
books to see what \lq\lq the professionals'' do with figures and tables (b)
there is a typewriter tradition of expecting things to stay where they are
put (c) they get a half-truth ``from a friend'', and don't study the manual
to get the whole truth.

But, I think part of the problem is attributable to:
\begin{itemize}
\item the environment names. ``{\tt table}'' {\em sounds} as if it's ``what you
      {\em must} use for a table''
\item the dual role.
      People may choose {\tt table} and {\tt figure} in order to get
      numbered captions: there isn't another off-the-shelf way to get
      them.  They may see the floating as an unwanted side-effect and
      think (wrongly) that \verb+[h]+ will turn the effect off.
\end{itemize}

In \LaTeX\ 3.0, could environments for ``floating'' be given names that
make it obvious that their main purpose is to float things?

For example, suppose that someone had to go \verb+\begin{floattable}+ or
\verb+\begin{float}{table}+.  Even if they found out about this ``from a
friend'', they would stand a good chance of realising that they are asking
\LaTeX\ to float something (and get a hint that \verb+h+ is ``allowing a
null float when aesthetically possible'' rather than ``forcing the table
{\it here} under all circumstances'').

I'm not sure whether to be optimistic or pessimistic about what would happen
if floating environments were given names that made it absolutely clear that
their role is to float things.  Being optimistic, I might think that users
would then be clear what to expect, would be pleased that \LaTeX\ would make
their document look like a professionally produced book, and would not use the
environments
in such a way as to give ``{\tt Too many unprocessed floats}'' over-frequently.
Being pessimistic, I wonder if it would be worth providing one or other of:
\begin{itemize}
\item environments that just put a table or figure ``here'' (with spacing,
      caption, etc., as for the ``floats''), and give an
      ``{\tt Underfull vbox}'' if the table/figure can't be fitted on the current
      page and has to go on the next one (leaving the current page underfull).
      For example, \verb+\begin{fixedtable}+ or \verb+\begin{fixed}{table}+.
\item a command (or commands) to produce captions in ``ordinary text'' that
      look  the same as (and use the same counters as) the captions produced
      in the floating environments.
      For example, \verb+\caption{table}{...}+ or \verb+\tablecaption{...}+.
\end{itemize}


\section{Captions}

\subsection{\protect\LaTeX\ 2.09's practice}

The \LaTeX\ 2.09 manual \cite{lamport-86} seems vague about whether the
spacing around \verb+\caption+ is designed to go under or over a
table/figure.  Looking at the standard {\tt doc} files suggests that the
same code is used for both figures and tables, and that the resulting
caption is intended to go {\it under} the figure or table.

However, the 2.09 manual points out that ``there can be several captions in
a {\tt figure} or {\tt table} environment''.

\subsection{Publishing practice}

In publishing practice, it seems respectable to have a combination of:
\begin{itemize}
\item table captions {\em above} the table
\item figure captions {\em below} the figure.
\end{itemize}
Perhaps this is because tables may have notes underneath, and may be split
over several pages.  See \cite[p.\ 266,308]{chicago-82}, \cite[p.\
136,160]{butcher-81} and \cite[p.\ 158,161]{hart-83}.

Within such floats, it seems normal \cite[ch.\ 11,12]{chicago-82},
\cite[p.\ 164]{butcher-81}, \cite[figs.\ 2,5]{hart-83} to have the
following elements:
\begin{itemize}
\item for tables: the title (and possibly a subtitle),
      the table itself, source notes, general notes,
      specific notes, probability levels\footnote{A statistician
      colleague tells me that statisticians now prefer
      ``confidence intervals''.}
\item for figures: the figure itself, the caption, the legend.
\end{itemize}
%  CMoS p. 312.

I haven't been able to find any sensible examples of floats with more than
one caption.  Hart has some examples of figures side-by-side \cite[figs.\
6,7,8]{hart-83}, but this is really a case of figures ending up together
after floating, rather than having to be kept together while floated.
Butcher mentions situations where ``two tables should appear in the same
opening, so that they can be compared'' \cite[p.\ 161]{butcher-81}, but
some mechanism other than that provided by \LaTeX\ 2.09 would be necessary
to achieve this.

Overall, the vagueness about how the author and the designer
are to use \verb+\caption+ seems likely to:
\begin{itemize}
\item make it difficult for the designer to implement decisions
      about the positioning, spacing and fonts for
      \begin{itemize}
      \item table titles and notes
      \item figure captions and legends
      \end{itemize}
\item leave the author doing visual design:  experimenting until
      things ``look right''.
\end{itemize}

\subsection{\protect\LaTeX\ 3.0}
\label{float3}

It seems to me that the advantage of having the usual \LaTeX\
``separation of the designer's and author's roles'' within the body
of a float would far outweigh any flexibility that ``several captions
within a float'' allows.  (If it is desired to allow two narrow floats
side-by-side, this should be done by letting the user tell \LaTeX\
about the width of the float.  If it is desired to
cater for rare situations where ``two tables should appear in the same
opening'', this should be done by arranging some ``magnetic attraction''
between the two---or by letting the user fiddle with the {\tt tex} file.)

I suggest that:
\begin{itemize}
\item notice be given that ``more than one caption
      within a float'' will not be supported after \LaTeX\ 2.09
\item at \LaTeX\ 3.0, ideally
      \begin{itemize}
      \item the successor to {\tt table} should
            require the user to specify the block to be floated
            in terms of the  logical elements
            ``title'' (plus possible ``subtitle''),
            ``table itself'', ``source notes'', ``general
            notes'', ``specific notes'', ``probability levels''
      \item the successor to {\tt figure} should
            require the user to specify the block to be floated
            in terms of the  logical elements
            ``figure itself'', ``caption'', ``legend''
      \item the positioning, typeface, etc. to be used for the logical elements
            should be under the control of the document-designer via the
            style     file.  A designer should be able to implement
            designs \cite{chicago-82,butcher-81,hart-83}
            that have: table-title at the top of a floated
            ``table block'', with table-notes at the bottom of the block;
            ``caption'' and ``legend'' (in that order)
            at the bottom of a floated ``figure block''.
            Equally, a designer should be able to implement
            other conventions for layout of the ``logical elements''
            within floated blocks.
      \end{itemize}
\end{itemize}

\section{Landscape}

The precise details of what one does to place an object ``landscape''
will depend on the \verb+\special+s available for a particular printer.

It may be unwise to define official environments, since they would not be
available to everyone that has \LaTeX\ 3.0.  (But if you want to define a
standard ``optional extension'', you might adopt definitions like those
shown in Figure \ref{landscape}, which are based on code sent to {\tt
UKTeX} by Sebastian Rahtz.)
\begin{figure}
\begin{footnotesize}\begin{verbatim}

%  Declare a storage bin for use by environments that deal with wide things.
\newsavebox{\widethingstore}

%  Deal with very wide objects as follows:
%  - typeset the object into a storage bin
%  - reserve a page (by giving LaTeX a portrait object that will occupy a
%    whole page)
%  - bring the object out of the storage bin into a region of the page that
%    dvitops will rotate.  Position the object so that, when rotated, its
%    vertical centre is aligned with the horizontal centre of the usual
%    portrait text-column.
\newlength{\height}  \newlength{\excess}

\newenvironment{landscapetable}{%
    \begin{table}[p]
    \savebox{\widethingstore}\bgroup\begin{minipage}{237mm}}{%
%
    \end{minipage}\egroup
    %  Will the object be too high for the landscape page?
    \height=\dp\widethingstore  \advance\height by \ht\widethingstore
    \excess=\height
    \ifdim\height>127mm
        \advance\excess by -127mm
        \immediate\write16{Warning: Your landscapetable is \the\excess}
        \immediate\write16{higher than the normal landscape text-area.}
    \fi
    \vspace*{241mm}  %  A portrait object that will occupy a whole page.
    \hspace*{64mm}   %  Align the vertical centre of the landscape object
                     %  with the horizontal centre of usual portrait text.
    \special{dvitops: origin landscapetext}
    \special{dvitops: begin  landscapetext}
    \dp\widethingstore=0pt    %  Pretend that the object has no size,
    \wd\widethingstore=0pt    %  otherwise it ends up in the wrong place.
    \ht\widethingstore=0pt
    \usebox{\widethingstore}  %  Bring the object out of its bin to
    \special{dvitops: end}    %  be printed in a landscape orientation.
    \special{dvitops: rotate landscapetext -90}
    \end{table}
}

\newenvironment{landscapefigure}{%
    \begin{figure}[p]
    ...
}
\end{verbatim}\end{footnotesize}
\caption{Prototype definitions of {\tt landscapetable} and {\tt
landscapefigure}\label{landscape}}
\end{figure}

Nevertheless, people are going to want to define environments that place
objects ``landscape''.  (Perhaps designers will want to provide such environments
as part of an overall design.) It might be possible to help such people by
providing the ability to define:
\begin{itemize}
\item a float that must appear on a ``page of floats''
      on which it is the only float
\item a \verb+\thispagestyle+ that takes effect after floating.  Although
      there doesn't seem to be a consensus between the gurus about whether one
      should print headings on pages with full-page tables (\cite[p.\
      343]{chicago-82}, \cite[p.\ 157]{hart-83}), those designers who {\it do}
      want to suppress the headings will need a suitable mechanism.
\end{itemize}
See also Appendix \ref{wide-things}.

\section{E-mail following \lq\lq \LaTeX 3 and you'' meeting}
\begin{footnotesize}\begin{verbatim}
From:     David Rhead ...
Date:     18 Feb 91 14:52:55

BACKGROUND

There was a meeting called "LaTeX3 and you" on 14th Feb.  It had
been convened as part of Frank and Rainer's visit to London.

One of the topics discussed at the meeting was the idea of catering for
"floats" whose width may be more (e.g. if the text is being typeset in
2 columns) or less (e.g. if 2 narrow illustrations will fit horizontally next
to each other) than the width of the text-column.  Some notes of ideas
were distributed, but I'm afraid that I don't have time to type them in
here.

HART'S RULES

Hart and his successors at Oxford University Press have attempted to
write down some of their experience of how to deal with such things:
      "Hart's Rules [for Compositors and Readers at the University
      Press Oxford]", 39th edition, Oxford University Press, 1983.
      ISBN 0-19-212983-X.

I'll summarise Hart's recommendations, but first I'll explain the
terminology (in case anyone else reads Hart's Rules and is as
puzzled as I was at first):
Opening - A 2-page spread.
Block - "a relief printing surface from which line-art, half-tones,
      etc. can be printed".  The term comes from the wood blocks in
      which illustrations used to be cut.  (I guess that the analogue
      these days would be the "bounding box" for a file of encapsulated
      PostScript.)
Underline - A line [of text] underneath a block (NOT an \hrule underneath
      a line of text).  Thus, I think Hart's Rules uses "underline" to
      mean what the Chicago Manual of Style would call "caption plus
      legend" and what LaTeX 2.09 might call a \caption.
      The "underline" might contain an acknowledgement of a source.
Illustration - A block plus its underline.  I.e., in LaTeX 2.09 terms,
      the stuff that might go in \begin{figure} ... \end{figure}.

Here's my interpretation of Hart's Rules about how one should try to
float illustrations [where (a), (b), etc. are Hart's letters]:
(a) Keep the illustration on the same 2-page spread as the reference to
    it as far as possible.
(b) If an illustration takes half-a-page (vertically) or less, it
    should be placed slightly above the centre of the page, with
    text above and below.  (I.e., in LaTeX 2.09 terms, there should
    be an alternative to [t], [b] and [h] that gives "slightly
    above the centre of the page".  It might need to try to avoid
    splitting paragraphs:  see notes about Williamson, below.)
(c) If an illustration takes more than half a page, put it at the top
    or bottom of a page (preferably the top), but don't ever put less
    than 5 lines of text on a page.
(d) For a pair of full-width illustrations that have to appear in the same
    2-page spread:  if the depth allows, they can  be put together on a page;
    if not, they can be placed as for (b) or (c).  Hart's Rules gives
    an example (figure 2) that has the following arrangement for a 2-page
    spread:
            ILLUSTRATION      TEXT
               TEXT       ILLUSTRATION
(e) If 3 full-width illustrations have to be fitted onto a 2-page spread,
    put 2 on one page and the third on the other with some text (minimum
    4 lines) on the other.
(f) Hart's (f) deals with "running text around a narrow illustration",
    which is probably outside the scope of LaTeX 3.0.  However, it
    does mention typesetting underlines (i.e. caption + legend, etc.)
    "to the width of the illustration", which may be a requirement
    to bear in mind.
(g) If a "block" (i.e., piece of artwork) is narrow, move the
    underline (i.e., caption + legend) to the side of the block,
    so as to avoid having to run text around an illustration (i.e.,
    narrow artwork with narrow caption underneath).
    If you do this, the alignment of the caption is to the top/bottom
    of the block depending on whether the illustration is at the
    top/bottom of the page.
(h) If the width of an an illustration is less than full-width but greater
    than full-width/2, centre it horizontally, and typeset the underline
    (i.e., caption + legend) to the width of the block (e.g., artwork)
    (if it's a long underline) or centre it (if it's a short one).
(i) This deals with illustrations that are too wide.
(j) This deals with spacing around a block (e.g., artwork)
(k) This deals with spacing above/below the underline (i.e. caption
    + legend).
(l) TWO ILLUSTRATIONS THAT ARE EACH LESS THAN HALF THE TEXT-WIDTH
    ARE TO BE PLACED SIDE-BY-SIDE.
(m) WHEN TWO ILLUSTRATIONS (of "not too dissimilar depth") ARE
    PLACED SIDE-BY-SIDE, THEY ARE TO BE PLACED VERTICALLY SO THAT
    EITHER THE BASES OF THE BLOCKS (E.G. ARTWORK) ARE LEVEL
    OR     THE BASES OF THE UNDERLINE (I.E. CAPTION + LEGEND) ARE LEVEL.
(n) This deals with running heads.
(o) This deals with landscape.
(p) "FOR MULTI-COLUMN MAKE-UP, THE ORDER OF ILLUSTRATIONS IS TO
    BE MAINTAINED WHEREVER POSSIBLE".  I'm not sure what this means.
    It seems to allow both
      Fig 1.  Text
      Fig 2.  Text
       Text   Text
    and
      Fig 1.  Fig 2.
      Text    Text
      Text    Text
(q) This deals with making the underline (i.e. caption plus legend)
    slightly less wide than the block (e.g. artwork), if such adjustment
    is necessary to improve the appearance of the underline.

OTHER GURUS

Leslie Lamport & Margery Cantor

Appended to the notes distributed on the 14th was some mail
from Leslie to Frank about a conversation with a Margery Cantor.
She suggested aligning the tops of figures [whereas Hart suggests
aligning the bottom of the (wood-)block or the bottom of the
underline (e.g. caption + legend)].

Leslie also suggested a few other things, in particular,
that the user will have to arrange for a figure to have
a certain width, perhaps by using a minipage.

Ruari McLean

On page 137 of
      "The Thames and Hudson Manual of Typography"
      Thames and Hudson, 1980,  ISBN 0-5000-68022-1,
Ruari McLean suggests the following:
      If a book consists of a number of text pages ... and the pages
      include a number of squared-up illustrations, all different shapes,
      the unity of the book is immediately threatened.  The illustrations
      should all have the same width as the type area ... If they can
      also, with captions, make the same depth as the text, so much the
      better ...
      If a book is designed with wide foredge margins, and it is
      strongly desirable to make an illustration wider than
      the type measure, it can be taken into the margin, provided
      it is conspicuously wider than the text;  but if it is done
      more than once, the larger illustrations should all be of the
      same width.
      ... metal blocks ... flanges of about 1/8 in ...
      Half-tone illustrations ... illustration area in harmony with
      the type area ...
      ... undesirable to lay down a set of rules ... But a few "rules
      of thumb" are helpful ...
      If two pictures are to be placed one above the other, they
      should either be identical in width or conspicuously different.
      If they are unavoidably of nearly the same width, they should not
      be aligned on one side, but placed full out to left and right
      respectively, so that the comparison is not obvious.

Hugh Williamson

In chapter 14 of
      "Book Design", Yale University Press, 1983, ISBN 0-300-03035-5,
Hugh Williamson suggests the following:
      If a designer and illustrator can agree on the dimensions of
      pictures before work begins, both the typography of the book
      and its illustrations are the more likely to succeed.
      ...
      When ... full-page illustrations vary in depth, a standard
      position for the last line of the caption, perhaps aligned
      with the last line of text on a full page, ... , even at the
      expense of varying distances between caption and picture.
      ...
      When a picture and a long caption are to share the area allocated
      to illustration, the dimensions of the picture may depend on
      those of the caption, ... way to determine illustration size
      will be to have such captions set ... first.
      ...
      A conspicuously rectangular illustration, ... , is usually
      placed with one or more of its edges in exact alignment
      with other elements of the opening.
      ...
      act of reading favoured by placing the illustration between
      two paragraphs ... to divide a word immediately before and
      after an illustration is clumsy.
      ...
      Captions often look neatest when they are no wider than
      the illustration under which they are to appear.

John Miles

In "Design for Desktop Publishing" (Gordon Fraser, 1987, ISBN 0-86092-097-6),
John Miles gives some examples of grid-based designs, e.g., an A3 design
that has 5 columns each of 12pc with a 1pc gutter between each column
(page 38).  Presumably, such a design will work best if artwork is
supplied 12pc, 25pc, 38pc, 51pc or 64pc wide.

IMPLICATIONS

I don't say that the opinions of Hart, McLean, Williamson, etc. represent
"what LaTeX 3.0 should do".  But their opinions seem to represent
the sort of thing that LaTeX 3.0 should allow a designer to implement.  To
this end, it seems to me desirable that LaTeX 3.0 and the designer should be
working in terms of the same concepts.

From the above, it appears that the following concepts may be fundamental:
In old-fashioned terms "the positions of the edges of the wood/metal block
      holding line-art or half-tone" or, in PostScript terms, "the
      bounding box for the file of encapsulated PostScript that is being
      \special-ed in at this point to define some artwork"
The designer may have a preference about the sizes of illustrations that
      are to be allowed.  The artwork may have to be scaled/cropped to be
      one of a designer-approved set of sizes (or widths).
The width of the underline (= caption + legend = 2.09 \caption) may
      depend on the width of the ("wood or metal") block or EPS
      bounding box (e.g. artwork) [or occasionally vice versa].
The underline (= caption + legend = 2.09 \caption) may need to
      move (e.g. to the side of the artwork) if the artwork is narrow.
      Alternatively (Williamson), a caption might move to be aligned
      with the bottom of the last line of text on a full page.
The underline may actually contain: a caption; a legend; details of source.
      They may need to be distinguished typographically.

LaTeX may need "to know" the height and width of the artwork (i.e.,
height/width of wood/metal block, or EPS bounding box), so that it
can align "the edges of the block" with other elements of the page.
In particular, the width of the artwork may determine the width of
the caption.  LaTeX may also need to manipulate the underline (i.e., 2.09
\caption) to side of page (Hart) or bottom of page (Williamson).
LaTeX may need to align the {artwork + underline} by using the edges
of the artwork or by using the top/bottom lines of the underline;
hence LaTeX needs explicit access to these positions.  I have the
impression that LaTeX needs to be working in terms of: "the bounding
box for the artwork"; the width of the {caption+legend+source}, the
baselines of the top/bottom lines of the {caption+legend+source}. I have
the impresssion that the height of the \begin{figure} ... \end{figure}
and the width of an enclosed minipage are unlikely to be good enough.

Therefore, it looks to me as though it would be better for the user (guided
by the designer's preferences) to declare the height/width of the artwork
(rather than the height/width of the artwork+caption) and let LaTeX work out
the height/width of the "artwork + caption" (which could conceivably involve
trying having the caption at the side of narrow artwork).  Then LaTeX
will "know" the width of the artwork and can, if appropriate, typeset
the caption to the same width (whereas if width was specified by
a minipage containing the whole lot, it might be wider than the
actual artwork, and the caption might end up too wide).
So I wonder whether some user interface such as the following might
be appropriate:
\begin{floatfig}     %  A golden opportunity to phase "figure" out.
                     %  My users often don't understand that it "floats"
                     %  until they see it happen, then say they don't like
                     %  it!  A more meaningful name would help understanding.
\artwork{144pt}{216pt}        %  Here I assume that the dvi... command
\special{dvi... 144 ... 216 } %  can scale, and that we want to
                              %  take advantage of this feature in this
                              %  case to scale the artwork to fit within
                              %  a 2in x 3in bounding box, perhaps because
                              %  the designer has expressed a preference
                              %  for artwork that is 2in wide.  (If not,
                              %  the user would simply specify
                              %  Xpt and Ypt in the \artwork command
                              %  where X and Y are taken from the
                              %  BoundingBox comment in the EPS file.)
                              %  A \begin{picture}(X,Y) could be used
                              %  instead of \artwork ... \special ...
                              %  if the picture environment is being used
                              %  for a drawing.
\figcaption{...}     %  LaTeX now knows the width of the artwork,
                     %  so can, in principle, try moving the caption
                     %  to the side of narrow artwork or typeset the
                     %  caption to the same width as the artwork.
\end{floatfig}

INCREASING THE PROBABILITY OF SUCCESS

The discussion on the 14th postulated a situation in which it might
be necessary to place arbitrary collections of figures of arbitrary
size.

Obviously "it would be nice" from an algorithmic point-of-view
to have an algorithm than could handle such a situation.  But:
*  In practice, a lot of placement problems may be easier than the
   general problem.  Artwork may actually be a graph off a graph-plotter
   (produced using the plotting package's default plot-size and scaled
   using a constant factor):  all plots will tend to be the same size.
   Photographs will tend to be supplied in standard sizes.
   [On the other hand, chemical artwork may tend to produce
   diagrams of differing sizes, because chemists may want the
   bond-length constant throughout the document, rather than
   the "structure-diagram size" constant.]
*  The designer may express a preference for particular sizes (or at
   least particular widths) for line-art, half-tones, etc.
   A designer might even say that "arbitrary collections of figures
   of arbitrary size" threaten the unity of the book (McLean).
*  dvi-printing commands often allow for the scaling of a \special-ed
   piece of artwork to a particular size.
So a lesser objective than "arbitrary collections of arbitrary sizes"
might deal with the most common cases (and might conceivably lead to
better design).

There would have to be a convention whereby the designer could
pass on his/her preferences about the sizes in which artwork should
be supplied.  I suppose that comments in the style-file would do.
For example, for Miles's A3 design, a comment in a style-file might say
      In this design, LaTeX's algorithm for figure-placement works best
      with figures that have the following widths: 12pc, 25pc, 38pc,
      51pc, 64pc.
In a design for a single-column book, the comment in the style-file
might recommend "magic numbers" chosen as "full-width", "a bit less than
half full-width" etc.  Generally, the user could be told
      If you have a choice, we advise you to use one of the following
      widths for best results with this design ...
Then:
*  users will know how to use dvi-printing commands' abilities to
   re-scale artwork.  (Otherwise, they'd probably just use whatever
   size picture happens to come off their graph-plotter, out of their
   camera, etc.)
*  LaTeX is likely to get given artwork of "a recommended width" that
   it can make a good job of placing, since much of the testing of
   the placement algorithm and style-files would be with artwork of
   "recommended widths".
\end{verbatim}\end{footnotesize}

\chapter{Tables}

\section{Decimals}

The recommendations that I've seen for table layout (\cite[p.\
332]{chicago-82}, \cite[p.\ 164]{butcher-81}, \cite[p.\ 158]{hart-83},
\cite[p.\ 147]{white-88}, \cite[sec.\ 7.2]{bsi-dd52}) mention (or imply)
``making sure that, in a column of numbers, the decimal points line up''.
Thus ``alignment of decimal points'' seems a ``fundamental requirement'',
at least as important as {\tt tabular}'s current {\tt l}, {\tt c} and {\tt
r}, not an ``optional extra''.

I realise that the \LaTeX\ 2.09 manual \cite{lamport-86} shows a couple of
tricks that can be used (zero-width boxes, page 98; high--low, page 182),
and that Frank Mittlebach has the \verb+>{\centerdots}c<{\endcenterdots}+
idea \cite[p.\ 299]{mittelbach-88}.  But these techniques seem
unnecessarily subtle for such a fundamental requirement.

Couldn't there be something as easy as {\tt l}, {\tt c} and {\tt r} for
``alignment on decimal points''?   Bell Labs.\ managed to make
``lining numbers up'' easy in {\tt tbl} \cite[p.\ 147]{christian-87} years ago!


\section{Rules, i.e.\ lines}

I've tried to use \LaTeX\ 2.09 to typeset some of the tables shown as
examples by gurus of table layout (\cite[p.\ 157]{hart-83}, \cite[p.\
6]{bsi-dd52}), but have  had only partial success.

It looks as though, for success in laying tables out as the
gurus recommend, one needs:
\begin{itemize}
\item a choice of thickness for \verb+\hline+s (\cite[p\. 156]{hart-83},
      \cite[p.\ 4]{bsi-dd52}).  If one follows
      \cite{bsi-dd52}, the choice would be between 0.5pt, 1pt, 2pt and 4pt.
\item an option of specifying that adjacent \verb+\cline+s
      should not join up.
\end{itemize}


\section{Notes}

The facilities provided by \LaTeX\ 2.09
(``put a {\tt tabular} inside a {\tt minipage} and use \verb+\footnote+'')
do not seem particularly
suitable for providing notes about tables in the way advocated by the
gurus.
\begin{itemize}
\item The gurus seem to typeset notes no wider than the table
      \cite[ch.\ 12]{chicago-82}, \cite[p.\ 147]{white-88}.
      However, if one has to declare the {\tt minipage}
      before typesetting the {\tt tabular}, the {\tt minipage} must
      be wider than the expected width of the {\tt tabular}, so the
      footnotes will generally be wider than the table.
\item The gurus advocate putting ``general notes'' before ``specific
      notes'' (\cite[p.\ 333]{chicago-82}, \cite[p.\ 164]{butcher-81}).  There
      does not seem to be an easy way of getting
      ``general notes'' out in the style that \verb+\footnote+
      will use for ``specific notes''.
\item Having to redefine \verb+\footnoterule+ (to give a null rule)
      is an added irritation.
\end{itemize}

It might be better if:
\begin{itemize}
\item the manual for \LaTeX\ 3.0 refrained from suggesting
      ``put a {\tt tabular} inside a {\tt minipage}, use \verb+\footnote+
      and re-define \verb+\footnoterule+''
\item \LaTeX\ 3.0 made the width of the most recently typeset {\tt tabular}
      available in a variable, so that the user could declare a {\tt minipage}
      or a {\tt tabular} of the same width (or a related width)
      immediately below, to hold the notes.
\item there was some means whereby the user could tell \LaTeX\ to base
      it's decision about {\tt tabular}-width on the rows that hold
      the table-proper but could let the {\tt tabular} continue below the
      table-proper. Notes could then be provided in ``extra rows'' that
      had the same width as the table-proper.
\end{itemize}

It would be even better if
the user specified the table and its surroundings in terms
of the logical elements ``title'', ``subtitle'', ``table proper'',
``source notes'', ``general notes'', ``specific notes'', ``probabilities''
(as suggested in section \ref{float3}), and \LaTeX\ 3.0 and the {\tt sty}
file took care of the detailed  layout.

\section{An e-mail addition}

\begin{footnotesize}\begin{verbatim}
From:     David Rhead ...
Subject:  Multi-line cells in tables
Date:     17 Aug 90 12:01:50

I've been browsing through some books that describe, among other things,
how one should typeset tables.  The gurus seem to regard a table entry
that consists of a "hanging paragraph" as fairly standard, either because
they explicitly advocate it, or because they simply do it.  See:
Jan V. White "Graphic Design for the Electronic Age",
      Watson Guptill, 1988, page 147 (the bit about "first line hanging
      indent").
"Chicago Manual of Style", Chicago University Press, 1982,
      pages 338 and 393.
Judith Butcher "Copy-editing", Cambridge University Press, 1981,
      page 136.
"Hart's Rules", Oxford University Press, 1983, pages 34-35 and 158.
(I think that it is desirable that the LaTeX 3.0 defaults should generally
correspond to standard publishing practice.)

Unfortunately, it does not seem to be simply a matter of "In this
\documentstyle, tabular's p{...} has to give hanging paragraphs".
Some respectable books seem to have left-justified paragraphs
in some tables and hanging paragraphs in others.  (E.g. in spite of the
hanging paragraphs mentioned above, Chicago has left-justification on pages
176-177 and Butcher has left-justification on pages 68-69.)  I can't detect
any underlying "logical structure" that corresponds to the difference between
hanging and left-justified within the same book.

In LaTeX 3.0, might it be worth doing one of the following?
Either provide something like p{...} [perhaps h{...} for "hanging"]
      that gives a hanging paragraph rather than a left-justified paragraph
or, if one takes the point-of-view that books that use more than one
      visual representation for the logical element "paragraph in cell"
      are wrong (now matter how respectable and esteemed they are),
      at least put a comment near the code for "paragraph in cell" in
      the standard style files (or wherever) saying how one can change
      things so that all "paragraphs within cells" are hanging.
Perhaps one might be able to achieve the same effect by using
Frank Mittelbach's >{\parindent=...}p (if \parindent=-1em works),
as described in TUGboat, vol. 9, page 299, but it looks as if "hanging
paragraph within table cell" is sufficiently standard among gurus that it
would be worth providing explicit support in some way.

Incidentally, most gurus mentioned above advocate/do "paragraph within cell"
ragged right but hyphenated.  (The exception is Butcher who has ragged right
most of the time but flush right on page 289, possibly because the column on
page 289 is wider than columns elsewhere.)  Therefore, it would seem wise
to make ragged right the LaTeX 3.0 default for "paragraph within cell".

If a cell contains figures which are described by a multi-line table-stub,
how would one get the figures aligned vertically with the bottom line of the
stub?  I have in mind things like
      Infected trees, %   1.63     0.9   20.3
      Chi-square for
        observed values   7.83   11.09   4.98
(on page 158 of Hart's Rules) and
      Interest and discount on other
      lending in sterling              53   38   54   98   141   168   211
(on page 65 of John Miles's "Design for desktop publishing").  Would
one use [a hanging variation] of {b{...}r} or {b{...}t{...}} (where b{...}
and t{...} are as described in Frank Mittelbach's article)?  Again, this
convention for alignment seems sufficiently common that I think it should
be available via a simple syntax if it isn't already covered by existing
proposals.
\end{verbatim}\end{footnotesize}

\chapter{Lists of references; bibliographies}

\section{Title}
\label{refslist-title}

The \LaTeX\ 2.09 ``standard styles'' seem to assume that a ``bibliography''
is merely a long ``list of references''.  However, many people use
``bibliography'' to mean something different from ``list of references''.
There may also be situations where:
\begin{itemize}
\item an author wishes to use something like {\tt thebibliography} for
      ``Select Bibliography'' or ``Further Reading'' (\cite[p.\
      420]{chicago-82}, \cite[p.\ 182]{butcher-81}).
\item a document might have more than one {\tt thebibliography}-like list: for
      example (a) ``References'' then ``Further reading'' \cite[p.\
      192]{butcher-81} (b)
      ``List of references'' then ``Bibliography'' \cite[p.\ 22]{bs-4821}.
\end{itemize}
It seems to me that it is important to enable the author
to give {\tt thebibliography} a title that accurately describes
its contents.

Consequently, I think that the approach take in {\tt german.sty} (in the
Aston archive) is mistaken.  For example, having
\verb+\def\refname{References}+ and \verb+\def\bibname{Bibliography}+
for English will tend to perpetuate the mistaken assumption that
``an article has a list-of-references while a report or book has
a bibliography'', and hence to perpetuate inaccurate titles.

I think that:
\begin{itemize}
\item it would be better to have just one default title per language,
      irrespective of \verb+\documentstyle+
\item the default title should be the usual description of a list
      from which one \verb+\cite+s.
      For English, we might have \verb+\def\refname{References}+
      as the default.
\item there should be an easy mechanism (such as that shown in Figure
      \ref{thebib-plus}) to allow the author to replace the default title.
\end{itemize}

\begin{figure}
\begin{footnotesize}\begin{verbatim}
%  This style-option file, thebib-plus.sty, is based on code taken from
%  article.doc and report.doc/book.doc.
%
%  It differs from the standard code in that:
%  - a command \bibtitle is defined, to generate the bibliography title
%  - a command \bibheadtitle is defined, to generate the text to be used
%    by \pagestyle{headings}
%  - \bibtitle and \bibheadtitle are set to generate "References" and
%    "REFERENCES" respectively.
%  - an \addcontentsline{toc}{...}{\bibtitle} command is issued.
%  Thus:
%  - the default bibliography title is "References", but can be changed by
%    having \renewcommand{\bibtitle}{...} before \begin{thebibliography}
%    or \bibliography
%  - the default page header text is "REFERENCES", but can be changed by
%    \renewcommand{\bibheadtitle}{...}
%  - \tableofcontents will give a table of contents that mentions the
%    bibliography.
%

%  Define default title and page-head text.
%
\def\bibtitle{References}
\def\bibheadtitle{REFERENCES}

\@ifundefined{chapter}{\def\thebibliography#1{\section*{\bibtitle\@mkboth
  {\bibheadtitle}{\bibheadtitle}}
  \addcontentsline{toc}{section}{\bibtitle}\list
  {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
    \advance\leftmargin\labelsep
    \usecounter{enumi}}
    \def\newblock{\hskip .11em plus .33em minus .07em}
    \sloppy\clubpenalty4000\widowpenalty4000
    \sfcode`\.=1000\relax}}%
{\def\thebibliography#1{\chapter*{\bibtitle\@mkboth
  {\bibheadtitle}{\bibheadtitle}}
  \addcontentsline{toc}{chapter}{\bibtitle}\list
  {[\arabic{enumi}]}{\settowidth\labelwidth{[#1]}\leftmargin\labelwidth
    \advance\leftmargin\labelsep
    \usecounter{enumi}}
    \def\newblock{\hskip .11em plus .33em minus .07em}
    \sloppy\clubpenalty4000\widowpenalty4000
    \sfcode`\.=1000\relax}}
\end{verbatim}\end{footnotesize}
\caption{A way to allow easy changes to the \lq\lq list of references'' title%
\label{thebib-plus}}
\end{figure}

\section{Schemes supported}

In scientific, technical and medical work, the two most important citation
schemes are ``reference by number'' and author-date.  In the humanities,
references may be given using the \lq\lq short form'' scheme (often in
footnotes).  All three schemes are supported by the ISO standard.  See
\cite[p.\ 25]{page} and \cite{iso-690}.

The definition of \verb+\cite+ and \verb+\bibitem+ in \LaTeX\ 2.09 supports
``reference by number'', but anyone wanting to use a standard author-date
scheme:
\begin{itemize}
\item has to re-define \verb+\cite+,  to get ``('' and ``)''
\item has to re-define \verb+\bibitem+, to suppress the
      \verb+[+{\it key\/}\verb+]+ printed by default
\item will probably want a command that
      delivers just the ``date'' part when the author's name
      occurs naturally in a sentence.
      See \cite[sec.\ 9.4]{iso-690}.
\end{itemize}
This generally means that people wanting to use author-date:
\begin{itemize}
\item are unable to use standard programs such as {\tt lablst}
      which assume the original \LaTeX\ 2.09 definitions
\item have to specify ``I'm using author-date'' in two places:
      as a style-option in their \verb+\documentstyle+ command, and in their
      \verb+\bibliographystyle+ command.
      This seems unreasonable.
\end{itemize}

Similarly, the \lq\lq short form'' scheme is unsupported.

Can anything be done in \LaTeX\ 3.0 to give author-date and \lq\lq short form''
the same status as ``reference by number''?  Some ideas will be found in
Appendix \ref{citing}.


\section{Consequences for \protect\BibTeX}

The situation mentioned in section \ref{refslist-title}, where a document
may have more than one {\tt thebibliography} may have particular
implications for \BibTeX.  A document might have ``References'' to list all
the works cited, and ``Further reading'' to gives further details of some
of them.

In \LaTeX\ 2.09 terms, one might need 2 \verb+\bibliography+s with 2
different \verb+\bibliographystyle+s.  Does one need the ``bibliography
style'' to be an argument of the \verb+\bibliography+ command, so as to
allow for this possibility?


\section{Subdivisions}

Except when using an author-date scheme, an author might reasonably wish to
subdivide a reference list (\cite[p.\ 425]{chicago-82}, \cite[p.\
183]{butcher-81}). Can some mechanism (\verb+\subbibliography{...}+?) be
provided so that the author can place a subheading in a reference list to
indicate the start of a new category?  (It would be nice if the mechanism
allowed a {\tt bst} file programmer to sort by ``category field'', and then
write an appropriate category heading to a {\tt bbl} file, so that \BibTeX\
users could potentially have subdivided reference lists too.)

\section{Note}

See also Appendix \ref{citing}.


\chapter{``Over-long'' headings}

Although the \LaTeX\ 2.09 manual \cite[p.\ 126]{lamport-86} explains that
giving an over-long {\it heading} argument in sectioning commands,
\verb+\caption+, etc.\ can cause a ``{\tt buffer size}'' error, it seems
perverse that an error can occur (for example) because of the size of a
``list of tables'' string {\em when the user hasn't actually given a
\verb+\listoftables+ command}.

Could \LaTeX\ 3.0 deal with over-long arguments in sectioning, \verb+\caption+,
etc., commands as follows?
\begin{itemize}
\item Instead of regarding {\it heading} as the default {\it toc-entry},
      text to go in page-header,
      {\it lot-entry}, {\it lof-entry}, etc.\ \cite[p.\ 158]{lamport-86},
       regard just the first
      50-or-so characters of {\it heading} as the  default
      {\it toc-entry}, etc.
\item If the user supplies a {\it heading} that is more than 50-or-so
      characters:
      \begin{itemize}
      \item If there is no \verb+[+{\it lst-entry}\verb+]+ argument, put the
            first 50-or-so characters of {\it heading} to the {\tt aux} file,
            followed (if truncation was necessary) by \verb+\dots+ or ``etc.''
            or some other truncation indicator.

            The chances are that the user
            doesn't want an entry in the table-of-contents, list-of-tables,
            list-of-figures, or hasn't thought about the implications of the
            length of {\it heading} for the table-of-contents, etc.
            The user may well be
            mis-using \verb+\caption+ for (in a table) the title {\em and notes}
            or (in a figure) the caption {\em and legend}.
            The \LaTeX\ 2.09 manual ids right when it says \cite[p.\
            126]{lamport-86} that ``such a long entry won't help the reader''.
            The first 50-or-so characters will give the user something that
            ``will do'' until they've thought about what they really want.

      \item If truncation was necessary, send a message to the user's terminal
            and {\tt log} file saying, for example, ``{\tt Warning: Your caption
            is more than 50 characters long.  Use \verb+\caption+'s
            optional lot-entry
            argument if you intend to use \verb+\listoftables+}''.
      \item Allow the user to supply a {\it lst-entry} of up to the 2.09
            limits if they do it explicitly through the optional
            \verb+[+{\it lst-entry\/}\verb+]+ argument.  (They're explicitly
            using {\it lst-entry}, so they probably know what they're doing and
            really want these characters in the table-of-contents or whatever.)
      \end{itemize}
\end{itemize}

This approach should:
\begin{itemize}
\item eliminate the situations where \LaTeX\ gives an error message
      because of an over-long {\it heading} even when
      {\it heading} isn't actually going to be printed anywhere
      where its length will be a problem
\item give the user an authoring problem ``How can I improve this
      stopgap list-of-tables entry that \LaTeX\ has kindly supplied?''
      rather than a de-bugging problem ``Why is user-hostile
      \LaTeX\ giving me this obscure error message?''.
\end{itemize}

\chapter{Page headers}

Suppose that, in a book:
\begin{itemize}
\item the design requires chapters to start on a right-hand page
\item chapter $i$ ends on a right-hand page, so \LaTeX\
      must produce an empty left-hand page before starting
      chapter $i+1$.
\end{itemize}

In this situation,  publishers seem to assume that the
empty left-hand page is neither in chapter $i$ nor
in chapter $i+1$ (see, for example, \cite{chicago-82,lamport-86})
and hence that the empty page should have no
``Chapter \dots'' page-heading.
\LaTeX\ 2.09, on the other hand, gives it a page-heading
to say that it it is part of chapter $i$ (which looks silly).

Could the \LaTeX\ 3.0 version of {\tt book} (and similar styles) use
\verb+\thispagestyle{plain}+ or \verb+\thispagestyle{empty}+ for a
left-hand blank page that separates 2 chapters?

\chapter{Sections}

The definition of \verb+\@startsection+ in {\tt latex.tex}
allows for ``run-in headings''.

However, a design often involves some punctuation between
a run-in heading and the following text, e.g. ``a full stop unless
the heading naturally ends in a question mark or exclamation mark''.
(See, for example, \cite[p.\ 222--223]{chicago-82} and \cite[p.\
240]{butcher-81}.)
Would it be possible, at \LaTeX\ 3.0, to define the successor to
\verb+\@startsection+ in such a way that, if there is to be a  run-in
heading, the {\tt sty} file can specify default punctuation between the
heading and the following text?

\section*{E-mail comments}

\begin{footnotesize}\begin{verbatim}
From:     Michael Downes <MJD@COM.AMS.MATH>
Date:     Mon, 8 Apr 91 16:50:30 CET

A punctuation question:

If a documentstyle design calls for punctuation such as period or colon
after a run-in section heading or theorem-environment heading, the
punctuation can be provided fairly easily [although maybe not without
changing \@sect]. But what do you do in particular cases where something
else (like a ?) needs to be substituted for the default punctuation?
Has anyone else faced this question and found a way to do it that
doesn't require maintaining an array of macros \sectionpunct,
\subsectionpunct, \subsectionpunct, ... to be called in \@sect
using \csname?  (And then you might need conceivably also need
\theorempunct, \corollarypunct, \lemmapunct, \examplepunct, for each
environment created with \newtheorem, or at least for each
theoremstyle---AMS journals typically have four or five different
`theorem'styles.)

My first attempt at a solution has involved adding a macro \endpunct at
the appropriate place in \@sect and \@begintheorem. Then \endpunct can
be redefined in a document when necessary. But there are complications
in scoping and ease of use; for example, this fouls up the nobreak and
afterindent mechanisms:

  {\renewcommand{\endpunct}{?}
   \section{Why abandon the old technology}
   \label{s:who}
   \showthe\everypar
  }
   \showthe\everypar % lost the \@afterheading stuff
   Text begins here.

and if we move the closing brace further to avoid losing \everypar, what
rationale do we give the user?

  ...
  T}ext begins here. % try explaining this!

Then there is the potential for situations like this:

  {\renewcommand{\endpunct}{?}
   \section{Why abandon the old technology}
   \label{s:who}

  \begin{itemize}
  \item Text begins here.
  ...

where an environment occurs at the beginning of a section. The closing
brace can't be put inside the environment without causing an error.

In LaTeX a * option would be the natural way of taking off the ending
punctuation but for sectioning commands the * option is already being
used for something else.

Any suggestions?

Here's another idea:

   \section{Why abandon the old technology\substitutepunct{?}}

with

  \def\substitutepunct#1{\def\protect\endpunct{#1}}

I haven't tested this yet so I don't know whether there would be table
of contents complications in this case.

P.S. In the AMSART documentstyle distributed in the AMS-LaTeX package,
where \subsection and lower level headings are run-in with ending
punctuation, I ignored this issue, thinking that the need to substitute
would be so rare that by the time we needed to face it, a good solution
might have turned up.  Naturally the first or second paper submitted to
the AMS using the AMSART documentstyle had a couple of section headings
ending in question marks!
\end{verbatim}\end{footnotesize}
\begin{center} --- \end{center}
\begin{footnotesize}\begin{verbatim}
From:     Don Hosek <DHOSEK@EDU.CLAREMONT.HMCVAX>
Date:     Tue, 9 Apr 91, 03:53:00 PDT

Michael brought up the issue of section headings where a period
should be added to the end only if there is not already a
punctuation mark at the end of the given section head. To which I
offer a couple thoughts in order of increasing attractiveness:

 (1) pull items off the horizontal list and decompose them to see
 if there's a punctuation mark at the end

 (2) just before reading the argument containing the section
 title, make !, ? and . active and have them set a flag in
 addition to printing the appropriate mark. If that flag is true,
 don't add a period onto the end yourself.

 (3) take a look at the spacefactor. If it is 3000, we've just
 had end-of-sentence punctuation. It's not too difficult to
 justify the occasional \@ which would be necessary under these
 circumstances.
\end{verbatim}\end{footnotesize}
\begin{center} --- \end{center}
\begin{footnotesize}\begin{verbatim}
From:     MITTELBACH FRANK <PZF5HZ@EARN.RUIPC1E>
Date:     Tue, 9 Apr 91 18:28:28 CET

Don send some interesting suggestions how to handle
punctuation characters in `certain' situations (not only
headings). But I think only the last might work and even
this one will work only if we define things carefully.

>
>  (1) pull items off the horizontal list and decompose them to see
>  if there's a punctuation mark at the end

Splitting something up at the right end of a token list is
difficult and will not work if the list contains braces and the
like. But if anybody has a good algorithm for this general problem
I'm interested to see it.

>
>  (2) just before reading the argument containing the section
>  title, make !, ? and . active and have them set a flag in
>  addition to printing the appropriate mark. If that flag is true,
>  don't add a period onto the end yourself.

Active characters won't do due to the problems that TeX fixes
catcode whenever it reads arguments. The only possibiltiy I see
when such a strategy is used is to have all these chars *always*
active with a default definition that produces the non active
equiv. But this will slow down processing very much.
Anyway, something like this will be implmented to provide short
references but I think it isn't justified to use this for
punctuation in general.

>
>  (3) take a look at the spacefactor. If it is 3000, we've just
>  had end-of-sentence punctuation. It's not too difficult to
>  justify the occasional \@ which would be necessary under these
>  circumstances.

That's an interesting idea but assumes that punctuation chars
always have a \spacefactor that distinguishs them from other
characters. This means that we need to change \frenchspacing and
I'm not sure what happens then, how many applications depend
on things like this. But it looks certainly promising.
\end{verbatim}\end{footnotesize}
\begin{center} --- \end{center}
\begin{footnotesize}\begin{verbatim}
From:     Don Hosek <DHOSEK@EDU.CLAREMONT.HMCVAX>
Date:     Wed, 10 Apr 91 00:01:00 PDT

->  (2) just before reading the argument containing the section
->  title, make !, ? and . active and have them set a flag in
->  addition to printing the appropriate mark. If that flag is true,
->  don't add a period onto the end yourself.

-Active characters won't do due to the problems that TeX fixes
-catcode whenever it reads arguments. The only possibiltiy I see
-when such a strategy is used is to have all these chars *always*
-active with a default definition that produces the non active
-equiv. But this will slow down processing very much.
-Anyway, something like this will be implmented to provide short
-references but I think it isn't justified to use this for
-punctuation in general.

... Consider the following simple version of the above algorithim:

\def\section{\catcode`\.=\active\xsection}
\def\xsection#1{\centerline{#1\ifperiod.\fi}\periodtrue\catcode`\.=11\relax}
{\catcode`\.=\active
 \gdef.{\periodfalse}}
\newif\ifperiod
\periodtrue

(I originally wrote this sort of code to handle the dropped E
problem of tex.web). Incidentally, the above code won't quite
work since a period in the middle of the title will gleefully
supress the final period. Perhaps an \ifnextchar sort of setting
would work better.

->  (3) take a look at the spacefactor. If it is 3000, we've just
->  had end-of-sentence punctuation. It's not too difficult to
->  justify the occasional \@ which would be necessary under these
->  circumstances.

-That's an interesting idea but assumes that punctuation chars
-always have a \spacefactor that distinguishs them from other
-characters. This means that we need to change \frenchspacing and
-I'm not sure what happens then, how many applications depend
-on things like this. But it looks certainly promising.

All we need to do is make sure that the chapter titles are set
with \nonfrenchspacing. Simple enough. In any event,
\frenchspacing is really not a command that should appear in a
TeX document anyway (if they need frenchspacing, chances are
they'll be using a special document style anyway).
\end{verbatim}\end{footnotesize}
\begin{center} --- \end{center}
\begin{footnotesize}\begin{verbatim}
From:     MITTELBACH FRANK <PZF5HZ@EARN.RUIPC1E>
Date:     Thu, 11 Apr 91 15:37:32 CET
>
> ... Consider the following simple version of the above algorithim:
>
> \def\section{\catcode`\.=\active\xsection}
> \def\xsection#1{\centerline{#1\ifperiod.\fi}\periodtrue\catcode`\.=11\relax}
> {\catcode`\.=\active
>  \gdef.{\periodfalse}}
> \newif\ifperiod
> \periodtrue

... all these kinds of
solutions are for the user that understands TeX fine but won't
work in all situations. Consider

  \newcommand{\mysection} 1 {\section{#1} \prefacetext}

and you've lost already. Not that is a good example but you will
find them if you look for them.

> All we need to do is make sure that the chapter titles are set
> with \nonfrenchspacing. Simple enough. In any event,
> \frenchspacing is really not a command that should appear in a
> TeX document anyway (if they need frenchspacing, chances are
> they'll be using a special document style anyway).

Yes, this would work I think it it seems necessary to set the
spacefactor explicitly. What I'm after are general solutions not
these kind of special hacks that solve this problem but create
twenty new ones if other conventions to be implemented.
\end{verbatim}\end{footnotesize}
\chapter{Lists}

\section{Within paragraphs}

In my opinion, someone reading a document stands a better chance of
absorbing the contents if they can follow the author's thought-groupings.
As part of this, they need to be able to be clear about where one
paragraph ends and the next begins.  Hence, I think they need to be able to
distinguish between:
\begin{enumerate}
\item ``list at end of paragraph''
\item ``list within paragraph''.
\end{enumerate}
Otherwise, they won't be certain about whether there is, or isn't, a
paragraph-division.

With \LaTeX\ 2.09, this is difficult in designs that have un-indented
paragraphs, because ``the vertical space following the environment is the
same as the one preceding it'' \cite[p.\ 114]{lamport-86}.  Case 1 looks
identical to case 2.

Could \LaTeX\ 3.0 implement ``the text following a displayed paragraph
environment begins a new paragraph if there is a blank line after the
\verb+\end+ command'' \cite[p.\ 165]{lamport-86} for both \verb+\parindent+
and \verb+\parskip+, so that case 1 looks different from case 2 even
when \verb+\parindent+ is zero?\footnote{%
I'm probably just agreeing here that \LaTeX\
2.09 has ``an actual conceptual bug'' \cite[p.\ 684]{m+s-89}.}

\section{An interrupted {\tt enumerate}?}

Would commands such as \verb+\suspend{enumerate}+ and
\verb+\resume{enumerate}+ be possible,
so that the author can introduce some items in
a list with one sentence and then introduce further items in the same list with
another sentence?  It would be easier than getting
involved with \verb+\setcounter{enumi}+.


\chapter{{\tt verbatim}}

\section{Vertical space}

For lists in designs that have un-indented paragraphs, I generally set
\verb+\parsep+ and \verb+\itemsep+ to zero and \verb+\topsep+ to
\verb+-\parskip+, to eliminate all vertical spacing.

The objective is to make it clear where paragraphs begin and end.
I think that:
\begin{itemize}
\item extra ``blank lines'' in lists, and around {\tt verbatim},
      will make paragraph-divisions less clear
\item the bullet or ``label'' is a clear enough indicator of where a
      list-item starts, and the font-change is a clear enough indication
      of where verbatim starts.
\end{itemize}

So far, with \LaTeX\ 2.09, I've been unable to produce style files that
close lists up satisfactorily when a list contains some \verb+verbatim+.  I
guessed that, since \verb+verbatim+ uses \verb+\trivlist+, changing the
list spacing should eliminate the vertical space around \verb+verbatim+
too.  Unfortunately, I end up with the wrong spacing around \verb+verbatim+.

I would appreciate anything that could be done in \LaTeX\ 3.0 to make it
easier to eliminate the vertical spacing around {\tt verbatim}, as can be
done for lists.

\section{Horizontal space}

It is usual to show computer input/output in {\tt verbatim}.  One might
reasonably say that ``computer input/output is a type of quote'', and so
want to put a particular horizontal space onto each line before {\tt
verbatim} material is printed.  In \LaTeX\ 2.09, this does not seem easy
(and, because {\tt verbatim} can't be used in the definitions of other
environments, one can't define another environment that does it either).

Could something be provided in \LaTeX\ 3.0 that does for {\tt verbatim}
what \verb+\leftmargin+ does for lists?


\chapter{Borrowing some margin}

Problems often arise in publishing practice because certain features (such
as tables, figures and equations) are a little too wide for the normal
portrait text-width (see \cite[p.\ 343]{chicago-82} and \cite[p.\
161]{butcher-81}).  A recognised solution seems to be to temporarily
increase the text-width \cite[p.\ 343]{chicago-82}.

Might it be worth defining a standard environment ({\tt borrowmargin} ?) in
\LaTeX\ 3.0 that does this?  Figure \ref{fig-borrow} shows a prototype
definition.  (It would be better to avoid the {\tt minipage} in this
prototype, since it changes footnote numbering and affects the vertical
spacing around the enclosed feature.)

\begin{figure}
\begin{footnotesize}\begin{verbatim}
%  Declare a storage bin for use by environments that deal with wide things.
\newsavebox{\widethingstore}

%  The borrowmargin environment is intended for dealing with wide objects.
%  It makes an extra 15mm available on either side of the normal text-area.
%  Marginpars are not allowed.
\newdimen\fullwidth
\fullwidth=\textwidth
\advance\fullwidth by 30mm
\newenvironment{borrowmargin}{%
      \def\marginpar{\typeout{Marginpar is not allowed within borrowmargin.}}
      \savebox{\widethingstore}\bgroup\begin{minipage}{\fullwidth}}{%
%
      \end{minipage}\egroup
      \begin{flushleft}
      \hsize=\fullwidth
      \mbox{}\kern-15mm\usebox{\widethingstore}
      \vspace{1mm}
      \end{flushleft}
}
\end{verbatim}\end{footnotesize}

\caption{A prototype {\tt borrowmargin} environment\label{fig-borrow}}
\end{figure}