summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2015-07-25xml renderer - use sprintf to avoid strbuf_sprintf.John MacFarlane
2015-07-25html renderer - use sprintf to avoid strbuf_printf.John MacFarlane
2015-07-25Avoided another use of strbuf_printf.John MacFarlane
2015-07-25commonmark renderer - use regular sprintf for list markers.John MacFarlane
This avoids an allocation and use of strbuf_printf.
2015-07-25Avoid using strbuf_printf when not needed.John MacFarlane
2015-07-16Allow tabs before closing ##s in ATX headerJohn MacFarlane
2015-07-15Set POSITION_INDEPENDENT_CODE ON for static library.John MacFarlane
See discussion in #39.
2015-07-15Improved `make_autolink`.John MacFarlane
Ensures that title is chunk with empty string rather than NULL, as with other links. Avoids "potential memory leak" warning from clang static analyzer (though I couldn't measure one with valgrind).
2015-07-15Use full CMARK_NODE_x instead of NODE_x alias.John MacFarlane
2015-07-14astyle reformatting.John MacFarlane
2015-07-14Limit 'start' to 8 digits to avoid undefined behavior (overflows).John MacFarlane
This should be added to the spec.
2015-07-13Removed assertion that broke debug build.John MacFarlane
2015-07-13Added `CMARK_OPT_SAFE` option and `--safe` command-line flag.John MacFarlane
* Added `CMARK_OPT_SAFE`. This option disables rendering of raw HTML and potentially dangerous links. * Added `--safe` option in command-line program. * Updated `cmark.3` man page. * Added `scan_dangerous_url` to scanners. * In HTML, suppress rendering of raw HTML and potentially dangerous links if `CMARK_OPT_SAFE`. Dangerous URLs are those that begin with `javascript:`, `vbscript:`, `file:`, or `data:` (except for `image/png`, `image/gif`, `image/jpeg`, or `image/webp` mime types). * Added `api_test` for `OPT_CMARK_SAFE`. * Rewrote `README.md` on security.
2015-07-12commonmark renderer - escape !.John MacFarlane
Now all round-trip tests pass.
2015-07-12Fixed scanner for link url.John MacFarlane
re2c returns the longest match, so we were getting bad results with [link](foo\(and\(bar\)\)) which it would parse as containing a bare `\` followed by an in-parens chunk ending with the final paren.
2015-07-12commonmark writer - escape all #'s, not just at beginning of line.John MacFarlane
This is needed for #s at the end of atx headers.
2015-07-12Fixed soft breaks in commonmark writer.John MacFarlane
2015-07-12Small cleanups.John MacFarlane
Moved begin_line setting into render.c, so you don't need to worry about it in outc.
2015-07-12Use cmark_render_code_point in renderers.John MacFarlane
2015-07-12Fixed type on cmark_render_code_point.John MacFarlane
2015-07-12Added cmark_render_code_point.John MacFarlane
2015-07-12latex renderer - simplified using cmark_render_ascii.John MacFarlane
2015-07-12man renderer: Use ASCII not LIT in outc.John MacFarlane
2015-07-12man renderer: Fixed character escaping, use new cmark_render_ascii.John MacFarlane
2015-07-12render: added cmark_render_ascii, to be used in char escapers.John MacFarlane
2015-07-12Added width parameter to render_man.John MacFarlane
Rewrote man.c using new renderer framework.
2015-07-12Removed options field from renderer struct.John MacFarlane
Added options argument to render_node function, and rearrange argument order.
2015-07-12Removed enumlevel field of renderer.John MacFarlane
Now we just calculate this in the latex renderer.
2015-07-12latex: Removed need to access render->in_tight_list_item.John MacFarlane
Also removed unneeded function.
2015-07-12cmark_render: ensure final newline.John MacFarlane
This allows us to remove direct manipulation of buffer from the latex and commonmark renderers.
2015-07-12commonmark renderer - don't need to manually adjust need_cr.John MacFarlane
2015-07-11Fixed some windows warnings.John MacFarlane
2015-07-11Restructured common renderer code.John MacFarlane
* Added functions for cr, blankline, out to renderer object. * Removed lit (we'll handle this with a macro). * Changed type of out so it takes a regular string instead of a chunk. * Use macros LIT, OUT, BLANKLINE, CR in renderers to simplify code. (Not sure about this, but `renderer->out(renderer, ...)` sure is verbose.)
2015-07-11Rename cmark_render_state -> cmark_renderer.John MacFarlane
2015-07-11render: Simplified code, avoiding some allocations.John MacFarlane
2015-07-11Factored out common bits of rendering into separate render module.John MacFarlane
* Added render.c, render.h. * Moved common functions and definitions from latex.c and commonmark.c to render.c, render.h. * Added a wrapper, cmark_render, that creates a renderer given a character-escaper and a node renderer. Closes #63.
2015-07-11Allow non-initial hyphens in html tag names.John MacFarlane
This allows for custom tags, see jgm/CommonMark#239.
2015-07-11Removed debug.h.John MacFarlane
2015-07-11Removed dependence on debug.h.John MacFarlane
(It uses GNU extensions, and we don't need it anyway.)
2015-07-10Updates for new HTML block spec.John MacFarlane
* Rewrote spec for HTML blocks. A few other spec examples also changed as a result. * Removed old `html_block_tag` scanner. Added new `html_block_start` and `html_block_start_7`, as well as `html_block_end_n` for n = 1-5. * Rewrote block parser for new HTML block spec.
2015-07-09Implemented new treatment of dashes with `--smart`.John MacFarlane
2015-07-07Fixed compiler warnings.John MacFarlane
2015-07-06Use sprintf rather than snprintf because we know it won't overflow.John MacFarlane
A rendered int can't be 20 digits.
2015-07-05Another try at getting snprintf part to compile on Windows.John MacFarlane
2015-07-05Fixed typo in Windows fix.John MacFarlane
2015-07-05LaTeX writer: fixed some compile errors on MSVC.John MacFarlane
2015-07-05LaTeX writer: Fixed straight single, double quote.John MacFarlane
Added comments about required packages.
2015-07-05LaTeX renderer: \textbf for strong.John MacFarlane
2015-07-05astyle formatting improvements.John MacFarlane
2015-07-05Added LaTeX renderer.John MacFarlane
* New exported function in API: `cmark_render_latex`. * Added src/latex.hs. * Updated README and man page. * Closes #31.