• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /freebsd-12-stable/contrib/mandoc/

Lines Matching defs:man

1 /*	$Id: man.c,v 1.187 2019/01/05 00:36:50 schwarze Exp $ */
33 #include "man.h"
44 man_parseln(struct roff_man *man, int ln, char *buf, int offs)
47 if (man->last->type != ROFFT_EQN || ln > man->last->line)
48 man->flags |= MAN_NEWLINE;
50 return roff_getcontrol(man->roff, buf, &offs) ?
51 man_pmacro(man, ln, buf, offs) :
52 man_ptext(man, ln, buf, offs);
74 man_descope(struct roff_man *man, int line, int offs, char *start)
87 if (man->flags & MAN_ELINE) {
88 while (man->last->parent->type != ROFFT_ROOT &&
89 man_macro(man->last->parent->tok)->flags & MAN_ESCOPED)
90 man_unscope(man, man->last->parent);
91 man->flags &= ~MAN_ELINE;
93 if ( ! (man->flags & MAN_BLINE))
95 man_unscope(man, man->last->parent);
96 roff_body_alloc(man, line, offs, man->last->tok);
97 man->flags &= ~(MAN_BLINE | ROFF_NONOFILL);
101 man_ptext(struct roff_man *man, int line, char *buf, int offs)
108 if (man->flags & ROFF_NOFILL) {
109 roff_word_alloc(man, line, offs, buf + offs);
110 man_descope(man, line, offs, buf + offs);
124 if (man->flags & (MAN_ELINE | MAN_BLINE)) {
128 if (man->last->tok == MAN_SH || man->last->tok == MAN_SS)
130 if (man->last->type == ROFFT_TEXT &&
131 ((ep = man_hasc(man->last->string)) != NULL)) {
135 roff_elem_alloc(man, line, offs, ROFF_sp);
136 man->next = ROFF_NEXT_SIBLING;
160 roff_word_alloc(man, line, offs, buf + offs);
170 man->last->flags |= NODE_EOS;
172 man_descope(man, line, offs, buf + offs);
177 man_pmacro(struct roff_man *man, int ln, char *buf, int offs)
193 tok = roffhash_find(man->manmac, buf + ppos, sz);
232 man_breakscope(man, tok);
233 bline = man->flags & MAN_BLINE;
248 (*man_macro(tok)->fp)(man, tok, ln, ppos, &offs, buf);
252 if (man->quick && tok == MAN_SH) {
253 n = man->last;
266 (man->flags & MAN_BLINE) == 0 ||
267 man->flags & MAN_ELINE ||
271 man_unscope(man, man->last->parent);
272 roff_body_alloc(man, ln, ppos, man->last->tok);
273 man->flags &= ~(MAN_BLINE | ROFF_NONOFILL);
278 man_breakscope(struct roff_man *man, int tok)
288 if (man->flags & MAN_ELINE && (tok < MAN_TH ||
290 n = man->last;
301 roff_node_delete(man, n);
302 man->flags &= ~MAN_ELINE;
310 if (man->flags & MAN_BLINE &&
312 (man->last->tok == MAN_SH || man->last->tok == MAN_SS)) {
313 n = man->last;
314 man_unscope(man, n);
315 roff_body_alloc(man, n->line, n->pos, n->tok);
316 man->flags &= ~(MAN_BLINE | ROFF_NONOFILL);
325 if (man->flags & MAN_BLINE && tok != ROFF_nf && tok != ROFF_fi &&
327 n = man->last;
342 roff_node_delete(man, n);
343 man->flags &= ~(MAN_BLINE | ROFF_NONOFILL);