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

421 Commits

Author SHA1 Message Date
Aidan Woods
7e15d99d90 Remove regex from block rule 2018-04-09 18:09:44 +01:00
Aidan Woods
d2dd736e1b Remove regex from fenced code block
Also remove unused function
2018-04-09 18:09:44 +01:00
Aidan Woods
e74a5bd7ed In theory PHP stores the length of strings, so looking this up should be quick 2018-04-09 18:09:44 +01:00
Aidan Woods
b53aa74a72 Use standard library function 2018-04-09 18:09:44 +01:00
Aidan Woods
3ea08140b6 Remove use of array 2018-04-09 18:09:44 +01:00
Aidan Woods
c45e41950f Use standard library over while loop 2018-04-09 18:09:44 +01:00
Aidan Woods
2faba6fef5 Remove unneeded complete function 2018-04-09 18:09:44 +01:00
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