tadd strikethrough, blink. refactor bitmasks for displaytypes - webdump - [FORK] git://git.codemadness.org/webdump
(HTM) git clone git://git.z3bra.org/webdump.git
(DIR) Log
(DIR) Files
(DIR) Refs
(DIR) README
(DIR) LICENSE
---
(DIR) commit 7b43920e76626603478ed53f5d6138fcaae1aec8
(DIR) parent 2720d0c98e33bf3bfce68368087b7e2ec35ce304
(HTM) Author: Hiltjo Posthuma <hiltjo@codemadness.org>
Date: Fri, 22 Nov 2019 13:14:24 +0100
add strikethrough, blink. refactor bitmasks for displaytypes
Diffstat:
M webdump.c | 71 +++++++++++++++++--------------
1 file changed, 39 insertions(+), 32 deletions(-)
---
(DIR) diff --git a/webdump.c b/webdump.c
t@@ -53,21 +53,24 @@ static int linkcount;
enum DisplayType {
DisplayUnknown = 0,
- DisplayNone = 1,
- DisplayPre = 2,
- DisplayInline = 4,
- DisplayInlineBlock = 8,
- DisplayBlock = 16,
- DisplayList = 32,
- DisplayListOrdered = 64,
- DisplayListItem = 128,
- DisplayTable = 256,
- DisplayTableRow = 512,
- DisplayTableCell = 1024,
- DisplayHeader = 2048,
- DisplayBold = 4096,
- DisplayItalic = 8192,
- DisplayUnderline = 16384,
+ DisplayNone = 1 << 0,
+ DisplayPre = 1 << 1,
+ DisplayInline = 1 << 2,
+ DisplayInlineBlock = 1 << 3,
+ DisplayBlock = 1 << 4,
+ DisplayList = 1 << 5,
+ DisplayListOrdered = 1 << 6,
+ DisplayListItem = 1 << 7,
+ DisplayTable = 1 << 8,
+ DisplayTableRow = 1 << 9,
+ DisplayTableCell = 1 << 10,
+ DisplayHeader = 1 << 11,
+ DisplayBold = 1 << 12,
+ DisplayItalic = 1 << 13,
+ DisplayUnderline = 1 << 14,
+ DisplayBlink = 1 << 15, /* lol */
+ DisplayReverse = 1 << 16,
+ DisplayStrike = 1 << 17,
};
struct tag {
t@@ -113,23 +116,27 @@ static int curnode;
static struct tag tags[] = {
/* pre */
- { "pre", DisplayPre },
- { "code", DisplayPre },
+ { "pre", DisplayPre },
+ { "code", DisplayPre | DisplayReverse },
/* inline */
{ "b", DisplayInline | DisplayBold },
- { "i", DisplayInline | DisplayItalic },
- { "u", DisplayInline | DisplayUnderline },
{ "strong", DisplayInline | DisplayBold },
+ { "i", DisplayInline | DisplayItalic },
{ "em", DisplayInline | DisplayItalic },
+ { "u", DisplayInline | DisplayUnderline },
+ { "blink", DisplayInline | DisplayBlink },
+ { "del", DisplayInline | DisplayStrike },
+ { "s", DisplayInline | DisplayStrike },
+ { "strike", DisplayInline | DisplayStrike },
/* table */
{ "table", DisplayTable },
/* table-row */
- { "tr", DisplayTableRow, DisplayTable },
+ { "tr", DisplayTableRow, DisplayTable },
/* table-cell */
- { "td", DisplayTableCell, DisplayTableRow },
- { "th", DisplayTableCell | DisplayBold, DisplayTableRow },
+ { "td", DisplayTableCell, DisplayTableRow },
+ { "th", DisplayTableCell | DisplayBold, DisplayTableRow },
/* list-item */
- { "li", DisplayListItem, DisplayList },
+ { "li", DisplayListItem, DisplayList },
/* header */
{ "h1", DisplayHeader | DisplayBold },
{ "h2", DisplayHeader | DisplayBold },
t@@ -141,18 +148,18 @@ static struct tag tags[] = {
{ "br", 0 },
/* list */
{ "ul", DisplayList },
- { "ol", DisplayList|DisplayListOrdered },
+ { "ol", DisplayList | DisplayListOrdered },
/* block */
- { "p", DisplayBlock },
+ { "p", DisplayBlock },
{ "blockquote", DisplayBlock },
- { "hr", DisplayBlock },
- { "title", DisplayBlock },
- { "nav", DisplayBlock },
- { "main", DisplayBlock },
+ { "hr", DisplayBlock },
+ { "title", DisplayBlock },
+ { "nav", DisplayBlock },
+ { "main", DisplayBlock },
{ "article", DisplayBlock },
- { "header", DisplayBlock },
- { "footer", DisplayBlock },
- { "div", DisplayBlock },
+ { "header", DisplayBlock },
+ { "footer", DisplayBlock },
+ { "div", DisplayBlock },
};
static const char *ignorestate, *endtag;