• R/O
  • SSH

コミット

タグ
未設定

よく使われているワード(クリックで追加)

javac++androidlinuxc#windowsobjective-ccocoa誰得qtpythonphprubygameguibathyscaphec計画中(planning stage)翻訳omegatframeworktwitterdomtestvb.netdirectxゲームエンジンbtronarduinopreviewer

Reference Documentation: PDF Publishing with GNU Troff


コミットメタ情報

リビジョン4ac0a01f640d9b0ff178d97e50e5d5bdd9f0994d (tree)
日時2024-08-16 04:24:08
作者Keith Marshall <keith@user...>
コミッターKeith Marshall

ログメッセージ

Add groff_opmode.7 manual page source file.

* man/groff_opmode.7.man: New file.
* tmac/opmode.tmac (.OP): Update "usage" comment; make it consistent
with actual behaviour, as it is documented in the manual page.

* Makefile.in (manpages): Add groff_opmode.7 to build goals.

変更サマリ

差分

diff -r 5355d5f3fd29 -r 4ac0a01f640d Makefile.in
--- a/Makefile.in Fri Aug 09 22:09:37 2024 +0100
+++ b/Makefile.in Thu Aug 15 20:24:08 2024 +0100
@@ -238,7 +238,8 @@
238238 vpath %.man ${srcdir}/man
239239 vpath manpdf-fallbacks.in ${srcdir}/man
240240 all-inclusive: all all-manpages all-pdf-manpages
241-override manpages := pdfroff.1 pdfroff.7 groff_omit.7 groff_toc.7
241+override manpages := pdfroff.1 pdfroff.7 groff_omit.7
242+override manpages += groff_opmode.7 groff_toc.7
242243 override pdf-manpages := $(addsuffix .pdf,$(manpages))
243244 all-pdf-manpages: $(pdf-manpages)
244245 all-manpages: $(manpages)
diff -r 5355d5f3fd29 -r 4ac0a01f640d man/groff_opmode.7.man
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/man/groff_opmode.7.man Thu Aug 15 20:24:08 2024 +0100
@@ -0,0 +1,403 @@
1+.TH groff_opmode @MAN7EXT@ "@MDATE@" "groff-pdfmark @VERSION@"
2+.
3+.SH Name
4+groff_opmode \- control GNU roff \(lqpen state\(rq
5+.
6+.\" ====================================================================
7+.\" Legal Terms
8+.\" ====================================================================
9+.\"
10+.\" Copyright (C) 2024, Free Software Foundation, Inc.
11+.\"
12+.\" This file is part of groff-pdfmark, an independently maintained
13+.\" add-on for the GNU roff type-setting system.
14+.\"
15+.\" Permission is granted to copy, distribute and/or modify this
16+.\" document under the terms of the GNU Free Documentation License,
17+.\" Version 1.3 or any later version published by the Free Software
18+.\" Foundation; with no Invariant Sections, no Front-Cover Texts,
19+.\" and no Back-Cover Texts.
20+.\"
21+.\" A copy of the Free Documentation License is included as a file
22+.\" called fdl-v1.3.txt, in the fdl directory of the groff-pdfmark
23+.\" source package, whence it is programmatically marked up, to be
24+.\" processed by groff -m pdfmark, for inclusion as an appendix to
25+.\" the pdfmark.pdf document.
26+.\"
27+.\" ====================================================================
28+.
29+.\" Save and disable compatibility mode (e.g., for Solaris 10/11).
30+.nr _? \n(.C
31+.do rnn _? *groff_opmode_7_man_C
32+.cp 0
33+.
34+.\" ====================================================================
35+.\" Local macro definitions
36+.\" ====================================================================
37+.
38+.\" @IMPORT_LOCAL_FALLBACK_MACROS@
39+.
40+.
41+.\" ====================================================================
42+.SH Description
43+.\" ====================================================================
44+.
45+Primarily intended to support the operation of
46+.MR pdfroff @MAN1EXT@ ,
47+but also potentially useful in other, similar contexts,
48+the
49+.B \%groff_opmode
50+supplementary macro package offers a mechanism
51+for synchronization of the typesetter's \%\(lqpen-up\(rq
52+and \%\(lqpen-down\(rq states,
53+as appropriate to particular phases of document production.
54+.
55+In the case of
56+.MR pdfroff @MAN1EXT@ ,
57+it is used to suppress the output of the document body content,
58+when processing the phase for production of a table of contents,
59+(when this is output
60+.I following
61+processing of the body content),
62+and vice-versa.
63+.
64+.
65+.\" ====================================================================
66+.SH Usage
67+.\" ====================================================================
68+.
69+Typically loaded from within
70+.MR groff @MAN7EXT@
71+document source,
72+or by another dependent macro package,
73+using the
74+.MR groff @MAN7EXT@
75+request:
76+.RS 3n
77+.SY .\^mso\ opmode
78+.YS
79+.RE
80+.
81+.P
82+the
83+.B \%groff_opmode
84+macro package provides the
85+.B \%.\^OP
86+macro,
87+which exhibits the invocation syntax:
88+.
89+.RS 3n
90+.SY .\^OP
91+.RI \%[< output-phase >\ .\|.\|.\&]
92+.YS
93+.RE
94+.
95+.P
96+A call of the
97+.B \%.\^OP
98+macro should be placed at the beginning of any section of the
99+.MR groff @MAN7EXT@
100+input file,
101+for which the content is designated for processing
102+in a different phase from that which has gone before;
103+for example,
104+when using the emulated
105+classical table of contents relocation feature of
106+.MR pdfroff @MAN7EXT@ ,
107+the call:
108+.P
109+.RS 3n
110+.EX
111+\%.OP 2
112+.EE
113+.RE
114+.P
115+would be placed at the beginning of the document body content,
116+(normally the beginning of the input file),
117+indicating that the following content should be output during
118+.MR pdfroff @MAN7EXT@ 's
119+document body processing phase,
120+whereas the complementary call:
121+.P
122+.RS 3n
123+.EX
124+\%.OP 1
125+.EE
126+.RE
127+.P
128+would be placed after the document body content,
129+to prepare for output of the collected table of contents, in
130+.MR pdfroff @MAN7EXT@ 's
131+table of contents processing phase.
132+.
133+.P
134+The behaviour of the
135+.B \%.\^OP
136+macro is determined according to the setting of the
137+.B \%PHASE
138+register,
139+which is expected to have been set,
140+usually as a command line assignment for an individual invocation of
141+.MR groff @MAN1EXT@ ,
142+depending on the particular phase of output file processing
143+to which the invocation \%relates\|\(em\|\c
144+.MR pdfroff @MAN1EXT@
145+sets it to
146+.I \%one
147+when initiating its table of contents output phase, and to
148+.I \%two
149+for its document body output phase.
150+.
151+This behaviour may be described as follows:
152+.RS 3n
153+.ll -3n
154+.IP \(bu 2n
155+If the
156+.B \%PHASE
157+register is
158+.I \%not
159+defined,
160+(as is the case during
161+.MR pdfroff @MAN1EXT@ 's
162+initial document analysis phase\|\(em\|which
163+produces no physical output),
164+.B \%.\^OP
165+sets the
166+.B \%OPMODE
167+register to
168+.IR one ,
169+but has no effect on
170+.MR groff @MAN7EXT@ 's
171+.RI \(lq "pen state" \(rq;
172+this effectively indicates that
173+.MR groff @MAN7EXT@
174+is expected to be operating in its default
175+.RI \(lq "pen-down" \(rq
176+state,
177+.I without
178+actually enforcing this.
179+.
180+.IP \(bu 2n
181+When the
182+.B \%PHASE
183+register
184+.I is
185+defined,
186+then each specified
187+.RI \%\(lq< output-phase >\(rq
188+argument is compared, in turn, with
189+.BR \%PHASE ,
190+until one compares as equal,
191+or no more remain;
192+if an equal match is found,
193+then the
194+.B \%OPMODE
195+register is set to
196+.IR one ,
197+and
198+.MR groff @MAN7EXT@ 's
199+.RI \%\(lq pen-down \(rq
200+state is activated;
201+otherwise,
202+when no equal match is found, the
203+.B \%OPMODE
204+register is set to
205+.IR \%zero ,
206+and
207+.MR groff @MAN7EXT@ 's
208+.RI \%\(lq pen-up \(rq
209+state is activated.
210+.
211+.IP \(bu 2n
212+If the
213+.B \%PHASE
214+register
215+.I is
216+defined,
217+but no
218+.RI \%\(lq< output-phase >\(rq
219+arguments have been specified,
220+then the
221+.B \%OPMODE
222+register is
223+.I immediately
224+set to
225+.IR one ,
226+and
227+.MR groff @MAN7EXT@ 's
228+.RI \%\(lq pen-down \(rq
229+state is activated.
230+.ll +3n
231+.RE
232+.P
233+This provides a mechanism for tracking the anticipated
234+.MR groff @MAN7EXT@
235+\(lqpen state\(rq,
236+when performing multiple phase
237+.MR groff @MAN1EXT@
238+document formatting,
239+supporting modification of the formatter's behaviour
240+on the basis of the indicated \(lqpen state\(rq;
241+for example, the
242+.MR groff_pdfmark @MAN7EXT@
243+macros,
244+and associated macro packages such as
245+.MR groff_mspdf @MAN7EXT@ ,
246+may use the information conveyed by
247+.B \%OPMODE
248+to suppress generation of
249+.I \%pdfmark
250+code,
251+while processing document sections in which the
252+.RI \%\(lq pen-up \(rq
253+state has been activated.
254+.br
255+.
256+.
257+.ne 5v
258+.\" ====================================================================
259+.SH Control Registers
260+.\" ====================================================================
261+.
262+The following two numeric registers
263+are associated with the operation of the
264+.B \%.\^OP
265+macro:
266+.TP
267+.B \%PHASE
268+Defined by
269+.MR pdfroff @MAN1EXT@ ,
270+this numeric register is assigned a value of
271+.IR one ,
272+when the processing objective is to produce
273+a table of contents,
274+and a value of
275+.IR two ,
276+for production of the document body content.
277+.
278+.TP
279+.B \%OPMODE
280+Assigned on execution of the
281+.B \%.\^OP
282+macro,
283+this numeric register assumes a value of
284+.IR \%zero ,
285+when the typesetter is switched to its
286+.RI \%\(lq pen-up \(rq
287+state,
288+and a value of
289+.IR one ,
290+following a switch to the
291+.RI \%\(lq pen-down \(rq
292+state.
293+.
294+.IP
295+When used in conjunction with the
296+.MR groff_pdfmark @MAN7EXT@
297+macros,
298+the
299+.B \%OPMODE
300+register is aliased to that package's
301+.B \%PDFOPMODE
302+register.
303+.
304+.
305+.\" ====================================================================
306+.SH Files
307+.\" ====================================================================
308+.
309+.TP
310+.I \%@SITE_TMACDIR@/opmode.tmac
311+Provides the implementation of the
312+.B \%.\^OP
313+macro.
314+.
315+.
316+.\" ====================================================================
317+.SH Caveats\" and Bugs
318+.\" ====================================================================
319+.
320+Assignment of the
321+.B \%PHASE
322+register lies firmly within the purview
323+of whatever process is responsible for driving multiple phase
324+.MR groff @MAN1EXT@
325+document formatting.
326+It should neither be defined,
327+nor reassigned within any document source file;
328+doing so may result in undefined behaviour.
329+.
330+.
331+.\" ====================================================================
332+.\" SH Examples
333+.\" ====================================================================
334+.
335+.
336+.
337+.\" ====================================================================
338+.SH Authors
339+.\" ====================================================================
340+.
341+The
342+.B \%groff_opmode
343+supplementary macro implementation is provided by the
344+.I \%groff-pdfmark
345+package,
346+which was written by
347+.MT keith\:.d\:.marshall@\:ntlworld\:.com
348+Keith Marshall
349+.ME ;
350+originally developed as a complement to the GNU Troff Project,
351+it is now independently maintained at
352+.UR https://\:osdn\:.net/\:users/\:keith/\:pf/\:groff-pdfmark/\
353+\:wiki/\:\%FrontPage
354+Keith's
355+.I \%groff-pdfmark
356+\%web-site
357+.UE ,
358+on OSDN,
359+whence the most recently published version may
360+.I always
361+be obtained.
362+.
363+.\" ====================================================================
364+.SH See Also
365+.\" ====================================================================
366+.
367+.\" @ENUMERATE_MR_REFERENCES@
368+.
369+.P
370+More comprehensive documentation on the use of
371+.MR pdfroff @MAN1EXT@ ,
372+(support of which is the primary function of
373+.BR \%groff_opmode ),
374+and of the
375+.I \%groff-pdfmark
376+macro suite in general, may be found,
377+in PDF format,
378+in the reference guide
379+.RI \[lq] "Portable Document Format Publishing with GNU Troff" \[rq],
380+which has also been written by Keith Marshall;
381+the most recently published version of this guide may be read online,
382+at
383+.UR https://\:osdn\:.net/\:users/\:keith/\:pf/\:groff-pdfmark/\
384+\:wiki/\:\%FrontPage
385+the
386+.I \%groff-pdfmark
387+OSDN \%web-site
388+.UE ,
389+whence a copy may also be downloaded.
390+.
391+.\" ====================================================================
392+.
393+.\" Restore compatibility mode (for, e.g., Solaris 10/11).
394+.cp \n[*groff_opmode_7_man_C]
395+.do rr *groff_opmode_7_man_C
396+.
397+.\" ====================================================================
398+.\"
399+.\" Local Variables:
400+.\" fill-column: 72
401+.\" mode: nroff
402+.\" End:
403+.\" vim: set filetype=groff textwidth=72:
diff -r 5355d5f3fd29 -r 4ac0a01f640d tmac/opmode.tmac
--- a/tmac/opmode.tmac Fri Aug 09 22:09:37 2024 +0100
+++ b/tmac/opmode.tmac Thu Aug 15 20:24:08 2024 +0100
@@ -7,20 +7,20 @@
77
88 $Id$
99
10-Copyright (C) 2023 Free Software Foundation, Inc.
10+Copyright (C) 2023, 2024, Free Software Foundation, Inc.
1111 Written by Keith Marshall (keith.d.marshall@ntlworld.com)
1212
1313
14-This file is part of groff.
14+This file is part of groff-pdfmark.
1515
16-groff is free software; you can redistribute it and/or modify it under
17-the terms of the GNU General Public License as published by the Free
18-Software Foundation, either version 3 of the License, or
19-(at your option) any later version.
16+groff-pdfmark is free software; you can redistribute it and/or modify
17+it under the terms of the GNU General Public License as published by the
18+Free Software Foundation, either version 3 of the License, or (at your
19+option) any later version.
2020
21-groff is distributed in the hope that it will be useful, but WITHOUT ANY
22-WARRANTY; without even the implied warranty of MERCHANTABILITY or
23-FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
21+groff-pdfmark is distributed in the hope that it will be useful, but
22+WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY
23+or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License
2424 for more details.
2525
2626 You should have received a copy of the GNU General Public License
@@ -39,7 +39,7 @@
3939 .ie r PDFOPMODE .aln OPMODE PDFOPMODE
4040 .el .nr OPMODE 1
4141 .
42-.\" .OP [<output-phase>]
42+.\" .OP [<output-phase> ...]
4343 .\"
4444 .\" If the user-specified PHASE numeric register has been defined,
4545 .\" and its value matches the <output-phase> argument value, (or if