Log

Author Commit Date CI Message
Martin Mitas dee8142c 2016-11-27T00:37:22 Handle escapes in link destinations.
Martin Mitas 55afb5ba 2016-11-27T00:09:50 Fix typo.
Martin Mitas ebaee39c 2016-11-26T23:37:05 Fix nesting of links and images.
Martin Mitas d82bf9e0 2016-11-26T23:13:35 md_is_container_mark: If indented as an indented code block, we cannot be a container start. This fixes this: > foo - bar
Martin Mitas 4bb7cf8a 2016-11-26T23:02:44 Fix handling a backslash inside an autolink. This fixes this: <http://example.com/\[\>
Martin Mitas 159c2ee3 2016-11-26T22:48:19 Fix counting line indentation if '\t' is present.
Martin Mitas f1bd8b37 2016-11-26T21:57:24 Fix handling of multi-backtick codespan mark if a backslash precedes. So in this \``code span` the codespan is now correctly recognized.
Martin Mitas 2a70b3ef 2016-11-26T20:32:33 Limit length of code span marks to lower then 256 characters. This protects against a pathologic case generated by $ python -c 'print( "".join(map(lambda x: ("e" + "`" * x), range(1,10000))))'
Martin Mitas 4c96ac26 2016-11-26T20:31:35 Refactorize memory management of MD_LINK_REF_DEF structures.
Martin Mitas aacbbfae 2016-11-26T14:08:27 Minor clean-up.
Martin Mitas 96a92808 2016-11-26T14:00:40 CMakeLists.txt: By default, do Release build.
Martin Mitas 09c7fd7f 2016-11-25T15:17:01 md_text_with_null_replacement: Fix endless loop on a NULL character.
Martin Mitas 6fb7439c 2016-11-25T00:02:46 md_remove_line_breaks: Minor fixes.
Martin Mitas 3eba7f42 2016-11-24T23:50:06 md_analyze_line: End raw HTML block prematurely if enclosing container ends.
Martin Mitas 1d8a4e72 2016-11-24T16:09:44 README.md: Minor update.
Martin Mitas b712bc56 2016-11-24T15:44:58 README.md: Update.
Martin Mitas 8a540274 2016-11-24T15:40:01 README.md: Add section about encoding.
Martin Mitas a930e46f 2016-11-24T15:04:47 Fix build with MSVC.
Martin Mitas 6a1268a7 2016-11-24T14:34:12 README.md: Update.
Martin Mitas 54028ed7 2016-11-24T14:16:47 Implement ordered lists.
Martin Mitas ce319c19 2016-11-24T13:16:22 README.md: Fix some wording.
Martin Mitas 94556881 2016-11-24T13:12:27 Fix some corner cases with blank lines.
Martin Mitas 61f9e2cb 2016-11-24T11:59:59 Implement block quotes.
Martin Mitas b86c7f28 2016-11-24T11:31:28 Implement unordered lists.
Martin Mitas 0887820d 2016-11-23T13:37:16 Remove parsing of block quotes. It is implemented in a wrong way and cannot be reasonaly extended to support other container blocks like lists.
Martin Mitas 2d2086aa 2016-11-23T11:20:25 md_is_table_underline: Check there is at least one pipe on the line.
Martin Mitas 4468c7aa 2016-11-22T03:16:30 md_setup_fenced_code_detail: Make sure we don't iterate beyond document end. (CID 982106)
Martin Mitas 738fb3b8 2016-11-21T15:42:34 Fix parsing link reference definitions with line breaks.
Martin Mitas 16fbd061 2016-11-21T15:15:41 md_is_inline_link_spec: Fix setting of *p_end.
Martin Mitas be7fcc16 2016-11-21T09:47:31 Implement tables. Note it is implemented as an extension. To enable it, the flag MD_FLAG_TABLES must be explicitly specified.
Martin Mitas 77d5eee7 2016-11-21T10:33:52 md_is_setext_underline: On succeess, update p_end to save caller some work.
Martin Mitas 9f1c4b58 2016-11-21T09:48:08 Fix macro MD_FLAG_PERMISSIVEAUTOLINKS.
Martin Mitas b00392c1 2016-11-21T02:48:29 Fix gcc warning in Release build.
Martin Mitas 7d7d3b40 2016-11-21T02:41:39 md2html: Implement URL escaping.
Martin Mitas 20434c8a 2016-11-21T02:08:34 Implement images.
Martin Mitas 2e96328e 2016-11-21T00:27:03 Use first matching link reference definition.
Martin Mitas 5b5c8e7b 2016-11-21T00:17:25 md_analyze_simple_pairing_mark: Fix handling of the "rule of three".
Martin Mitas 342343b6 2016-11-21T00:08:33 Fix prcessing of link contents.
Martin Mitas d4c01063 2016-11-20T23:02:39 Update README.md.
Martin Mitas 6959baec 2016-11-20T22:56:08 Implement inline links.
Martin Mitas 082a4c01 2016-11-20T02:17:01 Fix gcc warnings when building Release build.
Martin Mitas 08cc1df9 2016-11-20T01:44:50 When dealing with nested links, only the inner one is recognized as one.
Martin Mitas 809e611b 2016-11-20T00:57:32 Migrate to CommonMark pecification 0.27.
Martin Mitas d5a8c699 2016-11-20T00:48:36 md_consume_link_reference_definitions: Fix when link references do not compose whole block.
Martin Mitas 36643f4a 2016-11-20T00:16:16 md2html: Fix name of link attribute 'title'.
Martin Mitas 789a5b71 2016-11-20T00:10:41 Fix detection of link label with escapes and new lines.
Martin Mitas 1a247795 2016-11-10T13:22:29 Implement link reference definitions and, partially, link references.
Martin Mitas ef38ecbc 2016-11-19T14:59:58 Refactor to enhance readability of the code. Functions start with md_is_xxx() return TRUE (1) or FALSE (0) instead of 0 and -1. -1 is now reserved for real errors.
Martin Mitas 8f672646 2016-11-19T13:38:06 Better Unicode support.
Martin Mitas 15a3a81f 2016-11-11T16:56:00 Implement e-mail autolinks.
Martin Mitas 0d4b1066 2016-11-07T19:46:43 Refactorize to allow procesing more blocks at once.
Martin Mitas 1ba03589 2016-11-07T20:50:11 md_collect_marks: Optimize the function. Use character map for a fast path and minimize count of branches for specially handled characters. When profiling md2html on a larger documents with output redirected to /dev/null to mitigate I/O, this function was quite a bottleneck. It consummed about 33% of CPU cycles on a longer document input, with this patch applied it drops down to 12%.
Martin Mitas 7c9f5982 2016-11-07T19:48:16 Fix typo in debug output.
Martin Mitas 0ed69376 2016-11-07T17:47:21 md_analyze_lt_gt: Fix assertion condition. The variable detected_end is valid only for 'is_raw_html' case.
Martin Mitas 7ada257f 2016-11-07T17:46:39 For Debug build, #define macro DEBUG.
Martin Mitas 302660b8 2016-10-22T23:36:15 Get rid of unneeded variables.
Martin Mitas e5225137 2016-10-24T10:58:23 scripts/coverity.sh: chmod 755
Martin Mitas af037913 2016-10-14T23:29:48 md_is_html_declaration: Fix possible access beyond document buffer.
Martin Mitas 545b0016 2016-10-14T19:59:42 README.md: Minor update.
Martin Mitas ef5f230f 2016-10-14T19:56:05 Implement permissive autolinks extensions. With MD_FLAG_PERMISSIVEURLAUTOLINKS, we treat not overly complicated URLs as autolinks even without '<' and '>'. With MD_FLAG_PERMISSIVEEMAILAUTOLINKS, we treat not overly complicated e-mail addresses as autolinks even without '<', '>' and without the 'mailto:' scheme. Also expanded md2html utility and tests to cover these.
Martin Mitas 63a31411 2016-10-14T16:10:40 Minor comment cleanup.
Martin Mitas b2a30903 2016-10-14T11:03:20 md_process_doc: Fix use after free (via realloc()). pivot_line points into the lines[], so we must be sure we have a valid pointer after the realloc() when growing the array.
Martin Mitas 9013247e 2016-10-14T03:03:17 md_rollback: Optimize. We skip over as many marks a possible in mot cases. This fixes e.g. the pathological case generated by command $ python -c 'print (("*a **a " * 65000) + "b" + (" a** a*" * 65000))'
Martin Mitas 2ce9548d 2016-10-13T23:10:21 Minor cleanup.
Martin Mitas 3d708ab2 2016-10-13T23:06:15 Simplify logging. No <stdargs.h> needed.
Martin Mitas 684c80ce 2016-10-13T22:38:16 Implement "rule of three". Since 0.26, CommonMark specifies intraword '*' or '_' marks cannot close if sume of opening and closing mark chracters can be divided by three.
Martin Mitas 296c8318 2016-10-13T19:04:36 Implement emphasis and strong emphasis.
Martin Mitas ec6a1cb7 2016-10-13T19:31:05 md_is_html_block_end_condition: Improve the function so we do just a single scan of lines inside the HTML block.
Martin Mitas 977ca3e1 2016-10-13T18:29:13 md_collect_marks: Make a branch to be more friendly ... to CPU branch prediction. This seems to have 20%-effect when bechmarking with md2html (and output redirected to /dev/null) on my machine.
Martin Mitas bb66cf83 2016-10-13T18:28:13 Fix character classification checks to deal with signed as well usnigned char.
Martin Mitas d6f40880 2016-10-11T13:22:44 Fix branching on initialized variable. (Caught with Valgrind.)
Martin Mitas 9af285a6 2016-10-11T12:02:08 Fix transforming a new line into space inside of a code span.
Martin Mitas 55f39e2a 2016-10-11T11:13:16 Fix #definition of MD_ASSERT and MD_UNREACHABLE for non-debug gcc builds.
Martin Mitas a7899c05 2016-10-11T02:34:01 Implement autolinks.
Martin Mitas fec7b9e6 2016-10-11T02:43:40 md_is_html_tag: The tag name cannot contain ':', '.' or '_'.
Martin Mitas c3e63408 2016-10-11T01:19:50 scripts/run-tests.sh: Fix permissions.
Martin Mitas 8fd97d78 2016-10-11T01:11:21 scripts/run-tests.sh: Fix typo.
Martin Mitas 1cfc6a5f 2016-10-11T01:10:11 Incorporate the specification testsuite from CommonMark.
Martin Mitas f6456e35 2016-10-11T00:38:41 Minor clean up of README.md.
Martin Mitas 2b740798 2016-10-11T00:36:39 Implement insecure character (NULL) replacement.
Martin Mitas 04c82c6c 2016-10-10T23:52:13 Optmize the structure MD_MARK for size.
Martin Mitas a3c721b2 2016-10-10T20:01:34 Refactorize/improve analysis of inlines.
Martin Mitas 978e04f9 2016-10-09T01:12:56 Minor cleanup.
Martin Mitas d9e28dc9 2016-10-09T00:53:28 Fix: Code spans and raw HTML have same precedence.
Martin Mitas de2338ec 2016-10-09T00:42:30 Fix: By default, do not collapse whitespace.
Martin Mitas c217261d 2016-10-09T00:26:13 Fix: Handle empty blockquotes correctly.
Martin Mitas feee6256 2016-10-09T00:16:55 Fix: Blank line cannot be part of an indented code block if block quote level differs.
Martin Mitas 088ff08a 2016-10-09T00:08:24 Fix: Check fir indented code block with higher priority then for blockquote.
Martin Mitas fcc10076 2016-10-09T00:03:11 Fix: HTML block type 7 cannot interrupt paragraph.
Martin Mitas d161268d 2016-10-08T23:55:43 Minor fixes.
Martin Mitas 762aee7f 2016-10-08T23:37:02 Fix: Check for HTML block continuation after checking for blockquote mark.
Martin Mitas 14090e2e 2016-10-08T23:30:49 md2html: Output new-line after "</blockquote>".
Martin Mitas f99ad2e8 2016-10-08T23:22:24 Fix: Fenced code info string can contain more then just a language name.
Martin Mitas 5864554c 2016-10-08T23:14:19 Fix: Stop fenced code block if blockquote level changes.
Martin Mitas 9b693331 2016-10-08T22:59:12 Fix: Fence code block indetation base is defined by indentation of opening code fence.
Martin Mitas 59805780 2016-10-08T22:37:39 Fix: Handle empty and/or unclosed fenced code block.
Martin Mitas dac9acdb 2016-10-08T22:21:01 Fix: Strip blank lines at start and end of indented code block.
Martin Mitas fa112a28 2016-10-08T22:11:03 Fix: Do not right trim lines in code block.
Martin Mitas 269fed70 2016-10-08T22:06:20 Fix: Setext underline has to have same blokquote level to recognize it as such.
Martin Mitas d65d95f0 2016-10-08T21:31:09 Remove bogus duplicated piece of code.