Alex Kocharin
|
fece91e265
|
Fix backtick algorithm
now it more closely matches one in `cmark`
|
4 years ago |
Alex Kocharin
|
1e8aff0084
|
Fix quadratic time on backticks
This commit adds a cache `StateInline->backticks` which remembers
positions for every possible backtick closer (`, ``, ```, etc.).
Algorithm is similar to one described here:
685b714453
close https://github.com/markdown-it/markdown-it/issues/733
|
4 years ago |
Alex Kocharin
|
07a62c6c75
|
Move nested delimiter info to opening token instead of inline state
|
5 years ago |
Alex Kocharin
|
a1c93811f8
|
Fix incorrect level recalculation in text_collapse
close #466
|
5 years ago |
Alex Kocharin
|
378ac9074e
|
Change emphasis parsing algorithm
Tokenize first, and replace tokens with emphasis tags on
a second pass using an algorithm close to one used in CM.
|
9 years ago |
Alex Kocharin
|
f1aff8a5b9
|
Add StateCore.Token and StateCore.push()
so all state objects would have roughly the same interface
|
10 years ago |
Alex Kocharin
|
5a390adbbc
|
Make Token class accessible from a State
|
10 years ago |
Vitaly Puzrin
|
00117cb2e7
|
Changes to improve speed on node 0.12 & iojs
|
10 years ago |
Alex Kocharin
|
4aabd5592e
|
Use a common class for tokens
|
10 years ago |
Alex Kocharin
|
4ce003cb82
|
Remove stateInline.labelUnmatchedScopes
looks like a dead code
|
10 years ago |
Alex Kocharin
|
8cb29935a3
|
Move reference rule to the block chain
|
10 years ago |
Vitaly Puzrin
|
a66e29f8d0
|
Place md link to states and remove other aliases
|
10 years ago |
Alex Kocharin
|
ea62dda30b
|
Remove state.linkLevel
It's redundant after the changes in links algorithm.
|
10 years ago |
Alex Kocharin
|
08f2d3eb4d
|
Forbid nested links, prefer inner one
|
10 years ago |
Vitaly Puzrin
|
c70700151a
|
Updated parsers API - don't rewrite token arrays in StateCore
|
10 years ago |
Vitaly Puzrin
|
6ce8e1b61d
|
Perf: improved inlines cache logic
|
10 years ago |
Vitaly Puzrin
|
2040c4f02e
|
StateInline props rename
|
10 years ago |
Alex Kocharin
|
f74bbf2515
|
Tweak emphasis parsing algorithm
In the case of intersecting tags (e. g. "*foo _bar* baz_") last
complete tag should have a priority.
|
10 years ago |
Vitaly Puzrin
|
0e8d9bec18
|
reordered StateInline properties
|
10 years ago |
Vitaly Puzrin
|
b185148117
|
Cleanup
|
10 years ago |
Vitaly Puzrin
|
6a05b0674c
|
Simplified StateInline
|
10 years ago |
Vitaly Puzrin
|
5bd71f91a7
|
Moved state helpers to State* classes
|
10 years ago |
Alex Kocharin
|
6d4538910c
|
Forbid nested reference links
|
10 years ago |
Alex Kocharin
|
16c34161a5
|
Optimize backtracking in links
|
10 years ago |
Alex Kocharin
|
0705173c87
|
Move link helpers to it's own file
+ return value of parseLink* functions in the state
|
10 years ago |
Alex Kocharin
|
0453b72bf1
|
Rename "lexer" to "parser"
and move rules from lexer_* to rules_*
|
10 years ago |
Alex Kocharin
|
46dc1f93ac
|
Add state.level everywhere
|
10 years ago |
Alex Kocharin
|
b492fa2cc2
|
Add tokenizeSingle method
|
10 years ago |
Alex Kocharin
|
45da119338
|
Parse link reference definitions
|
10 years ago |
Vitaly Puzrin
|
e6341a4812
|
Files reorganize/cleanup
|
10 years ago |
Vitaly Puzrin
|
d87eeb2ab0
|
Assorted fixes & speed opts
|
10 years ago |
Vitaly Puzrin
|
c9af6654f8
|
Reworked whitetspaces cleanup in inlines
|
10 years ago |
Vitaly Puzrin
|
f4866cb76b
|
Inline lexer draft
|
10 years ago |