markdownlint 0.31.1 → 0.32.1
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 +15 -0
- package/CONTRIBUTING.md +2 -2
- package/README.md +19 -28
- package/demo/markdownlint-browser.js +521 -352
- package/doc/Rules.md +146 -127
- package/doc/md001.md +2 -2
- package/doc/md003.md +2 -2
- package/doc/md007.md +3 -4
- package/doc/md013.md +0 -3
- package/doc/md018.md +1 -1
- package/doc/md019.md +1 -1
- package/doc/md020.md +1 -1
- package/doc/md021.md +1 -1
- package/doc/md022.md +2 -2
- package/doc/md023.md +9 -2
- package/doc/md024.md +2 -2
- package/doc/md025.md +1 -1
- package/doc/md026.md +1 -1
- package/doc/md036.md +2 -2
- package/doc/md041.md +1 -1
- package/doc/md043.md +2 -5
- package/doc/md045.md +6 -0
- package/doc/md049.md +1 -1
- package/doc/md050.md +1 -1
- package/doc/md053.md +3 -3
- package/doc/md054.md +100 -0
- package/helpers/helpers.js +27 -7
- package/helpers/micromark.cjs +62 -15
- package/helpers/package.json +2 -1
- package/helpers/shared.js +3 -0
- package/lib/configuration.d.ts +1152 -0
- package/lib/constants.js +7 -7
- package/lib/markdownlint.d.ts +2 -4
- package/lib/markdownlint.js +9 -8
- package/lib/md001.js +2 -2
- package/lib/md003.js +2 -2
- package/lib/md005.js +21 -17
- package/lib/md007.js +62 -25
- package/lib/md013.js +1 -4
- package/lib/md018.js +1 -1
- package/lib/md019.js +1 -1
- package/lib/md020.js +1 -1
- package/lib/md021.js +1 -1
- package/lib/md022.js +4 -4
- package/lib/md023.js +2 -2
- package/lib/md024.js +2 -2
- package/lib/md025.js +1 -1
- package/lib/md026.js +1 -1
- package/lib/md030.js +33 -22
- package/lib/md032.js +1 -4
- package/lib/md033.js +1 -3
- package/lib/md034.js +31 -25
- package/lib/md036.js +2 -2
- package/lib/md037.js +2 -2
- package/lib/md038.js +7 -5
- package/lib/md041.js +1 -1
- package/lib/md043.js +3 -3
- package/lib/md045.js +33 -3
- package/lib/md049-md050.js +2 -2
- package/lib/md051.js +8 -6
- package/lib/md053.js +1 -1
- package/lib/md054.js +125 -0
- package/lib/rules.js +5 -3
- package/package.json +18 -16
- package/schema/.markdownlint.jsonc +63 -60
- package/schema/.markdownlint.yaml +62 -59
- package/schema/markdownlint-config-schema.json +840 -186
- package/style/relaxed.json +0 -1
- package/doc/md002.md +0 -37
- package/doc/md006.md +0 -46
- package/lib/md002.js +0 -22
- package/lib/md006.js +0 -34
package/doc/Rules.md
CHANGED
|
@@ -2,16 +2,15 @@
|
|
|
2
2
|
|
|
3
3
|
This document contains a description of all rules, what they are checking for,
|
|
4
4
|
as well as examples of documents that break the rule and corrected
|
|
5
|
-
versions of the examples.
|
|
6
|
-
deprecated, but still provided for backward-compatibility.
|
|
5
|
+
versions of the examples.
|
|
7
6
|
|
|
8
7
|
<a name="md001"></a>
|
|
9
8
|
|
|
10
9
|
## `MD001` - Heading levels should only increment by one level at a time
|
|
11
10
|
|
|
12
|
-
Tags: `
|
|
11
|
+
Tags: `headings`
|
|
13
12
|
|
|
14
|
-
Aliases: `
|
|
13
|
+
Aliases: `heading-increment`
|
|
15
14
|
|
|
16
15
|
This rule is triggered when you skip heading levels in a Markdown document, for
|
|
17
16
|
example:
|
|
@@ -45,53 +44,13 @@ Rationale: Headings represent the structure of a document and can be confusing
|
|
|
45
44
|
when skipped - especially for accessibility scenarios. More information:
|
|
46
45
|
<https://www.w3.org/WAI/tutorials/page-structure/headings/>.
|
|
47
46
|
|
|
48
|
-
<a name="md002"></a>
|
|
49
|
-
|
|
50
|
-
## ~~`MD002` - First heading should be a top-level heading~~
|
|
51
|
-
|
|
52
|
-
> This rule is deprecated and provided for backward-compatibility
|
|
53
|
-
|
|
54
|
-
Tags: `headers`, `headings`
|
|
55
|
-
|
|
56
|
-
Aliases: `first-header-h1`, `first-heading-h1`
|
|
57
|
-
|
|
58
|
-
Parameters:
|
|
59
|
-
|
|
60
|
-
- `level`: Heading level (`integer`, default `1`)
|
|
61
|
-
|
|
62
|
-
> Note: *MD002 has been deprecated and is disabled by default.*
|
|
63
|
-
> [MD041/first-line-heading](md041.md) offers an improved implementation.
|
|
64
|
-
|
|
65
|
-
This rule is intended to ensure document headings start at the top level and
|
|
66
|
-
is triggered when the first heading in the document isn't an h1 heading:
|
|
67
|
-
|
|
68
|
-
```markdown
|
|
69
|
-
## This isn't an H1 heading
|
|
70
|
-
|
|
71
|
-
### Another heading
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
The first heading in the document should be an h1 heading:
|
|
75
|
-
|
|
76
|
-
```markdown
|
|
77
|
-
# Start with an H1 heading
|
|
78
|
-
|
|
79
|
-
## Then use an H2 for subsections
|
|
80
|
-
```
|
|
81
|
-
|
|
82
|
-
Note: The `level` parameter can be used to change the top-level (ex: to h2) in
|
|
83
|
-
cases where an h1 is added externally.
|
|
84
|
-
|
|
85
|
-
Rationale: The top-level heading often acts as the title of a document. More
|
|
86
|
-
information: <https://cirosantilli.com/markdown-style-guide#top-level-header>.
|
|
87
|
-
|
|
88
47
|
<a name="md003"></a>
|
|
89
48
|
|
|
90
49
|
## `MD003` - Heading style
|
|
91
50
|
|
|
92
|
-
Tags: `
|
|
51
|
+
Tags: `headings`
|
|
93
52
|
|
|
94
|
-
Aliases: `
|
|
53
|
+
Aliases: `heading-style`
|
|
95
54
|
|
|
96
55
|
Parameters:
|
|
97
56
|
|
|
@@ -255,55 +214,6 @@ the same ending column:
|
|
|
255
214
|
|
|
256
215
|
Rationale: Violations of this rule can lead to improperly rendered content.
|
|
257
216
|
|
|
258
|
-
<a name="md006"></a>
|
|
259
|
-
|
|
260
|
-
## ~~`MD006` - Consider starting bulleted lists at the beginning of the line~~
|
|
261
|
-
|
|
262
|
-
> This rule is deprecated and provided for backward-compatibility
|
|
263
|
-
|
|
264
|
-
Tags: `bullet`, `indentation`, `ul`
|
|
265
|
-
|
|
266
|
-
Aliases: `ul-start-left`
|
|
267
|
-
|
|
268
|
-
Fixable: Some violations can be fixed by tooling
|
|
269
|
-
|
|
270
|
-
This rule is triggered when top-level lists don't start at the beginning of a
|
|
271
|
-
line:
|
|
272
|
-
|
|
273
|
-
```markdown
|
|
274
|
-
Some text
|
|
275
|
-
|
|
276
|
-
* List item
|
|
277
|
-
* List item
|
|
278
|
-
```
|
|
279
|
-
|
|
280
|
-
To fix, ensure that top-level list items are not indented:
|
|
281
|
-
|
|
282
|
-
```markdown
|
|
283
|
-
Some test
|
|
284
|
-
|
|
285
|
-
* List item
|
|
286
|
-
* List item
|
|
287
|
-
```
|
|
288
|
-
|
|
289
|
-
Note: This rule is triggered for the following scenario because the unordered
|
|
290
|
-
sublist is not recognized as such by the parser. Not being nested 3 characters
|
|
291
|
-
as required by the outer ordered list, it creates a top-level unordered list
|
|
292
|
-
instead.
|
|
293
|
-
|
|
294
|
-
```markdown
|
|
295
|
-
1. List item
|
|
296
|
-
- List item
|
|
297
|
-
- List item
|
|
298
|
-
1. List item
|
|
299
|
-
```
|
|
300
|
-
|
|
301
|
-
Rationale: Starting lists at the beginning of the line means that nested list
|
|
302
|
-
items can all be indented by the same amount when an editor's indent function
|
|
303
|
-
or the tab key is used to indent. Starting a list 1 space in means that the
|
|
304
|
-
indent of the first nested list is less than the indent of the second level (3
|
|
305
|
-
characters if you use 4 space tabs, or 1 character if you use 2 space tabs).
|
|
306
|
-
|
|
307
217
|
<a name="md007"></a>
|
|
308
218
|
|
|
309
219
|
## `MD007` - Unordered list indentation
|
|
@@ -344,10 +254,9 @@ unordered (otherwise, extra indentation of ordered lists interferes with the
|
|
|
344
254
|
rule).
|
|
345
255
|
|
|
346
256
|
The `start_indented` parameter allows the first level of lists to be indented by
|
|
347
|
-
the configured number of spaces rather than starting at zero
|
|
348
|
-
|
|
349
|
-
|
|
350
|
-
`start_indented` is not set).
|
|
257
|
+
the configured number of spaces rather than starting at zero. The `start_indent`
|
|
258
|
+
parameter allows the first level of lists to be indented by a different number
|
|
259
|
+
of spaces than the rest (ignored when `start_indented` is not set).
|
|
351
260
|
|
|
352
261
|
Rationale: Indenting by 2 spaces allows the content of a nested list to be in
|
|
353
262
|
line with the start of the content of the parent list when a single space is
|
|
@@ -560,7 +469,6 @@ Parameters:
|
|
|
560
469
|
- `code_block_line_length`: Number of characters for code blocks (`integer`,
|
|
561
470
|
default `80`)
|
|
562
471
|
- `code_blocks`: Include code blocks (`boolean`, default `true`)
|
|
563
|
-
- `headers`: Include headings (`boolean`, default `true`)
|
|
564
472
|
- `heading_line_length`: Number of characters for headings (`integer`, default
|
|
565
473
|
`80`)
|
|
566
474
|
- `headings`: Include headings (`boolean`, default `true`)
|
|
@@ -569,8 +477,6 @@ Parameters:
|
|
|
569
477
|
- `strict`: Strict length checking (`boolean`, default `false`)
|
|
570
478
|
- `tables`: Include tables (`boolean`, default `true`)
|
|
571
479
|
|
|
572
|
-
> If `headings` is not provided, `headers` (deprecated) will be used.
|
|
573
|
-
|
|
574
480
|
This rule is triggered when there are lines that are longer than the
|
|
575
481
|
configured `line_length` (default: 80 characters). To fix this, split the line
|
|
576
482
|
up into multiple lines. To set a different maximum length for headings, use
|
|
@@ -671,7 +577,7 @@ for more information.
|
|
|
671
577
|
|
|
672
578
|
## `MD018` - No space after hash on atx style heading
|
|
673
579
|
|
|
674
|
-
Tags: `atx`, `
|
|
580
|
+
Tags: `atx`, `headings`, `spaces`
|
|
675
581
|
|
|
676
582
|
Aliases: `no-missing-space-atx`
|
|
677
583
|
|
|
@@ -701,7 +607,7 @@ Rationale: Violations of this rule can lead to improperly rendered content.
|
|
|
701
607
|
|
|
702
608
|
## `MD019` - Multiple spaces after hash on atx style heading
|
|
703
609
|
|
|
704
|
-
Tags: `atx`, `
|
|
610
|
+
Tags: `atx`, `headings`, `spaces`
|
|
705
611
|
|
|
706
612
|
Aliases: `no-multiple-space-atx`
|
|
707
613
|
|
|
@@ -732,7 +638,7 @@ content.
|
|
|
732
638
|
|
|
733
639
|
## `MD020` - No space inside hashes on closed atx style heading
|
|
734
640
|
|
|
735
|
-
Tags: `atx_closed`, `
|
|
641
|
+
Tags: `atx_closed`, `headings`, `spaces`
|
|
736
642
|
|
|
737
643
|
Aliases: `no-missing-space-closed-atx`
|
|
738
644
|
|
|
@@ -764,7 +670,7 @@ Rationale: Violations of this rule can lead to improperly rendered content.
|
|
|
764
670
|
|
|
765
671
|
## `MD021` - Multiple spaces inside hashes on closed atx style heading
|
|
766
672
|
|
|
767
|
-
Tags: `atx_closed`, `
|
|
673
|
+
Tags: `atx_closed`, `headings`, `spaces`
|
|
768
674
|
|
|
769
675
|
Aliases: `no-multiple-space-closed-atx`
|
|
770
676
|
|
|
@@ -798,9 +704,9 @@ content.
|
|
|
798
704
|
|
|
799
705
|
## `MD022` - Headings should be surrounded by blank lines
|
|
800
706
|
|
|
801
|
-
Tags: `blank_lines`, `
|
|
707
|
+
Tags: `blank_lines`, `headings`
|
|
802
708
|
|
|
803
|
-
Aliases: `blanks-around-
|
|
709
|
+
Aliases: `blanks-around-headings`
|
|
804
710
|
|
|
805
711
|
Parameters:
|
|
806
712
|
|
|
@@ -853,9 +759,9 @@ as regular text.
|
|
|
853
759
|
|
|
854
760
|
## `MD023` - Headings must start at the beginning of the line
|
|
855
761
|
|
|
856
|
-
Tags: `
|
|
762
|
+
Tags: `headings`, `spaces`
|
|
857
763
|
|
|
858
|
-
Aliases: `
|
|
764
|
+
Aliases: `heading-start-left`
|
|
859
765
|
|
|
860
766
|
Fixable: Some violations can be fixed by tooling
|
|
861
767
|
|
|
@@ -875,6 +781,13 @@ Some text
|
|
|
875
781
|
# Heading
|
|
876
782
|
```
|
|
877
783
|
|
|
784
|
+
Note that scenarios like block quotes "indent" the start of the line, so the
|
|
785
|
+
following is also correct:
|
|
786
|
+
|
|
787
|
+
```markdown
|
|
788
|
+
> # Heading in Block Quote
|
|
789
|
+
```
|
|
790
|
+
|
|
878
791
|
Rationale: Headings that don't start at the beginning of the line will not be
|
|
879
792
|
parsed as headings, and will instead appear as regular text.
|
|
880
793
|
|
|
@@ -882,9 +795,9 @@ parsed as headings, and will instead appear as regular text.
|
|
|
882
795
|
|
|
883
796
|
## `MD024` - Multiple headings with the same content
|
|
884
797
|
|
|
885
|
-
Tags: `
|
|
798
|
+
Tags: `headings`
|
|
886
799
|
|
|
887
|
-
Aliases: `no-duplicate-
|
|
800
|
+
Aliases: `no-duplicate-heading`
|
|
888
801
|
|
|
889
802
|
Parameters:
|
|
890
803
|
|
|
@@ -932,7 +845,7 @@ heading name; headings with the same content can cause problems with that.
|
|
|
932
845
|
|
|
933
846
|
## `MD025` - Multiple top-level headings in the same document
|
|
934
847
|
|
|
935
|
-
Tags: `
|
|
848
|
+
Tags: `headings`
|
|
936
849
|
|
|
937
850
|
Aliases: `single-h1`, `single-title`
|
|
938
851
|
|
|
@@ -984,7 +897,7 @@ be contained within this heading.
|
|
|
984
897
|
|
|
985
898
|
## `MD026` - Trailing punctuation in heading
|
|
986
899
|
|
|
987
|
-
Tags: `
|
|
900
|
+
Tags: `headings`
|
|
988
901
|
|
|
989
902
|
Aliases: `no-trailing-punctuation`
|
|
990
903
|
|
|
@@ -1522,9 +1435,9 @@ Rationale: Consistent formatting makes it easier to understand a document.
|
|
|
1522
1435
|
|
|
1523
1436
|
## `MD036` - Emphasis used instead of a heading
|
|
1524
1437
|
|
|
1525
|
-
Tags: `emphasis`, `
|
|
1438
|
+
Tags: `emphasis`, `headings`
|
|
1526
1439
|
|
|
1527
|
-
Aliases: `no-emphasis-as-
|
|
1440
|
+
Aliases: `no-emphasis-as-heading`
|
|
1528
1441
|
|
|
1529
1442
|
Parameters:
|
|
1530
1443
|
|
|
@@ -1732,7 +1645,7 @@ correct syntax highlighting for code. More information:
|
|
|
1732
1645
|
|
|
1733
1646
|
## `MD041` - First line in a file should be a top-level heading
|
|
1734
1647
|
|
|
1735
|
-
Tags: `
|
|
1648
|
+
Tags: `headings`
|
|
1736
1649
|
|
|
1737
1650
|
Aliases: `first-line-h1`, `first-line-heading`
|
|
1738
1651
|
|
|
@@ -1819,18 +1732,15 @@ links.
|
|
|
1819
1732
|
|
|
1820
1733
|
## `MD043` - Required heading structure
|
|
1821
1734
|
|
|
1822
|
-
Tags: `
|
|
1735
|
+
Tags: `headings`
|
|
1823
1736
|
|
|
1824
|
-
Aliases: `required-
|
|
1737
|
+
Aliases: `required-headings`
|
|
1825
1738
|
|
|
1826
1739
|
Parameters:
|
|
1827
1740
|
|
|
1828
|
-
- `headers`: List of headings (`string[]`, default `[]`)
|
|
1829
1741
|
- `headings`: List of headings (`string[]`, default `[]`)
|
|
1830
1742
|
- `match_case`: Match case of headings (`boolean`, default `false`)
|
|
1831
1743
|
|
|
1832
|
-
> If `headings` is not provided, `headers` (deprecated) will be used.
|
|
1833
|
-
|
|
1834
1744
|
This rule is triggered when the headings in a file do not match the array of
|
|
1835
1745
|
headings passed to the rule. It can be used to enforce a standard heading
|
|
1836
1746
|
structure for a set of files.
|
|
@@ -1955,6 +1865,12 @@ Or with reference syntax as:
|
|
|
1955
1865
|
[ref]: image.jpg "Optional title"
|
|
1956
1866
|
```
|
|
1957
1867
|
|
|
1868
|
+
Or with HTML as:
|
|
1869
|
+
|
|
1870
|
+
```html
|
|
1871
|
+
<img src="image.jpg" alt="Alternate text" />
|
|
1872
|
+
```
|
|
1873
|
+
|
|
1958
1874
|
Guidance for writing alternate text is available from the [W3C][w3c],
|
|
1959
1875
|
[Wikipedia][wikipedia], and [other locations][phase2technology].
|
|
1960
1876
|
|
|
@@ -2091,7 +2007,7 @@ Rationale: Consistent formatting makes it easier to understand a document.
|
|
|
2091
2007
|
|
|
2092
2008
|
<a name="md049"></a>
|
|
2093
2009
|
|
|
2094
|
-
## `MD049` - Emphasis style
|
|
2010
|
+
## `MD049` - Emphasis style
|
|
2095
2011
|
|
|
2096
2012
|
Tags: `emphasis`
|
|
2097
2013
|
|
|
@@ -2126,7 +2042,7 @@ Rationale: Consistent formatting makes it easier to understand a document.
|
|
|
2126
2042
|
|
|
2127
2043
|
<a name="md050"></a>
|
|
2128
2044
|
|
|
2129
|
-
## `MD050` - Strong style
|
|
2045
|
+
## `MD050` - Strong style
|
|
2130
2046
|
|
|
2131
2047
|
Tags: `emphasis`
|
|
2132
2048
|
|
|
@@ -2281,9 +2197,9 @@ Parameters:
|
|
|
2281
2197
|
Fixable: Some violations can be fixed by tooling
|
|
2282
2198
|
|
|
2283
2199
|
Links and images in Markdown can provide the link destination or image source
|
|
2284
|
-
at the time of use or can
|
|
2285
|
-
The reference format is convenient for keeping paragraph
|
|
2286
|
-
and makes it easy to reuse the same URL in multiple places.
|
|
2200
|
+
at the time of use or can use a label to reference a definition elsewhere in
|
|
2201
|
+
the document. The latter reference format is convenient for keeping paragraph
|
|
2202
|
+
text clutter-free and makes it easy to reuse the same URL in multiple places.
|
|
2287
2203
|
|
|
2288
2204
|
Because link and image reference definitions are located separately from
|
|
2289
2205
|
where they are used, there are two scenarios where a definition can be
|
|
@@ -2307,6 +2223,109 @@ Markdown:
|
|
|
2307
2223
|
[//]: # (This behaves like a comment)
|
|
2308
2224
|
```
|
|
2309
2225
|
|
|
2226
|
+
<a name="md054"></a>
|
|
2227
|
+
|
|
2228
|
+
## `MD054` - Link and image style
|
|
2229
|
+
|
|
2230
|
+
Tags: `images`, `links`
|
|
2231
|
+
|
|
2232
|
+
Aliases: `link-image-style`
|
|
2233
|
+
|
|
2234
|
+
Parameters:
|
|
2235
|
+
|
|
2236
|
+
- `autolink`: Allow autolinks (`boolean`, default `true`)
|
|
2237
|
+
- `collapsed`: Allow collapsed reference links and images (`boolean`, default
|
|
2238
|
+
`true`)
|
|
2239
|
+
- `full`: Allow full reference links and images (`boolean`, default `true`)
|
|
2240
|
+
- `inline`: Allow inline links and images (`boolean`, default `true`)
|
|
2241
|
+
- `shortcut`: Allow shortcut reference links and images (`boolean`, default
|
|
2242
|
+
`true`)
|
|
2243
|
+
- `url_inline`: Allow URLs as inline links (`boolean`, default `true`)
|
|
2244
|
+
|
|
2245
|
+
Fixable: Some violations can be fixed by tooling
|
|
2246
|
+
|
|
2247
|
+
Links and images in Markdown can provide the link destination or image source at
|
|
2248
|
+
the time of use or can use a label to reference a definition elsewhere in the
|
|
2249
|
+
document. The three reference formats are convenient for keeping paragraph text
|
|
2250
|
+
clutter-free and make it easy to reuse the same URL in multiple places.
|
|
2251
|
+
|
|
2252
|
+
By default, this rule allows all link/image styles.
|
|
2253
|
+
|
|
2254
|
+
Setting the `autolink` parameter to `false` disables autolinks:
|
|
2255
|
+
|
|
2256
|
+
```markdown
|
|
2257
|
+
<https://example.com>
|
|
2258
|
+
```
|
|
2259
|
+
|
|
2260
|
+
Setting the `inline` parameter to `false` disables inline links and images:
|
|
2261
|
+
|
|
2262
|
+
```markdown
|
|
2263
|
+
[link](https://example.com)
|
|
2264
|
+
|
|
2265
|
+

|
|
2266
|
+
```
|
|
2267
|
+
|
|
2268
|
+
Setting the `full` parameter to `false` disables full reference links and
|
|
2269
|
+
images:
|
|
2270
|
+
|
|
2271
|
+
```markdown
|
|
2272
|
+
[link][url]
|
|
2273
|
+
|
|
2274
|
+
![image][url]
|
|
2275
|
+
|
|
2276
|
+
[url]: https://example.com
|
|
2277
|
+
```
|
|
2278
|
+
|
|
2279
|
+
Setting the `collapsed` parameter to `false` disables collapsed reference links
|
|
2280
|
+
and images:
|
|
2281
|
+
|
|
2282
|
+
```markdown
|
|
2283
|
+
[url][]
|
|
2284
|
+
|
|
2285
|
+
![url][]
|
|
2286
|
+
|
|
2287
|
+
[url]: https://example.com
|
|
2288
|
+
```
|
|
2289
|
+
|
|
2290
|
+
Setting the `shortcut` parameter to `false` disables shortcut reference links
|
|
2291
|
+
and images:
|
|
2292
|
+
|
|
2293
|
+
```markdown
|
|
2294
|
+
[url]
|
|
2295
|
+
|
|
2296
|
+
![url]
|
|
2297
|
+
|
|
2298
|
+
[url]: https://example.com
|
|
2299
|
+
```
|
|
2300
|
+
|
|
2301
|
+
To fix violations of this rule, change the link or image to use an allowed
|
|
2302
|
+
style. This rule can automatically fix violations when a link or image can be
|
|
2303
|
+
converted to the `inline` style (preferred) or a link can be converted to the
|
|
2304
|
+
`autolink` style (which does not support images and must be an absolute URL).
|
|
2305
|
+
This rule does *not* fix scenarios that require converting a link or image to
|
|
2306
|
+
the `full`, `collapsed`, or `shortcut` reference styles because that involves
|
|
2307
|
+
naming the reference and determining where to insert it in the document.
|
|
2308
|
+
|
|
2309
|
+
Setting the `url_inline` parameter to `false` prevents the use of inline links
|
|
2310
|
+
with the same absolute URL text/destination and no title because such links can
|
|
2311
|
+
be converted to autolinks:
|
|
2312
|
+
|
|
2313
|
+
```markdown
|
|
2314
|
+
[https://example.com](https://example.com)
|
|
2315
|
+
```
|
|
2316
|
+
|
|
2317
|
+
To fix `url_inline` violations, use the simpler autolink syntax instead:
|
|
2318
|
+
|
|
2319
|
+
```markdown
|
|
2320
|
+
<https://example.com>
|
|
2321
|
+
```
|
|
2322
|
+
|
|
2323
|
+
Rationale: Consistent formatting makes it easier to understand a document.
|
|
2324
|
+
Autolinks are concise, but appear as URLs which can be long and confusing.
|
|
2325
|
+
Inline links and images can include descriptive text, but take up more space in
|
|
2326
|
+
Markdown form. Reference links and images can be easier to read and manipulate
|
|
2327
|
+
in Markdown form, but require a separate link reference definition.
|
|
2328
|
+
|
|
2310
2329
|
<!-- markdownlint-configure-file {
|
|
2311
2330
|
"no-inline-html": {
|
|
2312
2331
|
"allowed_elements": [
|
package/doc/md001.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# `MD001` - Heading levels should only increment by one level at a time
|
|
2
2
|
|
|
3
|
-
Tags: `
|
|
3
|
+
Tags: `headings`
|
|
4
4
|
|
|
5
|
-
Aliases: `
|
|
5
|
+
Aliases: `heading-increment`
|
|
6
6
|
|
|
7
7
|
This rule is triggered when you skip heading levels in a Markdown document, for
|
|
8
8
|
example:
|
package/doc/md003.md
CHANGED
package/doc/md007.md
CHANGED
|
@@ -36,10 +36,9 @@ unordered (otherwise, extra indentation of ordered lists interferes with the
|
|
|
36
36
|
rule).
|
|
37
37
|
|
|
38
38
|
The `start_indented` parameter allows the first level of lists to be indented by
|
|
39
|
-
the configured number of spaces rather than starting at zero
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
`start_indented` is not set).
|
|
39
|
+
the configured number of spaces rather than starting at zero. The `start_indent`
|
|
40
|
+
parameter allows the first level of lists to be indented by a different number
|
|
41
|
+
of spaces than the rest (ignored when `start_indented` is not set).
|
|
43
42
|
|
|
44
43
|
Rationale: Indenting by 2 spaces allows the content of a nested list to be in
|
|
45
44
|
line with the start of the content of the parent list when a single space is
|
package/doc/md013.md
CHANGED
|
@@ -9,7 +9,6 @@ Parameters:
|
|
|
9
9
|
- `code_block_line_length`: Number of characters for code blocks (`integer`,
|
|
10
10
|
default `80`)
|
|
11
11
|
- `code_blocks`: Include code blocks (`boolean`, default `true`)
|
|
12
|
-
- `headers`: Include headings (`boolean`, default `true`)
|
|
13
12
|
- `heading_line_length`: Number of characters for headings (`integer`, default
|
|
14
13
|
`80`)
|
|
15
14
|
- `headings`: Include headings (`boolean`, default `true`)
|
|
@@ -18,8 +17,6 @@ Parameters:
|
|
|
18
17
|
- `strict`: Strict length checking (`boolean`, default `false`)
|
|
19
18
|
- `tables`: Include tables (`boolean`, default `true`)
|
|
20
19
|
|
|
21
|
-
> If `headings` is not provided, `headers` (deprecated) will be used.
|
|
22
|
-
|
|
23
20
|
This rule is triggered when there are lines that are longer than the
|
|
24
21
|
configured `line_length` (default: 80 characters). To fix this, split the line
|
|
25
22
|
up into multiple lines. To set a different maximum length for headings, use
|
package/doc/md018.md
CHANGED
package/doc/md019.md
CHANGED
package/doc/md020.md
CHANGED
package/doc/md021.md
CHANGED
package/doc/md022.md
CHANGED
package/doc/md023.md
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
# `MD023` - Headings must start at the beginning of the line
|
|
2
2
|
|
|
3
|
-
Tags: `
|
|
3
|
+
Tags: `headings`, `spaces`
|
|
4
4
|
|
|
5
|
-
Aliases: `
|
|
5
|
+
Aliases: `heading-start-left`
|
|
6
6
|
|
|
7
7
|
Fixable: Some violations can be fixed by tooling
|
|
8
8
|
|
|
@@ -22,5 +22,12 @@ Some text
|
|
|
22
22
|
# Heading
|
|
23
23
|
```
|
|
24
24
|
|
|
25
|
+
Note that scenarios like block quotes "indent" the start of the line, so the
|
|
26
|
+
following is also correct:
|
|
27
|
+
|
|
28
|
+
```markdown
|
|
29
|
+
> # Heading in Block Quote
|
|
30
|
+
```
|
|
31
|
+
|
|
25
32
|
Rationale: Headings that don't start at the beginning of the line will not be
|
|
26
33
|
parsed as headings, and will instead appear as regular text.
|
package/doc/md024.md
CHANGED
package/doc/md025.md
CHANGED
package/doc/md026.md
CHANGED
package/doc/md036.md
CHANGED
package/doc/md041.md
CHANGED
package/doc/md043.md
CHANGED
|
@@ -1,17 +1,14 @@
|
|
|
1
1
|
# `MD043` - Required heading structure
|
|
2
2
|
|
|
3
|
-
Tags: `
|
|
3
|
+
Tags: `headings`
|
|
4
4
|
|
|
5
|
-
Aliases: `required-
|
|
5
|
+
Aliases: `required-headings`
|
|
6
6
|
|
|
7
7
|
Parameters:
|
|
8
8
|
|
|
9
|
-
- `headers`: List of headings (`string[]`, default `[]`)
|
|
10
9
|
- `headings`: List of headings (`string[]`, default `[]`)
|
|
11
10
|
- `match_case`: Match case of headings (`boolean`, default `false`)
|
|
12
11
|
|
|
13
|
-
> If `headings` is not provided, `headers` (deprecated) will be used.
|
|
14
|
-
|
|
15
12
|
This rule is triggered when the headings in a file do not match the array of
|
|
16
13
|
headings passed to the rule. It can be used to enforce a standard heading
|
|
17
14
|
structure for a set of files.
|
package/doc/md045.md
CHANGED
|
@@ -23,6 +23,12 @@ Or with reference syntax as:
|
|
|
23
23
|
[ref]: image.jpg "Optional title"
|
|
24
24
|
```
|
|
25
25
|
|
|
26
|
+
Or with HTML as:
|
|
27
|
+
|
|
28
|
+
```html
|
|
29
|
+
<img src="image.jpg" alt="Alternate text" />
|
|
30
|
+
```
|
|
31
|
+
|
|
26
32
|
Guidance for writing alternate text is available from the [W3C][w3c],
|
|
27
33
|
[Wikipedia][wikipedia], and [other locations][phase2technology].
|
|
28
34
|
|
package/doc/md049.md
CHANGED
package/doc/md050.md
CHANGED