X-Git-Url: https://git.cameronkatri.com/mandoc.git/blobdiff_plain/e8a750dfa5477fc00a25dfade04507581f6b2cd4..cbd14d40ae19e2c31a2e3750bfa78797d5d89cae:/term_ascii.c diff --git a/term_ascii.c b/term_ascii.c index 8283aede..cb7ac294 100644 --- a/term_ascii.c +++ b/term_ascii.c @@ -1,4 +1,4 @@ -/* $Id: term_ascii.c,v 1.18 2011/09/18 14:14:15 schwarze Exp $ */ +/* $Id: term_ascii.c,v 1.21 2013/06/01 14:27:20 schwarze Exp $ */ /* * Copyright (c) 2010, 2011 Kristaps Dzonsons * @@ -68,12 +68,11 @@ static size_t locale_width(const struct termp *, int); static struct termp * ascii_init(enum termenc enc, char *outopts) { - const char *toks[2]; + const char *toks[4]; char *v; struct termp *p; p = mandoc_calloc(1, sizeof(struct termp)); - p->enc = enc; p->tabwidth = 5; p->defrmargin = 78; @@ -93,7 +92,7 @@ ascii_init(enum termenc enc, char *outopts) if (TERMENC_ASCII != enc) { v = TERMENC_LOCALE == enc ? setlocale(LC_ALL, "") : - setlocale(LC_CTYPE, "UTF-8"); + setlocale(LC_CTYPE, "en_US.UTF-8"); if (NULL != v && MB_CUR_MAX > 1) { p->enc = enc; p->advance = locale_advance; @@ -104,14 +103,27 @@ ascii_init(enum termenc enc, char *outopts) } #endif - toks[0] = "width"; - toks[1] = NULL; + toks[0] = "indent"; + toks[1] = "width"; + toks[2] = "mdoc"; + toks[3] = NULL; while (outopts && *outopts) switch (getsubopt(&outopts, UNCONST(toks), &v)) { case (0): + p->defindent = (size_t)atoi(v); + break; + case (1): p->defrmargin = (size_t)atoi(v); break; + case (2): + /* + * Temporary, undocumented mode + * to imitate mdoc(7) output style. + */ + p->mdocstyle = 1; + p->defindent = 5; + break; default: break; }