version 1.21, 2011/01/25 12:24:27 |
version 1.22, 2011/02/06 22:02:58 |
|
|
#include "libmandoc.h" |
#include "libmandoc.h" |
#include "libroff.h" |
#include "libroff.h" |
|
|
static int data(struct tbl_node *, struct tbl_span *, |
static int data(struct tbl_node *, struct tbl_span *, |
int, const char *, int *); |
int, const char *, int *); |
static struct tbl_span *newspan(struct tbl_node *, struct tbl_row *); |
static struct tbl_span *newspan(struct tbl_node *, int, |
|
struct tbl_row *); |
|
|
|
|
static int |
static int |
data(struct tbl_node *tbl, struct tbl_span *dp, |
data(struct tbl_node *tbl, struct tbl_span *dp, |
int ln, const char *p, int *pos) |
int ln, const char *p, int *pos) |
Line 176 tbl_cdata(struct tbl_node *tbl, int ln, const char *p) |
|
Line 176 tbl_cdata(struct tbl_node *tbl, int ln, const char *p) |
|
} |
} |
|
|
static struct tbl_span * |
static struct tbl_span * |
newspan(struct tbl_node *tbl, struct tbl_row *rp) |
newspan(struct tbl_node *tbl, int line, struct tbl_row *rp) |
{ |
{ |
struct tbl_span *dp; |
struct tbl_span *dp; |
|
|
dp = mandoc_calloc(1, sizeof(struct tbl_span)); |
dp = mandoc_calloc(1, sizeof(struct tbl_span)); |
|
dp->line = line; |
dp->tbl = &tbl->opts; |
dp->tbl = &tbl->opts; |
dp->layout = rp; |
dp->layout = rp; |
dp->head = tbl->first_head; |
dp->head = tbl->first_head; |
Line 226 tbl_data(struct tbl_node *tbl, int ln, const char *p) |
|
Line 227 tbl_data(struct tbl_node *tbl, int ln, const char *p) |
|
rp && rp->first; rp = rp->next) { |
rp && rp->first; rp = rp->next) { |
switch (rp->first->pos) { |
switch (rp->first->pos) { |
case (TBL_CELL_HORIZ): |
case (TBL_CELL_HORIZ): |
dp = newspan(tbl, rp); |
dp = newspan(tbl, ln, rp); |
dp->pos = TBL_SPAN_HORIZ; |
dp->pos = TBL_SPAN_HORIZ; |
continue; |
continue; |
case (TBL_CELL_DHORIZ): |
case (TBL_CELL_DHORIZ): |
dp = newspan(tbl, rp); |
dp = newspan(tbl, ln, rp); |
dp->pos = TBL_SPAN_DHORIZ; |
dp->pos = TBL_SPAN_DHORIZ; |
continue; |
continue; |
default: |
default: |
Line 248 tbl_data(struct tbl_node *tbl, int ln, const char *p) |
|
Line 249 tbl_data(struct tbl_node *tbl, int ln, const char *p) |
|
|
|
assert(rp); |
assert(rp); |
|
|
dp = newspan(tbl, rp); |
dp = newspan(tbl, ln, rp); |
|
|
if ( ! strcmp(p, "_")) { |
if ( ! strcmp(p, "_")) { |
dp->pos = TBL_SPAN_HORIZ; |
dp->pos = TBL_SPAN_HORIZ; |