Emanuil Rusev
b8d1cfe91a
improve extensibility
2014-05-11 22:31:02 +03:00
ScarWu
973d4a866d
add array check
2014-05-11 23:36:01 +08:00
Emanuil Rusev
d19c2b6942
improve names
2014-05-10 16:28:00 +03:00
Emanuil Rusev
4dde57451d
fix consecutive reference links
2014-05-06 17:05:49 +03:00
Emanuil Rusev
44686c4f1e
improve extensibility
2014-05-06 01:12:27 +03:00
Emanuil Rusev
db02ecf259
"reference" is a definition
2014-05-05 14:43:31 +03:00
Emanuil Rusev
aa004d4595
improve code organisation
2014-05-05 14:39:40 +03:00
Emanuil Rusev
1bb65457ed
remove unnecessary comments
2014-05-05 13:46:26 +03:00
Emanuil Rusev
0c9a4af8ab
improve naming consistency
2014-05-03 18:02:06 +03:00
Emanuil Rusev
cc94c1b584
resolve #167
2014-05-02 18:21:10 +03:00
Emanuil Rusev
e8d8801db4
resolve #135
2014-05-01 02:44:35 +03:00
Emanuil Rusev
521803cdcd
resolve #136
2014-05-01 02:42:01 +03:00
Emanuil Rusev
0eb480324c
resolve #145
2014-05-01 02:02:14 +03:00
Emanuil Rusev
7c78aff578
resolve #163
2014-05-01 01:47:14 +03:00
Emanuil Rusev
2a5f99547c
resolve #162
2014-05-01 01:05:31 +03:00
Emanuil Rusev
e373391e7d
resolve #164
2014-05-01 00:29:21 +03:00
Emanuil Rusev
9fa415bcc5
resolve #160
2014-04-28 21:54:38 +03:00
Emanuil Rusev
83d3e3dbbf
improve readability
2014-04-28 02:27:05 +03:00
Emanuil Rusev
307a987cb6
improve naming consistency
2014-04-28 02:14:46 +03:00
Emanuil Rusev
eab3cbf255
remove unnecessary nesting
2014-04-28 02:10:18 +03:00
Emanuil Rusev
cf7f32f891
definitions are not blocks
2014-04-27 01:54:52 +03:00
Emanuil Rusev
5e95242318
improve code consistency
2014-04-26 01:06:14 +03:00
Emanuil Rusev
4f027386b1
"complete" calls should be more consistent
2014-04-24 23:52:42 +03:00
Emanuil Rusev
6081954185
resolve #154
2014-04-18 00:19:22 +03:00
Emanuil Rusev
d841003c65
fenced code blocks should respect indnetation
2014-04-17 23:09:10 +03:00
Emanuil Rusev
f310bbe13f
nested calls to lines should not reset reference definitions
2014-04-17 15:07:09 +03:00
Emanuil Rusev
2595f366d9
texts should not share reference definitions
2014-04-17 14:43:45 +03:00
Emanuil Rusev
5be4491943
make parser class more extensible
2014-04-17 10:59:35 +03:00
Emanuil Rusev
159c3cede6
move deprecated methods to the bottom of the class
2014-04-17 01:11:30 +03:00
Won-Kyu Park
9bf64d2e31
resolve #125 using strpos()
2014-02-27 23:58:24 +09:00
Emanuil Rusev
886c620440
Merge pull request #122 from wkpark/marker_index
...
use $closestMarkerIndex
2014-02-27 14:14:14 +02:00
Won-Kyu Park
e156c418d6
fixup regression due to commit 59907ff7
"simplify em/strong routine"
...
use $closestMarkerIndex correctly
2014-02-26 14:14:56 +09:00
Haralan Dobrev
d8650cd77c
Add set_breaks_enabled() as an alias for BC
...
Backwards-compatibility is kept with versions before PSR-2 naming.
See http://git.io/SsTarw
2014-02-25 00:43:09 +02:00
Emanuil Rusev
3fa9d62572
psr-2 names
2014-02-24 01:38:58 +02:00
Emanuil Rusev
4f851205a7
simplify content types
2014-02-24 00:55:34 +02:00
Emanuil Rusev
0985c2ef29
fix [0] reference labels
2014-02-23 23:43:18 +02:00
Emanuil Rusev
9fd9262f16
implement tables
2014-02-23 18:55:34 +02:00
Emanuil Rusev
a6756fd4fa
resolve #117
2014-02-22 12:35:54 +02:00
Emanuil Rusev
1e8d917f7a
replace synopsis with a more appropriate word
2014-02-21 02:26:23 +02:00
Emanuil Rusev
324eaf7c15
move synopsis to the top
2014-02-21 02:23:17 +02:00
Emanuil Rusev
f972f7f15d
arrange methods
2014-02-21 02:22:31 +02:00
Emanuil Rusev
688b761d32
remove obsolete variables
2014-02-21 02:02:36 +02:00
Emanuil Rusev
b8bd12f565
parser should be less dependent on compiler
2014-02-21 01:54:23 +02:00
Won-Kyu Park
6fed312d3c
fixup internal reference labling to make code more readable
2014-02-19 13:30:46 +09:00
Won-Kyu Park
ccbdfabaff
support HR and headings as block markups
2014-02-17 23:31:08 +09:00
Emanuil Rusev
d29ff18299
resolve #92
2014-02-06 14:16:14 +02:00
Emanuil Rusev
611aed179d
simplify reference
2014-02-06 02:36:22 +02:00
Emanuil Rusev
abb88d59fa
fix reference
2014-02-06 02:36:11 +02:00
Emanuil Rusev
14ab6d46fe
resolve #82
2014-02-06 00:10:18 +02:00
Emanuil Rusev
ebfdace4c6
reference labels should be case insensitive
2014-02-05 14:18:05 +02:00
Emanuil Rusev
ba7f377290
resolve #88 , resolve #81
2014-02-05 14:03:43 +02:00
Emanuil Rusev
548a6f7945
resolve #89
2014-02-05 14:03:43 +02:00
Won-Kyu Park
59907ff757
simplify em/strong routine
...
retry to search em/strong markers to fix nested em/strong correctly
2014-02-03 16:48:28 +09:00
Emanuil Rusev
6e93b68692
outdented is shorter and probably more accurate
2014-02-02 23:41:58 +02:00
Emanuil Rusev
f5f1706e58
improve consistency of list item
2014-02-02 22:27:22 +02:00
Emanuil Rusev
a7510b97e7
dense list items that follow sparse ones should not be rendered as sparse ones
2014-01-31 03:03:52 +02:00
Emanuil Rusev
e9098aebfa
improve parsing of list item and code block by measuring line indentation
2014-01-31 02:19:18 +02:00
Kane Cohen
07b738b1c8
Remove one unnecessary /u flag.
2014-01-29 23:05:05 +00:00
Kane Cohen
f7181ee9b6
Remove /u flag from '*' chars. Add /u to urls.
2014-01-29 22:57:29 +00:00
Kane Cohen
55f360a591
Add unicode support for strong/em regex.
2014-01-29 10:30:21 +00:00
Emanuil Rusev
215ff63594
improve comments
2014-01-29 02:14:59 +02:00
Emanuil Rusev
3d581dcaa9
simplify names of block types
2014-01-27 22:21:58 +02:00
Emanuil Rusev
bbce965a9a
read-only fields should be static
2014-01-27 00:58:18 +02:00
Emanuil Rusev
6069fdac81
refactor parsing of html
2014-01-27 00:10:24 +02:00
Emanuil Rusev
0f090e1a6e
remove trailing line break
2014-01-27 00:08:55 +02:00
Emanuil Rusev
618ab4e156
improve layout of class members
2014-01-26 19:53:24 +02:00
Emanuil Rusev
7661b7c8f9
simplify comments
2014-01-26 19:14:44 +02:00
Emanuil Rusev
8f6495ce86
ternaries should not do more than assign a value
2014-01-26 19:13:08 +02:00
Emanuil Rusev
250ba80356
expression assignments should be separate
2014-01-26 19:05:24 +02:00
Emanuil Rusev
3ac9b96e57
element » block
2014-01-26 13:47:56 +02:00
Emanuil Rusev
b764deca66
improve comments
2014-01-26 03:36:25 +02:00
Emanuil Rusev
65ef541fda
improve comments
2014-01-25 18:47:44 +02:00
Emanuil Rusev
c7b6d0235d
unset brackets should not be separated
2014-01-25 14:53:39 +02:00
Haralan Dobrev
bf6c9a6db2
Use imperative tense in comments
2014-01-24 01:47:44 +02:00
Emanuil Rusev
0494c6b274
improve comments
2014-01-24 01:28:03 +02:00
Emanuil Rusev
3e0c010c1f
improve comments
2014-01-23 23:48:38 +02:00
Emanuil Rusev
3a5eecc23d
replace logical operators with conditionals to improve readability
2014-01-23 22:46:49 +02:00
Emanuil Rusev
c8c5ae9df8
control structures should use braces
2014-01-23 22:34:02 +02:00
Emanuil Rusev
843786c07c
improve comments
2014-01-23 22:08:06 +02:00
Emanuil Rusev
0c61f71e3f
rtrim » chop
2014-01-23 13:07:15 +02:00
Emanuil Rusev
01a147c574
replace tabs with spaces to improve compatibility with psr-2
2014-01-23 00:57:36 +02:00
Emanuil Rusev
f0fbdaa6ca
backtick within code span
2014-01-22 21:28:29 +02:00
Emanuil Rusev
e20c0a29bd
nested elements should render on a new line
2014-01-22 21:28:29 +02:00
Emanuil Rusev
712dd23d30
simplify parsing of list
2014-01-22 21:28:29 +02:00
Emanuil Rusev
68f2871996
resolve #3
2014-01-22 21:28:29 +02:00
Emanuil Rusev
7cb9646d98
simplify compiling of links
2014-01-22 21:28:29 +02:00
Emanuil Rusev
2a0700abda
resolve #61
2014-01-20 22:19:23 +02:00
Emanuil Rusev
4e83d79d76
setters should know nothing
2014-01-20 09:26:25 +02:00
Emanuil Rusev
354842fd6e
simplify compiling
2014-01-19 23:34:20 +02:00
Emanuil Rusev
2b73e94c6c
simplify parsing of escaped characters
2014-01-19 22:49:43 +02:00
Emanuil Rusev
0182812d6c
remove unnecessary blank lines
2014-01-19 15:37:05 +02:00
Emanuil Rusev
f5dd3455f9
resolve #58
2014-01-19 00:52:07 +02:00
Emanuil Rusev
1017f22cdd
fix paragraph list
2014-01-18 16:45:39 +02:00
Emanuil Rusev
88854955d6
take $inline_tags out of the method
2014-01-18 16:45:39 +02:00
Emanuil Rusev
654dd74074
lines that start with inline html should not get parsed as block-level markup, should resolve #54 and #57
2014-01-18 16:45:39 +02:00
Emanuil Rusev
98b17e3354
setext heading doesn't have to use regex
2014-01-17 01:23:25 +02:00
Emanuil Rusev
da966b83f1
atx heading doesn't have to use regex
2014-01-17 00:36:11 +02:00
Emanuil Rusev
b9ab495cb4
parse method doesn't have to use regex
2014-01-16 23:43:34 +02:00
Emanuil Rusev
408cb5c21f
code block doesn't have to use regex
2014-01-16 23:43:12 +02:00
Emanuil Rusev
5dd0e8cb7b
$deindented_line >= ... doesn't make sense
2014-01-16 23:39:56 +02:00
Emanuil Rusev
5521afde31
refactor $element
2014-01-13 23:45:31 +02:00
Emanuil Rusev
47d8a1382b
implement automatic line breaks as an option
2013-12-26 23:43:25 +02:00
Emanuil Rusev
c0b7155572
implement link titles
2013-12-26 21:53:48 +02:00
Emanuil Rusev
be366b63ea
improve parsing of emphasis
...
**strong** and *em* and **strong** and *em*
2013-12-24 23:40:12 +02:00
Emanuil Rusev
68484504ca
separate compiling of link / image
...
there are 2 types of input that produce link / image
2013-12-24 16:05:13 +02:00
Emanuil Rusev
4fecd91f7d
span elements should get parsed on a first-come, first-served basis
2013-12-24 03:17:23 +02:00
Emanuil Rusev
9dae844a6e
post-increment operators should not be separated
2013-12-22 02:03:53 +02:00
kaamaru
576b0ea761
Fix HTML Bug
...
If you add markdown after HTML on the same line, all the remaining markdown will not be parsed.
Demo:
Add "<span></span> *test*" without quotes to the top of a markdown page on it's own line and then parse.
2013-12-18 12:32:49 +00:00
malorisdead
019a4af2af
Added ability to specify link titles to inline and reference links.
...
Fixed whitespace bug with reference link regex.
Updated tests.
2013-12-14 02:13:53 -05:00
Emanuil Rusev
51a08fad85
improve parsing of emphasis
2013-12-07 17:21:36 +02:00
Emanuil Rusev
7fb08f334a
improve comments
2013-12-07 10:54:05 +02:00
Emanuil Rusev
85ad014f74
parse code span after recursive types to resolve #44
2013-12-06 01:43:55 +02:00
Emanuil Rusev
f713e380ee
add comment for automatic link
2013-12-06 00:29:51 +02:00
Emanuil Rusev
5b01915a63
interrupted list items should not add nonexistent empty lines
2013-12-06 00:15:17 +02:00
Emanuil Rusev
8baf537c12
resolve #40
2013-12-02 23:26:43 +02:00
Emanuil Rusev
05823567bc
simplify comments
2013-12-02 23:02:15 +02:00
Emanuil Rusev
3225c66863
***strong em** inside of em* should produce valid markup
2013-11-23 13:19:06 +02:00
Haralan Dobrev
849a89b121
Use UTF-8 encoding for htmlspecialchars. See #36 .
...
Prior to PHP 5.4.0 the default encoding for `htmlentities()`
and `htmlspecialchars` is "ISO-8859-1". For PHP 5.4+ is "UTF-8".
This ensures always the right encoding is used no matter the PHP version
and the locale settings.
2013-11-22 23:06:20 +02:00
Emanuil Rusev
28064a63b3
simplify encoding of special characters
2013-11-22 21:57:21 +02:00
josephok
b15d40e8a3
Update Parsedown.php
...
Changes the htmlentities() to htmlspecialchars(). The htmlentities() has some problems encoding non-english words(like Chinese)
2013-11-22 23:05:26 +08:00
Emanuil Rusev
ddc5b7e2dd
implement URL auto-linking
2013-11-22 00:20:45 +02:00
Emanuil Rusev
5a563008aa
implement GFM strikethrough
2013-11-21 13:39:00 +02:00
Emanuil Rusev
b6f795962f
resolve #21
2013-11-21 00:59:30 +02:00
Emanuil Rusev
96bf75bd91
remove goto to provide support for PHP 5.2
2013-11-18 21:42:00 +02:00
Emanuil Rusev
67b51794d8
implement fenced code block to resolve #2
2013-11-17 16:52:31 +02:00
Emanuil Rusev
a9d6232705
array_shift » unset to simplify code base and improve performance
2013-11-17 13:21:49 +02:00
Emanuil Rusev
b91629ad94
organize evaluation blocks into switch statements to improve code readability
2013-11-17 12:48:01 +02:00
Emanuil Rusev
24d300ea5d
$pure_line » $deindented_line
2013-11-17 01:52:40 +02:00
Emanuil Rusev
d54712b989
simplify comments
2013-11-17 01:52:40 +02:00
Emanuil Rusev
6ef043ba7d
arrange compile cases
2013-11-17 01:52:40 +02:00
Emanuil Rusev
fe27b70bdb
block » markup
2013-11-17 01:52:40 +02:00
Emanuil Rusev
18d3dbf4f6
simplify comments
2013-11-17 01:52:40 +02:00
Emanuil Rusev
4758f58f73
remove double semicolons
2013-11-17 01:52:40 +02:00
Emanuil Rusev
5fa3eb1b2f
parse_inline_elements » parse_span_elements to match the specs
2013-11-17 01:52:40 +02:00
Emanuil Rusev
e497acb6dc
escape sequences with double digit codes do not get decoded properly
2013-11-16 02:05:31 +02:00
Emanuil Rusev
a4fb0651d5
resolve #27
2013-11-13 01:07:39 +02:00
Haralan Dobrev
1f347e17eb
Allow multi-line emphasis. Fix #28 .
2013-11-12 19:22:17 +02:00
Emanuil Rusev
8e6f4cf7b8
leading spaces should not get trimmed
2013-11-09 22:23:56 +02:00
Emanuil Rusev
ee9a1e92c0
remove goto comment
2013-11-09 00:40:13 +02:00
Emanuil Rusev
689ef24cc5
strip trailing spaces
2013-11-08 23:40:00 +02:00
Emanuil Rusev
4403fe4d96
labels of reference links should be case insensitive
2013-11-08 21:59:26 +02:00
Emanuil Rusev
400c8f7d46
simplify regex for inline link in attempt to resolve #23
2013-11-08 00:24:40 +02:00
Emanuil Rusev
379cbf34b3
parse_block_elements doesn't have to use ltrim on lines with no indentation
2013-11-07 22:48:15 +02:00
Emanuil Rusev
b6c8cac512
optimize quick paragraph
2013-11-07 22:46:01 +02:00
Emanuil Rusev
0e9202689e
escaping of "<" breaks span-level html
2013-11-05 21:40:33 +02:00
Emanuil Rusev
7249d02cff
code blocks get unwanted empty lines
2013-11-05 10:21:48 +02:00
Emanuil Rusev
ecf86b073e
error when last line consists of 1-3 spaces
2013-11-05 10:17:19 +02:00
Emanuil Rusev
b12973415f
parse link references as blocks to improve performance
2013-11-05 00:57:16 +02:00
Emanuil Rusev
6d113f47fb
rearrange block types to optimize performance
2013-11-04 09:28:50 +02:00
Emanuil Rusev
d4d3612710
escaping for special characters
2013-11-03 17:32:45 +02:00