diff options
author | Ingo Schwarze <schwarze@openbsd.org> | 2015-04-19 13:50:25 +0000 |
---|---|---|
committer | Ingo Schwarze <schwarze@openbsd.org> | 2015-04-19 13:50:25 +0000 |
commit | 344327def21ee64357a9cdf57c5352f1c5575708 (patch) | |
tree | 9c1fa971d139df98f2c3890c5d8712eaf4436b86 /man_macro.c | |
parent | d4d5d006d52687c2882e89b913c70967626da0e1 (diff) | |
download | mandoc-344327def21ee64357a9cdf57c5352f1c5575708.tar.gz |
Unify node handling functions:
* node_alloc() for mdoc and man_node_alloc() -> roff_node_alloc()
* node_append() for mdoc and man_node_append() -> roff_node_append()
* mdoc_head_alloc() and man_head_alloc() -> roff_head_alloc()
* mdoc_body_alloc() and man_body_alloc() -> roff_body_alloc()
* mdoc_node_unlink() and man_node_unlink() -> roff_node_unlink()
* mdoc_node_free() and man_node_free() -> roff_node_free()
* mdoc_node_delete() and man_node_delete() -> roff_node_delete()
Minus 130 lines of code, no functional change.
Diffstat (limited to 'man_macro.c')
-rw-r--r-- | man_macro.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/man_macro.c b/man_macro.c index 52d88199..77c5ed11 100644 --- a/man_macro.c +++ b/man_macro.c @@ -29,6 +29,7 @@ #include "roff.h" #include "man.h" #include "libmandoc.h" +#include "roff_int.h" #include "libman.h" static void blk_close(MACRO_PROT_ARGS); @@ -110,7 +111,7 @@ man_unscope(struct roff_man *man, const struct roff_node *to) } man->last = n; n = n->parent; - man_node_delete(man, man->last); + roff_node_delete(man, man->last); continue; } if (n->type == ROFFT_BLOCK && @@ -259,8 +260,7 @@ blk_exp(MACRO_PROT_ARGS) rew_scope(man, tok); man_block_alloc(man, line, ppos, tok); - man_head_alloc(man, line, ppos, tok); - head = man->last; + head = roff_head_alloc(man, line, ppos, tok); la = *pos; if (man_args(man, line, pos, buf, &p)) @@ -272,7 +272,7 @@ blk_exp(MACRO_PROT_ARGS) man_macronames[tok], buf + *pos); man_unscope(man, head); - man_body_alloc(man, line, ppos, tok); + roff_body_alloc(man, line, ppos, tok); } /* @@ -290,8 +290,10 @@ blk_imp(MACRO_PROT_ARGS) rew_scope(man, tok); man_block_alloc(man, line, ppos, tok); - man_head_alloc(man, line, ppos, tok); n = man->last; + if (n->tok == MAN_SH || n->tok == MAN_SS) + man->flags &= ~MAN_LITERAL; + n = roff_head_alloc(man, line, ppos, tok); /* Add line arguments. */ @@ -317,7 +319,7 @@ blk_imp(MACRO_PROT_ARGS) /* Close out the head and open the body. */ man_unscope(man, n); - man_body_alloc(man, line, ppos, tok); + roff_body_alloc(man, line, ppos, tok); } void |