- .TH "" "" "" "" ""
- .SH NAME
- .PP
- cmark \- CommonMark parsing, manipulating, and rendering
- .SH SIMPLE INTERFACE
- .IP
- .nf
- \f[C]
- #define\ CMARK_VERSION\ "0.1"
- \f[]
- .fi
- .PP
- Current version of library.
- .IP
- .nf
- \f[C]
- char\ *cmark_markdown_to_html(const\ char\ *text,\ int\ len);
- \f[]
- .fi
- .PP
- Convert \f[C]text\f[] (assumed to be a UTF\-8 encoded string with length
- \f[C]len\f[]) from CommonMark Markdown to HTML, returning a
- null\-terminated, UTF\-8\-encoded string.
- .SH NODE STRUCTURE
- .IP
- .nf
- \f[C]
- typedef\ enum\ {
- \ \ \ \ //\ Block
- \ \ \ \ CMARK_NODE_DOCUMENT,
- \ \ \ \ CMARK_NODE_BLOCK_QUOTE,
- \ \ \ \ CMARK_NODE_LIST,
- \ \ \ \ CMARK_NODE_LIST_ITEM,
- \ \ \ \ CMARK_NODE_CODE_BLOCK,
- \ \ \ \ CMARK_NODE_HTML,
- \ \ \ \ CMARK_NODE_PARAGRAPH,
- \ \ \ \ CMARK_NODE_HEADER,
- \ \ \ \ CMARK_NODE_HRULE,
- \ \ \ \ CMARK_NODE_REFERENCE_DEF,
- typedef\ enum\ {
- \ \ \ \ CMARK_NO_LIST,
- \ \ \ \ CMARK_BULLET_LIST,
- \ \ \ \ CMARK_ORDERED_LIST
- }\ \ cmark_list_type;
- typedef\ enum\ {
- \ \ \ \ CMARK_PERIOD_DELIM,
- \ \ \ \ CMARK_PAREN_DELIM
- }\ cmark_delim_type;
- \f[]
- .fi
- .SH CREATING AND DESTORYING NODES
- .IP
- .nf
- \f[C]
- cmark_node*
- cmark_node_new(cmark_node_type\ type);
- void
- cmark_node_free(cmark_node\ *node);
- \f[]
- .fi
- .SH TREE TRAVERSAL
- .IP
- .nf
- \f[C]
- cmark_node*
- cmark_node_next(cmark_node\ *node);
- cmark_node*
- cmark_node_previous(cmark_node\ *node);
- cmark_node*
- cmark_node_parent(cmark_node\ *node);
- cmark_node*
- cmark_node_first_child(cmark_node\ *node);
- cmark_node*
- cmark_node_last_child(cmark_node\ *node);
- \f[]
- .fi
- .SH ACCESSORS
- .IP
- .nf
- \f[C]
- cmark_node_type
- cmark_node_get_type(cmark_node\ *node);
- const\ char*
- cmark_node_get_string_content(cmark_node\ *node);
- int
- cmark_node_set_string_content(cmark_node\ *node,\ const\ char\ *content);
- int
- cmark_node_get_header_level(cmark_node\ *node);
- int
- cmark_node_set_header_level(cmark_node\ *node,\ int\ level);
- cmark_list_type
- cmark_node_get_list_type(cmark_node\ *node);
- int
- cmark_node_set_list_type(cmark_node\ *node,\ cmark_list_type\ type);
- int
- cmark_node_get_list_start(cmark_node\ *node);
- int
- cmark_node_set_list_start(cmark_node\ *node,\ int\ start);
- int
- cmark_node_get_list_tight(cmark_node\ *node);
- int
- cmark_node_set_list_tight(cmark_node\ *node,\ int\ tight);
- const\ char*
- cmark_node_get_fence_info(cmark_node\ *node);
- int
- cmark_node_set_fence_info(cmark_node\ *node,\ const\ char\ *info);
- const\ char*
- cmark_node_get_url(cmark_node\ *node);
- int
- cmark_node_set_url(cmark_node\ *node,\ const\ char\ *url);
- const\ char*
- cmark_node_get_title(cmark_node\ *node);
- int
- cmark_node_set_title(cmark_node\ *node,\ const\ char\ *title);
- int
- cmark_node_get_start_line(cmark_node\ *node);
- int
- cmark_node_get_start_column(cmark_node\ *node);
- int
- cmark_node_get_end_line(cmark_node\ *node);
- \f[]
- .fi
- .SH TREE MANIPULATION
- .IP
- .nf
- \f[C]
- void
- cmark_node_unlink(cmark_node\ *node);
- int
- cmark_node_insert_before(cmark_node\ *node,\ cmark_node\ *sibling);
- int
- cmark_node_insert_after(cmark_node\ *node,\ cmark_node\ *sibling);
- int
- cmark_node_prepend_child(cmark_node\ *node,\ cmark_node\ *child);
- int
- cmark_node_append_child(cmark_node\ *node,\ cmark_node\ *child);
- \f[]
- .fi
- .SH PARSING
- .IP
- .nf
- \f[C]
- cmark_parser\ *cmark_parser_new();
- void\ cmark_parser_free(cmark_parser\ *parser);
- cmark_node\ *cmark_parser_finish(cmark_parser\ *parser);
- void\ cmark_parser_push(cmark_parser\ *parser,\ const\ char\ *buffer,\ size_t\ len);
- cmark_node\ *cmark_parse_document(const\ char\ *buffer,\ size_t\ len);
- cmark_node\ *cmark_parse_file(FILE\ *f);
- \f[]
- .fi
- .SH RENDERING
- .IP
- .nf
- \f[C]
- char\ *cmark_render_ast(cmark_node\ *root);
- char\ *cmark_render_html(cmark_node\ *root);
- \f[]
- .fi
- .SH AUTHORS
- .PP
- John MacFarlane, Vicent Marti, Kārlis Gaņģis, Nick Wellnhofer.
|