4 static void html_doc_beg(struct doc
*doc
)
6 doc_write(doc
, "<body>\n");
9 static void html_doc_end(struct doc
*doc
)
11 doc_write(doc
, "</body>\n");
14 static void html_head_beg(struct doc
*doc
, int level
)
17 sprintf(buf
, "<h%d>", level
+ 1);
21 static void html_head_end(struct doc
*doc
, int level
)
24 sprintf(buf
, "</h%d>", level
+ 1);
28 static void html_par_beg(struct doc
*doc
)
30 doc_write(doc
, "<p>\n");
33 static void html_par_end(struct doc
*doc
)
37 static void html_put(struct doc
*doc
, char *s
)
42 static void html_list_beg(struct doc
*doc
)
44 doc_write(doc
, "<ul>\n");
47 static void html_list_end(struct doc
*doc
)
49 doc_write(doc
, "</ul>\n");
52 static void html_item_beg(struct doc
*doc
)
54 doc_write(doc
, "<li>");
57 static void html_item_end(struct doc
*doc
)
59 doc_write(doc
, "</li>\n");
62 static void html_pre_beg(struct doc
*doc
)
64 doc_write(doc
, "<pre>");
67 static void html_pre_end(struct doc
*doc
)
69 doc_write(doc
, "</pre>");
72 static void html_formula_beg(struct doc
*doc
)
74 doc_write(doc
, "<p><i>");
77 static void html_formula_end(struct doc
*doc
)
79 doc_write(doc
, "</i>\n");
82 static void html_put_emph(struct doc
*doc
, char *s
)
84 doc_write(doc
, "<b>");
86 doc_write(doc
, "</b>");
89 static void html_put_raw(struct doc
*doc
, char *s
)
94 static void html_put_ref(struct doc
*doc
, char *s
)
99 static void html_put_url(struct doc
*doc
, char *url
, char *desc
)
101 char *msg
= desc
&& *desc
? desc
: url
;
102 doc_write(doc
, "<a href=\"");
104 doc_write(doc
, "\">");
106 doc_write(doc
, "</a>");
109 static void html_table_beg(struct doc
*doc
, int columns
)
111 doc_write(doc
, "<table>\n");
114 static void html_table_end(struct doc
*doc
)
116 doc_write(doc
, "</table>\n");
119 static void html_row_beg(struct doc
*doc
)
121 doc_write(doc
, "<tr>");
124 static void html_row_end(struct doc
*doc
)
126 doc_write(doc
, "</tr>\n");
129 static void html_entry_beg(struct doc
*doc
)
131 doc_write(doc
, "<td>");
134 static void html_entry_end(struct doc
*doc
)
136 doc_write(doc
, "</td>");
139 struct fmt_ops html_ops
= {
140 .doc_beg
= html_doc_beg
,
141 .doc_end
= html_doc_end
,
142 .head_beg
= html_head_beg
,
143 .head_end
= html_head_end
,
144 .par_beg
= html_par_beg
,
145 .par_end
= html_par_end
,
146 .list_beg
= html_list_beg
,
147 .list_end
= html_list_end
,
148 .item_beg
= html_item_beg
,
149 .item_end
= html_item_end
,
150 .pre_beg
= html_pre_beg
,
151 .pre_end
= html_pre_end
,
152 .formula_beg
= html_formula_beg
,
153 .formula_end
= html_formula_end
,
154 .table_beg
= html_table_beg
,
155 .table_end
= html_table_end
,
156 .row_beg
= html_row_beg
,
157 .row_end
= html_row_end
,
158 .entry_beg
= html_entry_beg
,
159 .entry_end
= html_entry_end
,
160 .put_emph
= html_put_emph
,
161 .put_raw
= html_put_raw
,
162 .put_ref
= html_put_ref
,
163 .put_url
= html_put_url
,