-/* $OpenBSD: mandoc.h,v 1.222 2022/08/15 17:59:00 schwarze Exp $ */
+/* $OpenBSD: mandoc.h,v 1.223 2022/08/16 17:29:18 schwarze Exp $ */
/*
* Copyright (c) 2012-2022 Ingo Schwarze <schwarze@openbsd.org>
* Copyright (c) 2010, 2011, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
#define ASCII_NBRZW 30 /* non-breaking zero-width space */
#define ASCII_BREAK 29 /* breakable zero-width space */
#define ASCII_HYPH 28 /* breakable hyphen */
+#define ASCII_ESC 27 /* escape sequence from copy-in processing */
+#define ASCII_TABREF 26 /* reset tab reference position */
/*
* Status level. This refers to both internal status (i.e., whilst
-/* $OpenBSD: roff.c,v 1.266 2022/06/07 09:41:22 schwarze Exp $ */
+/* $OpenBSD: roff.c,v 1.267 2022/08/16 17:29:18 schwarze Exp $ */
/*
* Copyright (c) 2010-2015, 2017-2022 Ingo Schwarze <schwarze@openbsd.org>
* Copyright (c) 2008-2012, 2014 Kristaps Dzonsons <kristaps@bsd.lv>
#include "tbl_parse.h"
#include "eqn_parse.h"
-/*
- * ASCII_ESC is used to signal from roff_getarg() to roff_expand()
- * that an escape sequence resulted from copy-in processing and
- * needs to be checked or interpolated. As it is used nowhere
- * else, it is defined here rather than in a header file.
- */
-#define ASCII_ESC 27
-
/* Maximum number of string expansions per line, to break infinite loops. */
#define EXPAND_LIMIT 1000
cp++;
break;
case '\\':
- newesc = 1;
+ /*
+ * Signal to roff_expand() that an escape
+ * sequence resulted from copy-in processing
+ * and needs to be checked or interpolated.
+ */
cp[-pairs] = ASCII_ESC;
+ newesc = 1;
pairs++;
cp++;
break;