version 1.93, 2019/04/07 13:16:21 |
version 1.95, 2019/04/07 15:06:56 |
Line 34 static void pnode_print(struct format *, struct pnode |
|
Line 34 static void pnode_print(struct format *, struct pnode |
|
static void |
static void |
pnode_printtext(struct format *f, struct pnode *n) |
pnode_printtext(struct format *f, struct pnode *n) |
{ |
{ |
|
struct pnode *nn; |
char *cp; |
char *cp; |
char last; |
char last; |
|
|
Line 42 pnode_printtext(struct format *f, struct pnode *n) |
|
Line 43 pnode_printtext(struct format *f, struct pnode *n) |
|
return; |
return; |
} |
} |
|
|
|
/* |
|
* Text preceding a macro without intervening whitespace |
|
* requires a .Pf macro. |
|
* Set the spacing flag to avoid a redundant .Ns macro. |
|
*/ |
|
|
|
if (f->linestate != LINE_MACRO && |
|
(nn = TAILQ_NEXT(n, child)) != NULL && nn->spc == 0 && |
|
(nn->node != NODE_TEXT && nn->node != NODE_ESCAPE)) { |
|
macro_open(f, "Pf"); |
|
nn->spc = 1; |
|
} |
|
|
if (f->linestate == LINE_NEW) { |
if (f->linestate == LINE_NEW) { |
last = '\n'; |
last = '\n'; |
f->linestate = LINE_TEXT; |
f->linestate = LINE_TEXT; |
Line 182 pnode_printrefsect(struct format *p, struct pnode *pn) |
|
Line 196 pnode_printrefsect(struct format *p, struct pnode *pn) |
|
|
|
switch (level) { |
switch (level) { |
case 1: |
case 1: |
|
macro_close(p); |
macro_open(p, "Sh"); |
macro_open(p, "Sh"); |
break; |
break; |
case 2: |
case 2: |
|
macro_close(p); |
macro_open(p, "Ss"); |
macro_open(p, "Ss"); |
break; |
break; |
default: |
default: |
Line 240 pnode_printrefmeta(struct format *p, struct pnode *pn) |
|
Line 256 pnode_printrefmeta(struct format *p, struct pnode *pn) |
|
else if (pp->node == NODE_REFENTRYTITLE) |
else if (pp->node == NODE_REFENTRYTITLE) |
title = pp; |
title = pp; |
} |
} |
|
macro_close(p); |
macro_open(p, "Dt"); |
macro_open(p, "Dt"); |
if (title == NULL) |
if (title == NULL) |
macro_addarg(p, "UNKNOWN", ARG_SPACE); |
macro_addarg(p, "UNKNOWN", ARG_SPACE); |
Line 540 pnode_printvarlistentry(struct format *p, struct pnode |
|
Line 557 pnode_printvarlistentry(struct format *p, struct pnode |
|
struct pnode *pp; |
struct pnode *pp; |
int first = 1; |
int first = 1; |
|
|
|
macro_close(p); |
macro_open(p, "It"); |
macro_open(p, "It"); |
TAILQ_FOREACH(pp, &pn->childq, child) { |
TAILQ_FOREACH(pp, &pn->childq, child) { |
if (pp->node != NODE_TERM) |
if (pp->node != NODE_TERM) |
Line 608 pnode_printtgroup2(struct format *f, struct pnode *n) |
|
Line 626 pnode_printtgroup2(struct format *f, struct pnode *n) |
|
while ((nr = pnode_findfirst(n, NODE_ROW)) != NULL) { |
while ((nr = pnode_findfirst(n, NODE_ROW)) != NULL) { |
if ((ne = pnode_findfirst(n, NODE_ENTRY)) == NULL) |
if ((ne = pnode_findfirst(n, NODE_ENTRY)) == NULL) |
break; |
break; |
|
macro_close(f); |
macro_open(f, "It"); |
macro_open(f, "It"); |
pnode_print(f, ne); |
pnode_print(f, ne); |
macro_close(f); |
macro_close(f); |
Line 784 pnode_print(struct format *p, struct pnode *pn) |
|
Line 803 pnode_print(struct format *p, struct pnode *pn) |
|
macro_open(p, "Ql"); |
macro_open(p, "Ql"); |
break; |
break; |
case NODE_LITERALLAYOUT: |
case NODE_LITERALLAYOUT: |
|
macro_close(p); |
macro_argline(p, "Bd", pnode_getattr(pn, ATTRKEY_CLASS) == |
macro_argline(p, "Bd", pnode_getattr(pn, ATTRKEY_CLASS) == |
ATTRVAL_MONOSPACED ? "-literal" : "-unfilled"); |
ATTRVAL_MONOSPACED ? "-literal" : "-unfilled"); |
break; |
break; |