Permalink
Commits on Aug 18, 2018
  1. syntax-extension: add "priv" field.

    MathieuDuponchelle committed Apr 2, 2016
    + And pointer to a free function as well.
  2. cmark_parser: improve lifecycle management.

    MathieuDuponchelle committed Mar 6, 2016
    This slightly breaks API as finish will now return NULL
    after it has been called once, but I believe that's for the
    best.
    
    This fixes potential leaks of root when a parser was fed but
    not finished, and makes reusing a parser instance multiple
    times possible.
  3. Extensions: implement an example "core extension"

    MathieuDuponchelle committed Feb 27, 2016
    Parses tables and stuff
  4. Define blocks constituting a table.

    MathieuDuponchelle committed Feb 28, 2016
    We have no syntax rules yet for creating them natively, but
    future extensions may provide some.
  5. cmark executable: add extension switches

    MathieuDuponchelle committed Feb 27, 2016
    Allow listing and attaching extensions.
    
    Also cleanup valgrind a little by removing exits and using
    cleanup gotos
Commits on Aug 17, 2018
  1. [API]: node: Expose string_content.

    MathieuDuponchelle committed Feb 28, 2016
    By implementing cmark_node_get_string_content and
    cmark_node_set_string_content.
    
    This is useful for vertical rules in extensions, as they may need
    to access it in order to decide whether to update the block.
    
    Unfortunately, this overlaps with get_literal and set_literal.
    
    As far as I can tell we should deprecate these functions, and
    have them follow the get_string_content code path and
    set_string_content for the while.
  2. [API]: node: implement and expose cmark_node_set_user_data_free_func.

    MathieuDuponchelle committed Feb 28, 2016
    Ideally, this would be passed in set_user_data, but this would
    break API.
  3. [API]: node: implement and expose cmark_node_set_type.

    MathieuDuponchelle committed Feb 28, 2016
    This is necessary for extensions implementing vertical rules.
    
    An example is setext headings:
    
    A heading
    ---------
    
    When cmark parses 'A heading', it first creates a paragraph
    block to contain it, it's only when cmark parses the second line
    that the type of the block is changed to the
    CMARK_NODE_TYPE_HEADING type.
  4. [API]: parser: Expose 'setter' methods in cmark_parser.

    MathieuDuponchelle committed Feb 28, 2016
    As opposed to the previous commit, where I exposed getters for
    the private parser structure, this exposes two methods that
    will influence parsing, cmark_parser_add_child and
    cmark_parser_advance_offset.
  5. Implement and expose block parsing API.

    MathieuDuponchelle committed Feb 28, 2016
    + Document the parser structure for internal usage.
  6. Install config.h

    MathieuDuponchelle committed Feb 28, 2016
    + Rename it to cmark_config.h
    + Include it in cmark.h directly
    
    The reason is that we may want to expose API with boolean
    parameters.
    
    This file should really be named cmark_msvc_is_crap.h or
    something subtle like that, but inspiration fails me.
Commits on Jul 19, 2018
  1. Merge pull request commonmark#259 from github/link-parsing-corner-cases

    jgm committed Jul 19, 2018
    add link parsing corner cases to regressions
Commits on Jul 16, 2018
Commits on Jun 11, 2018
  1. Fix spaces on regression test.

    jgm committed Jun 11, 2018
  2. Removed meta from list of block tags.

    jgm committed Jun 11, 2018
    Added regression test.
    
    See commonmark/CommonMark#527.