aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
-rw-r--r--roff.710
-rw-r--r--roff.c11
2 files changed, 17 insertions, 4 deletions
diff --git a/roff.7 b/roff.7
index 00e2aa99..5377103c 100644
--- a/roff.7
+++ b/roff.7
@@ -1,4 +1,4 @@
-.\" $Id: roff.7,v 1.99 2018/08/16 14:07:11 schwarze Exp $
+.\" $Id: roff.7,v 1.100 2018/08/18 21:37:01 schwarze Exp $
.\"
.\" Copyright (c) 2010, 2011, 2012 Kristaps Dzonsons <kristaps@bsd.lv>
.\" Copyright (c) 2010-2018 Ingo Schwarze <schwarze@openbsd.org>
@@ -15,7 +15,7 @@
.\" ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
.\" OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
.\"
-.Dd $Mdocdate: August 16 2018 $
+.Dd $Mdocdate: August 18 2018 $
.Dt ROFF 7
.Os
.Sh NAME
@@ -1819,6 +1819,12 @@ is an unpaddable space-sized non-breaking space character; see
.Ss \e\(dq
The rest of the input line is treated as
.Sx Comments .
+.Ss \e#
+Line continuation with comment.
+Discard the rest of the physical input line and continue the logical
+input line on the next physical input line, joining the text on
+both lines together as if it were on a single input line.
+This is a groff extension.
.Ss \e%
Hyphenation allowed at this point of the word; ignored by
.Xr mandoc 1 .
diff --git a/roff.c b/roff.c
index f5de0f32..bd8c8250 100644
--- a/roff.c
+++ b/roff.c
@@ -1,4 +1,4 @@
-/* $Id: roff.c,v 1.333 2018/08/18 02:08:27 schwarze Exp $ */
+/* $Id: roff.c,v 1.334 2018/08/18 21:37:01 schwarze Exp $ */
/*
* Copyright (c) 2008-2012, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
* Copyright (c) 2010-2015, 2017, 2018 Ingo Schwarze <schwarze@openbsd.org>
@@ -1205,7 +1205,14 @@ roff_res(struct roff *r, struct buf *buf, int ln, int pos)
r->man->next = ROFF_NEXT_SIBLING;
}
- /* Discard comments. */
+ /* Line continuation with comment. */
+
+ if (stesc[1] == '#') {
+ *stesc = '\0';
+ return ROFF_APPEND;
+ }
+
+ /* Discard normal comments. */
while (stesc > start && stesc[-1] == ' ')
stesc--;