source@mandoc.bsd.lv
 help / color / mirror / Atom feed
* mdocml: In the parser, when closing an explicit block that is not open,
@ 2013-11-11  0:37 schwarze
  0 siblings, 0 replies; only message in thread
From: schwarze @ 2013-11-11  0:37 UTC (permalink / raw)
  To: source

Log Message:
-----------
In the parser, when closing an explicit block that is not open,
close below-subsection implicit scopes that may still be open.
In the formatter, make sure indentation is reset when leaving a scope, 
not only when entering the next one.

Improves the formatting of gpg(1); issue reported by jca on ports.

Modified Files:
--------------
    mdocml:
        man_macro.c
        man_term.c

Revision Data
-------------
Index: man_term.c
===================================================================
RCS file: /usr/vhosts/mdocml.bsd.lv/cvs/mdocml/man_term.c,v
retrieving revision 1.137
retrieving revision 1.138
diff -Lman_term.c -Lman_term.c -u -p -r1.137 -r1.138
--- man_term.c
+++ man_term.c
@@ -679,6 +679,7 @@ post_IP(DECL_ARGS)
 		break;
 	case (MAN_BODY):
 		term_newln(p);
+		p->offset = mt->offset;
 		break;
 	default:
 		break;
@@ -766,6 +767,7 @@ post_TP(DECL_ARGS)
 		break;
 	case (MAN_BODY):
 		term_newln(p);
+		p->offset = mt->offset;
 		break;
 	default:
 		break;
Index: man_macro.c
===================================================================
RCS file: /usr/vhosts/mdocml.bsd.lv/cvs/mdocml/man_macro.c,v
retrieving revision 1.76
retrieving revision 1.77
diff -Lman_macro.c -Lman_macro.c -u -p -r1.76 -r1.77
--- man_macro.c
+++ man_macro.c
@@ -1,7 +1,7 @@
 /*	$Id$ */
 /*
  * Copyright (c) 2008, 2009, 2010, 2011 Kristaps Dzonsons <kristaps@bsd.lv>
- * Copyright (c) 2012 Ingo Schwarze <schwarze@openbsd.org>
+ * Copyright (c) 2012, 2013 Ingo Schwarze <schwarze@openbsd.org>
  *
  * Permission to use, copy, modify, and distribute this software for any
  * purpose with or without fee is hereby granted, provided that the above
@@ -298,10 +298,12 @@ blk_close(MACRO_PROT_ARGS)
 		if (ntok == nn->tok && MAN_BLOCK == nn->type)
 			break;
 
-	if (NULL != nn)
-		man_unscope(man, nn, MANDOCERR_MAX);
-	else
+	if (NULL == nn) {
 		man_pmsg(man, line, ppos, MANDOCERR_NOSCOPE);
+		if ( ! rew_scope(MAN_BLOCK, man, MAN_PP))
+			return(0);
+	} else 
+		man_unscope(man, nn, MANDOCERR_MAX);
 
 	return(1);
 }
--
 To unsubscribe send an email to source+unsubscribe@mdocml.bsd.lv

^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2013-11-11  0:37 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-11-11  0:37 mdocml: In the parser, when closing an explicit block that is not open, schwarze

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).