From 0a8809aa2eea4b189b4ca02bea4883d7cf4ce706 Mon Sep 17 00:00:00 2001 From: Ingo Schwarze Date: Fri, 24 Aug 2018 23:12:33 +0000 Subject: Rudimentary implementation of the roff(7) .while request. Needed for example by groff_hdtbl(7). There are two limitations: It does not support nested .while requests yet, and each .while loop must start and end in the same scope. The roff_parseln() return codes are now more flexible and allow OR'ing options. --- regress/roff/while/basic.in | 30 ++++++++++++++++++++++++++++++ 1 file changed, 30 insertions(+) create mode 100644 regress/roff/while/basic.in (limited to 'regress/roff/while/basic.in') diff --git a/regress/roff/while/basic.in b/regress/roff/while/basic.in new file mode 100644 index 00000000..6bd09e3a --- /dev/null +++ b/regress/roff/while/basic.in @@ -0,0 +1,30 @@ +.\" $OpenBSD: basic.in,v 1.1 2018/08/24 22:56:37 schwarze Exp $ +.Dd $Mdocdate: August 24 2018 $ +.Dt WHILE-BASIC 1 +.Os +.Sh NAME +.Nm while-basic +.Nd the while request +.Sh DESCRIPTION +Loop with single-line scope: +.nr cnt 11 1 +.de mym +\\n-[cnt] +.. +.while \n[cnt] .mym +.Pp +Loop with multi-line scope, text line closure: +.nr cnt 11 +.while \n[cnt] \{\ +.nr cnt -1 +\n[cnt]\}, +boom. +.Pp +Loop with multi-line scope, macro line closure: +.nr cnt 11 +.while \n[cnt] \{\ +.nr cnt -1 +\n[cnt] +.\} +.Pp +final text -- cgit v1.2.3-56-ge451