Penguin
Annotated edit history of refer(1) version 1, including all changes. View license author blame.
Rev Author # Line
1 perry 1 REFER
2 !!!REFER
3 NAME
4 SYNOPSIS
5 DESCRIPTION
6 OPTIONS
7 USAGE
8 FILES
9 SEE ALSO
10 BUGS
11 ----
12 !!NAME
13
14
15 refer - preprocess bibliographic references for groff
16 !!SYNOPSIS
17
18
19 __refer__ [[ __-benvCPRS__ ] [[ __-a__''n'' ] [[
20 __-c__''fields'' ] [[ __-f__''n'' ] [[
21 __-i__''fields'' ] [[ __-k__''field'' ] [[
22 __-l__''m,n'' ] [[ __-p__''filename'' ] [[
23 __-s__''fields'' ] [[ __-t__''n'' ] [[
24 __-B__''field.macro'' ] [[ ''filename''...
25 ]
26
27
28 It is possible to have whitespace between a command line
29 option and its parameter.
30 !!DESCRIPTION
31
32
33 This file documents the GNU version of __refer__, which
34 is part of the groff document formatting system.
35 __refer__ copies the contents of ''filename''... to
36 the standard output, except that lines between __.[[__ and
37 __.]__ are interpreted as citations, and lines between
38 __.R1__ and __.R2__ are interpreted as commands about
39 how citations are to be processed.
40
41
42 Each citation specifies a reference. The citation can
43 specify a reference that is contained in a bibliographic
44 database by giving a set of keywords that only that
45 reference contains. Alternatively it can specify a reference
46 by supplying a database record in the citation. A
47 combination of these alternatives is also
48 possible.
49
50
51 For each citation, __refer__ can produce a mark in the
52 text. This mark consists of some label which can be
53 separated from the text and from other labels in various
54 ways. For each reference it also outputs __groff__
55 commands that can be used by a macro package to produce a
56 formatted reference for each citation. The output of
57 __refer__ must therefore be processed using a suitable
58 macro package. The __-ms__ and __-me__ macros are both
59 suitable. The commands to format a citation's reference can
60 be output immediately after the citation, or the references
61 may be accumulated, and the commands output at some later
62 point. If the references are accumulated, then multiple
63 citations of the same reference will produce a single
64 formatted reference.
65
66
67 The interpretation of lines between __.R1__ and
68 __.R2__ as commands is a new feature of GNU refer.
69 Documents making use of this feature can still be processed
70 by Unix refer just by adding the lines
71
72
73 __.de R1
74 .ig R2
75 ..
76 __
77
78
79 to the beginning of the document. This will cause
80 __troff__ to ignore everything between __.R1__ and
81 __.R2__. The effect of some commands can also be achieved
82 by options. These options are supported mainly for
83 compatibility with Unix refer. It is usually more convenient
84 to use commands.
85
86
87 __refer__ generates __.lf__ lines so that filenames
88 and line numbers in messages produced by commands that read
89 __refer__ output will be correct; it also interprets
90 lines beginning with __.lf__ so that filenames and line
91 numbers in the messages and __.lf__ lines that it
92 produces will be accurate even if the input has been
93 preprocessed by a command such as
94 soelim(1).
95 !!OPTIONS
96
97
98 Most options are equivalent to commands (for a description
99 of these commands see the __Commands__
100 subsection):
101
102
103 __-b__
104
105
106 __no-label-in-text; no-label-in-reference__
107
108
109 __-e__
110
111
112 __accumulate__
113
114
115 __-n__
116
117
118 __no-default-database__
119
120
121 __-C__
122
123
124 __compatible__
125
126
127 __-P__
128
129
130 __move-punctuation__
131
132
133 __-S__
134
135
136 __label
137 __
138
139
140 __-a__''n''
141
142
143 __reverse A__''n''
144
145
146 __-c__''fields''
147
148
149 __capitalize__ ''fields''
150
151
152 __-f__''n''
153
154
155 __label %__''n''
156
157
158 __-i__''fields''
159
160
161 __search-ignore__ ''fields''
162
163
164 __-k__
165
166
167 __label L~%a__
168
169
170 __-k__''field''
171
172
173 __label__ ''field''__~%a__
174
175
176 __-l__
177
178
179 __label A.nD.y%a__
180
181
182 __-l__''m''
183
184
185 __label A.n+__''m''__D.y%a__
186
187
188 __-l,__''n''
189
190
191 __label A.nD.y-__''n''__%a__
192
193
194 __-l__''m''__,__''n''
195
196
197 __label
198 A.n+__''m''__D.y-__''n''__%a__
199
200
201 __-p__''filename''
202
203
204 __database__ ''filename''
205
206
207 __-s__''spec''
208
209
210 __sort__ ''spec''
211
212
213 __-t__''n''
214
215
216 __search-truncate__ ''n''
217
218
219 These options are equivalent to the following commands with
220 the addition that the filenames specified on the command
221 line are processed as if they were arguments to the
222 __bibliography__ command instead of in the normal
223 way:
224
225
226 __-B__
227
228
229 __annotate X AP; no-label-in-reference__
230
231
232 __-B__''field''__.__''macro''
233
234
235 __annotate__ ''field macro''__;
236 no-label-in-reference__
237
238
239 The following options have no equivalent
240 commands:
241
242
243 __-v__
244
245
246 Print the version number.
247
248
249 __-R__
250
251
252 Don't recognize lines beginning with
253 __.R1__/__.R2__.
254 !!USAGE
255
256
257 __Bibliographic databases__
258
259
260 The bibliographic database is a text file consisting of
261 records separated by one or more blank lines. Within each
262 record fields start with a __%__ at the beginning of a
263 line. Each field has a one character name that immediately
264 follows the __%__. It is best to use only upper and lower
265 case letters for the names of fields. The name of the field
266 should be followed by exactly one space, and then by the
267 contents of the field. Empty fields are ignored. The
268 conventional meaning of each field is as
269 follows:
270
271
272 __A__
273
274
275 The name of an author. If the name contains a title such as
276 __Jr.__ at the end, it should be separated from the last
277 name by a comma. There can be multiple occurrences of the
278 __A__ field. The order is significant. It is a good idea
279 always to supply an __A__ field or a __Q__
280 field.
281
282
283 __B__
284
285
286 For an article that is part of a book, the title of the
287 book
288
289
290 __C__
291
292
293 The place (city) of publication.
294
295
296 __D__
297
298
299 The date of publication. The year should be specified in
300 full. If the month is specified, the name rather than the
301 number of the month should be used, but only the first three
302 letters are required. It is a good idea always to supply a
303 __D__ field; if the date is unknown, a value such as
304 __in press__ or __unknown__ can be used.
305
306
307 __E__
308
309
310 For an article that is part of a book, the name of an editor
311 of the book. Where the work has editors and no authors, the
312 names of the editors should be given as __A__ fields and
313 __, (ed)__ or __, (eds)__ should be appended to the
314 last author.
315
316
317 __G__
318
319
320 US Government ordering number.
321
322
323 __I__
324
325
326 The publisher (issuer).
327
328
329 __J__
330
331
332 For an article in a journal, the name of the
333 journal.
334
335
336 __K__
337
338
339 Keywords to be used for searching.
340
341
342 __L__
343
344
345 Label.
346
347
348 __N__
349
350
351 Journal issue number.
352
353
354 __O__
355
356
357 Other information. This is usually printed at the end of the
358 reference.
359
360
361 __P__
362
363
364 Page number. A range of pages can be specified as
365 ''m''__-__''n''.
366
367
368 __Q__
369
370
371 The name of the author, if the author is not a person. This
372 will only be used if there are no __A__ fields. There can
373 only be one __Q__ field.
374
375
376 __R__
377
378
379 Technical report number.
380
381
382 __S__
383
384
385 Series name.
386
387
388 __T__
389
390
391 Title. For an article in a book or journal, this should be
392 the title of the article.
393
394
395 __V__
396
397
398 Volume number of the journal or book.
399
400
401 __X__
402
403
404 Annotation.
405
406
407 For all fields except __A__ and __E__, if there is
408 more than one occurrence of a particular field in a record,
409 only the last such field will be used.
410
411
412 If accent strings are used, they should follow the character
413 to be accented. This means that the __AM__ macro must be
414 used with the __-ms__ macros. Accent strings should not
415 be quoted: use one __\__ rather than two.
416
417
418 __Citations__
419
420
421 The format of a citation is
422
423
424 __.[[__''opening-text
425 flags keywords
426 fields''__
427 .]__''closing-text''
428
429
430 The ''opening-text'', ''closing-text'' and
431 ''flags'' components are optional. Only one of the
432 ''keywords'' and ''fields'' components need be
433 specified.
434
435
436 The ''keywords'' component says to search the
437 bibliographic databases for a reference that contains all
438 the words in ''keywords''. It is an error if more than
439 one reference if found.
440
441
442 The ''fields'' components specifies additional fields to
443 replace or supplement those specified in the reference. When
444 references are being accumulated and the ''keywords''
445 component is non-empty, then additional fields should be
446 specified only on the first occasion that a particular
447 reference is cited, and will apply to all citations of that
448 reference.
449
450
451 The ''opening-text'' and ''closing-text'' component
452 specifies strings to be used to bracket the label instead of
453 the strings specified in the __bracket-label__ command.
454 If either of these components is non-empty, the strings
455 specified in the __bracket-label__ command will not be
456 used; this behaviour can be altered using the __[[__ and
457 __]__ flags. Note that leading and trailing spaces are
458 significant for these components.
459
460
461 The ''flags'' component is a list of non-alphanumeric
462 characters each of which modifies the treatment of this
463 particular citation. Unix refer will treat these flags as
464 part of the keywords and so will ignore them since they are
465 non-alphanumeric. The following flags are currently
466 recognized:
467
468
469 __#__
470
471
472 This says to use the label specified by the
473 __short-label__ command, instead of that specified by the
474 __label__ command. If no short label has been specified,
475 the normal label will be used. Typically the short label is
476 used with author-date labels and consists of only the date
477 and possibly a disambiguating letter; the __#__ is
478 supposed to be suggestive of a numeric type of
479 label.
480
481
482 __[[__
483
484
485 Precede ''opening-text'' with the first string specified
486 in the __bracket-label__ command.
487
488
489 __]__
490
491
492 Follow ''closing-text'' with the second string specified
493 in the __bracket-label__ command.
494
495
496 One advantages of using the __[[__ and __]__ flags
497 rather than including the brackets in ''opening-text''
498 and ''closing-text'' is that you can change the style of
499 bracket used in the document just by changing the
500 __bracket-label__ command. Another advantage is that
501 sorting and merging of citations will not necessarily be
502 inhibited if the flags are used.
503
504
505 If a label is to be inserted into the text, it will be
506 attached to the line preceding the __.[[__ line. If there
507 is no such line, then an extra line will be inserted before
508 the __.[[__ line and a warning will be given.
509
510
511 There is no special notation for making a citation to
512 multiple references. Just use a sequence of citations, one
513 for each reference. Don't put anything between the
514 citations. The labels for all the citations will be attached
515 to the line preceding the first citation. The labels may
516 also be sorted or merged. See the description of the
517 ____ label expression, and of the
518 __sort-adjacent-labels__ and
519 __abbreviate-label-ranges__ command. A label will not be
520 merged if its citation has a non-empty ''opening-text''
521 or ''closing-text''. However, the labels for a citation
522 using the __]__ flag and without any ''closing-text''
523 immediately followed by a citation using the __[[__ flag
524 and without any ''opening-text'' may be sorted and merged
525 even though the first citation's ''opening-text'' or the
526 second citation's ''closing-text'' is non-empty. (If you
527 wish to prevent this just make the first citation's
528 ''closing-text'' ____.)
529
530
531 __Commands__
532
533
534 Commands are contained between lines starting with
535 __.R1__ and __.R2__. Recognition of these lines can be
536 prevented by the __-R__ option. When a __.R1__ line is
537 recognized any accumulated references are flushed out.
538 Neither __.R1__ nor __.R2__ lines, nor anything
539 between them is output.
540
541
542 Commands are separated by newlines or __;__s. __#__
543 introduces a comment that extends to the end of the line
544 (but does not conceal the newline). Each command is broken
545 up into words. Words are separated by spaces or tabs. A word
546 that begins with ____ extends to the next
547 ____ that is not followed by another ____.
548 If there is no such ____ the word extends to the
549 end of the line. Pairs of ____ in a word beginning
550 with ____ collapse to a single ____.
551 Neither __#__ nor __;__ are recognized inside
552 ____s. A line can be continued by ending it with
553 __\__; this works everywhere except after a
554 __#__.
555
556
557 Each command ''name'' that is marked with * has an
558 associated negative command __no-__''name'' that
559 undoes the effect of ''name''. For example, the
560 __no-sort__ command specifies that references should not
561 be sorted. The negative commands take no
562 arguments.
563
564
565 In the following description each argument must be a single
566 word; ''field'' is used for a single upper or lower case
567 letter naming a field; ''fields'' is used for a sequence
568 of such letters; ''m'' and ''n'' are used for a
569 non-negative numbers; ''string'' is used for an arbitrary
570 string; ''filename'' is used for the name of a
571 file.
572
573
574 __abbreviate__* ''fields string1 string2 string3
575 string4''
576
577
578 Abbreviate the first names of ''fields''. An initial
579 letter will be separated from another initial letter by
580 ''string1'', from the last name by ''string2'', and
581 from anything else (such as a __von__ or __de__) by
582 ''string3''. These default to a period followed by a
583 space. In a hyphenated first name, the initial of the first
584 part of the name will be separated from the hyphen by
585 ''string4''; this defaults to a period. No attempt is
586 made to handle any ambiguities that might result from
587 abbreviation. Names are abbreviated before sorting and
588 before label construction.
589
590
591 __abbreviate-label-ranges__* ''string''
592
593
594 Three or more adjacent labels that refer to consecutive
595 references will be abbreviated to a label consisting of the
596 first label, followed by ''string'' followed by the last
597 label. This is mainly useful with numeric labels. If
598 ''string'' is omitted it defaults to
599 __-__.
600
601
602 __accumulate__* Accumulate references instead of writing
603 out each reference as it is encountered. Accumulated
604 references will be written out whenever a reference of the
605 form
606
607
608 __.[[
609 $LIST$
610 .]__
611
612
613 is encountered, after all input files hve been processed,
614 and whenever __.R1__ line is recognized.
615
616
617 __annotate__* ''field string''
618
619
620 ''field'' is an annotation; print it at the end of the
621 reference as a paragraph preceded by the line
622
623
624 __.__''string''
625
626
627 If ''macro'' is omitted it will default to __AP__; if
628 ''field'' is also omitted it will default to __X__.
629 Only one field can be an annotation.
630
631
632 __articles__ ''string''...
633
634
635 ''string''... are definite or indefinite articles, and
636 should be ignored at the beginning of __T__ fields when
637 sorting. Initially, __the__, __a__ and __an__ are
638 recognized as articles.
639
640
641 __bibliography__ ''filename''...
642
643
644 Write out all the references contained in the bibliographic
645 databases ''filename''...
646
647
648 __bracket-label__ ''string1 string2
649 string3''
650
651
652 In the text, bracket each label with ''string1'' and
653 ''string2''. An occurrence of ''string2'' immediately
654 followed by ''string1'' will be turned into
655 ''string3''. The default behaviour is
656
657
658 __bracket-label *([[. *(.] __
659
660
661 __capitalize__ ''fields'' Convert ''fields'' to
662 caps and small caps.
663
664
665 __compatible__* Recognize __.R1__ and __.R2__ even
666 when followed by a character other than space or
667 newline.
668
669
670 __database__ ''filename''...
671
672
673 Search the bibliographic databases ''filename''... For
674 each ''filename'' if an index ''filename''__.i__
675 created by indxbib(1) exists, then it will be
676 searched instead; each index can cover multiple
677 databases.
678
679
680 __date-as-label__* ''string''
681
682
683 ''string'' is a label expression that specifies a string
684 with which to replace the __D__ field after constructing
685 the label. See the __Label expressions__ subsection for a
686 description of label expressions. This command is useful if
687 you do not want explicit labels in the reference list, but
688 instead want to handle any necessary disambiguation by
689 qualifying the date in some way. The label used in the text
690 would typically be some combination of the author and date.
691 In most cases you should also use the
692 __no-label-in-reference__ command. For
693 example,
694
695
696 __date-as-label D.+yD.y%a*D.-y__
697
698
699 would attach a disambiguating letter to the year part of the
700 __D__ field in the reference.
701
702
703 __default-database__* The default database should be
704 searched. This is the default behaviour, so the negative
705 version of this command is more useful. refer determines
706 whether the default database should be searched on the first
707 occasion that it needs to do a search. Thus a
708 __no-default-database__ command must be given before
709 then, in order to be effective.
710
711
712 __discard__* ''fields'' When the reference is read,
713 ''fields'' should be discarded; no string definitions for
714 ''fields'' will be output. Initially, ''fields'' are
715 __XYZ__.
716
717
718 __et-al__* ''string m n'' Control use of __et al__
719 in the evaluation of __@__ expressions in label
720 expressions. If the number of authors needed to make the
721 author sequence unambiguous is ''u'' and the total number
722 of authors is ''t'' then the last ''t''-''u''
723 authors will be replaced by ''string'' provided that
724 ''t''-''u'' is not less than ''m'' and ''t'' is
725 not less than ''n''. The default behaviour
726 is
727
728
729 __et-al __
730
731
732 __include__ ''filename'' Include ''filename'' and
733 interpret the contents as commands.
734
735
736 __join-authors__ ''string1 string2
737 string3''
738
739
740 This says how authors should be joined together. When there
741 are exactly two authors, they will be joined with
742 ''string1''. When there are more than two authors, all
743 but the last two will be joined with ''string2'', and the
744 last two authors will be joined with ''string3''. If
745 ''string3'' is omitted, it will default to
746 ''string1''; if ''string2'' is also omitted it will
747 also default to ''string1''. For example,
748
749
750 __join-authors
751 __
752
753
754 will restore the default method for joining
755 authors.
756
757
758 __label-in-reference__*
759
760
761 When outputting the reference, define the string __[[F__
762 to be the reference's label. This is the default behaviour;
763 so the negative version of this command is more
764 useful.
765
766
767 __label-in-text__* For each reference output a label in
768 the text. The label will be separated from the surrounding
769 text as described in the __bracket-label__ command. This
770 is the default behaviour; so the negative version of this
771 command is more useful.
772
773
774 __label__ ''string string'' is a label expression
775 describing how to label each reference.
776
777
778 __separate-label-second-parts__
779 ''string''
780
781
782 When merging two-part labels, separate the second part of
783 the second label from the first label with ''string''.
784 See the description of the ____ label
785 expression.
786
787
788 __move-punctuation__* In the text, move any punctuation
789 at the end of line past the label. It is usually a good idea
790 to give this command unless you are using superscripted
791 numbers as labels.
792
793
794 __reverse__* ''string'' Reverse the fields whose names
795 are in ''string''. Each field name can be followed by a
796 number which says how many such fields should be reversed.
797 If no number is given for a field, all such fields will be
798 reversed.
799
800
801 __search-ignore__* ''fields''
802
803
804 While searching for keys in databases for which no index
805 exists, ignore the contents of ''fields''. Initially,
806 fields __XYZ__ are ignored.
807
808
809 __search-truncate__* ''n''
810
811
812 Only require the first ''n'' characters of keys to be
813 given. In effect when searching for a given key words in the
814 database are truncated to the maximum of ''n'' and the
815 length of the key. Initially ''n'' is 6.
816
817
818 __short-label__* ''string''
819
820
821 ''string'' is a label expression that specifies an
822 alternative (usually shorter) style of label. This is used
823 when the __#__ flag is given in the citation. When using
824 author-date style labels, the identity of the author or
825 authors is sometimes clear from the context, and so it may
826 be desirable to omit the author or authors from the label.
827 The __short-label__ command will typically be used to
828 specify a label containing just a date and possibly a
829 disambiguating letter.
830
831
832 __sort__* ''string'' Sort references according to
833 __string__. References will automatically be accumulated.
834 ''string'' should be a list of field names, each followed
835 by a number, indicating how many fields with the name should
836 be used for sorting. __+__ can be used to indicate that
837 all the fields with the name should be used. Also __.__
838 can be used to indicate the references should be sorted
839 using the (tentative) label. (The __Label expressions__
840 subsection describes the concept of a tentative
841 label.)
842
843
844 __sort-adjacent-labels__*
845
846
847 Sort labels that are adjacent in the text according to their
848 position in the reference list. This command should usually
849 be given if the __abbreviate-label-ranges__ command has
850 been given, or if the label expression contains a
851 ____ expression. This will have no effect unless
852 references are being accumulated.
853
854
855 __Label expressions__
856
857
858 Label expressions can be evaluated both normally and
859 tentatively. The result of normal evaluation is used for
860 output. The result of tentative evaluation, called the
861 ''tentative label,'' is used to gather the information
862 that normal evaluation needs to disambiguate the label.
863 Label expressions specified by the __date-as-label__ and
864 __short-label__ commands are not evaluated tentatively.
865 Normal and tentative evaluation are the same for all types
866 of expression other than __@__, __*__, and __%__
867 expressions. The description below applies to normal
868 evaluation, except where otherwise specified.
869
870
871 ''field''
872
873
874 ''field n''
875
876
877 The ''n''-th part of ''field''. If ''n'' is
878 omitted, it defaults to 1.
879
880
881 __'__''string''__'__
882
883
884 The characters in ''string'' literally.
885
886
887 __@__
888
889
890 All the authors joined as specified by the
891 __join-authors__ command. The whole of each author's name
892 will be used. However, if the references are sorted by
893 author (that is the sort specification starts with
894 __A+__), then authors' last names will be used instead,
895 provided that this does not introduce ambiguity, and also an
896 initial subsequence of the authors may be used instead of
897 all the authors, again provided that this does not introduce
898 ambiguity. The use of only the last name for the ''i''-th
899 author of some reference is considered to be ambiguous if
900 there is some other reference, such that the first
901 ''i''-1 authors of the references are the same, the
902 ''i''-th authors are not the same, but the ''i''-th
903 authors' last names are the same. A proper initial
904 subsequence of the sequence of authors for some reference is
905 considered to be ambiguous if there is a reference with some
906 other sequence of authors which also has that subsequence as
907 a proper initial subsequence. When an initial subsequence of
908 authors is used, the remaining authors are replaced by the
909 string specified by the __et-al__ command; this command
910 may also specify additional requirements that must be met
911 before an initial subsequence can be used. __@__
912 tentatively evaluates to a canonical representation of the
913 authors, such that authors that compare equally for sorting
914 purpose will have the same representation.
915
916
917 __%__''n''
918
919
920 __%a__
921
922
923 __%A__
924
925
926 __%i__
927
928
929 __%I__
930
931
932 The serial number of the reference formatted according to
933 the character following the __%__. The serial number of a
934 reference is 1 plus the number of earlier references with
935 same tentative label as this reference. These expressions
936 tentatively evaluate to an empty string.
937
938
939 ''expr''__*__
940
941
942 If there is another reference with the same tentative label
943 as this reference, then ''expr'', otherwise an empty
944 string. It tentatively evaluates to an empty
945 string.
946
947
948 ''expr''__+__''n''
949
950
951 ''expr''__-__''n''
952
953
954 The first (__+__) or last (__-__) ''n'' upper or
955 lower case letters or digits of ''expr''. Troff special
956 characters (such as ____) count as a single
957 letter. Accent strings are retained but do not count towards
958 the total.
959
960
961 ''expr''__.l__
962
963
964 ''expr'' converted to lowercase.
965
966
967 ''expr''__.u__
968
969
970 ''expr'' converted to uppercase.
971
972
973 ''expr''__.c__
974
975
976 ''expr'' converted to caps and small caps.
977
978
979 ''expr''__.r__
980
981
982 ''expr'' reversed so that the last name is
983 first.
984
985
986 ''expr''__.a__
987
988
989 ''expr'' with first names abbreviated. Note that fields
990 specified in the __abbreviate__ command are abbreviated
991 before any labels are evaluated. Thus __.a__ is useful
992 only when you want a field to be abbreviated in a label but
993 not in a reference.
994
995
996 ''expr''__.y__
997
998
999 The year part of ''expr''.
1000
1001
1002 ''expr''__.+y__
1003
1004
1005 The part of ''expr'' before the year, or the whole of
1006 ''expr'' if it does not contain a year.
1007
1008
1009 ''expr''__.-y__
1010
1011
1012 The part of ''expr'' after the year, or an empty string
1013 if ''expr'' does not contain a year.
1014
1015
1016 ''expr''__.n__
1017
1018
1019 The last name part of ''expr''.
1020
1021
1022 ''expr1''__~__''expr2''
1023
1024
1025 ''expr1'' except that if the last character of
1026 ''expr1'' is __-__ then it will be replaced by
1027 ''expr2''.
1028
1029
1030 ''expr1 expr2''
1031
1032
1033 The concatenation of ''expr1'' and
1034 ''expr2''.
1035
1036
1037 ''expr1''__|__''expr2''
1038
1039
1040 If ''expr1'' is non-empty then ''expr1'' otherwise
1041 ''expr2''.
1042
1043
1044 ''expr1''____''expr2''
1045
1046
1047 If ''expr1'' is non-empty then ''expr2'' otherwise an
1048 empty string.
1049
1050
1051 ''expr1''__?__''expr2''__:__''expr3''
1052
1053
1054 If ''expr1'' is non-empty then ''expr2'' otherwise
1055 ''expr3''.
1056
1057
1058 ____''expr''____
1059
1060
1061 The label is in two parts, which are separated by
1062 ''expr''. Two adjacent two-part labels which have the
1063 same first part will be merged by appending the second part
1064 of the second label onto the first label separated by the
1065 string specified in the __separate-label-second-parts__
1066 command (initially, a comma followed by a space); the
1067 resulting label will also be a two-part label with the same
1068 first part as before merging, and so additional labels can
1069 be merged into it. Note that it is permissible for the first
1070 part to be empty; this maybe desirable for expressions used
1071 in the __short-label__ command.
1072
1073
1074 __(__''expr''__)__
1075
1076
1077 The same as ''expr''. Used for grouping.
1078
1079
1080 The above expressions are listed in order of precedence
1081 (highest first); ____ and __|__ have the same
1082 precedence.
1083
1084
1085 __Macro interface__
1086
1087
1088 Each reference starts with a call to the macro __]-__.
1089 The string __[[F__ will be defined to be the label for
1090 this reference, unless the __no-label-in-reference__
1091 command has been given. There then follows a series of
1092 string definitions, one for each field: string
1093 __[[__''X'' corresponds to field ''X''. The number
1094 register __[[P__ is set to 1 if the __P__ field
1095 contains a range of pages. The __[[T__, __[[A__ and
1096 __[[O__ number registers are set to 1 according as the
1097 __T__, __A__ and __O__ fields end with one of the
1098 characters __.?!__. The __[[E__ number register will be
1099 set to 1 if the __[[E__ string contains more than one
1100 name. The reference is followed by a call to the __][[__
1101 macro. The first argument to this macro gives a number
1102 representing the type of the reference. If a reference
1103 contains a __J__ field, it will be classified as type 1,
1104 otherwise if it contains a __B__ field, it will type 3,
1105 otherwise if it contains a __G__ or __R__ field it
1106 will be type 4, otherwise if contains a __I__ field it
1107 will be type 2, otherwise it will be type 0. The second
1108 argument is a symbolic name for the type: __other__,
1109 __journal-article__, __book__, __article-in-book__
1110 or __tech-report__. Groups of references that have been
1111 accumulated or are produced by the __bibliography__
1112 command are preceded by a call to the __]__ macro and
1113 followed by a call to the __]__ macro.
1114 !!FILES
1115
1116
1117 __/usr/dict/papers/Ind__
1118
1119
1120 Default database.
1121
1122
1123 ''file''__.i__ Index files.
1124 !!SEE ALSO
1125
1126
1127 indxbib(1), lookbib(1),
1128 lkbib(1)
1129 !!BUGS
1130
1131
1132 In label expressions, ____ expressions are
1133 ignored inside __.__''char'' expressions.
1134 ----
This page is a man page (or other imported legacy content). We are unable to automatically determine the license status of this page.