From 4240b8b821ba794ef3b83caa13b78aa3ee8944bd Mon Sep 17 00:00:00 2001 From: "E. Scott Daniels" Date: Thu, 1 Aug 2019 10:36:14 -0400 Subject: [PATCH] Template changes for user manual Signed-off-by: E. Scott Daniels Change-Id: Idb8704abdebe55c36d5e703155248338ed2dc39b --- doc/src/generic_ps.im | 11 +++++- doc/src/markdown.im | 3 ++ doc/src/roff.im | 101 ++++++++++++++++++++++++++------------------------ doc/src/rst.im | 6 +++ doc/src/txt.im | 17 ++++++--- 5 files changed, 82 insertions(+), 56 deletions(-) diff --git a/doc/src/generic_ps.im b/doc/src/generic_ps.im index ccca9ba..b14bdf1 100644 --- a/doc/src/generic_ps.im +++ b/doc/src/generic_ps.im @@ -30,8 +30,8 @@ .st &text_size .sf &text_font .dh 1 f=&bold_font p=12 e=no s=2,1 m=.5i i=0i - .dh 2 f=&bold_font p=12 s=1,.5 m=.5i i=0i - .dh 3 f=&bold_font p=12 s=1,0 m=.5i i=0i + .dh 2 f=&bold_font p=10 s=1,.5 m=.5i i=0i + .dh 3 f=&bold_font p=10 s=1,0 m=.5i i=0i .dv comment .** ignore @@ -44,9 +44,13 @@ .dv nf .nf .dv fo .fo + + .dv center_start .bc start + .dv center_end .bc end .dv line_len .ll $1 .dv space .sp 1 + .dv mult_space .sp $1 .dv half_space .sp .5 .dv beg_list .bl $1 .dv end_list .el @@ -73,3 +77,6 @@ .dv indent .ll -0.5i .in +0.25i .dv uindent .in -0.25i .ll +0.5i + + .dv super .sm ^[ .sm ^&{ss_num}] + .dv note .dv ss_num ^[ ?%.0f ^&ss_num 1 + ] ^: .sm .tf superscript /2 ^&{ss_num} ^: diff --git a/doc/src/markdown.im b/doc/src/markdown.im index f31281d..87c334e 100644 --- a/doc/src/markdown.im +++ b/doc/src/markdown.im @@ -103,6 +103,9 @@ .dv li .li .dv end_list .el +.dv center_start +.dv center_end + .dv line .sp 1 ------ .** leading indention is significant to markdown, so turn it off diff --git a/doc/src/roff.im b/doc/src/roff.im index 27831da..20c932d 100644 --- a/doc/src/roff.im +++ b/doc/src/roff.im @@ -21,58 +21,61 @@ Mnemonic: troff.im Abstract: This file provides macros allowing {X}fm source to generate troff input from {X}fm source when the doc is passed through - tfm, and to generate postscirpt output when passed through - pfm. About the only real use of this is to be able to maintain - manual pages in the more easily read {X}fm source format. + tfm. This allows the more easily read {X}fm source to be used + to generate man pages, and to be able to generate the man pages + in various output formats (txt, rst, etc.). Author: E. Scott Daniels Date: 27 January 2019 - Some roff information was gleanded from this page: - http://cmd.inp.nsk.su/old/cmd2/manuals/unix/UNIX_Unleashed/ch08.htm + Some roff information was gleanded from these pages: + http://cmd.inp.nsk.su/old/cmd2/manuals/unix/UNIX_Unleashed/ch08.htm + https://www.gnu.org/software/groff/manual/html_node/Basics.html .fi -.if tfm - .** assume that we're generating roff output when tfm is used. These macros - .** convert {X}fm input into troff. - - .dv h1 .sp 1 ^&bold($1) .br ^&space - .dv h2 .sp 1 ^&bold($1) .br ^&space - .dv h3 .sp 1 ^&bold($1) .br ^&space - - .dv fig - .dv set_font_cw .br ^^.ft CW - - .dv nf ^^.nf .br .nf - .dv fo .fo ^^.fi .br - - .dv line_len ^^.ll $1 - .dv space .br ^^.sp 1 .br - .dv half_space .br ^^.sp 1 .br - .dv beg_list - .dv end_list - .dv beg_dlist .dv udi -$1 ^: ^^.in +$1 .br ^^.sp 1 .br - .dv end_dlist .br ^^.in &udi .br - .dv ditem ^^.ti ^&udi .br ^&space .br \fB$1\fR .br - .dv item ^&space \(bu - .** .dv di ^&ditem - .dv di ^^.ti ^&udi .br ^&space .br \fB$1\fR .br - - .dv ex_start ^^.IP .br ^^.nf .br ^^.ft CW .br .nf - .dv ex_end .fo on .br ^^.ft P .br ^^.fi .br ^&space - - .** fonts and font macros - .dv ital \fI$1\fR - .dv bold \fB$1\fR - .dv cw \f(CW$1\fP - .dv set_font_prop .br ^^.ft P - - .ju off - .in 0 - - .dv indent ^^.ll -0.5i &space ^^.in +0.25i - .dv uindent ^^.in -0.25i &space ^^.ll +0.5i -.ei - .** for postscript output we just pass through to pfm commands - .im generic_ps.im -.fi +.** assume that we're generating roff output when tfm is used. These macros +.** convert {X}fm input into troff. + +.dv h1 .sp 1 ^&bold($1) .br ^&space +.dv h2 .sp 1 ^&bold($1) .br ^&space +.dv h3 .sp 1 ^&bold($1) .br ^&space + +.dv fig +.dv set_font_cw .br ^^.ft CW + +.dv nf ^^.nf .br .nf +.dv fo .fo ^^.fi .br + +.dv center .br ^^.ce 1 .br $1 .br +.dv center_start .br ^^.ce 999 +.dv center_end .br ^.ce 0 + +.dv line_len ^^.ll $1 +.dv space .br ^^.sp 1 .br +.dv half_space .br ^^.sp 1 .br +.dv mult_space .br ^^.sp $1 .br +.dv beg_list +.dv end_list +.dv beg_dlist .dv udi -$1 ^: ^^.in +$1 .br ^^.sp 1 .br +.dv end_dlist .br ^^.in &udi .br +.dv ditem ^^.ti ^&udi .br ^&space .br \fB$1\fR .br +.dv item ^&space \(bu +.dv li ^&space \(bu +.** .dv di ^&ditem +.dv di ^^.ti ^&udi .br ^&space .br \fB$1\fR .br + +.dv ex_start ^^.IP .br ^^.nf .br ^^.ft CW .br .nf +.dv ex_end .fo on .br ^^.ft P .br ^^.fi .br ^&space + +.** fonts and font macros +.dv ital \fI$1\fR +.dv bold \fB$1\fR +.dv cw \f(CW$1\fP +.dv set_font_prop .br ^^.ft P + +.ju off +.in 0 + +.dv indent ^^.ll -0.5i &space ^^.in +0.25i +.dv uindent ^^.in -0.25i &space ^^.ll +0.5i + diff --git a/doc/src/rst.im b/doc/src/rst.im index 8662137..4e32080 100644 --- a/doc/src/rst.im +++ b/doc/src/rst.im @@ -67,6 +67,7 @@ .dv line_len .ll $1 .dv space .sp 1 .dv half_space .sp 1 + .dv mult_space .sp $1 .dv beg_list .sp 1 .dv lic $1 ^: .dv end_list .sp 1 @@ -77,9 +78,14 @@ .dv di .in 0i .br $1 .br .in +.25i .dv diitem .in 0i .br $1 .br .in +.25i .dv item .br &lic + .dv li .br &lic .dv ex_start .sp 1 ^:^: .br .ll -2 .in +2 .nf .dv ex_end .fo on .in -2 .ll +2 .sp 1 + + .dv center .br $1 .br + .dv center_start .br + .dv center_end .br .** fonts and font macros .dv ital *$1* diff --git a/doc/src/txt.im b/doc/src/txt.im index bf57bf4..9a666d7 100644 --- a/doc/src/txt.im +++ b/doc/src/txt.im @@ -39,9 +39,9 @@ .dv h3 .h3 $1 .dv h4 .h4 $1 -.dh 1 s=2,1 i=.25i -.dh 2 s=1,1 i=.25i -.dh 3 s=1,0 i=.25i +.dh 1 s=2,1 i=.25i m=.25i +.dh 2 s=1,1 i=.25i m=.25i +.dh 3 s=1,0 i=.25i m=.25i .hn off .dv fig .fi t=figure @@ -59,13 +59,20 @@ .dv line_len .ll $1 .dv space .sp 1 +.dv mult_space .sp $1 .dv half_space .sp 1 -.dv beg_list .sp 1 .dv lic $1 ^: -.dv end_list .sp 1 +.dv beg_list .bl $1 +.dv end_list .el +.dv li .li +.dv item .li .dv beg_dlist .sp 1 .bd $1 .dv end_dlist .ed +.dv center .ce $1 ^: +.dv center_start .bc start +.dv center_end .bc end + .** for now we allow only a single layer of defitems .dv di .di $1 ^: .dv diitem .di $1 ^: -- 2.16.6