-
Notifications
You must be signed in to change notification settings - Fork 8
/
xmptext.tex
703 lines (665 loc) · 33.5 KB
/
xmptext.tex
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
~% -*- coding: utf-8 -*-
~% This is part of the book TeX for the Impatient.
~% Copyright (C) 2003 Paul W. Abrahams, Kathryn A. Hargreaves, Karl Berry.
~% See file fdl.tex for copying conditions.
~% TeX ignores anything on a line after a %
~% The next two lines define fonts for the title
% TeX 忽略一行中 % 之后的任何内容
% 下面两行定义标题所用的字体
\font\xmplbx = cmbx10 scaled \magstephalf
\font\xmplbxti = cmbxti10 scaled \magstephalf
~% Now here's the title.
% 现在是标题行
~%\leftline{\xmplbx Example !xmpnum:\quad\xmplbxti Entering simple text}
~\bookmark{2}{例!xmpnum:输入简单文本}%
\leftline{\xmplbx 例!xmpnum:\quad\xmplbxti 输入简单文本}
\vglue .5\baselineskip % skip an extra half line
~\count255 = \pageno
~\xdef\examplepage{\number\count255}
~\markinfo{Example 1: Entering simple text}
~\ifrewritetocfile
~\write\tocfile{\string\tocsectionentry{输入简单文本}{\examplepage}}%
~\fi
~^^{脚注} ^^{注释} ^^{标点} ^^{引号}
~^^{空格符} ^^{横线号} ^^{段落//结束段落}
~\edef\examplepageno{\number\count255}%
~%It's easy to prepare ordinary text for \TeX\ since
~%\TeX\ usually doesn't care about how you break up your input into
~%lines. It treats the end of a line of text like a space.%
~%\footnote \dag{\TeX\ treats a tab like a space too, as we point
~%out in this {\it footnote}.} If you don't want a space there,
~%put a per%
~%cent sign (the comment character) at the end of the line.
~% \TeX\ ignores spaces at the start of a line, and treats more
~%than one space as equivalent to a single space,
~%even after a period. You indicate a new paragraph by
~%skipping a line (or more than one line).
由于 \TeX\ 并不关心原始的输入文本中的换行,因此,我们无须关心
应该给其提供何种格式化的文本。在 \TeX\ 看来,输入文本中的换行符
和空格等价。%
\footnote \dag{\TeX\ 将 Tab 也当作空格处理,就如你在这个
{\it 脚注}所见到的一样。} 如果你不想在行尾处看到空格,
可以在行尾处写一个百分号(注释符号)。\TeX\ 忽略行首的空格,
对多于一个的空格当做一个单独的空格看待 --- 哪怕这些空格位于
句号后面。你可以用一个或者多个空白行表示一个新的段落的开始。
~%When \TeX\ sees a period followed by a space (or the end of the
~%line, which is equivalent), it ordinarily assumes you've ended a
~%sentence and inserts a little extra space after the period. It
~%treats question marks and exclamation points the same way.
当 \TeX\ 看见一个句号后面紧接着一个空格(或者是一个行结束符,这
两者等价)时,它通常会认为此句号代表一句话的结束,并在句号的后面
加上一点小小的空格。同样的处理还适用于问号和惊叹号。
~% But \TeX's rules for handling periods sometimes need fine
~%tuning. \TeX\ assumes that a capital letter before a period
~%doesn't end the sentence, so you have to do something a little
~%different if, say, you're writing about DNA\null.
有时需要微调 \TeX\ 处理句号的方式。当句号前面紧跟着标题字
母(大写字母)时,\TeX\ 会认为这个句号并不做为句子的结束符,
因此在这种情况下,你需要作一些小改动。例如:我们这样写 DNA\null.
~% The \null prevents TeX from perceiving the capital `A'
~% as being next to the period.
% \null 可以阻止 \TeX\ 感知句号前面的标题字母 `A'。
~%It's a good idea to tie words together in references such as
~%``see Fig.~8'' and in names such as V.~I\null. Lenin and in
~%$\ldots$ so that \TeX\ will never split them in an awkward place
~%between two lines. (The three dots indicate an ellipsis.)
在引用(如``Fig.~8'')、姓名(如``V.~I\null. Lenin'')
以及三个点$\ldots$中,最好把单词绑定在一起,
这样 \TeX\ 不会在它们的内部断行(三个点表示省略号)。
~%You should put quotations in pairs of left and right
~%single ``quotes'' so that you get the correct left and right
~%double quotation marks. ``For adjacent single and double
~%quotation marks, insert a `thinspace'\thinspace''. You can
~%get en-dashes--like so, and em-dashes---like so.
为得到正确的左右双引号,你需要用两个左右单``引号''。
``在相邻的单引号和双引号之间,要插入一个`小间隔'\thinspace''。
连接号--可以这样写,而破折号---可以这样写。
~%\bye % end the document
\bye % 结束此文档
:::
~%\xmpheader !xmpnum/{Indentation}% !xmpheaddef
\xmpheader !xmpnum/{缩进}% !xmpheaddef
~^^{缩进} ^^{边距} ^^{段落//窄段落}
~%\noindent Now let's see how to control indentation. If an
~%ordinary word processor can do it, so surely can \TeX. Note
~%that this paragraph isn't indented.
\noindent 现在让我们来看看如何控制缩进。如果一个普通的文字处理
程序都能处理缩进的话,那 \TeX\ 一定也能。请注意,本段并未缩进。
~%Usually you'll either want to indent paragraphs or to leave
~%extra space between them. Since we haven't changed anything
~%yet, this paragraph is indented.
通常来说,你会想在段落的起始处安排缩进,在段落之间安排一些额外
的空白。由于我们在此尚未做任何特殊处理,因此本段是缩进的。
{\parindent = 0pt \parskip = 6pt
~% The left brace starts a group containing the unindented text.
% 这里的左括弧包裹了一组不缩进的文本
~%Let's do these two paragraphs a different way,
~%with no indentation and six printer's points of extra space
~%between paragraphs.
让我们对这两个段落作一些特殊处理,这两段将不缩进,并且两段
之间有 6pt 宽的空白。
~%So here's another paragraph that we're typesetting without
~%indentation. If we didn't put space between these paragraphs,
~%you would have a hard time knowing where one ends
~%and the next begins.
这是第二段不缩进的文字。如果不在这两段之间插入空白的话,将很难
分辨段与段之间的结束和起始。
\par % The paragraph *must* be ended within the group.
}% The right brace ends the group containing unindented text.
~%It's also possible to indent both sides of entire paragraphs.
~%The next three paragraphs illustrate this:
你也能在段落的两边同时缩进,下面的 3 段文字演示了双边缩进的效果:
\smallskip % Provide a little extra space here.
% Skips like this and \vskip below end a paragraph.
{\narrower
~% ``We've indented this paragraph on both sides by the paragraph
~% indentation. This is often a good way to set long quotations.''
``我们对这一段作了双边缩进的处理。在长段引用时,通常都会这么做。''
~%``You can do multiple paragraphs this way if you choose. This
~%is the second paragraph that's singly indented.''\par}
``如果你愿意的话,可以同时对多个段落作如此处理。
这是第二个轻微缩进的段落。''\par}
~%{\narrower \narrower You can even make paragraphs doubly narrow
~%if that's what you need. This is an example of a doubly
~%narrowed paragraph.\par}
{\narrower \narrower 如果需要,你也可以让段落缩进双倍长度。
这就是一个双倍缩进段落的例子。\par}
\vskip 1pc % Skip down one pica for visual separation.
~%In this paragraph we're back to the normal margins, as you can
~%see for yourself. We'll let it run on a little longer so that
~%the margins are clearly visible.
在这一段,如你所见,我们返回到正常的边距状态。我们尽量让这一段
稍微长一点,这样你可以更清楚地看到边距的效果。
~%{\leftskip .5in Now we'll indent the left margin by half
~%an inch and leave the right margin at its usual position.\par}
{\leftskip .5in 现在这一段,我们将其调整为左边距为半英尺,而
右边距保持原样。\par}
~%{\rightskip .5in Finally, we'll indent the right margin by half
~%an inch and leave the left margin at its usual position.\par}
{\rightskip .5in 最后,我们将本段调整为右边距半英尺,而左边距保持
原样。\par}
~%\bye % end the document
\bye % 结束此文档
:::
~%\xmpheader !xmpnum/{Fonts and special characters}% !xmpheaddef
\xmpheader !xmpnum/{字体和特殊字符}% !xmpheaddef
\chardef \\ = `\\ % Let \\ denote a backslash.
~^^{字体} ^^{字符//特殊字符} ^^{重音}
~^^{音符} ^^{花色}
~\chidxref{\$} \chidxref{\&} \chidxref{\#} \chidxref{\_} \chidxref{\%}
~\chidxref{\^} \chidxref{\~} \chidxref{\{} \chidxref{\}}
~%{\it Here are a few words in an italic font}, {\bf a
~%few words in a boldface font}, {\it and a\/ {\bf mixture}
~%of the two, with two\/ {\rm roman words} inserted}.
~%Where an italic font is followed by a nonitalic font, we've
~%inserted an ``italic correction'' ({\tt \\/}) to make the
~%spacing look right.
这是意大利体单词{\it italic words},粗体单词{\bf bold words},
而这里是意大利体、粗体和罗马体这几种字体混用的效果:
{\it put {\bf bold} and {\rm roman} inside italic}。
当倾斜字体后面紧跟非倾斜字体时,我们在其间插入一个``倾斜校正''
({\tt \\/}),使得中间的空白看起来较舒适。
~%Here's a {\sevenrm smaller} word---but the standard \TeX\
~%fonts won't give you anything smaller than {\fiverm this}.
这是一些{\sevenrm 更小的}字词---可是标准的 \TeX\
字体并不会给出小于 {\fiverm 如此大小}的字体。
~%If you need any of the ten characters:
如果你需要以下十个字符任意之一:
\medskip
\centerline{\$ \quad \& \quad \# \quad \_ \quad \% \quad
\char `\^ \quad \char `\~ \quad $\{$ \quad
$\}$ \quad $\backslash$}
% The \quad inserts an em space between characters.
\medskip
~%\noindent you'll need to write them a special way. Look at
~%the facing page to see how to do it.
\noindent 你需要通过特殊的方式来写他们。参照对开页,
学习正确的记录这些特殊字符的方法。
~%\TeX\ has the accents and letters that you'll need
~%for French words such as {\it r\^ ole\/} and {\it \'
~%el\` eve\/}, for German words such as {\it Schu\ss\/},
~%and for words in several other languages as well.
~%You'll find a complete list of \TeX's accents and letters
~%of European languages on !xrefdelim[accents] and !xrefdelim[fornlets].
\TeX\ 拥有一些语音和字母,可以用于某些法语词,
例如:{\it r\^ ole\/} 以及\ {\it \'el\` eve\/},
或者德语词,例如 {\it Schu\ss\/},或者某些别的什么语言。
你可以在 !xrefdelim[accents] 和 !xrefdelim[fornlets]
找到 \TeX\ 的 欧洲语音和字母表。
~%You can also get Greek letters such as ``$\alpha$'' and
~%``$\Omega$'' for use in math, card suits such as
~%``$\spadesuit$'' and ``$\diamondsuit$'', music symbols
~%such as ``$\sharp$'' and ``$\flat$'', and many other special
~%symbols that you'll find listed on !xrefdelim[specsyms].
~%\TeX\ will only accept these sorts of special symbols in its
~%``math mode'', so you'll need to enclose them
~%within `{\tt \$}' characters.
你也可以写一些希腊字母,例如数学中的 ``$\alpha$'' 以及
``$\Omega$'' , 扑克牌中的
``$\spadesuit$'' 以及 ``$\diamondsuit$'', 一些音乐符号,例如:
``$\sharp$'' 和 ``$\flat$'', 以及一些你可以在 !xrefdelim[specsyms]
找到的各种符号。\TeX\ 仅在 ``数学模式'' 下接受这些符号,因此,
你需要将它们放在两个 `{\tt \$}' 字符中间。
~%\bye % end the document
\bye % 结束此文档
:::
~%\xmpheader !xmpnum/{Interline spacing}% !xmpheaddef
\xmpheader !xmpnum/{行间距}% !xmpheaddef
~^^{间隔//行间距} ^^{基线}
\baselineskip = 2\baselineskip % double spacing
\parskip = \baselineskip % Skip a line between paragraphs.
\parindent = 3em % Increase indentation of paragraphs.
% The following macro definition gives us nice inline
% fractions. You'll find it in our eplain macros.
\def\frac#1/#2{\leavevmode
\kern.1em \raise .5ex \hbox{\the\scriptfont0 #1}%
\kern-.1em $/$%
\kern-.15em \lower .25ex \hbox{\the\scriptfont0 #2}%
}%
~%Once in a while you may want to print a document with extra
~%space between the lines. For instance, bills before Congress
~%are printed this way so that the legislators can mark them up.
~%For the same reason, book publishers usually insist that
~%manuscripts be double-spaced. Double spacing is rarely
~%appropriate for finished documents, however.
有的时候,你会想在文档的文字行之间增加一些空白。例如:议会的
某些讨论稿需要这样做,使得议员们能够在其上作一些标记。书商们
也基于同样的理由,要求作者提交的手稿具有双倍的行间距。当然,
对最终的出版物来说,双倍行间距的情形极其少见。
~%A baseline is an imaginary line that acts like the lines
~%on a pad of ruled paper. You can control the interline
~%spacing---what printers call ``leading''---%
~%by setting the amount of space between baselines. Take a
~%look at the input to see how to do it. You could use
~%the same method for $1\;1/2$ spacing as well, using {\tt 1.5}
~%instead of {\tt 2}. (You can also write $1\frac 1/2$
~%a nicer way.)
基线是一条想象出来的线,其作用类似于带横格标记的纸张上
横格线的作用。你可以通过控制基线间的距离来控制两行文字
之间的距离 --- 打印机管这个距离叫做 ``起始空白''。具体
的做法可以参看这段的源文件。你可以用{\tt 1.5}取代{\tt 2}
获得 $1\;1/2$空白的效果。(或者可以写成更好看的 $1\frac 1/2$
形式。)
% Here we've used the macro definition given above.
~%For this example we've also increased the paragraph indentation
~%and skipped an extra line between paragraphs.
做为举例,我们这里增加了段落的缩进,并且在两段之间增加了一个空行。
~%\bye % end the document
\bye % 结束此文档
:::
~%\xmpheader !xmpnum/{Spacing, rules, and boxes}% !xmpheaddef
\xmpheader !xmpnum/{间隔、标线和盒子}% !xmpheaddef
~^^{描述列表} ^^{盒子//绘制盒子} ^^{修订线}
~%Here's an example of a ``description list''. In practice you'd
~%be better off using a macro to avoid the repetitive constructs
~%and to make sure that the subhead widths are wide enough:
这里展示的是 ``描述列表''的实例。实际使用时,最好将这些重复结构
定义成宏,并且保证子标题的宽度足够宽。
\bigskip
~% Call the indentation for descriptions \descindent
~% and set it to 8 picas.
% 用 \descindent 表示描述列表的缩进量,并设定它的值为 8 派卡。
\newdimen\descindent \descindent = 8pc
~% Indent paragraphs by \descindent.
~% Skip an additional half line between paragraphs.
% 整个段落缩进 \descindent。段落间增加半个行距的间距。
{\noindent \leftskip = \descindent \parskip = .5\baselineskip
~% Move the description to the left of the paragraph.
% 将描述放在段落的左边。
\llap{\hbox to \descindent{\bf Queen of Hearts\hfil}}%
An ill-tempered woman, prone to saying ``Off with his
head!!''\ at the slightest provocation.\par
\noindent\llap{\hbox to \descindent{\bf Cheshire Cat\hfil}}%
A cat with an enormous smile that Alice found
in a tree.\par
\noindent\llap{\hbox to \descindent{\bf Mock Turtle\hfil}}%
A lachrymose creature, quite a storyteller, who was a
companion to the Gryphon. Reputedly the prin\-cipal ingredient
of Mock Turtle Soup.
\par}
\bigskip\hrule\bigskip % A line with vertical space around it.
~%Here's an example of some words in a ruled box, just as
~%Lewis Carroll wrote them:
这个例子在一个标线盒子中放入一些词句,它们是路易斯·卡罗所写的:
\bigskip
~% Put 8pt of space between the text and the surrounding rules.
% 在文本和四周标线之间留有 8pt 宽的间隔。
\hbox{\vrule\vbox{\hrule
\hbox spread 8pt{\hfil\vbox spread 8pt{\vfil
~% \hbox{Who would not give all else for twop}%
~% \hbox{ennyworth only of Beautiful Soup?}%
\hbox{谁不是最想尝一尝,}%
\hbox{两便士一碗的好汤?}%
\vfil}\hfil}
\hrule}\vrule}%
\bigskip\line{\hfil\hbox to 3in{\leaders\hbox{ * }\hfil}\hfil}
\bigskip
\line{\hskip -4pt\vrule\hfil\vbox{
~%Here we've gotten the effect of a revision bar on the material
~%in this paragraph. The revision bar might indicate a change.}}
我们给此段落内容添加了修订线效果。修订线用于表示内容改动。}}
~%\bye % end the document
\bye % 结束此文档
:::
~%\xmpheader !xmpnum/{Odds and ends}% !xmpheaddef
\xmpheader !xmpnum/{杂项}% !xmpheaddef
~^^{连字} ^^{定理} ^^{引理} ^^{有序列表}
~^^{居左对齐} ^^{居右对齐} ^^{居中对齐}
~%\chardef \\ = `\\ % Let \\ denote a backslash.
\chardef \\ = `\\ % 用 \\ 表示反斜杠。
\footline{\hfil{\tenit - \folio -}\hfil}
~\global\footline{\hfil{\tenit - \folio\ -}\hfil}
~% \footline provides a footer line.
~% Here it's a centered, italicized page number.
% \footline 给出页脚行;此处为居中的意大利体页码。
~%\TeX\ knows how to hyphenate words, but it isn't infallible.
~%If you are discussing the chemical
~%${\it 5}$-[p-(Flouro\-sul\-fonyl)ben\-zoyl]-l,%
~%$N^6$-ethe\-no\-adeno\-sine
~%and \TeX\ complains to you about an ``overfull hbox'', try
~%inserting some ``discretionary hyphens''. The notation
~%`{\tt \\-}' tells \TeX\ about a dis\-cre\-tion\-ary hyphen,
~%that is, one that it might not have inserted otherwise.
\TeX\ 懂得如何将单词连字化,但它并非绝对可靠的。若你在讨论化学
${\it 5}$-[p-(Flouro\-sul\-fonyl)ben\-zoyl]-l,%
$N^6$-ethe\-no\-adeno\-sine 时,
\TeX\ 给出关于``水平盒子溢出''的警告,
你可以尝试插入某些``自定连字符''。
`{\tt \\-}'记号告诉 \TeX\ 一个自定连字符位置;
在此位置 \TeX\ 本来是不会插入连字符的。
\medskip
~%{\raggedright You can typeset text unjustified, i.e., with
~%an uneven right margin. In the old days, before word
~%processors were common, typewritten documents were
~%unjustified because there was no convenient alternative.
~%Some people prefer text to be unjustified so that the
~%spacing between words can be uniform. Most books are set
~%with justified margins, but not all. \par}
{\raggedright 你可以不对齐地排版文字,即让右页边不对齐。
在过去,文字处理软件还未普及,
因为没有其他方便的选择,排版的文档都是不对齐的。
有些人更喜欢不对齐地排版文字,因为此时单词间距是一致的。
大部分书籍都设置为页边对齐,但并非都是。\par}
~%\proclaim Assertion 27. There is an easy way to typeset
~%the headings of assertions, lemmas, theorems, etc.
\proclaim 断言 27. 有很简单的方法排版断言、引理、定理等的标题。
~%Here's an example of how to typeset an itemized list two
~%levels deep. If you need more levels, you'll have to
~%program it yourself, alas.
~%\smallskip
~%\item {1.} This is the first item.
~%\item {2.} This is the second item. It consists of two
~%paragraphs. We've indented the second paragraph so that
~%you can easily see where it starts.
这个例子显示如何排版两层的有序列表。
如果需要更多层级,唉,你得自己编程。
\smallskip
\item {1.} 这是第一个列表项。
\item {2.} 这是第二个列表项。它由两个段落组成。
为让你看清楚第二个段落从哪里开始,我们缩进了该段落。
~%\item{} \indent The second paragraph has three subitems
~%underneath it.
~%\itemitem {(a)} This is the first subitem.
~%\itemitem {(b)} This is the second subitem.
~%\itemitem {(c)} This is the third subitem.
~%\item {$\bullet$} This is a strange-looking item because it's
~%completely different from the others.
\item{} \indent 第二个段落下边有三个子列表项。
\itemitem {(a)} 这是第一个子列表项。
\itemitem {(b)} 这是第二个子列表项。
\itemitem {(c)} 这是第三个子列表项。
\item {$\bullet$} 这是一个看起来很奇怪的列表项,
因为它和其他列表项不同。
\smallskip
~%\leftline{Here's a left-justified line.$\Leftarrow$}
~%\rightline{$\Rightarrow$Here's a right-justified line.}
~%\centerline{$\Rightarrow$Here's a centered line.$\Leftarrow$}
\leftline{这是一个左对齐的行。$\Leftarrow$}
\rightline{$\Rightarrow$这是一个右对齐的行。}
\centerline{$\Rightarrow$这是一个居中的行。$\Leftarrow$}
~% Don't try to use these commands within a paragraph.
% 不要在段落内部使用这些命令。
~%\bye % end the document
\bye % 结束此文档
:::
~%\xmpheader !xmpnum/{Using fonts from other sources}% !xmpheaddef
\xmpheader !xmpnum/{使用其他来源的字体}% !xmpheaddef
~\xrdef{palatino}
~\idxref{Palatino 字体}
~\idxref{Zapf, Hermann}
~\idxref{计算机现代字体} \mcidxref{Metafont}
\font\tenrm = pplr % Palatino
% Define a macro for invoking Palatino.
\def\pal{\let\rm = \tenrm \baselineskip=12.5pt \rm}
\pal % Use Palatino from now on.
~%You aren't restricted to using the Computer Modern fonts that
~%come with \TeX. Other fonts are available from many sources,
~%and you may prefer them. For instance, we've set this page
~%in 10-point Palatino Roman. Palatino was designed by
~%Hermann Zapf, considered to be one of the greatest type
~%designers of the twentieth century. This page will
~%give you some idea of what it looks like.
你并不局限于只能使用随 \TeX 发行的 Computer Modern 系列字体。
从其他很多渠道你都可以得到一些你可能会更喜欢的字体。例如我们
当前页面就被设置为 10p 大小的 Palatino Roman 字体。Palatino
是一种由 Hermann Zapf 所设计的字体,它被认为是二十世纪最伟大的
字体设计之一。从本页的输出可以获得关于这个字体的一些直观印
象(由于译本的缘故,本页的字体并未被设为 Palatino 字体)。
~%Fonts can be provided either as outlines or as bitmaps. An
~%outline font describes the shapes of the characters, while a
~%bitmap font specifies each pixel (dot) that makes up each
~%character. A font outline can be used to generate many
~%different sizes of the same font. The Metafont program
~%that's associated with \TeX\ provides a particularly
~%powerful way of generating bitmap fonts, but it's not the
~%only way.
字体既可以是轮廓字体,也可以是位图字体。轮廓字体的意思是它
描述的是各个字符的形状,而位图字体则是标识了每个字符形状所
占据的像素点。轮廓字体可用来产生同一种字体的多种不同大小。
随 \TeX\ 而发行的 metafont 程序是一个产生位图字体的强大工具,
而且它并不是唯一的工具。
~%The fact that a single outline can generate a great range of
~%point sizes for a font tempts many vendors of digital
~%typefaces to provide just one set of outlines for a typeface
~%such as Palatino Roman. This may be a sensible economic
~%decision, but it is an aesthetic sacrifice. Fonts cannot be
~%scaled up and down linearly without loss of quality.
~%Larger sizes of letters should not, in general, have the
~%same proportions as smaller sizes; they just don't look
~%right. For example, a font that's linearly scaled down will
~%tend to have too little space between strokes, and its
~%x-height will be too~small. % tie added to avoid widow word
由于单一的轮廓字体文件既可生成多种不同大小的字体,因此很多
数字字体提供商倾向于仅提供字体的单一文件 ——例如 Palatino
Roman 即是如此。这也许是个经济的决定,可它却同时是个美学上
的重大牺牲。字体无法做到在不损害其显示质量的前提下,线性地
放大或者缩小。一个字符的大字体版本,通常来说,与小字体的版
本应该有不同的比例 —— 而如果我们坚持这么做的话,其结果看
起来将不会那么好看。例如:如果将一个字体线性缩小的话,其各
笔画间的间距将会显得过窄,而它的 x-height 值也会显得过小。
~%A type designer can compensate for these changes by
~%providing different outlines for different point sizes, but
~%it's necessary to go to the expense of designing these
~%different outlines. One of the great advantages of Metafont
~%is that it's possible to parameterize the descriptions of
~%characters in a font. Metafont can then maintain the
~%typographical quality of characters over a range of point
~%sizes by adjusting the character shapes accordingly.
字体的设计者可以为不同大小的字体设计不同的轮廓形状,从而
对这个问题进行弥补,可这同时需要付出额外的代价。使用 Metafont
程序的一个巨大的好处就是可以将字符符号形状的描述参数化。
这样在改变字体大小的时候,Metafont 可以视情况做一些自动处理,
从而得到较好的效果。
~%\bye % end the document
\bye % 结束此文档
:::
~\idxref{蘑菇}
~%\xmpheader !xmpnum/{A ruled table}% !xmpheaddef
\xmpheader !xmpnum/{标线表格}% !xmpheaddef
\bigskip
~%\offinterlineskip % So the vertical rules are connected.
\offinterlineskip % 让竖直标线连接起来
~% \tablerule constructs a thin rule across the table.
% \tablerule 构造横穿表格的细标线
\def\tablerule{\noalign{\hrule}}
~% \tableskip creates 9pt of space between entries.
% \tableskip 在单元格之间生成 9pt 的空隙
\def\tableskip{\omit&height 9pt&&&\omit\cr}
~% & separates templates for each column. TeX substitutes
~% the text of the entries for #. We must have a strut
~% present in every row of the table; otherwise, the boxes
~% won't butt together properly, and the rules won't join.
% 用 & 分开模版各列。TeX 将把 # 替换为单元格的文本。
% 在表格每行都要有一个支架(strut);
% 否则盒子将不能良好接合,标线也不能连接起来。
~%\halign{\tabskip = .7em plus 1em % glue between columns
~% Use \vtop for short multiline entries in the first column.
~% Typeset the lines ragged right, without hyphenation.
~% \vtop{\hsize=6pc\pretolerance = 10000\hbadness = 10000
~% \normalbaselines\noindent\it#\strut}%
~% &\vrule #&#\hfil &\vrule #% the rules and middle column
\halign{\tabskip = .7em plus 1em % 各列之间的粘连
% 用 \vtop 得到表格第一列中的多行单元格。
% 让多行文本右边不对齐,且不连字化。
\vtop{\hsize=6pc\pretolerance = 10000\hbadness = 10000
\normalbaselines\noindent\it#\strut}%
&\vrule #&#\hfil &\vrule #% 标线和中间各列
~%% Use \vtop to get whole paragraphs in the last column.
~% &\vtop{\hsize=11pc \parindent=0pt \normalbaselineskip=12pt
~% \normalbaselines \rightskip=3pt plus2em #}\cr
% 用 \vtop 得到表格最后一列中的段落。
&\vtop{\hsize=11pc \parindent=0pt \normalbaselineskip=12pt
\normalbaselines \rightskip=3pt plus2em #}\cr
~% The table rows begin here.
% 表格各行从这里开始。
~%\noalign{\hrule height2pt depth2pt \vskip3pt}
~% % The header row spans all the columns.
~% \multispan5\bf Some Choice Edible Mushrooms\hfil\strut\cr
\noalign{\hrule height2pt depth2pt \vskip3pt}
% 表头行横跨各列。
\multispan5\bf 一些上等的食用蘑菇\hfil\strut\cr
~%\noalign{\vskip3pt} \tablerule
~% \omit&height 3pt&\omit&&\omit\cr
~% \bf Botanical&&\bf Common&&\omit \bf Identifying \hfil\cr
~%\noalign{\vskip -2pt}% close up lines of heading
~% \bf Name&&\bf Name &&\omit \bf Characteristics \hfil\cr
\noalign{\vskip3pt} \tablerule
\omit&height 3pt&\omit&&\omit\cr
\bf 学名&&\bf 常用名&&\omit \bf 识别特征 \hfil\cr
~%\tableskip Pleurotus ostreatus&&Oyster mushroom&&
~% Grows in shelf\kern 1pt like clusters on stumps or logs,
~% % without the kern, the `f' and `l' would be too close
~% pink-gray oyster-shaped caps, stem short or absent.\cr
\tableskip Pleurotus ostreatus&&平菇&&
Grows in shelf\kern 1pt like clusters on stumps or logs,
% 若不加上 \kern ,`f' 和 `l' 将挨得太近
pink-gray oyster-shaped caps, stem short or absent.\cr
~%\tableskip Lactarius hygrophoroides&&Milky hygroph&&
~% Butterscotch-brown cap and stem, copious white latex,
~% often on ground in woods near streams.\cr
\tableskip Lactarius hygrophoroides&&稀褶乳菇&&
Butterscotch-brown cap and stem, copious white latex,
often on ground in woods near streams.\cr
~%\tableskip Morchella esculenta&&White morel&&Conical cap
~% with black pits and white ridges; no gills. Often found
~% near old apple trees and dying elms in the spring.\cr
\tableskip Morchella esculenta&&羊肚菌&&Conical cap
with black pits and white ridges; no gills. Often found
near old apple trees and dying elms in the spring.\cr
~%\tableskip Boletus edulus&&King bolete&&Reddish-brown to
~% tan cap with yellow pores (white when young),
~% bulbous stem, often near conifers, birch, or~aspen.\cr
\tableskip Boletus edulus&&美味牛肝菌&&Reddish-brown to
tan cap with yellow pores (white when young),
bulbous stem, often near conifers, birch, or~aspen.\cr
\tableskip \tablerule \noalign{\vskip 2pt} \tablerule
}\bye
:::
~%\xmpheader !xmpnum/{Typesetting mathematics}% !xmpheaddef
\xmpheader !xmpnum/{排版数学公式}% !xmpheaddef
~^^{数学}
~%For a spherical triangle with sides $a$, $b$, and $c$, and
~%opposite angles $\alpha$, $\beta$, and $\gamma$, we have:
设球面三角形的三条边长度分别为$a$,$b$ 和 $c$,
它们的对角分别为 $\alpha$,$\beta$ 和 $\gamma$,我们有:
~%$$\cos \alpha = -\cos \beta \cos \gamma +
~% \sin \beta \sin \gamma \cos \alpha \quad
~% \hbox{(Law of Cosines)}$$
$$\cos \alpha = -\cos \beta \cos \gamma +
\sin \beta \sin \gamma \cos \alpha \quad
\hbox{(余弦定理)}$$
~%and:
且有:
~%$$\tan {\alpha \over 2} = \sqrt{
~% {- \cos \sigma \cdot \cos(\sigma - \alpha)} \over
~% {\cos (\sigma - \beta) \cdot \cos (\sigma - \gamma)}},\quad
~% \hbox{where $\sigma = {1 \over 2}(a+b+c)$}$$
$$\tan {\alpha \over 2} = \sqrt{
{- \cos \sigma \cdot \cos(\sigma - \alpha)} \over
{\cos(\sigma - \beta) \cdot \cos(\sigma - \gamma)}},\quad
\hbox{其中 $\sigma = {1 \over 2}(a+b+c)$}$$
~%We also have:$$\sin x = {{e^{ix}-e^{-ix}}\over 2i}$$
~%and:
~%$$\int _0 ^\infty {{\sin ax \sin bx}\over{x^2}}\,dx
~%% The \, above produces a thin space
~% = {\pi a\over 2}, \quad \hbox{if $a < b$}$$
我们还有:$$\sin x = {{e^{ix}-e^{-ix}}\over 2i}$$
且有:
$$\int _0 ^\infty {{\sin ax \sin bx}\over{x^2}}\,dx
% 上面的 \, 生成一个小间隔
= {\pi a\over 2}, \quad \hbox{如果 $a < b$}$$
~%\noindent The number of combinations ${}_nC_r$ of $n$
~%things taken $r$ at a time is:
\noindent 从 $n$ 个物品中任取 $r$ 个的组合数 ${}_nC_r$ 为:
$$C(n,r) = {}_nC_r = {n \choose r} =
{{n(n-1) \cdots (n-r+1)} \over {r(r-1) \cdots (1)}} =
{{n!!}\over {r!!(n-r)!!}}$$
\noindent
~%The value of the determinant $D$ of order $n$:
$n$ 阶行列式 $D$ 的值:
$$D = \left|\matrix{a_{11}&a_{12}&\ldots&a_{1n}\cr
a_{21}&a_{22}&\ldots&a_{2n}\cr
\vdots&\vdots&\ddots&\vdots\cr
a_{n1}&a_{n2}&\ldots&a_{nn}\cr}\right| $$
~%is defined as the sum of $n!!$ terms:
定义为下面$n!!$项的和:
$$\sum\>(\pm)\>a_{1i}a_{2j} \ldots a_{nk}$$
~% The \> above produces a medium space.
~%where $i$, $j$, \dots,~$k$\/ take on all possible values
~%between $1$ and $n$, and the sign of the product is
~%$+$ if the sequence $i$, $j$, \dots,~$k$\/ is an
~%even permutation and $-$ otherwise. Moreover:
其中 $i$, $j$, \dots,~$k$\/ 取遍 $1$ 到 $n$ 的所有可能值,
且当排列 $i$, $j$, \dots,~$k$\/ 为偶置换时乘积取 $+$ 号,
否则取 $-$ 号。此外:
$$Q(\xi) = \lambda_1 y_1^2 \sum_{i=2}^n \sum_{j=2}^n y_i
b_{ij} y_j,\qquad B = \Vert b_{ij} \Vert = B'$$
\bye
:::
~%\xmpheader !xmpnum/{More mathematics}% !xmpheaddef
\xmpheader !xmpnum/{更多数学内容}% !xmpheaddef
%^^{math}
^^{数学}
~%The absolute value of $X$, $|x|$, is defined by:
~%$$|x| = \cases{x, &if $x\ge 0$;\cr
~%-x,&otherwise.\cr}$$
~%Now for some numbered equations.
~%It is the case that for $k \ge 0$:
~%$$x^{k^2}=\overbrace{x\>x\>\cdots\> x}^{2k\ \rm times}
~%\eqno (1)$$
$X$ 的绝对值 $|x|$ 定义为:
$$|x| = \cases{x, &if $x\ge 0$;\cr
-x,&otherwise.\cr}$$
现在写一些标号了的公式。
在 $k \ge 0$ 时,我们有:
$$x^{k^2}=\overbrace{x\>x\>\cdots\> x}^{2k\ \rm times}
\eqno (1)$$
~%Here's an example that shows some spacing controls, with
~%a number on the left:
这是一个展示空格间距调整和公式左编号的例子:
~%$$[u]!negthin[v][w]\,[x]\>[y]\;[z]\leqno(2a)$$
$$[u]!negthin[v][w]\,[x]\>[y]\;[z]\leqno(2a)$$
~%The amount of space between the items in brackets
~%gradually increases from left to right. (We've made
~%the space between the first two items be {\it less\/}
~%than the natural space.)
从做到右公式中的项和括号的距离逐步增大。
(我们把前两项的距离设定得比正常距离 {\it 少\/}。
~%It is sometimes the case that $$\leqalignno{
~%u'_1 + tu''_2 &= u'_2 + tu''_1&(2b)\cr
~%\hat\imath &\ne \hat \jmath&(2c)\cr
~%\vec {\vphantom{b}a}&\approx \vec b\cr}$$
~%% The \vphantom is an invisible rule as tall as a `b'.
有时候, $$\leqalignno{
u'_1 + tu''_2 &= u'_2 + tu''_1&(2b)\cr
\hat\imath &\ne \hat \jmath&(2c)\cr
\vec {\vphantom{b}a}&\approx \vec b\cr}$$
% \vphantom 是一个不可见的和“b”一样高的盒子。
~%The result is of order $O(n \log\log n)$. Thus
~%$$\sum_{i=1}^n x_i = x_1+x_2+\cdots+x_n
~%= {\rm Sum}(x_1,x_2,\ldots,x_n). \eqno(3)$$
结果为 $O(n \log\log n)$. 因此
$$\sum_{i=1}^n x_i = x_1+x_2+\cdots+x_n
= {\rm Sum}(x_1,x_2,\ldots,x_n). \eqno(3)$$
~%and
~%$$dx\,dy = r\,dr\,d\theta!negthin.\eqno(4)$$
~%The set of all $q$ such that $q\le0$ is written as:
~%$$\{\,q\mid q\le0\, \}$$
且
$$dx\,dy = r\,dr\,d\theta!negthin.\eqno(4)$$
满足 $q\le0$ 的所有的 $q$ 可以被写作:
$$\{\,q\mid q\le0\, \}$$
~%Thus
~%$$\forall x\exists y\;P(x,y)\Rightarrow
~%\exists x\exists y\;P(x,y)$$
~%where
~%$$P(x,y) \buildrel \rm def \over \equiv
~%\hbox{\rm any predicate in $x$ and $y$} . $$
因此
$$\forall x\exists y\;P(x,y)\Rightarrow
\exists x\exists y\;P(x,y)$$
其中
$$P(x,y) \buildrel \rm def \over \equiv
\hbox{\rm 任何一个能够得出 $x$ 和 $y$} . $$
\bye
:::