summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2014-09-18Merge pull request #130 from JordanMilne/find_special_lookupJohn MacFarlane
Use a lookup table for subject_find_special_char
2014-09-18Use a lookup table for subject_find_special_charJordan Milne
2014-09-17Merge pull request #97 from Knagis/masterJohn MacFarlane
Updated runtests.pl to support Windows
2014-09-18Add missing headerVicent Marti
2014-09-17Merge pull request #66 from vmg/revampJohn MacFarlane
Enfastenate the C Parsenator
2014-09-17Use helper functions to simplify code.John MacFarlane
2014-09-17Better handle trailing backslashes in ATX-style headersJordan Milne
Previously something like '# `\' would hang the parser while it waited for an extra character that wasn't there.
2014-09-16Revert "Re-added backtracking and memoization."John MacFarlane
This reverts commit ac8529c9f55da7fdc1186e3f34313cf411de6e71.
2014-09-16Re-added backtracking and memoization.John MacFarlane
Gives better results for things like **foo*
2014-09-16Small performance tweaks.John MacFarlane
2014-09-16Fixed bug in parsing `* **a** b*` etc.John MacFarlane
2014-09-16New parseEmphasis algorithm.John MacFarlane
- State machine for emphasis parsing. - This would require some adjustments to the spec and spec examples. - It currently blows the stack on `tricky'. - Memoization code has been commented out. - Inline parsers return arrays.
2014-09-16Merge pull request #124 from rlidwka/patch-1John MacFarlane
typo fix
2014-09-16typo fixAlex Kocharin
2014-09-15Merge pull request #90 from ousia/masterJohn MacFarlane
typo replacing CommonMark corrected
2014-09-15Cleanup external APIsVicent Marti
2014-09-11Fixed performance regression from eccc23dc8d.John MacFarlane
2014-09-11Fixed typo.John MacFarlane
starting
2014-09-11jshint improvements.John MacFarlane
2014-09-11Reindented source with js2-mode.John MacFarlane
2014-09-11Clarified code logic for last_emphasis_closer.John MacFarlane
2014-09-11Add check for null in last_emphasis_closer.John MacFarlane
2014-09-11Renamed last_closer -> last_emphasis_closer.John MacFarlane
2014-09-11Added last_closer to Inline object.John MacFarlane
This helps us avoid unneeded backtracking in pathological input of the form: *a **a *a **a *a etc. If we get to position k without finding a closing delimiter, then backtrack to 1, we can assume we won't find a closing delimiter when parsing forward again. This could no doubt be polished up, e.g. by making it sensitive to the kind of delimiter.
2014-09-11Fixed bug.John MacFarlane
2014-09-11Updated test cases in spec to reflect last change.John MacFarlane
2014-09-11Updated spec (but not yet examples) with new rules.John MacFarlane
These reflect the current parsing algorithm. We now get a symmetry that we lacked before: **a* b* *a *b** are both emphasis within emphasis. One asymmetry remains: **a* has no emphasis, while *a** has emphasis. Further tweaking of the algorithm could regularize this.
2014-09-11Special-case ***xx*** as strong/em.John MacFarlane
2014-09-11Revert "spec: change nesting order of strong/emph in ***a***."John MacFarlane
This reverts commit 49a03b7666e2901d1ab2813fc0bdd23968d22979.
2014-09-11spec: change nesting order of strong/emph in ***a***.John MacFarlane
2014-09-11Simplified parseEmphasis.John MacFarlane
2014-09-11Handle case with 4+ delimiters in a row.John MacFarlane
Spec says to skip these.
2014-09-11Fixed reMain regex for better performance.John MacFarlane
2014-09-11Fixed rewind on parseLabel.John MacFarlane
14 test failures now, all with emphasis. IN most of all of these cases, the examples in the spec seem to be mistakes, given what the spec says. More troubling, performance is down from around 220 to 83. This needs investigation.
2014-09-11Completed conversion to memoized strategy.John MacFarlane
Test suite runs, but many failures.
2014-09-11Cleanup.John MacFarlane
2014-09-11Did parseAutolink.John MacFarlane
2014-09-11Did parseHtmLTag.John MacFarlane
2014-09-11Did parseEntity.John MacFarlane
2014-09-11Did parseBackticks.John MacFarlane
2014-09-11Finished parseEmphasis.John MacFarlane
This seems to work properly. We now get proper results for `***hi**`.
2014-09-11parseEmphasis: added Strong and shell for triples.John MacFarlane
2014-09-11Shell of parseEmphasis.John MacFarlane
2014-09-11Did parseBackslash (used to be parseEscaped).John MacFarlane
2014-09-11New strategy: did parseNewlines, parseString.John MacFarlane
2014-09-11stmd.js: Added memoization of inline parsing.John MacFarlane
2014-09-11Merge branch 'master' of https://github.com/ArtyomKazak/stmdJohn MacFarlane
2014-09-11Fix another broken link.Artyom Kazak
2014-09-11Fix a broken link to the “A parsing strategy” section.Artyom Kazak
(Line lengths changed so that the link wouldn't have to be broken.)
2014-09-10Handle overflows in the codepoint parserVicent Marti