version 1.24, 2010/06/19 20:46:27 |
version 1.35, 2010/12/24 00:46:49 |
|
|
/* $Id$ */ |
/* $Id$ */ |
/* |
/* |
* Copyright (c) 2008, 2009 Kristaps Dzonsons <kristaps@bsd.lv> |
* Copyright (c) 2008, 2009, 2010 Kristaps Dzonsons <kristaps@bsd.lv> |
* |
* |
* Permission to use, copy, modify, and distribute this software for any |
* Permission to use, copy, modify, and distribute this software for any |
* purpose with or without fee is hereby granted, provided that the above |
* purpose with or without fee is hereby granted, provided that the above |
|
|
TAG_BR, |
TAG_BR, |
TAG_A, |
TAG_A, |
TAG_TABLE, |
TAG_TABLE, |
|
TAG_TBODY, |
TAG_COL, |
TAG_COL, |
TAG_TR, |
TAG_TR, |
TAG_TD, |
TAG_TD, |
TAG_LI, |
TAG_LI, |
TAG_UL, |
TAG_UL, |
TAG_OL, |
TAG_OL, |
|
TAG_DL, |
|
TAG_DT, |
|
TAG_DD, |
|
TAG_BLOCKQUOTE, |
|
TAG_P, |
|
TAG_PRE, |
|
TAG_B, |
|
TAG_I, |
|
TAG_U, |
|
TAG_CODE, |
|
TAG_SMALL, |
TAG_MAX |
TAG_MAX |
}; |
}; |
|
|
|
|
ATTR_CLASS, |
ATTR_CLASS, |
ATTR_STYLE, |
ATTR_STYLE, |
ATTR_WIDTH, |
ATTR_WIDTH, |
ATTR_VALIGN, |
|
ATTR_TARGET, |
|
ATTR_ID, |
ATTR_ID, |
ATTR_SUMMARY, |
ATTR_SUMMARY, |
|
ATTR_ALIGN, |
ATTR_MAX |
ATTR_MAX |
}; |
}; |
|
|
|
|
enum htmltag tag; |
enum htmltag tag; |
}; |
}; |
|
|
struct ord { |
|
struct ord *next; |
|
const void *cookie; |
|
int pos; |
|
}; |
|
|
|
struct tagq { |
struct tagq { |
struct tag *head; |
struct tag *head; |
}; |
}; |
struct ordq { |
|
struct ord *head; |
|
}; |
|
|
|
struct htmlpair { |
struct htmlpair { |
enum htmlattr key; |
enum htmlattr key; |
|
|
struct html { |
struct html { |
int flags; |
int flags; |
#define HTML_NOSPACE (1 << 0) |
#define HTML_NOSPACE (1 << 0) |
#define HTML_IGNDELIM (1 << 2) |
#define HTML_IGNDELIM (1 << 1) |
|
#define HTML_KEEP (1 << 2) |
|
#define HTML_PREKEEP (1 << 3) |
|
#define HTML_NONOSPACE (1 << 4) |
struct tagq tags; |
struct tagq tags; |
struct ordq ords; |
|
void *symtab; |
void *symtab; |
char *base; |
char *base; |
char *base_man; |
char *base_man; |
|
|
char *style; |
char *style; |
char buf[BUFSIZ]; |
char buf[BUFSIZ]; |
size_t buflen; |
size_t buflen; |
struct tag *metaf; |
struct tag *metaf; /* current open font scope */ |
enum htmlfont metal; |
enum htmlfont metal; /* last used font */ |
enum htmlfont metac; |
enum htmlfont metac; /* current font mode */ |
enum htmltype type; |
enum htmltype type; |
}; |
}; |
|
|
|
|
|
|
void print_gen_decls(struct html *); |
void print_gen_decls(struct html *); |
void print_gen_head(struct html *); |
void print_gen_head(struct html *); |
struct tag *print_ofont(struct html *, enum htmlfont); |
|
struct tag *print_otag(struct html *, enum htmltag, |
struct tag *print_otag(struct html *, enum htmltag, |
int, const struct htmlpair *); |
int, const struct htmlpair *); |
void print_tagq(struct html *, const struct tag *); |
void print_tagq(struct html *, const struct tag *); |