Age | Commit message (Collapse) | Author | |
---|---|---|---|
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-18 | Initialize all fields in node when creating inlines. | John MacFarlane | |
2014-11-17 | Make sure the emph inline added in process_emphasis has a parent. | 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 | Rename ast.h to parser.h | Nick Wellnhofer | |
2014-11-17 | Move inline-related stuff to inlines.c | Nick Wellnhofer | |
2014-11-17 | Switch cmark_node_inl over to cmark_node | Nick Wellnhofer | |
2014-11-16 | Probe for stdbool.h | Nick Wellnhofer | |
Let cmake create a cmark_config.h file to deal with platforms missing stdbool.h. | |||
2014-11-16 | Rename variables named 'new' | Nick Wellnhofer | |
Needed for C++ compatibility. | |||
2014-11-16 | Cast void pointers explicitly | Nick Wellnhofer | |
Needed for C++ compatibility. | |||
2014-11-16 | Moved AST details from public header cmark.h to private ast.h. | John MacFarlane | |
2014-11-15 | Don't expose append_inlines. | John MacFarlane | |
2014-11-13 | Removed ast modules, moved these defs back to cmark.h. | John MacFarlane | |
2014-11-13 | Moved ast-manipulating functions from inlines to ast. | John MacFarlane | |
2014-11-13 | inline static -> static inline for consistency. | John MacFarlane | |
2014-11-13 | Moved cmark_free_inlines from inlines to ast. | John MacFarlane | |
2014-11-12 | Merge pull request #195 from nwellnhof/fix_namespace_pollution | John MacFarlane | |
Fix namespace pollution | |||
2014-11-12 | Mark some functions as static | Nick Wellnhofer | |
2014-11-12 | Removed some no-longer-used code in C impl. | John MacFarlane | |
2014-11-11 | Don't include debug.h in any production code. | John MacFarlane | |
It uses some GNU-specific things. | |||
2014-11-10 | Fixed memory allocation bug. | John MacFarlane | |
2014-11-10 | Allow images to contain images. | John MacFarlane | |
2014-11-10 | Variable renaming in inlines.c. | John MacFarlane | |
2014-11-09 | Fixed bug. | John MacFarlane | |
Need to remove open delimiters from the stack when they don't match for a link. | |||
2014-11-09 | Restored priority of links over emphasis grouping. | John MacFarlane | |
Now when we encounter (possibly) closing `*` or `_` delimiters, we simply add them to the delimiters stack. This gets processed by `process_emphasis` either (a) when a link is created (in which case only the inlines created by the link are processed) or at the end of processing a run of inlines. | |||
2014-11-09 | Added MAX_LINK_LABEL_LENGTH to cmark.h. | John MacFarlane | |
Use in link label parsing and reference lookup. | |||
2014-11-09 | Removed some unused code. | John MacFarlane | |
2014-11-09 | Disallow links inside links and images inside images. | John MacFarlane | |
2014-11-09 | Fixed backslash-escape inside link label. | John MacFarlane | |
Down to 8 failures, all cases where the spec will need to be changed to reflect lack of priority of links over emphasis. | |||
2014-11-09 | Fixed problem with images. | John MacFarlane | |
2014-11-09 | Fixed allocation issue. | John MacFarlane | |
2014-11-09 | Got ref links working, but with deallocation issues. | John MacFarlane | |
2014-11-09 | Got inline links working. | John MacFarlane | |
2014-11-09 | Initial steps towards link parsing. | John MacFarlane | |
2014-11-09 | Simplified link_label parser. | John MacFarlane | |
It now just scans for an unescaped `]`. No `[` characters are permitted in labels. Backticks don't have their usual meaning in labels. This accords with the behavior of some of the main Markdown parsers: marked, sundown, discount, kramdown, showdown, Markdown.pl, PHP Markdown. | |||
2014-11-07 | Removed unused emphasis_nestlevel. | John MacFarlane | |
2014-11-07 | Factored out push_delimiter. | John MacFarlane | |
Conflicts: src/inlines.c | |||
2014-11-07 | Replace parse_inlines_while with parse_inlines_from_subject. | John MacFarlane | |
2014-11-06 | Quick fix to #168. | John MacFarlane | |
Ultimately we'll have a better (stack-based?) parser for links, and we can have something more elegant. This fix removes an optimization which gave wrong results for `*hi [there*]`. | |||
2014-11-06 | Reformatted code consistently. | John MacFarlane | |
2014-11-05 | Give warning on unknown inline type. | John MacFarlane | |
2014-11-05 | Improved free_inlines. | John MacFarlane | |
2014-11-05 | Removed stack limits in inline parsing. | John MacFarlane | |
This brings back segfaults, but we're now aiming for a better solution, revising the renderer so it doesn't use recursion, and using a stack approach for nested brackets. Removing these limits will allow us to know when we've got it right. See #166, #187. | |||
2014-11-05 | free_inlines: use non-recursive algorithm. | John MacFarlane | |
This will help avoid stack overflows in deeply nested structures. Partially addresses #187 (still need to do renderers). | |||
2014-11-05 | Removed recursive call to handle_strong_emph. | John MacFarlane | |
Closes #186 - in a somewhat different way than in the PR. This is simpler and I don't see any significant impact on performance in my tests. | |||
2014-11-03 | Removed artificial rule for emph/strong markers. | John MacFarlane | |
Previously there was a rule that nothing in a string of more than 3 `*` or `_` characters could close or start emphasis. This was artifical and led to strange asymmetries, e.g. you could have `*a *b**` emph within emph but not `**a **b****` strong within strong. The new parsing strategy makes it easy to remove this limitation. Spec, js, and c implementations have been updated. Spec might need some further grooming. | |||
2014-10-28 | Disallow bracketed labels nested more than 1000 deep. | John MacFarlane | |
For performance reasons. See #166. |