aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/regress
diff options
context:
space:
mode:
authorIngo Schwarze <schwarze@openbsd.org>2018-12-16 00:17:02 +0000
committerIngo Schwarze <schwarze@openbsd.org>2018-12-16 00:17:02 +0000
commitfb7ea55796176565141285c5c6de1d3127655116 (patch)
tree63b21db96671f3ca27e3f0658ae34a5d8babc63d /regress
parentd672f8cb82878baf3834e938c4c416f4493952cf (diff)
downloadmandoc-fb7ea55796176565141285c5c6de1d3127655116.tar.gz
mandoc-fb7ea55796176565141285c5c6de1d3127655116.tar.zst
mandoc-fb7ea55796176565141285c5c6de1d3127655116.zip
Yet another round of improvements to manual font selection.
Unify handling of \f and .ft. Support \f4 (bold+italic). Support ".ft BI" and ".ft CW" for terminal output. Support the .ft request in HTML output. Reject the bogus fonts \f(C1, \f(C2, \f(C3, and \f(CP. In regress.pl, only strip leading whitespace in math mode.
Diffstat (limited to 'regress')
-rwxr-xr-xregress/regress.pl22
-rw-r--r--regress/roff/esc/Makefile3
-rw-r--r--regress/roff/esc/f.in23
-rw-r--r--regress/roff/esc/f.out_ascii17
-rw-r--r--regress/roff/esc/f.out_html6
-rw-r--r--regress/roff/ft/Makefile3
-rw-r--r--regress/roff/ft/badargs.in21
-rw-r--r--regress/roff/ft/badargs.out_ascii7
-rw-r--r--regress/roff/ft/badargs.out_html9
-rw-r--r--regress/roff/ft/badargs.out_lint4
10 files changed, 80 insertions, 35 deletions
diff --git a/regress/regress.pl b/regress/regress.pl
index 8d7245cb..9d8fcf58 100755
--- a/regress/regress.pl
+++ b/regress/regress.pl
@@ -1,6 +1,6 @@
#!/usr/bin/env perl
#
-# $Id: regress.pl,v 1.8 2017/07/18 18:47:06 schwarze Exp $
+# $Id: regress.pl,v 1.9 2018/12/16 00:17:04 schwarze Exp $
#
# Copyright (c) 2017 Ingo Schwarze <schwarze@openbsd.org>
#
@@ -79,23 +79,25 @@ sub syshtml ($@) {
open my $outfd, '>', $outfile or die "$outfile: $!";
my $infd;
my $pid = open3 undef, $infd, undef, @_;
- my $state;
+ my $state = 0;
while (<$infd>) {
chomp;
if (!$state && s/.*<math class="eqn">//) {
- $state = 1;
+ $state = 'math';
next unless length;
+ } elsif (/^BEGINTEST/) {
+ $state = 'other';
}
- $state = 1 if /^BEGINTEST/;
- if ($state && s/<\/math>.*//) {
+ if ($state eq 'math') {
s/^ *//;
- print $outfd "$_\n" if length;
- undef $state;
- next;
+ if (s/<\/math>.*//) {
+ print $outfd "$_\n" if length;
+ $state = 0;
+ next;
+ }
}
- s/^ *//;
print $outfd "$_\n" if $state;
- undef $state if /^ENDTEST/;
+ $state = 0 if /^ENDTEST/;
}
close $outfd;
close $infd;
diff --git a/regress/roff/esc/Makefile b/regress/roff/esc/Makefile
index 74f153d5..1be8b179 100644
--- a/regress/roff/esc/Makefile
+++ b/regress/roff/esc/Makefile
@@ -1,7 +1,8 @@
-# $OpenBSD: Makefile,v 1.11 2015/04/29 18:32:57 schwarze Exp $
+# $OpenBSD: Makefile,v 1.15 2018/12/15 23:33:20 schwarze Exp $
REGRESS_TARGETS = one two multi B c c_man e f h l O o p w z
REGRESS_TARGETS += ignore invalid unsupp
+HTML_TARGETS = f
LINT_TARGETS = B h l O w ignore invalid unsupp
.include <bsd.regress.mk>
diff --git a/regress/roff/esc/f.in b/regress/roff/esc/f.in
index 571161d3..3eaca449 100644
--- a/regress/roff/esc/f.in
+++ b/regress/roff/esc/f.in
@@ -1,13 +1,12 @@
-.\" $OpenBSD: f.in,v 1.3 2017/07/04 14:53:27 schwarze Exp $
-.Dd $Mdocdate: July 4 2017 $
-.Dt ESC-F 1
-.Os
-.Sh NAME
-.Nm esc-f
-.Nd the roff escape f sequence: font changes
-.Sh DESCRIPTION
-numbers: \f3bold\f2italic\f1roman
-.br
+.\" $OpenBSD: f.in,v 1.4 2018/12/15 23:33:20 schwarze Exp $
+.TH ESC-F 1 "December 15, 2018"
+.SH NAME
+esc-f \- the roff escape f sequence: font changes
+.SH DESCRIPTION
+.nf
+BEGINTEST
+numbers: \f4bolditalic\f3bold\f2italic\f1roman
letters: \fBbold\fIitalic\fPback\f(BIbolditalic\fRroman
-.br
-multiletter: \f[B]bold\f[I]italic\f[P]back\f[BI]bolditalic\f[R]roman
+multiletter: \f[B]bold\f[]empty\f[I]italic\f[P]back\f[BI]bolditalic\f[R]roman
+typewriter: \f(CWroman\f(CBbold\f(CRroman\f(CIitalic\fRroman
+ENDTEST
diff --git a/regress/roff/esc/f.out_ascii b/regress/roff/esc/f.out_ascii
index fb8520f8..797dbe86 100644
--- a/regress/roff/esc/f.out_ascii
+++ b/regress/roff/esc/f.out_ascii
@@ -1,11 +1,18 @@
ESC-F(1) General Commands Manual ESC-F(1)
+
+
NNAAMMEE
- eesscc--ff - the roff escape f sequence: font changes
+ esc-f - the roff escape f sequence: font changes
DDEESSCCRRIIPPTTIIOONN
- numbers: bboolldd_i_t_a_l_i_croman
- letters: bboolldd_i_t_a_l_i_cbbaacckk_bb_oo_ll_dd_ii_tt_aa_ll_ii_ccroman
- multiletter: bboolldd_i_t_a_l_i_cbbaacckk_bb_oo_ll_dd_ii_tt_aa_ll_ii_ccroman
+ BEGINTEST
+ numbers: _bb_oo_ll_dd_ii_tt_aa_ll_ii_ccbboolldd_i_t_a_l_i_croman
+ letters: bboolldd_i_t_a_l_i_cbbaacckk_bb_oo_ll_dd_ii_tt_aa_ll_ii_ccroman
+ multiletter: bboollddempty_i_t_a_l_i_cback_bb_oo_ll_dd_ii_tt_aa_ll_ii_ccroman
+ typewriter: romanbboollddroman_i_t_a_l_i_croman
+ ENDTEST
+
+
-OpenBSD July 4, 2017 OpenBSD
+OpenBSD December 15, 2018 ESC-F(1)
diff --git a/regress/roff/esc/f.out_html b/regress/roff/esc/f.out_html
new file mode 100644
index 00000000..332e0f00
--- /dev/null
+++ b/regress/roff/esc/f.out_html
@@ -0,0 +1,6 @@
+BEGINTEST
+numbers: <b><i>bolditalic</i></b><b>bold</b><i>italic</i>roman
+letters: <b>bold</b><i>italic</i><b>back</b><b><i>bolditalic</i></b>roman
+multiletter: <b>bold</b>empty<i>italic</i>back<b><i>bolditalic</i></b>roman
+typewriter: <span class="Li">roman</span><b>bold</b><span class="Li">roman</span><i>italic</i>roman
+ENDTEST
diff --git a/regress/roff/ft/Makefile b/regress/roff/ft/Makefile
index 5d2accbb..0eadb05d 100644
--- a/regress/roff/ft/Makefile
+++ b/regress/roff/ft/Makefile
@@ -1,6 +1,7 @@
-# $OpenBSD: Makefile,v 1.1 2014/07/05 12:33:54 schwarze Exp $
+# $OpenBSD: Makefile,v 1.3 2018/12/15 23:33:20 schwarze Exp $
REGRESS_TARGETS = badargs badargs-mdoc
+HTML_TARGETS = badargs
LINT_TARGETS = badargs badargs-mdoc
SKIP_TMAN = badargs
diff --git a/regress/roff/ft/badargs.in b/regress/roff/ft/badargs.in
index 82269609..ac3ee72a 100644
--- a/regress/roff/ft/badargs.in
+++ b/regress/roff/ft/badargs.in
@@ -1,9 +1,23 @@
-.\" $OpenBSD: badargs.in,v 1.3 2017/07/04 14:53:27 schwarze Exp $
-.TH "FT-BADARGS" 1 "July 5, 2014"
+.\" $OpenBSD: badargs.in,v 1.5 2018/12/16 00:10:03 schwarze Exp $
+.TH "FT-BADARGS" 1 "December 15, 2018"
.SH NAME
ft-badargs \(en font request with bad arguments
.SH DESCRIPTION
+BEGINTEST
+.br
default font
+.ft I
+italic
+.ft BI
+bold italic
+.ft CR
+typeqriter
+.ft CW
+roman
+.ft CB
+bold
+.ft CI
+italic
.ft B
bold
.ft foo
@@ -14,3 +28,6 @@ italic
back to bold
.ft
back to italic
+.ft R
+.br
+ENDTEST
diff --git a/regress/roff/ft/badargs.out_ascii b/regress/roff/ft/badargs.out_ascii
index 30bfed3c..07c2392a 100644
--- a/regress/roff/ft/badargs.out_ascii
+++ b/regress/roff/ft/badargs.out_ascii
@@ -6,8 +6,11 @@ NNAAMMEE
ft-badargs - font request with bad arguments
DDEESSCCRRIIPPTTIIOONN
- default font bboolldd ssttiillll bboolldd _i_t_a_l_i_c bbaacckk ttoo bboolldd _b_a_c_k _t_o _i_t_a_l_i_c
+ BEGINTEST
+ default font _i_t_a_l_i_c _bb_oo_ll_dd _ii_tt_aa_ll_ii_cc typeqriter roman bboolldd _i_t_a_l_i_c bboolldd ssttiillll
+ bboolldd _i_t_a_l_i_c bbaacckk ttoo bboolldd _b_a_c_k _t_o _i_t_a_l_i_c
+ ENDTEST
-OpenBSD July 5, 2014 FT-BADARGS(1)
+OpenBSD December 15, 2018 FT-BADARGS(1)
diff --git a/regress/roff/ft/badargs.out_html b/regress/roff/ft/badargs.out_html
new file mode 100644
index 00000000..8b30ab05
--- /dev/null
+++ b/regress/roff/ft/badargs.out_html
@@ -0,0 +1,9 @@
+BEGINTEST
+<br/>
+default font <i></i><i>italic</i> <b><i></i></b><b><i>bold italic</i></b>
+ <span class="Li"></span><span class="Li">typeqriter</span>
+ <span class="Li"></span> <span class="Li">roman</span> <b></b><b>bold</b>
+ <i></i> <i>italic</i> <b></b><b>bold</b> <b>still bold</b>
+ <i></i><i>italic</i> <i></i><i>back to bold</i> <i></i><i>back to italic</i>
+<br/>
+ENDTEST</div>
diff --git a/regress/roff/ft/badargs.out_lint b/regress/roff/ft/badargs.out_lint
index 36c8c0bf..493aaeb4 100644
--- a/regress/roff/ft/badargs.out_lint
+++ b/regress/roff/ft/badargs.out_lint
@@ -1,2 +1,2 @@
-mandoc: badargs.in:11:7: ERROR: skipping excess arguments: ft ... bogus
-mandoc: badargs.in:9:2: WARNING: unknown font, skipping request: ft foo
+mandoc: badargs.in:25:7: ERROR: skipping excess arguments: ft ... bogus
+mandoc: badargs.in:23:2: WARNING: unknown font, skipping request: ft foo