Age | Commit message (Collapse) | Author | |
---|---|---|---|
2015-01-10 | Regex optimizations in blocks.js. | John MacFarlane | |
2015-01-09 | Moved more regexes into variables. | John MacFarlane | |
2015-01-09 | Put backtick regexes in variables. | John MacFarlane | |
2015-01-09 | Removed redundant condition. | John MacFarlane | |
2015-01-09 | Removed a redundant condition. | John MacFarlane | |
2015-01-09 | Use a switch instead of if-then-else. | John MacFarlane | |
2015-01-09 | Small optimization. | John MacFarlane | |
2015-01-09 | JS linter improvements. | John MacFarlane | |
2015-01-09 | Improved unescapeString performance. | John MacFarlane | |
2015-01-09 | Improved newline parsing efficiency. | John MacFarlane | |
Don't check for `\n` when we know we have one. Gobble spaces after line break. | |||
2015-01-09 | Put limit on AST display as string. | John MacFarlane | |
(AST itself has no nesting limits. BUt this prevents a crash due to recursion in util.inspect.) See #272. | |||
2015-01-09 | Non-recursive version of toAST(). | John MacFarlane | |
Closes #272. | |||
2015-01-09 | Updated renderAST in lib. | John MacFarlane | |
2015-01-09 | JS: Renamed 'c' property to 'literal' to match libcmark. | John MacFarlane | |
2015-01-09 | Added options to render, implemented sourcepos option. | John MacFarlane | |
This adds data-sourcepos attributes on block-level tags in the HTML output. Also added `--sourcepos` command-line option to `js/bin/commonmark`. | |||
2015-01-09 | JS: sourceloc -> sourcepos for confirmity with cmark. | John MacFarlane | |
2015-01-09 | Replaced 'pos' with 'sourceloc', making it an array. | John MacFarlane | |
This is a more compact representation. | |||
2015-01-09 | Added end column position to pos for blocks. | John MacFarlane | |
2015-01-09 | JS: Improved end lines. | John MacFarlane | |
Closes #276. | |||
2015-01-09 | Don't include string_content in output of toAST(). | John MacFarlane | |
2015-01-09 | JS: use c rather than string_content property for code blocks, html. | John MacFarlane | |
string_content is just for the raw string content that will be parsed as inlines, not for the 'real' content of the block element. | |||
2015-01-09 | Rewrote HTML escaping for big performance gain. | John MacFarlane | |
2015-01-09 | Comment fix. | John MacFarlane | |
2015-01-09 | Simplified reMain for more performance gains. | John MacFarlane | |
2015-01-09 | Simplified reMain, with AST manipulation for 2-space hardbreak. | John MacFarlane | |
Small performance improvement. | |||
2015-01-09 | Don't initialize strings, string_content to defined value. | John MacFarlane | |
2015-01-09 | Made `tight` a property of `list_data`. | John MacFarlane | |
2015-01-09 | Initialize more properties of Node. Even better performance! | John MacFarlane | |
2015-01-09 | Initialize more fields in Node. Better performance. | John MacFarlane | |
2015-01-09 | Initialize more fields in Node. | John MacFarlane | |
This helps with performance. | |||
2015-01-09 | Removed makeBlock. Use new Node directly. Initialize more fields. | John MacFarlane | |
2015-01-09 | JS: replace NUL characters with U+FFFD, as per spec. | John MacFarlane | |
2015-01-09 | More JS linter fixes. | John MacFarlane | |
2015-01-09 | JS linter improvements. | John MacFarlane | |
(Note: this is helping performance. We have regained everything we lost with the last major change, and more.) | |||
2015-01-09 | Rename js/lib/html-renderer.js -> js/lib/html.js. | John MacFarlane | |
2015-01-09 | JS linter cleanups. | John MacFarlane | |
2015-01-09 | Use linked list instead of arrays for AST. | John MacFarlane | |
Use the same doubly linked node structure that cmark uses. The primary advantages of this change are (a) simplified code, especially in the renderers, and (b) elimination of the need for recursion, so we can render deeply-nested structures without a stack overflow. A node walker has also been added, for easy AST traversal. * Added js/lib/node.js for nodes. Includes a node walker. * All modules updated to use node structures. * Regularized position information into pos property. * Performance is slightly worse than before, but only marginally, and no doubt there are more optimizations that can be done. | |||
2015-01-09 | js/bench.js: use npm, added markdown-it. | John MacFarlane | |
2015-01-07 | js: Use children instead of inline_content for Paragraph. | John MacFarlane | |
2015-01-07 | js: Use children rather than 'c' for Emph and Strong contents. | John MacFarlane | |
Now we use 'children' uniformly, in both inlines and blocks, for child nodes. | |||
2015-01-07 | js: Changed 'label' in Link, Image to 'children'. | John MacFarlane | |
This matches the C impl. Also removed an unused property. | |||
2015-01-03 | Fixed CDATA regex in js. | John MacFarlane | |
Closes #267. | |||
2015-01-03 | Improved js regex for html comments. | John MacFarlane | |
Closes #263. Note, this only affects inline comments. With block comments we parse differently, and don't guarantee that only valid HTML5 comments will pass. This all needs to be made more explicit in the spec. However, this fix addresses the cpu problem. | |||
2014-12-31 | Updated package.json. | John MacFarlane | |
2014-12-27 | Minor whitespace fixes. | John MacFarlane | |
2014-12-27 | Fixed shadowing error. | John MacFarlane | |
2014-12-25 | JS: fixed parsing of link-in-link-in-image. | John MacFarlane | |
Partially addresses #252. Still need to: - update C parser. - put an example in the spec. | |||
2014-12-25 | Fixed infinite loop in JS parser for link-in-link-in-image. | John MacFarlane | |
Partially addresses #252. This fixes the infinite loop, and brings the JS parser into agreement with cmark, but both still have bad output in this case, so more work is needed. | |||
2014-12-25 | Improved rules for emphasis and strong emphasis. | John MacFarlane | |
This improves parsing of emphasis around punctuation. Background: http://talk.commonmark.org/t/emphasis-inside-strong-broken-in-js-implementation-when-parenthesis-involved/903/6 The basic idea of the change is that if the delimiter is part of a delimiter clump that has punctuation to the left and a normal character (non-space, non-punctuation) to the right, it can only be an opener. If it has punctuation to the right and a normal character (non-space, non-punctuation) to the left, it can only be a closer. This handles cases like **Gomphocarpus (*Gomphocarpus physocarpus*, syn. *Asclepias physocarpa*)** and **foo "*bar*" foo** better than before. The spec section on Emphasis and Strong Emphasis has been extensively revised. The C and JS implementations have been brought up to date, and all tests pass. | |||
2014-12-10 | Further delinting efforts. | John MacFarlane | |