Age | Commit message (Collapse) | Author | |
---|---|---|---|
2014-11-22 | Updated JS and C implementations for #209. | John MacFarlane | |
A setext header was being treated a if it were a blank line for purposes of tight/loose list determination. Closes #209. | |||
2014-11-22 | C html renderer: ensure newline before hr or raw html block. | John MacFarlane | |
2014-11-22 | Fixed #214 C and JS implementations. | John MacFarlane | |
They were gobbling whitespace after shortcut reference links, e.g. [foo] bar [foo]: url Closes #214. | |||
2014-11-22 | Make parser accept a char* | Nick Wellnhofer | |
2014-11-22 | Make render_html return a char* | Nick Wellnhofer | |
2014-11-22 | Stackless HTML rendering | Nick Wellnhofer | |
Now that every node has a parent pointer, it's possible to implement the HTML rendering functions without render stacks and any dynamic memory allocations. This commit also adds some minor optimizations that eliminate some strbuf_put* calls for the common case and avoid printf for headers. | |||
2014-11-22 | Fix debug flags | Nick Wellnhofer | |
2014-11-22 | Fix and test node_check | Nick Wellnhofer | |
2014-11-22 | Set defaults for new headers and lists | Nick Wellnhofer | |
2014-11-22 | More tree hierarchy checks and tests | Nick Wellnhofer | |
2014-11-21 | html: Simplified render_stack code. | John MacFarlane | |
Now that we have just one node type, it is not necessary to have two separate 'push' functions. | |||
2014-11-20 | Added utf8proc_is_space. | John MacFarlane | |
2014-11-20 | Added utf8proc_is_punctuation. | John MacFarlane | |
We'll probably need this when the spec for emph/strong gets revised. | |||
2014-11-19 | Merge pull request #208 from nwellnhof/more_accessors_and_tests | John MacFarlane | |
More accessors and tests | |||
2014-11-19 | cmark: Add space before '/' in img tag. | John MacFarlane | |
2014-11-19 | Input validation for setters | Nick Wellnhofer | |
2014-11-19 | Fix {get|set}_string_content | Nick Wellnhofer | |
2014-11-19 | Accessors for start_line, start_column, end_line | Nick Wellnhofer | |
These are read-only as they're only metadata returned by the parser. | |||
2014-11-19 | Accessors for link titles | Nick Wellnhofer | |
2014-11-19 | Accessors for fence info | Nick Wellnhofer | |
Only fence info should be relevant for rendering. Accessors for other fenced code data could be added for completeness but they don't seem very useful. | |||
2014-11-19 | Accessors for list data | Nick Wellnhofer | |
Only 'list_type', 'start', and 'tight' should be relevant for rendering. Accessors for other list data could be added for completeness but they don't seem very useful. | |||
2014-11-19 | Accessors for header level | Nick Wellnhofer | |
2014-11-19 | Accessors for string content of code and HTML blocks | Nick Wellnhofer | |
2014-11-19 | Rename {get|set}_content to {get|set}_string_content | Nick Wellnhofer | |
2014-11-19 | Add cmark_node_insert_after to cmark.h | Nick Wellnhofer | |
Fix copy/paste error. | |||
2014-11-18 | Start with tests for the C API | Nick Wellnhofer | |
The C API tests can be run individually via build/api_test/api_test Or together with the spec tests via cmake --build build --target test | |||
2014-11-18 | Add node constructor and accessors to the public API | Nick Wellnhofer | |
The approach I'm taking is to copy inline literals internally to NULL-terminated C strings if requested by an accessor. This allows to return a 'const char *' that doesn't have to be freed by the caller. | |||
2014-11-18 | Make render_html support nodes with no children | Nick Wellnhofer | |
For empty inline nodes like EMPH, the parser always creates a child containing an empty string. Using the tree manipulation API, nodes with no children can be created. Adjust render_html to cope. | |||
2014-11-18 | Initialize all fields in node when creating inlines. | John MacFarlane | |
2014-11-18 | html: Removed union from RenderStack. | John MacFarlane | |
It doesn't make sense to have a union here, and this simplifies the code. | |||
2014-11-18 | Improve output of tree integrity check | Nick Wellnhofer | |
2014-11-17 | Make sure the emph inline added in process_emphasis has a parent. | John MacFarlane | |
2014-11-17 | Set CMARK_DEBUG_NODES for debug builds. | John MacFarlane | |
2014-11-17 | Make parse_inlines add directly to parent. | John MacFarlane | |
Previously parse_inlines returned a list of parsed inlines. This had to be added to the parent, and fix_parents had to be called to manually add the 'parent' links to the children, and the 'last_child' link to the parent. Now parse_inlines takes the parent block as a parameter, and uses cmark_node_append_child to add the children, so that the pointers should be properly managed. This avoids the need for the fix_parents pass. | |||
2014-11-17 | Set last_child and parent in make_link | Nick Wellnhofer | |
2014-11-17 | Store link labels as children in tree structure | Nick Wellnhofer | |
2014-11-17 | Set prev, parent and last_child for inlines | Nick Wellnhofer | |
2014-11-17 | Move cmark_free_nodes to node.c | Nick Wellnhofer | |
2014-11-17 | Rename ast.h to parser.h | Nick Wellnhofer | |
2014-11-17 | Move reference type definitions to reference.h | Nick Wellnhofer | |
2014-11-17 | Move inline-related stuff to inlines.c | Nick Wellnhofer | |
2014-11-17 | Move public stuff from node.h to cmark.h | Nick Wellnhofer | |
2014-11-17 | Remove old node_block and node_inl | Nick Wellnhofer | |
2014-11-17 | Switch cmark_node_inl over to cmark_node | Nick Wellnhofer | |
2014-11-17 | Switch cmark_node_block over to cmark_node | Nick Wellnhofer | |
2014-11-17 | Start with unified nodes | Nick Wellnhofer | |
2014-11-16 | Free the string returned by html renderer in main program. | John MacFarlane | |
2014-11-16 | Moved refmap from the top-level block node to the doc_parser. | John MacFarlane | |
2014-11-16 | Added some basic functions for traversing/editing blocks in AST. | John MacFarlane | |
2014-11-16 | Export enums for inline, block types, list and list delim types. | John MacFarlane | |
Also switched from `bullet`, `ordered`, `parens`, `period` to `CMARK_BULLET_LIST`, `CMARK_ORDERED_LIST`, `CMARK_PAREN_DELIM`, `CMARK_PERIOD_DELIM`. |