@farvardin/lezer-parser-markdown 1.6.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +279 -0
- package/LICENSE +21 -0
- package/README.md +719 -0
- package/bin/build-readme.cjs +39 -0
- package/build.js +16 -0
- package/dist/index.cjs +2357 -0
- package/dist/index.d.cts +600 -0
- package/dist/index.d.ts +600 -0
- package/dist/index.js +2340 -0
- package/package.json +37 -0
- package/publish.sh +1 -0
- package/src/README.md +83 -0
- package/src/extension.ts +301 -0
- package/src/index.ts +5 -0
- package/src/markdown.ts +1966 -0
- package/src/nest.ts +46 -0
- package/test/compare-tree.ts +14 -0
- package/test/spec.ts +79 -0
- package/test/test-extension.ts +277 -0
- package/test/test-incremental.ts +265 -0
- package/test/test-markdown.ts +3574 -0
- package/test/test-nesting.ts +86 -0
- package/test/tsconfig.json +12 -0
- package/tsconfig.json +14 -0
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,279 @@
|
|
|
1
|
+
## 1.6.3 (2026-01-06)
|
|
2
|
+
|
|
3
|
+
### Bug fixes
|
|
4
|
+
|
|
5
|
+
Fix an issue that caused the parser to re-parse much more than it needed to when reusable content ends in a single list element after many non-list elements.
|
|
6
|
+
|
|
7
|
+
## 1.6.2 (2025-12-22)
|
|
8
|
+
|
|
9
|
+
### Bug fixes
|
|
10
|
+
|
|
11
|
+
Nested parses in fenced blocks are now marked as bracketed.
|
|
12
|
+
|
|
13
|
+
## 1.6.1 (2025-12-06)
|
|
14
|
+
|
|
15
|
+
### Bug fixes
|
|
16
|
+
|
|
17
|
+
Fix an issue where, if a composite node handler added a marker before returning false, that token was parsed twice.
|
|
18
|
+
|
|
19
|
+
## 1.6.0 (2025-11-03)
|
|
20
|
+
|
|
21
|
+
### Bug fixes
|
|
22
|
+
|
|
23
|
+
When a composite block adds a node while ending, make sure the composite node covers that end token.
|
|
24
|
+
|
|
25
|
+
### New features
|
|
26
|
+
|
|
27
|
+
Export the opening delimiters used for standard links and images, so that extension code can look for them.
|
|
28
|
+
|
|
29
|
+
## 1.5.1 (2025-10-20)
|
|
30
|
+
|
|
31
|
+
### Bug fixes
|
|
32
|
+
|
|
33
|
+
Fix an issue where `findOpeningDelimiter` could return the position of a close delimiter.
|
|
34
|
+
|
|
35
|
+
## 1.5.0 (2025-10-18)
|
|
36
|
+
|
|
37
|
+
### New features
|
|
38
|
+
|
|
39
|
+
A `getDelimiterAt` method on inline contexts makes it possible to get information about opening delimiters.
|
|
40
|
+
|
|
41
|
+
## 1.4.3 (2025-04-27)
|
|
42
|
+
|
|
43
|
+
### Bug fixes
|
|
44
|
+
|
|
45
|
+
Run the HTML parser on HTML comment blocks, since those may include non-comment content at their end.
|
|
46
|
+
|
|
47
|
+
## 1.4.2 (2025-02-24)
|
|
48
|
+
|
|
49
|
+
### Bug fixes
|
|
50
|
+
|
|
51
|
+
Move some dependencies to dev dependencies.
|
|
52
|
+
|
|
53
|
+
## 1.4.1 (2025-02-07)
|
|
54
|
+
|
|
55
|
+
### Bug fixes
|
|
56
|
+
|
|
57
|
+
Make sure TypeScript's new resolution styles can find the type declarations for the CommonJS files.
|
|
58
|
+
|
|
59
|
+
## 1.4.0 (2025-01-07)
|
|
60
|
+
|
|
61
|
+
### Bug fixes
|
|
62
|
+
|
|
63
|
+
Fix a regression in the autolink extension that made it fail to match some kinds of email addresses.
|
|
64
|
+
|
|
65
|
+
### New features
|
|
66
|
+
|
|
67
|
+
The new `BlockContext.peekLine` method can be used to scan the line ahead of the current one.
|
|
68
|
+
|
|
69
|
+
## 1.3.2 (2024-10-29)
|
|
70
|
+
|
|
71
|
+
### Bug fixes
|
|
72
|
+
|
|
73
|
+
Fix a quadratic slowdown in the Autolink extension on parsing text containing extremely long words.
|
|
74
|
+
|
|
75
|
+
## 1.3.1 (2024-09-02)
|
|
76
|
+
|
|
77
|
+
### Bug fixes
|
|
78
|
+
|
|
79
|
+
Fix emphasis parsing to properly test for punctuation on platforms that support regular expression unicode categories.
|
|
80
|
+
|
|
81
|
+
Fix an issue where dashes right after a paragraph weren't parsed as horizontal rules when setext headers are disabled.
|
|
82
|
+
|
|
83
|
+
## 1.3.0 (2024-04-03)
|
|
84
|
+
|
|
85
|
+
### Bug fixes
|
|
86
|
+
|
|
87
|
+
GFM autolinks will no longer include the closing bracket of a surrounding link or image.
|
|
88
|
+
|
|
89
|
+
### New features
|
|
90
|
+
|
|
91
|
+
`InlineContext.hasOpenLink` can now be used to query whether there is an unclosed link or image marker before the current token.
|
|
92
|
+
|
|
93
|
+
## 1.2.0 (2023-12-25)
|
|
94
|
+
|
|
95
|
+
### Bug fixes
|
|
96
|
+
|
|
97
|
+
Properly require whitespace before link titles. Parse autolinks as their own nodes
|
|
98
|
+
|
|
99
|
+
### New features
|
|
100
|
+
|
|
101
|
+
Wrap autolinks in an `Autolink` syntax node, rather than just `URL`, and exclude the wrapping angle brackets from the `URL` nodes.
|
|
102
|
+
|
|
103
|
+
## 1.1.2 (2023-12-07)
|
|
104
|
+
|
|
105
|
+
### Bug fixes
|
|
106
|
+
|
|
107
|
+
Fix a bug that could cause blockquote markers to be attached to the wrong parent node, causing them to overlap with sibling syntax nodes.
|
|
108
|
+
|
|
109
|
+
## 1.1.1 (2023-11-17)
|
|
110
|
+
|
|
111
|
+
### Bug fixes
|
|
112
|
+
|
|
113
|
+
Make sure GFM autolinking accepts URLs like test.co.uk
|
|
114
|
+
|
|
115
|
+
Fix a bug in `Autolink` that made it fail to accept some URLs with hyphens.
|
|
116
|
+
|
|
117
|
+
## 1.1.0 (2023-08-03)
|
|
118
|
+
|
|
119
|
+
### New features
|
|
120
|
+
|
|
121
|
+
The new `Autolink` extension (included in the `GFM` extension bundle) marks some types of URLs even without angle brackets.
|
|
122
|
+
|
|
123
|
+
## 1.0.5 (2023-06-30)
|
|
124
|
+
|
|
125
|
+
### Bug fixes
|
|
126
|
+
|
|
127
|
+
Fix another issue in reuse of nodes when the input has gaps.
|
|
128
|
+
|
|
129
|
+
## 1.0.4 (2023-06-29)
|
|
130
|
+
|
|
131
|
+
### Bug fixes
|
|
132
|
+
|
|
133
|
+
Fix another bug in incremental parsing across input gaps.
|
|
134
|
+
|
|
135
|
+
## 1.0.3 (2023-06-22)
|
|
136
|
+
|
|
137
|
+
### Bug fixes
|
|
138
|
+
|
|
139
|
+
Only parse list items as tasks when there is whitespace after the checkbox brackets. Remove an unnecessary regexp operator
|
|
140
|
+
|
|
141
|
+
Fix a crash doing an incremental parse on input ranges with gaps between them.
|
|
142
|
+
|
|
143
|
+
## 1.0.2 (2022-09-21)
|
|
144
|
+
|
|
145
|
+
### Bug fixes
|
|
146
|
+
|
|
147
|
+
In the stikethrough extension, ignore opening marks with a space after and closing marks with a space before them.
|
|
148
|
+
|
|
149
|
+
## 1.0.1 (2022-06-29)
|
|
150
|
+
|
|
151
|
+
### Bug fixes
|
|
152
|
+
|
|
153
|
+
Fix a crash that could occur when there were gaps in the parseable ranges right at the start of a line.
|
|
154
|
+
|
|
155
|
+
## 1.0.0 (2022-06-06)
|
|
156
|
+
|
|
157
|
+
### New features
|
|
158
|
+
|
|
159
|
+
First stable version.
|
|
160
|
+
|
|
161
|
+
## 0.16.1 (2022-05-20)
|
|
162
|
+
|
|
163
|
+
### Bug fixes
|
|
164
|
+
|
|
165
|
+
Fix a bug that prevented style tags from built-in extensions from being applied.
|
|
166
|
+
|
|
167
|
+
## 0.16.0 (2022-04-20)
|
|
168
|
+
|
|
169
|
+
### New features
|
|
170
|
+
|
|
171
|
+
This package now attached highlighting information to its syntax tree.
|
|
172
|
+
|
|
173
|
+
It is now possible to include highlighting information when defining nodes in extensions via `NodeSpec.style`.
|
|
174
|
+
|
|
175
|
+
## 0.15.6 (2022-03-18)
|
|
176
|
+
|
|
177
|
+
### Bug fixes
|
|
178
|
+
|
|
179
|
+
Fix a bug where GFM tables occurring directly below a paragraph weren't recognized.
|
|
180
|
+
|
|
181
|
+
## 0.15.5 (2022-02-18)
|
|
182
|
+
|
|
183
|
+
### New features
|
|
184
|
+
|
|
185
|
+
The `BlockContext` type now has a `depth` property providing the amount of parent nodes, and a `parentType` method allowing code to inspect the type of those nodes.
|
|
186
|
+
|
|
187
|
+
## 0.15.4 (2022-02-02)
|
|
188
|
+
|
|
189
|
+
### Bug fixes
|
|
190
|
+
|
|
191
|
+
Fix compatibility fallback for engines with RegExp `\p` support.
|
|
192
|
+
|
|
193
|
+
## 0.15.3 (2021-12-13)
|
|
194
|
+
|
|
195
|
+
### Bug fixes
|
|
196
|
+
|
|
197
|
+
Fix a bug where, if there were multiple extensions passed to the editor, the `wrap` option got dropped from the resulting configuration.
|
|
198
|
+
|
|
199
|
+
## 0.15.2 (2021-11-08)
|
|
200
|
+
|
|
201
|
+
### Bug fixes
|
|
202
|
+
|
|
203
|
+
Fix a bug where an ordered list item after a nested bullet list would get treated as part of the bullet list item.
|
|
204
|
+
|
|
205
|
+
## 0.15.1 (2021-10-11)
|
|
206
|
+
|
|
207
|
+
### Bug fixes
|
|
208
|
+
|
|
209
|
+
Fix a bug that caused `endLeafBlock` configuration to be ignored by the parser.
|
|
210
|
+
|
|
211
|
+
## 0.15.0 (2021-08-11)
|
|
212
|
+
|
|
213
|
+
### Breaking changes
|
|
214
|
+
|
|
215
|
+
The module name has changed from `lezer-markdown` to `@lezer/markdown`.
|
|
216
|
+
|
|
217
|
+
`MarkdownParser` now extends `Parser` and follows its interface.
|
|
218
|
+
|
|
219
|
+
The Markdown parser no longer has its own support for nested parsing (but can be wrapped with `parseCode` to get a similar effect).
|
|
220
|
+
|
|
221
|
+
### New features
|
|
222
|
+
|
|
223
|
+
The new `parseCode` function can be used to set up a mixed-language parser for Markdown.
|
|
224
|
+
|
|
225
|
+
## 0.14.5 (2021-05-12)
|
|
226
|
+
|
|
227
|
+
### Bug fixes
|
|
228
|
+
|
|
229
|
+
Fix an issue were continued paragraph lines starting with tabs could cause the parser to create a tree with invalid node positions.
|
|
230
|
+
|
|
231
|
+
## 0.14.4 (2021-03-09)
|
|
232
|
+
|
|
233
|
+
### Bug fixes
|
|
234
|
+
|
|
235
|
+
Fix a bug where an unterminated nested code block could call a nested parser with a start position beyond the end of the document.
|
|
236
|
+
|
|
237
|
+
Fix a bug where the parser could return an invalid tree when `forceFinish` was called during a nested parse.
|
|
238
|
+
|
|
239
|
+
## 0.14.3 (2021-02-22)
|
|
240
|
+
|
|
241
|
+
### Breaking changes
|
|
242
|
+
|
|
243
|
+
`parseInline` has been moved to `MarkdownParser` so that it can also be called from an inline context.
|
|
244
|
+
|
|
245
|
+
### New features
|
|
246
|
+
|
|
247
|
+
Heading nodes now have different types based on their level.
|
|
248
|
+
|
|
249
|
+
The `elt` helper method can now be called with a `Tree` to wrap the result of a nested parse in an element.
|
|
250
|
+
|
|
251
|
+
The `startNested` method is now exported.
|
|
252
|
+
|
|
253
|
+
## 0.14.2 (2021-02-12)
|
|
254
|
+
|
|
255
|
+
### Bug fixes
|
|
256
|
+
|
|
257
|
+
`BlockParser.parse`'s exported type was missing an argument.
|
|
258
|
+
|
|
259
|
+
Fix a bug that would cause incorrect offsets for children nested two deep in an element passed to `BlockContext.addElement`.
|
|
260
|
+
|
|
261
|
+
## 0.14.1 (2021-02-11)
|
|
262
|
+
|
|
263
|
+
### Bug fixes
|
|
264
|
+
|
|
265
|
+
Fix table parsing when header cells are empty.
|
|
266
|
+
|
|
267
|
+
## 0.14.0 (2021-02-10)
|
|
268
|
+
|
|
269
|
+
### New features
|
|
270
|
+
|
|
271
|
+
Add an extension interface. The `configure` method now takes more options, allowing client code to define new syntax node types and parse logic.
|
|
272
|
+
|
|
273
|
+
Add extensions for subscript, superscript, strikethrough, tables, and task lists to the distribution.
|
|
274
|
+
|
|
275
|
+
## 0.13.0 (2020-12-04)
|
|
276
|
+
|
|
277
|
+
### Breaking changes
|
|
278
|
+
|
|
279
|
+
First numbered release.
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (C) 2020 by Marijn Haverbeke <marijn@haverbeke.berlin> and others
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in
|
|
13
|
+
all copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
|
|
21
|
+
THE SOFTWARE.
|