Commit graph

42 commits

Author SHA1 Message Date
David Anson
d5994ae4de Add Rule.parser property for custom rules to specify which Markdown parser output they use, honor it strictly, and add full type support. 2024-03-13 20:55:57 -07:00
David Anson
a5371e29c5 Update dependency: markdownlint-micromark to 0.1.9. 2024-03-05 21:44:36 -08:00
David Anson
28e1b23955 Improve type safety by strongly-typing the micromark token type property everywhere. 2024-02-29 23:05:27 -08:00
David Anson
996d88a9b4 Refactor to remove micromark helper getSiblingTokens for simpler code and better performance. 2024-02-26 21:07:24 -08:00
David Anson
730ae9a96f Reimplement MD027/no-multiple-space-blockquote using micromark tokens. 2024-02-25 15:06:28 -08:00
David Anson
f0d691b1ed Reimplement MD048/code-fence-style using micromark tokens. 2024-02-19 20:42:12 -08:00
David Anson
f5b5773b50 Reimplement MD028/no-blanks-blockquote using micromark tokens. 2024-02-18 16:46:13 -08:00
David Anson
b55208b27b Update dependency markdownlint-micromark to 0.1.8, incorporate new micromark-extension-directive exports. 2024-01-01 22:12:42 -08:00
David Anson
10f095c4fd Refactor new MD054/link-image-style rule, add tests, update documentation (fixes #40, fixes #399). 2023-11-02 19:48:55 -07:00
David Anson
63325edc97 Update MD005, MD007, MD022, MD037, MD038 to not report violations within "htmlFlow" context (fixes #999). 2023-10-21 22:03:11 -07:00
David Anson
2a56f130c1 Refactor Token.parent() to Token.parent, add validation tests for parent, fix parent in htmlFlow scenario, improve type saftey slightly. 2023-10-19 23:01:31 -07:00
David Anson
da17cec722 Reimplement MD007/ul-indent using micromark tokens, reduce the length of fix edits (fixes #969). 2023-10-15 21:25:08 -07:00
David Anson
6eca6f1c3d Allow HTML comments containing "--" even though it is not allowed by the CommonMark specification because it is allowed by the HTML specification and it happens in real life (fixes #996). 2023-10-07 20:18:43 -07:00
David Anson
a7dfa4bcbf Replace Array.push(...spread) in micromark helpers with Array.concat to avoid risk of stack overflow. 2023-09-04 22:02:39 -07:00
David Anson
07f403173c Replace all instances of JSDoc generic Function with detailed @callback definition (type-only changes). 2023-09-04 21:41:31 -07:00
David Anson
6a2b86753b Reimplement micromark helper filterByPredicate to do fewer array manipulations for a ~6-7% elapsed time reduction. 2023-09-02 21:30:43 -07:00
David Anson
24c97a54fb Refactor micromark token handling to remove optional Token.htmlFlowChildren property and make related code more efficient for a ~6% elapsed time reduction. 2023-09-02 19:32:25 -07:00
David Anson
b13d6a49ee Reimplement micromark helper filterByHtmlTokens using filterByPredicate to simplify. 2023-08-29 22:52:08 -07:00
David Anson
96a36de713 Refactor MD032/blanks-around-lists to remove redundant micromark flattenedChildren function. 2023-08-29 22:38:00 -07:00
David Anson
73e7271188 Update micromark parse to store flattened tokens on the returned tree via Symbol, use flattened tokens in filterByTypes for a ~14% elapsed time reduction. 2023-08-28 22:00:43 -07:00
David Anson
d9de1dd22f Update MD022/blanks-around-headings to allow specifying a different number of blank lines for each heading level (fixes #504). 2023-08-08 22:56:59 -07:00
David Anson
ef1bd286a9 Reimplement MD051/link-fragments using micromark tokens, report reference link issues for definition and fix when possible, handle reporting multiple violations on the same line better. 2023-08-04 20:53:38 -07:00
David Anson
e86fb7699d Refactor to move reparse of micromark htmlFlow token content into core micromarkParse implementation for simplicity and sharing. 2023-07-21 22:49:08 -07:00
David Anson
9646590496 Reimplement MD032/blanks-around-lists using micromark tokens, add newly-detected violations to test snapshot. 2023-07-18 22:33:57 -07:00
David Anson
3945de161e Update markdownlint-micromark dependency to 0.1.7, incorporate micromark-extension-math into parse (and compile for demo page). 2023-07-16 22:07:34 -07:00
David Anson
c8236ed0ea Update harness.mjs to output micromark token structure. 2023-07-14 21:36:10 -07:00
David Anson
6f8c70877c Update dependency: markdownlint-micromark to 0.1.6. 2023-06-26 21:00:11 -07:00
David Anson
22dc6cae84 Update micromark code and tests for prior commit updating markdownlint-micromark (including micromark to 3.2.0). 2023-05-31 21:02:44 -07:00
David Anson
b1eff75034 Update MD044/proper-names to parse into micromark htmlFlow tokens for better behavior when html_elements is false (fixes #832). 2023-05-31 20:25:56 -07:00
David Anson
7005a8a438 Reimplement MD049/emphasis-style, MD050/strong-style to use micromark parser (with smaller ranges and handling of multi-line fixes). 2023-05-26 03:50:00 +00:00
David Anson
488813f7f7 Update MD034/no-bare-urls to re-scan documents with potential violations using proper reference definition handling to avoid false positives (fixes #787). 2023-05-23 04:01:55 +00:00
David Anson
5bff33d41b Reimplement MD044/proper-names using micromark tokens. 2023-03-14 21:03:07 -07:00
David Anson
4ec9b2049b Tweak filterByPredicate to avoid calling transform when children array is empty. 2023-03-10 22:22:54 -08:00
David Anson
0c48b4b032 Remove the use of "||=" which is not supported by Node 14 (and hidden by setup-node failing to configure Node 14 for CI workflow). 2023-02-25 16:24:24 -08:00
David Anson
13ced64c21 Rename markdownlint-micromark Token's .tokens property to .children for consistency and clarity. 2023-02-25 15:50:58 -08:00
David Anson
b787758a48 Update to markdownlint-micromark@0.1.2, include gfmTable extension, change matchAndGetTokensByType return value, include .cjs files when linting. 2023-02-25 15:50:58 -08:00
David Anson
5302ee45de Add tests for micromark helpers filterByPredicate, filterByTypes, and getMicromarkEvents. 2023-02-25 15:50:57 -08:00
David Anson
c15262a0f5 Switch to using npm version of markdownlint-micromark package and browser script. 2023-02-25 15:50:57 -08:00
David Anson
b990b3ea77 Reimplement MD034/no-bare-urls using micromark tokens (fixes #707). 2023-02-25 15:50:57 -08:00
David Anson
97f99befb8 Reimplement getReferenceLinkImageData using micromark tokens. 2023-02-25 15:50:57 -08:00
David Anson
48a92d41a4 Reimplement MD033/no-inline-html using micromark tokens. 2023-02-25 15:50:56 -08:00
David Anson
08b31da0aa Move micromark.cjs helpers from lib to helpers so it can be used by code in both locations. 2023-02-25 15:50:56 -08:00
Renamed from lib/micromark.cjs (Browse further)