File: test71.cxx

package info (click to toggle)
tidy-html5 2%3A5.6.0-11
  • links: PTS, VCS
  • area: main
  • in suites: bookworm, bullseye
  • size: 5,512 kB
  • sloc: ansic: 40,477; ruby: 841; sh: 293; makefile: 30; cpp: 30
file content (44 lines) | stat: -rw-r--r-- 1,240 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
/*\ 
 *  20150206 - Test app for Issue #71
 *
 *  A simple API example of getting the body text, first as html,
 *  and then as a raw stream.
 *
 *  Note: This simple test app has no error checking
 *
\*/

#include <stdio.h>
#include "tidybuffio.h"
#include "tidy.h"

static const char *sample =
    "<!DOCTYPE html>\n"
    "<head>\n"
    "<meta charset=utf-8>\n"
    "<title>Test app for Issue #71</title>\n"
    "<body>something &amp; escaped</body>\n"
    "</html>";

int main() {
    printf("\nSimple example of HTML Tidy API use.\n");
    TidyDoc tdoc = tidyCreate();
    TidyBuffer buff;
    tidyBufInit(&buff);
    tidyBufAppend(&buff, (void *)sample, strlen(sample));
    tidyParseBuffer(tdoc, &buff);
    TidyNode body = tidyGetBody(tdoc);
    TidyNode text_node = tidyGetChild(body);
    TidyBuffer buff2;
    tidyBufInit(&buff2);
    printf("This is the 'escaped' text, from tidyNodeGetText(...), suitable for html use...\n");
    tidyNodeGetText(tdoc, text_node, &buff2);
    fwrite(buff2.bp, buff2.size, 1, stdout);
    printf("This is the 'raw' lexer values, from tidyNodeGetValue(...).\n");
    tidyNodeGetValue(tdoc, text_node, &buff2);
    fwrite(buff2.bp, buff2.size, 1, stdout);
    printf("\n");
    return 0;
}

// eof