=================================================================== RCS file: /cvs/mandoc/Attic/mdocterm.c,v retrieving revision 1.18 retrieving revision 1.21 diff -u -p -r1.18 -r1.21 --- mandoc/Attic/mdocterm.c 2009/02/27 10:55:16 1.18 +++ mandoc/Attic/mdocterm.c 2009/02/28 21:31:13 1.21 @@ -1,4 +1,4 @@ -/* $Id: mdocterm.c,v 1.18 2009/02/27 10:55:16 kristaps Exp $ */ +/* $Id: mdocterm.c,v 1.21 2009/02/28 21:31:13 kristaps Exp $ */ /* * Copyright (c) 2008 Kristaps Dzonsons * @@ -112,7 +112,7 @@ main(int argc, char *argv[]) if (NULL == (mdoc = mmain_mdoc(p))) mmain_exit(p, 1); - termp.maxrmargin = 80; /* XXX */ + termp.maxrmargin = 78; /* XXX */ termp.rmargin = termp.maxrmargin; termp.maxcols = 1024; termp.offset = termp.col = 0; @@ -465,6 +465,10 @@ pescape(struct termp *p, const char *word, size_t *i, /* FALLTHROUGH */ case ('.'): chara(p, word[*i]); + break; + case ('e'): + chara(p, '\\'); + break; default: break; } @@ -554,7 +558,14 @@ word(struct termp *p, const char *word) if ( ! xisspace(word[i])) { j++; continue; + } + + /* Escaped spaces don't delimit... */ + if (i > 0 && xisspace(word[i]) && '\\' == word[i - 1]) { + j++; + continue; } + if (0 == j) continue; assert(i >= j);