version 1.86, 2009/10/03 19:02:45 |
version 1.90, 2009/10/15 01:33:12 |
|
|
|
|
#include "term.h" |
#include "term.h" |
#include "mdoc.h" |
#include "mdoc.h" |
|
#include "chars.h" |
|
#include "main.h" |
|
|
/* FIXME: check HANG lists: they seem to be broken... : |
|
* .Bl -hang -width Ds |
|
* .It a |
|
* b |
|
* .It Fl f Ns Ar option... |
|
* Override default compiler behaviour. See |
|
* .Sx Compiler Options |
|
* for details. |
|
* Override default compiler behaviour. See |
|
* .Sx Compiler Options |
|
* for details. |
|
* Override default compiler behaviour. See |
|
* .Sx Compiler Options |
|
* for details. |
|
* Override default compiler behaviour. See |
|
* .Sx Compiler Options |
|
* for details. |
|
* . |
|
* .It a sasd fasd as afsd sfad sfds sadfs sd sfd ssfad asfd |
|
* Override default compiler behaviour. See |
|
* .Sx Compiler Options |
|
* for details. |
|
* Override default compiler behaviour. See |
|
* .Sx Compiler Options |
|
* for details. |
|
* Override default compiler behaviour. See |
|
* .Sx Compiler Options |
|
* for details. |
|
* Override default compiler behaviour. See |
|
* .Sx Compiler Options |
|
* for details. |
|
* .El |
|
* |
|
*/ |
|
|
|
#define INDENT 5 |
#define INDENT 5 |
#define HALFINDENT 3 |
#define HALFINDENT 3 |
|
|
Line 292 static void print_foot(DECL_ARGS); |
|
Line 259 static void print_foot(DECL_ARGS); |
|
|
|
|
|
void |
void |
mdoc_run(struct termp *p, const struct mdoc *mdoc) |
terminal_mdoc(void *arg, const struct mdoc *mdoc) |
{ |
{ |
const struct mdoc_node *n; |
const struct mdoc_node *n; |
const struct mdoc_meta *m; |
const struct mdoc_meta *m; |
|
struct termp *p; |
|
|
|
p = (struct termp *)arg; |
|
|
|
if (NULL == p->symtab) |
|
switch (p->enc) { |
|
case (TERMENC_ASCII): |
|
p->symtab = chars_init(CHARS_ASCII); |
|
break; |
|
default: |
|
abort(); |
|
/* NOTREACHED */ |
|
} |
|
|
n = mdoc_node(mdoc); |
n = mdoc_node(mdoc); |
m = mdoc_meta(mdoc); |
m = mdoc_meta(mdoc); |
|
|
Line 1579 termp_bd_pre(DECL_ARGS) |
|
Line 1559 termp_bd_pre(DECL_ARGS) |
|
|
|
for (type = -1, i = 0; i < (int)nn->args->argc; i++) { |
for (type = -1, i = 0; i < (int)nn->args->argc; i++) { |
switch (nn->args->argv[i].arg) { |
switch (nn->args->argv[i].arg) { |
|
case (MDOC_Centred): |
|
/* FALLTHROUGH */ |
case (MDOC_Ragged): |
case (MDOC_Ragged): |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case (MDOC_Filled): |
case (MDOC_Filled): |
Line 1609 termp_bd_pre(DECL_ARGS) |
|
Line 1591 termp_bd_pre(DECL_ARGS) |
|
return(1); |
return(1); |
|
|
for (nn = n->child; nn; nn = nn->next) { |
for (nn = n->child; nn; nn = nn->next) { |
|
p->flags |= TERMP_NOSPACE; |
print_node(p, pair, m, nn); |
print_node(p, pair, m, nn); |
if (NULL == nn->next) |
if (NULL == nn->next) |
continue; |
continue; |
if (nn->prev && nn->prev->line < nn->line) |
if (nn->prev && nn->prev->line < nn->line) |
|
term_flushln(p); |
|
else if (NULL == nn->prev) |
term_flushln(p); |
term_flushln(p); |
} |
} |
|
|