Aidan Woods
8764512c23
Add SlugRegister so IDs are not duplicated
2020-05-10 14:32:01 +01:00
Aidan Woods
e332b4710a
Add HeaderSlug configurable
...
Adds HeaderSlug configurable, with the option for the slug function
to be customised.
Co-authored-by: netniV <netniv@hotmail.com>
2020-05-10 14:31:55 +01:00
Aidan Woods
c835535176
Implement DefinitionBook as MutableConfigurable
...
This is a slightly more correct implementation, but perhaps not worth
the headache.
2020-05-10 14:19:05 +01:00
Aidan Woods
a6c17f449e
previousEmptyLines -> precedingEmptyLines
2020-01-19 17:15:02 +00:00
Aidan Woods
a2ea704a43
Use list type over int array
2020-01-19 15:23:58 +00:00
Aidan Woods
13932bca9a
Simplify match logic
2020-01-19 15:09:44 +00:00
Aidan Woods
0a1e4bd802
Formatting fix
2019-09-09 23:33:06 +01:00
Aidan Woods
5db3687892
$matches is guarenteed to contain data for the full pattern
2019-09-09 23:26:21 +01:00
Aidan Woods
211a7eb5aa
Tables always acquire previous
2019-07-25 16:18:00 +02:00
Aidan Woods
37f306c3a8
Utilise constant arrays over static vars
2019-07-25 00:45:53 +02:00
Aidan Woods
ea55a9ffb0
Integer keys aren't necessary
2019-07-25 00:33:15 +02:00
Aidan Woods
34902bc80c
Account for type 7 HTML blocks
...
These differ from type 6 blocks in a few ways (other than the HTML
element names given in the spec).
1. Type 7 blocks cannot interrupt paragraphs
2. Type 7 block must contain ONLY whitespace on the rest of the
line, whereas type 6 blocks need only be followed by whitespace
after the tag name, or have the opening tag be complete.
2019-07-25 00:22:09 +02:00
Aidan Woods
7b1389b48b
More specific return type
2019-06-16 21:32:37 +01:00
Aidan Woods
35d24d0b56
PHP < 7 patch
2019-04-07 16:38:46 +01:00
Aidan Woods
3f74fe8347
Port fix for https://github.com/erusev/parsedown/issues/699 into new
...
codebase
2019-04-07 16:38:46 +01:00
Aidan Woods
99525fdd76
Match GFM spec for extended autolinks
...
There is a small list of characters which may precede an autolink
2019-04-07 16:38:45 +01:00
Aidan Woods
33522f0aa4
Normalise link reference lookups
...
Ref: https://github.com/erusev/parsedown/pull/104
2019-04-07 16:38:19 +01:00
Aidan Woods
4adbd0b8a7
Backtracking capable inlines better expressed by interface
2019-04-07 16:38:19 +01:00
Aidan Woods
3ccd64a9a1
Expand public API of Components
...
Ref: https://github.com/erusev/parsedown/issues/694
2019-04-07 16:38:19 +01:00
Aidan Woods
3c0b528d54
Constructor shouldn't be part of public API
2019-04-07 16:38:18 +01:00
Aidan Woods
fc23ca5ef5
Remove more redundant checks
2019-04-07 16:38:17 +01:00
Aidan Woods
30613b2430
Ensure $startPosition is positive
2019-04-07 16:38:16 +01:00
Aidan Woods
3bb24c20a6
Assert marker is correct for hard and soft breaks
2019-04-07 16:38:16 +01:00
Aidan Woods
2b79d599fb
Require State to build and advance blocks
2019-04-07 16:38:15 +01:00
Aidan Woods
36fac49ed8
Remove redundant checks
...
These don't appear to have a measurable positive impact on performance.
2019-04-07 16:38:15 +01:00
Aidan Woods
41fb6b0d43
Move url sanitisation out of Element class
2019-04-07 16:38:15 +01:00
Aidan Woods
a681cf631c
Acquisition capable blocks as an interface
2019-04-07 16:38:15 +01:00
Aidan Woods
c2973100e0
Fix whitespace trimming for soft and hard breaks
2019-04-07 16:38:14 +01:00
Aidan Woods
2efae741bb
Simplify expression
2019-04-07 16:38:14 +01:00
Aidan Woods
660c2e43a3
Paragraph would end itself and new one must start for header row to
...
exist
2019-04-07 16:38:13 +01:00
Aidan Woods
d9792bb12c
Ensure markers are checked when beginning blocks
2019-04-07 16:38:13 +01:00
Aidan Woods
08c40afc16
Test against HTML block endings
2019-04-07 16:38:13 +01:00
Aidan Woods
c310625b93
Length not necessary
2019-04-07 16:38:13 +01:00
Aidan Woods
54f2c4eb4c
Fix recovered spaces calculation
2019-04-07 16:38:12 +01:00
Aidan Woods
117912c373
Substr over indexing string
2019-04-07 16:38:12 +01:00
Aidan Woods
63a97a926b
Remove leftover hackyness
2019-04-07 16:38:12 +01:00
Aidan Woods
a2bca78f7e
Fix whitespace errors
2019-04-07 16:38:11 +01:00
Aidan Woods
f47ba7aa34
Track whitespace left on blank lines to match CommonMark
...
Test changes copy pasted to match CommonMark reference parser
2019-04-07 16:38:10 +01:00
Aidan Woods
49dd8b113d
Make sure closing sequence is removed correctly
2019-04-07 16:38:10 +01:00
Aidan Woods
30763a0f38
HTML tags should have a name
2019-04-07 16:38:10 +01:00
Aidan Woods
3dd1326ded
Trim paragraph contents
2019-04-07 16:38:10 +01:00
Aidan Woods
0f55cd5b26
Permit empty links
2019-04-07 16:38:10 +01:00
Aidan Woods
82d20d8ffe
Markup like CommonMark
2019-04-07 16:38:09 +01:00
Aidan Woods
7fd6e0bb31
Backslash escape like CommonMark
2019-04-07 16:38:09 +01:00
Aidan Woods
62615f4fc5
Allow empty code spans
2019-04-07 16:38:08 +01:00
Aidan Woods
4563ee592d
Don't assume marker type is correct
2019-04-07 16:38:07 +01:00
Aidan Woods
aab56cf8cc
Fix strange formatting
2019-04-07 16:38:07 +01:00
Aidan Woods
d6f526d80f
Return state after block parse instead of mutating the instance copy
2019-04-07 16:38:06 +01:00
Aidan Woods
b728f254b7
Ensure Url parsing is removed all the way down (not just edge)
2019-04-07 16:38:06 +01:00
Aidan Woods
d733c262c2
Cleanup logical operators
2019-04-07 16:38:06 +01:00