Noah Hellman
6091f2ea70
html: fix missing <p> tags after ordered lists
...
resolves #44
2023-08-05 14:05:35 +02:00
Noah Hellman
0586bf6a44
block: rm extra new line after raw blocks
...
match reference implementation
2023-08-05 14:05:35 +02:00
Noah Hellman
b60650dd0d
inline: fix label of empty multi-line ref links
...
e.g.
[some
text][]
[some text]: url
2023-08-05 14:05:35 +02:00
Noah Hellman
253d1d2d4b
prepass: avoid peekable for block iter
2023-08-05 14:05:35 +02:00
Noah Hellman
5ddbd728a8
prepass: remove unsafe, put strings on heap
...
actually caused spooky behavior
resolves #5
2023-08-05 13:47:25 +02:00
Noah Hellman
109e030c71
attr: fix concat of class attrs on union
2023-08-05 13:26:11 +02:00
Noah Hellman
3e4bb127c7
block: minimize work when determining block
2023-07-14 20:05:47 +02:00
Noah Hellman
e55e7a129f
block: reduce a span to its length
2023-07-11 17:30:32 +02:00
Noah Hellman
faae051821
block: let footnote definition continue unindented
...
match reference implementation, let footnote paragraph continue on same
line, but not start other blocks
e.g.
[^footnote]: first
second
2023-07-10 22:31:53 +02:00
Noah Hellman
cee759f751
lib: uncomment tests
...
was accidentally committed
2023-06-25 14:32:49 +02:00
Noah Hellman
266b55a6f3
contrib: add benchmark scripts
2023-06-25 14:32:49 +02:00
Noah Hellman
0173db178a
Release 0.3.0
2023-05-16 20:29:05 +02:00
Noah Hellman
e4569f5c3e
PR #40 use bytes instead of chars
...
Merge branch 'ascii'
2023-05-16 19:59:05 +02:00
Noah Hellman
2ea095730c
lib: replace custom Span with Range<usize>
2023-05-16 17:01:42 +02:00
Noah Hellman
3908823d18
inline: use bytes instead of chars
2023-05-16 17:01:42 +02:00
Noah Hellman
eaa21fd393
prepass: consider only ascii whitespace
2023-05-16 17:01:42 +02:00
Noah Hellman
72a3378831
attr: use bytes instead of chars
...
only consider ascii whitespace
2023-05-16 17:01:42 +02:00
Noah Hellman
798f8941d8
lex: use bytes instead of chars
...
All special characters are ascii (within 00-7f), so chars aren't
required. Using bytes will make it easier to use SIMD instructions.
Some places in inline.rs have required changes because there is no
longer any guarantee that the token/event spans are aligned to utf-8
chars. Calling event.span.of(src) may now cause a panic.
2023-05-16 17:01:42 +02:00
Noah Hellman
55234bf193
block: consider only ascii whitespace
2023-05-16 17:01:42 +02:00
Noah Hellman
d43d6c908f
attr: valid, ret byte len not char count
2023-05-16 17:01:42 +02:00
Noah Hellman
599b712f36
attr: rm unused ret bool from valid
2023-05-16 17:01:42 +02:00
Noah Hellman
c804e666ec
inline: do not parse attrs in verbatim
...
fixes #41
2023-05-16 16:59:20 +02:00
Noah Hellman
68a5a34f7b
block: rm unused Display impls
2023-05-15 21:57:56 +02:00
Noah Hellman
5985d78437
use minimal afl input
...
afl exits early when initial input crashes, which it often does after
large changes
2023-05-15 19:05:22 +02:00
Noah Hellman
70303e7e4b
PR #39 add source map
...
Merge branch 'spans2'
2023-05-15 19:05:22 +02:00
Noah Hellman
8be7c4c840
block: replace int literals with byte chars
2023-05-15 19:05:22 +02:00
Noah Hellman
bbdb314ae1
parse: do not inline parse link definitions
...
better match the actual url produced, which is verbatim
2023-05-15 19:05:22 +02:00
Noah Hellman
c29b926d16
block: rm redundant block scope
2023-05-15 19:05:22 +02:00
Noah Hellman
7c28a068e9
afl: rm whitelisted html error
...
resolved by "block: replace tree with event vec"
2023-05-15 19:05:22 +02:00
Noah Hellman
7fc739cad4
afl_tmin: remove duplicate input files
2023-05-15 19:05:22 +02:00
Noah Hellman
e69d61a0d1
afl parse: sanity check spans
2023-05-15 19:05:22 +02:00
Noah Hellman
0484ee2011
lib: make code block language non option
...
no distinction between empty language and None
2023-05-15 19:05:22 +02:00
Noah Hellman
d19e4933c9
afl: merge parse_balance target into parse
...
parse_balance is a superset of parse
2023-05-15 19:05:22 +02:00
Noah Hellman
e79f767604
lib: code block lang -> language
2023-05-15 19:05:22 +02:00
Noah Hellman
2a3973674f
jotdown_wasm: add events with spans format
2023-05-15 19:05:22 +02:00
Noah Hellman
924a3c35bb
lib: make div class non option
...
there is no distinction between an empty class and a None
2023-05-15 19:05:22 +02:00
Noah Hellman
79b5119209
parse: add Parser::into_offset_iter
...
resolves #3
2023-05-15 19:05:22 +02:00
Noah Hellman
116fb04725
lex: remove DollarBacktick token
...
can now read src to check dollar before backticks, so simpler to always
use backtick token
fixes several bugs, e.g.
| $`abc` | (previously did not get closed)
`$abc$` (previously did not get closed)
2023-05-15 19:05:22 +02:00
Noah Hellman
b6b3a6f40b
parse: only get block span content when needed
2023-05-15 19:05:22 +02:00
Noah Hellman
f5c87f32f9
inline: include attribute in end event span
2023-05-15 19:05:22 +02:00
Noah Hellman
42ce9a3670
block: include attributes in open event span
2023-05-15 19:05:22 +02:00
Noah Hellman
b0f88230aa
parse: do not attach block attributes to outer blocks
...
e.g.
- {.inner}
this paragraph would get the inner class previously
2023-05-15 19:05:22 +02:00
Noah Hellman
c377aa9998
block: ensure section span end before attrs
...
e.g
# sec1
<-- end sec1 here
{.sec2-class0}
{.sec2-class1} <-- instead of here
# sec2
2023-05-15 19:05:22 +02:00
Noah Hellman
edd89f2b20
block: expand parse_attr test
2023-05-15 19:05:22 +02:00
Noah Hellman
e84385c2db
block: replace tree with event vec
...
a lot simpler to use and reason about
should also make it easier to move to streaming
2023-05-15 19:05:22 +02:00
Noah Hellman
5e99d98f4f
block: use separate spans for start/end events
2023-05-15 19:05:22 +02:00
Noah Hellman
631c9eff42
block: extend parse_description_list
2023-05-15 19:05:22 +02:00
Noah Hellman
8d1381144e
block: extend parse_code_block
2023-05-15 19:05:22 +02:00
Noah Hellman
c21138d5b9
block: extend parse_table_align
2023-05-15 19:05:22 +02:00
Noah Hellman
4f863f91d5
block: add test parse_description_list_empty
2023-05-15 19:05:22 +02:00