Age | Commit message (Collapse) | Author | |
---|---|---|---|
2014-12-02 | Fix EOF detection | Nick Wellnhofer | |
Fixes issue with Ctrl-D having to be pressed twice when reading from terminal. | |||
2014-11-30 | Renamed cmark_parser_push -> cmark_parser_feed. | John MacFarlane | |
2014-11-29 | Push parser interface | Nick Wellnhofer | |
Replace cmark_parser_process_line with cmark_parser_push that takes arbitrary chunks of data. Also fixes #211. | |||
2014-11-28 | Renamed identifiers in public API: | John MacFarlane | |
cmark_doc_parser => cmark_parser cmark_new_doc_parser => cmark_parser_new cmark_free_doc_parser => cmark_parser_free cmark_finish => cmark_parser_finish cmark_process_line => cmark_parser_process_line cmark_node_destroy => cmark_node_free Closes #223. | |||
2014-11-28 | Avoid potential memory leak. | John MacFarlane | |
Previously, if malloc failed to allocate 'newstack', the function would return without freeing 'stack'. Pointed out by clang static analyzer. | |||
2014-11-28 | Removed unnecessary assignment. | John MacFarlane | |
Clang static analyzer pointed out that the value assigned to 'pos' is never read. | |||
2014-11-28 | Use prefixed names for symbols from references.h | Nick Wellnhofer | |
2014-11-28 | Use prefixed names for symbols from inlines.h | Nick Wellnhofer | |
2014-11-24 | Cast void* for MSVC compatibility | Nick Wellnhofer | |
2014-11-23 | Added 'fenced' flag to cmark_code struct, renamed from cmark_fenced_code. | John MacFarlane | |
Technically we could do without this, since we can check for cmark_fence_length > 0. But it makes the code clearer and doesn't really increase the size of the node struct (because the size of the union is set by the data for lists). | |||
2014-11-23 | Added internal flag to distinguish setext from atx headers. | John MacFarlane | |
2014-11-23 | Do not distinguish btw fenced and indented code in AST. | John MacFarlane | |
Use a single CMARK_NODE_CODE_BLOCK tag for both. Distinguish them when needed for parsing by looking at the fence_length attribute, which is 0 for indented blocks. | |||
2014-11-23 | Revert "Revert "Remove distinction btw atx and setext header in AST."" | John MacFarlane | |
This reverts commit 4570eb2bff2e1b71fa5b6408abbc69c98ff5ff24. | |||
2014-11-23 | Fix segfault on docs without trailing newline | Nick Wellnhofer | |
2014-11-22 | Revert "Remove distinction btw atx and setext header in AST." | John MacFarlane | |
This reverts commit a71423f6ee1b77d9f79d42599ea00b4ca99f5da0. Not quite sure about this change, so reverting for now. Note that we still have a distinction between fenced and indented code blocks in the AST. These two distinctions seem to stand or fall together. | |||
2014-11-22 | Remove distinction btw atx and setext header in AST. | John MacFarlane | |
Now we just have 'header' -- Setext and ATX are just two ways of forming these; it's not a semantic difference that should remain in the AST. | |||
2014-11-22 | Renamed NODE_BQUOTE -> NODE_BLOCK_QUOTE. | John MacFarlane | |
2014-11-22 | Fixed #192. | John MacFarlane | |
The C and JS implementations were not registering blank lines after atx headers for purposes of tight/loose list calculation. Exmaple: * item * # block1 ## block2 | |||
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 | Make parser accept a char* | Nick Wellnhofer | |
2014-11-22 | Fix and test node_check | Nick Wellnhofer | |
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 prev, parent and last_child for inlines | Nick Wellnhofer | |
2014-11-17 | Rename ast.h to parser.h | 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-16 | Moved refmap from the top-level block node to the doc_parser. | 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`. | |||
2014-11-16 | Removed CMARK_CODE_INDENT, CODE_INDENT from public header. | John MacFarlane | |
Now it's in blocks.c, the only module that uses it. | |||
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 | Use named enum types | 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 | Expose lower-level parsing API. | John MacFarlane | |
The new functions cmark_new_doc_parser, cmark_free_doc_parser, cmark_process_line, and cmark_finish allow you to feed lines one by one (possibly from several files) to the parser and call finish when you're done. This is now used in main for mulitple files. | |||
2014-11-14 | Added some includes of buffer.h | John MacFarlane | |
2014-11-13 | Moved the timing macros to get finer-grained information. | John MacFarlane | |
2014-11-13 | Added ast.[c,h] for AST definitions and AST-manipulating functions. | John MacFarlane | |
2014-11-12 | Mark some functions as static | Nick Wellnhofer | |
2014-11-06 | Use non-recursive algorithm for process_inlines. | John MacFarlane | |
Closes #187. | |||
2014-11-06 | Reformatted code consistently. | John MacFarlane | |
2014-11-05 | Made block-freeing slightly more efficient by using last_child. | John MacFarlane | |
2014-11-05 | Made cmark_free_nodes non-recursive. | John MacFarlane | |
See #187. | |||
2014-10-26 | Require space before closing # sequence in ATX header. | John MacFarlane | |
Closes #169. | |||
2014-10-24 | Renamed c program and library stmd -> cmark. | John MacFarlane | |
Also renamed internal library functions accordingly. | |||
2014-10-24 | Add a newline to a line that doesn't end with one. | John MacFarlane | |
Closes #115. | |||
2014-10-24 | Merge branch 'master' of https://github.com/tchetch/stmd into tchetch-master | John MacFarlane | |
Conflicts: src/inlines.c | |||
2014-10-24 | Use unsigned char, not char, throughout. | John MacFarlane | |
Closes #43. | |||
2014-10-18 | Reindented c sources. | John MacFarlane | |
2014-10-06 | - Use of calloc instead of malloc | tchetch | |
- Test for NULL after allocation | |||
2014-09-17 | Better handle trailing backslashes in ATX-style headers | Jordan Milne | |
Previously something like '# `\' would hang the parser while it waited for an extra character that wasn't there. |