version 1.78, 2019/03/28 20:41:33 |
version 1.80, 2019/04/02 16:24:23 |
Line 438 pnode_printauthor(struct format *f, struct pnode *n) |
|
Line 438 pnode_printauthor(struct format *f, struct pnode *n) |
|
} |
} |
|
|
/* |
/* |
|
* If there is an email address, |
|
* print it on the same macro line. |
|
*/ |
|
|
|
if ((nc = pnode_findfirst(n, NODE_EMAIL)) != NULL) { |
|
pnode_print(f, nc); |
|
pnode_unlink(nc); |
|
} |
|
|
|
/* |
* If there are still unprinted children, end the scope |
* If there are still unprinted children, end the scope |
* with a comma. Otherwise, leave the scope open in case |
* with a comma. Otherwise, leave the scope open in case |
* a text node follows that starts with closing punctuation. |
* a text node follows that starts with closing punctuation. |
Line 642 pnode_print(struct format *p, struct pnode *pn) |
|
Line 652 pnode_print(struct format *p, struct pnode *pn) |
|
break; |
break; |
case NODE_ENVAR: |
case NODE_ENVAR: |
macro_open(p, "Ev"); |
macro_open(p, "Ev"); |
|
break; |
|
case NODE_ESCAPE: |
|
if (p->linestate == LINE_NEW) |
|
p->linestate = LINE_TEXT; |
|
else |
|
putchar(' '); |
|
fputs(pn->b, stdout); |
break; |
break; |
case NODE_FILENAME: |
case NODE_FILENAME: |
macro_open(p, "Pa"); |
macro_open(p, "Pa"); |