1
0
mirror of https://github.com/erusev/parsedown.git synced 2023-08-10 21:13:06 +03:00
Commit Graph

414 Commits

Author SHA1 Message Date
Aidan Woods
b42add3762
Make some regexes possesive 2018-04-09 18:09:43 +01:00
Aidan Woods
107223d3a0
Avoid recomputation 2018-04-09 18:09:43 +01:00
Aidan Woods
d4f1ac465c
String interpolation is slightly faster than concat 2018-04-09 18:09:43 +01:00
Aidan Woods
d6e306d620
Optimise commonly used regexes to fail fast 2018-04-09 18:09:04 +01:00
Aidan Woods
dc5cf8770b
The AST has high complexity here (and so traversal is hard anyway)
We gain quite a bit of a speed boost by working with text here
since this is a very common function
2018-04-09 18:09:04 +01:00
Aidan Woods
70f5c02d47
Use non-nestable values as keys for O(1) lookup 2018-04-09 18:09:04 +01:00
Aidan Woods
90ad738933
General readability 2018-04-09 18:09:04 +01:00
Aidan Woods
f2327023c1
No need to unset if not set 2018-04-09 18:09:04 +01:00
Aidan Woods
6f13f97674
Use mutating loop instead of array_map 2018-04-09 18:08:58 +01:00
Aidan Woods
cb33daf0e6
Assert table header does not contain new lines 2018-04-09 16:38:03 +01:00
Aidan Woods
043c55e4c6
Give paragraph block semantics for overloading 2018-04-09 15:12:17 +01:00
Aidan Woods
e4cd13350b
Remove setLiteralBreaks 2018-04-09 15:11:45 +01:00
Aidan Woods
ae8067e862
Swap undefined type for type === 'Paragraph' for ease of reading
The way in which we use this assumes that it is a paragraph, for example
appending text into the handler argument — so there is no loss of
generality here, we're simply being explicit.
2018-04-09 14:48:48 +01:00
Aidan Woods
5353ebb524
Avoid needing two arrays
We only need to collect elements, we can discard finished blocks
2018-04-09 14:48:39 +01:00
Aidan Woods
39df7d4f8e
Swap 'hidden' blocks for empty elements 2018-04-09 14:46:24 +01:00
Aidan Woods
3f5b0ee781
Count number of interrupts 2018-04-09 14:13:10 +01:00
Aidan Woods
43d25a74fe
Fix function name 2018-04-08 18:40:50 +01:00
Aidan Woods
86940be224
Use mutating loop instead of creating new array 2018-04-08 17:49:36 +01:00
Aidan Woods
cdaf86b039
Add seperate depth-first function instead of replacing recursive method 2018-04-08 17:39:24 +01:00
Aidan Woods
1d65fb858a
Restore file permission to that of 1.7.1 2018-04-08 14:30:23 +01:00
Aidan Woods
600db7e4de
Bump version const to 1.8.0-beta-1 2018-04-08 02:46:30 +01:00
Aidan Woods
387ef63888
Replace array reduce with foreach loop for PHP 5.3 compat 2018-04-06 20:55:27 +01:00
Aidan Woods
68be90348c
Revert "Explicitly capture $this for PHP 5.3" 2018-04-06 20:50:34 +01:00
Aidan Woods
0039cd00f8
Explicitly capture $this for PHP 5.3 2018-04-06 20:40:25 +01:00
Aidan Woods
c6b717cc35
Merge pull request #604 from aidantwoods/fix/autobreak
Ensure autobreak false is honoured over empty name
2018-04-06 20:00:32 +01:00
Aidan Woods
8f3f61883d
Merge pull request #603 from aidantwoods/fix/recursion
Apply depth first
2018-04-06 19:57:55 +01:00
Aidan Woods
4c9ea94d0c
Apply depth first to avoid risk of segfault if closure creates subelements 2018-04-06 19:52:25 +01:00
Aidan Woods
32e69de014
Ensure autobreak false is honoured over empty name 2018-04-06 19:51:27 +01:00
Aidan Woods
201299ddc2
Merge pull request #602 from aidantwoods/enhancement/text-elements
Split some of `text` into `textElements`
2018-04-06 19:50:24 +01:00
Aidan Woods
557db7c179
Split some of text into textElements
`process` is no longer needed
2018-04-06 18:11:27 +01:00
Aidan Woods
9b7b7348b4
Merge pull request #598 from aidantwoods/enhancement/set-literal-breaks
Add literalBreaks support
2018-04-06 15:06:45 +01:00
Aidan Woods
06b810cd4a
Fix fenced code block closer to match CommonMark rules 2018-04-05 16:55:14 +01:00
Aidan Woods
24e48e91c8
Add literalBreaks support
Line breaks will be converted to <br />
2018-04-05 01:01:52 +01:00
Aidan Woods
1c8f6bc253
Merge pull request #594 from aidantwoods/enhancement/ast-recursion-helper
Add recursive helper for AST
2018-04-02 19:53:58 +01:00
Aidan Woods
772c919b05
Fix bug where empty atx headings would not be recognised (CommonMark)
Fixes #595
2018-04-02 17:18:01 +01:00
Aidan Woods
cf6d23de55
Rename hashtags enabled to strict mode
We can use this to seperate any intentional spec deviations from
spec behaviour so users can pick between compatability and spec
implementations
2018-04-02 17:18:01 +01:00
Nathan Baulch
d0279cdd3b
Enable #hashtag support via setting 2018-04-02 17:18:01 +01:00
Nathan Baulch
8a90586218
Support #hashtag per CommonMark and GFM specs 2018-04-02 17:18:00 +01:00
Aidan Woods
390fa0da1b
This is probably faster than duplicating the closure 2018-04-01 17:55:32 +01:00
Aidan Woods
9026b1abdb
Add recursive helper for AST, use this for implementation of calling handler
recursively
2018-04-01 17:10:49 +01:00
Aidan Woods
535110c57e
Add process method so extensions may process final AST without
copying implementation of `text`
2018-03-31 23:23:12 +01:00
Aidan Woods
ce073c9baa
Merge pull request #576 from aidantwoods/enhancement/moar-ast
Produce AST prior to render
2018-03-31 23:11:45 +01:00
Aidan Woods
e4d6c8f911 Add support for recursive handlers 2018-03-31 22:01:38 +01:00
Aidan Woods
aa90dd481a
Match CommonMark spec on HTML comments:
Start condition: line begins with the string `<!--`.
End condition: line contains the string `-->`.
2018-03-30 19:22:50 +01:00
Aidan Woods
9f1f5de387
Add recursive handle methods to generate entire AST for traversal 2018-03-28 20:59:56 +01:00
Aidan Woods
a9c21447ce
Only interrupt paragraph if starting with 1 2018-03-28 15:38:11 +01:00
Aidan Woods
40e797031e
Old handler compatability layer 2018-03-28 03:42:38 +01:00
Aidan Woods
92e426e0e8
Fix merging of adjacent blockquotes 2018-03-28 03:27:09 +01:00
Aidan Woods
d849d64611
Merge pull request #584 from aidantwoods/fix/tables
Permit 1 column tables with less delimiters
2018-03-27 23:18:41 +01:00
Aidan Woods
00e51ee424
Permit 1 column tables with less delimiters 2018-03-27 23:12:51 +01:00