Aidan Woods
5a50930cb0
Allow inlines to backtrack into characters that were suspected as
...
inlines but ruled out
This is required for backslash escaped Hard breaks to work:
Parsedown first checks to see if these are escape sequences,
however when they are ruled out they should not be assumed to be
plaintext since a later inline (Hardbreak) may backtrack into these
unconsumed characters.
2019-04-07 16:38:04 +01:00
Aidan Woods
1fd2e14b72
Add hard and soft breaks
2019-04-07 16:38:04 +01:00
Aidan Woods
714ae50211
Text variable isn't very useful inside the loop
2019-04-07 16:38:04 +01:00
Aidan Woods
14b3761687
Produce Blocks before converting to StateRenderables
...
(As we do with Inlines)
2019-04-07 16:38:04 +01:00
Aidan Woods
00821bd072
Don't remove right #'s too early (before dealing with whitesapce)
2019-04-07 16:38:03 +01:00
Aidan Woods
b8cdc6e9a5
Remove closing # sequence from header
2019-04-07 16:38:03 +01:00
Aidan Woods
9d97b8eb6a
We should be using strict mode in commonmark benchmark
2019-04-07 16:38:03 +01:00
Aidan Woods
67231cbae1
Tabs are allowed after header delimiter
2019-04-07 16:38:03 +01:00
Aidan Woods
81a2050608
Headers can't start with more than three spaces
2019-04-07 16:38:03 +01:00
Aidan Woods
3d41f270c2
Better name for testing safe mode and strict mode state
...
Add a nice named constructor
2019-04-07 16:38:03 +01:00
Aidan Woods
bb424e606f
Improve indent handling by lists
2019-04-07 16:38:03 +01:00
Aidan Woods
51c3d9d445
Make it clearer this is one backslash character
2019-04-07 16:38:02 +01:00
Aidan Woods
74bba0b2fa
rtrim non hard breaking lines
2019-04-07 16:38:02 +01:00
Aidan Woods
fc37ad11ed
Tabs shouldn't break thematic breaks
2019-04-07 16:38:02 +01:00
Aidan Woods
4e9a0113c3
Thematic breaks can't have an indent of more than 3
2019-04-07 16:38:02 +01:00
Aidan Woods
96d8a1f18c
Add dead code test to composer test script
2019-04-07 16:38:02 +01:00
Aidan Woods
82c981657d
Require Inlines to provide a best plaintext rendering
...
This allows markdown to be parsed "inside" the alt
attribute of an image, and then the best plaintext
can be used as the rest.
This improves CommonMark compliance.
2019-04-07 16:38:02 +01:00
Aidan Woods
576a2c4519
Generalise line parsing to return Inlines before applying state
2019-04-07 16:38:01 +01:00
Aidan Woods
083ad582c7
State management
...
Decouple state from final rendering
Restore initial state after parsing
2019-04-07 16:38:01 +01:00
Aidan Woods
c9388cb5c2
Make use of line name instead of lineElements
2019-04-07 16:38:01 +01:00
Aidan Woods
bb8a16ad81
Remove useless line method
...
This will be achievable by directly restricting enabled Components
2019-04-07 16:38:01 +01:00
Aidan Woods
2cfd05a00e
Test for dead code in travis
2019-04-07 16:38:01 +01:00
Aidan Woods
7f526c07a0
Indent offset is encompassed in Lines object
2019-04-07 16:38:01 +01:00
Aidan Woods
366600034c
This isn't used and is derivable from the indent
2019-04-07 16:38:01 +01:00
Aidan Woods
6add0ea877
Remove useless variables
2019-04-07 16:38:00 +01:00
Aidan Woods
dac6b01d1a
Remove meaningless interrupt check
...
Interrupted implies previousEmptyLines > 0 in incoming Context
2019-04-07 16:38:00 +01:00
Aidan Woods
6f5780abfd
Improve Link API
2019-04-07 16:38:00 +01:00
Aidan Woods
2757274854
Constant arrays to static vars for PHP 5.5
2019-04-07 16:38:00 +01:00
Aidan Woods
37895448ba
Fix PHP 5.6 bug
2019-04-07 16:38:00 +01:00
Aidan Woods
6f1bc7db14
Fix pre PHP7 closure-as-property closure syntax
2019-04-07 16:38:00 +01:00
Aidan Woods
e4ed4da626
More keyword related fixes for pre PHP 7
2019-04-07 16:38:00 +01:00
Aidan Woods
351a68a14c
Remove some return type hints that I missed
2019-04-07 16:37:59 +01:00
Aidan Woods
a9aa7e7aae
Test on PHP 5.5 and 5.6
...
Issue on pre PHP 7 may be to do with method name and not call syntax as
suspected
2019-04-07 16:37:59 +01:00
Aidan Woods
f8003dcded
Remove debug lines
2019-04-07 16:37:59 +01:00
Aidan Woods
ca008872ba
Use latest PHP on non-unit test build staged
2019-04-07 16:37:59 +01:00
Aidan Woods
7188f49a71
7.3 was released, so make failure blocking
2019-04-07 16:37:59 +01:00
Aidan Woods
b3608829e5
Calling static functions on metatype class string is >=PHP7 only
...
🤷♂️
2019-04-07 16:37:59 +01:00
Aidan Woods
f420fad41f
Remove ignore statement for core class :)
2019-04-07 16:37:59 +01:00
Aidan Woods
f58845c480
Bump Psalm version for new static analysis features
2019-04-07 16:37:58 +01:00
Aidan Woods
04816a9944
Adjust tests for new API
...
Remove tests that test old core and extension features
Comment out test for no markup independent of safe mode
2019-04-07 16:37:58 +01:00
Aidan Woods
e2c9b2fa2b
Remap text-level elements retreival
2019-04-07 16:37:58 +01:00
Aidan Woods
799ced66fa
Use Parsedown directly
...
Remove UrlsLinked adjustment--we'll have a better way
of doing that later
2019-04-07 16:37:58 +01:00
Aidan Woods
e6e24a8d0d
Rewrite to use new internals
2019-04-07 16:37:58 +01:00
Aidan Woods
36cfb21908
Remove no longer needed parts of core class
2019-04-07 16:37:58 +01:00
Aidan Woods
dbdbda52a8
Make Parsedown non-extendable and remove comment header
2019-04-07 16:37:58 +01:00
Aidan Woods
114eb0bc5b
Add required imports
2019-04-07 16:37:57 +01:00
Aidan Woods
a286033f52
Implement UrlTag
2019-04-07 16:37:57 +01:00
Aidan Woods
53bb9a6467
Implement Url
2019-04-07 16:37:57 +01:00
Aidan Woods
db1d0a4999
Implement Strikethrough
2019-04-07 16:37:57 +01:00
Aidan Woods
f256352f53
Implement SpecialCharacter
2019-04-07 16:37:57 +01:00