version 1.18, 2011/04/04 23:04:38 |
version 1.21, 2011/09/03 00:29:21 |
Line 72 mods(struct tbl_node *tbl, struct tbl_cell *cp, |
|
Line 72 mods(struct tbl_node *tbl, struct tbl_cell *cp, |
|
char buf[5]; |
char buf[5]; |
int i; |
int i; |
|
|
|
/* Not all types accept modifiers. */ |
|
|
|
switch (cp->pos) { |
|
case (TBL_CELL_DOWN): |
|
/* FALLTHROUGH */ |
|
case (TBL_CELL_HORIZ): |
|
/* FALLTHROUGH */ |
|
case (TBL_CELL_DHORIZ): |
|
/* FALLTHROUGH */ |
|
case (TBL_CELL_VERT): |
|
/* FALLTHROUGH */ |
|
case (TBL_CELL_DVERT): |
|
return(1); |
|
default: |
|
break; |
|
} |
|
|
mod: |
mod: |
/* |
/* |
* XXX: since, at least for now, modifiers are non-conflicting |
* XXX: since, at least for now, modifiers are non-conflicting |
|
|
goto mod; |
goto mod; |
case ('f'): |
case ('f'): |
break; |
break; |
|
case ('r'): |
|
/* FALLTHROUGH */ |
case ('b'): |
case ('b'): |
/* FALLTHROUGH */ |
/* FALLTHROUGH */ |
case ('i'): |
case ('i'): |
|
|
} |
} |
|
|
switch (tolower((unsigned char)p[(*pos)++])) { |
switch (tolower((unsigned char)p[(*pos)++])) { |
|
case ('3'): |
|
/* FALLTHROUGH */ |
case ('b'): |
case ('b'): |
cp->flags |= TBL_CELL_BOLD; |
cp->flags |= TBL_CELL_BOLD; |
goto mod; |
goto mod; |
|
case ('2'): |
|
/* FALLTHROUGH */ |
case ('i'): |
case ('i'): |
cp->flags |= TBL_CELL_ITALIC; |
cp->flags |= TBL_CELL_ITALIC; |
goto mod; |
goto mod; |
|
case ('1'): |
|
/* FALLTHROUGH */ |
|
case ('r'): |
|
goto mod; |
default: |
default: |
break; |
break; |
} |
} |
Line 427 cell_alloc(struct tbl_node *tbl, struct tbl_row *rp, e |
|
Line 454 cell_alloc(struct tbl_node *tbl, struct tbl_row *rp, e |
|
} |
} |
|
|
static void |
static void |
head_adjust(const struct tbl_cell *cell, struct tbl_head *head) |
head_adjust(const struct tbl_cell *cellp, struct tbl_head *head) |
{ |
{ |
if (TBL_CELL_VERT != cell->pos && |
if (TBL_CELL_VERT != cellp->pos && |
TBL_CELL_DVERT != cell->pos) { |
TBL_CELL_DVERT != cellp->pos) { |
head->pos = TBL_HEAD_DATA; |
head->pos = TBL_HEAD_DATA; |
return; |
return; |
} |
} |
|
|
if (TBL_CELL_VERT == cell->pos) |
if (TBL_CELL_VERT == cellp->pos) |
if (TBL_HEAD_DVERT != head->pos) |
if (TBL_HEAD_DVERT != head->pos) |
head->pos = TBL_HEAD_VERT; |
head->pos = TBL_HEAD_VERT; |
|
|
if (TBL_CELL_DVERT == cell->pos) |
if (TBL_CELL_DVERT == cellp->pos) |
head->pos = TBL_HEAD_DVERT; |
head->pos = TBL_HEAD_DVERT; |
} |
} |
|
|