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
|
.\" refer-mm.tmac
.\"
.\" Refer support for mm macros.
.\"
.\" Copyright (C) 2011-2020 Free Software Foundation, Inc.
.\" Written by Werner Lemberg (wl@gnu.org)
.\"
.\" This file is part of groff.
.\"
.\" groff is free software; you can redistribute it and/or modify it under
.\" the terms of the GNU General Public License as published by the Free
.\" Software Foundation, either version 3 of the License, or
.\" (at your option) any later version.
.\"
.\" groff is distributed in the hope that it will be useful, but WITHOUT ANY
.\" WARRANTY; without even the implied warranty of MERCHANTABILITY or
.\" FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
.\" for more details.
.\"
.\" You should have received a copy of the GNU General Public License
.\" along with this program. If not, see <http://www.gnu.org/licenses/>.
.\"
.\" Please send comments to groff@gnu.org.
.
.
.als ref*error @warning
.
.de ref*text-label-start
. FS "\\$1"
..
.de ref*text-label-end
. FE
..
.
.de ref*biblio-item-start
. ref@start-print "\\$1"
..
.de ref*biblio-item-start-nolabel
. ref@start-print \&
..
.de ref*biblio-item-end
. ref@stop-print
..
.
.ds ref*refnum-start \" empty
.ds ref*refnum-end .\"
.
.ds [. \v'-.4m'\s-3[\"
.ds .] ]\s0\v'.4m'\"
.
.ds ref*spec!0 Q A T S V N P I C D O
.ds ref*spec!1 Q A T J S V N P I C D O
.ds ref*spec!2 Q A T S V P I C D O
.ds ref*spec!3 Q A T B E S V P I C D O
.ds ref*spec!4 Q A T R G P I C D O
.
.ds ref*spec!A ", " "
.ds ref*spec!B """ " " "in \fI" "" "\fP"
.ds ref*spec!D """ " " "(" ")"
.ds ref*spec!E ", " " "ed.\& "
.ds ref*spec!G """ " " "(" ")"
.ds ref*spec!J ", " " "\fI" "" "\fP"
.ds ref*spec!N """ "(" "" ")"
.ds ref*spec!O ". " "
.ds ref*spec!P ", " " "p.\~"
.ds ref*spec!PP ", " " "pp.\~"
.ds ref*spec!T ", " " "\(lq" "" "\(rq"
.ds ref*spec!T:0 ", " " "\fI" "" "\fP"
.ds ref*spec!T:2 ", " " "\fI" "" "\fP"
.ds ref*spec!V """ " " "\fB" "\fR"
.ds ref*spec!dflt ", " "
.
.\" For the bibliography section, we emulate the .RS/.RF mechanism of mm by
.\" collecting references (enclosed with .]- and .][) in macro 'ref*mac'.
.\" This macro gets expanded while calling the .RP macro.
.
.de ref*][-first-pass
. ec
. am ref*mac
. ds [F "\\*([F\"
. ][ "\\$1" "\\$2"
. ref*reset
\\..
..
.
.de ref*biblio-start-hook
. als ref*][-second-pass ][
. als ][ ref*][-first-pass
. de ref*item-start-hook
. eo
. am ref*mac ][
\\..
..
.
.de ref*biblio-end-hook
. als ][ ref*][-second-pass
. rm ref*item-start-hook
. als ref*print ref*end-print
. RP
. als ref*print ref*normal-print
..
.
.mso refer.tmac
.
.\" Local Variables:
.\" mode: nroff
.\" fill-column: 72
.\" End:
.\" vim: set filetype=groff textwidth=72:
|