Reimplement markdownlint-test-scenarios.js to be simpler, more efficient, and use AVA test snapshots for all file-based test scenarios.

This commit is contained in:
David Anson 2022-05-10 06:11:46 +00:00 committed by GitHub
parent 7bb80d19b1
commit 820f2699ca
52 changed files with 38769 additions and 4531 deletions

View file

@ -28,6 +28,8 @@ When running tests, `test/*.md` files are enumerated, linted, and fail if any vi
For example, the line `### Heading {MD001}` is expected to trigger the rule `MD001`. For example, the line `### Heading {MD001}` is expected to trigger the rule `MD001`.
For cases where the marker text can not be present on the same line, the syntax `{MD###:#}` can be used to include a line number. For cases where the marker text can not be present on the same line, the syntax `{MD###:#}` can be used to include a line number.
If `some-test.md` needs custom configuration, a `some-test.json` is used to provide a custom `options.config` for that scenario. If `some-test.md` needs custom configuration, a `some-test.json` is used to provide a custom `options.config` for that scenario.
Tests run by `markdownlint-test-scenarios.js` use [AVA's snapshot feature](https://github.com/avajs/ava/blob/main/docs/04-snapshot-testing.md).
To update snapshots (for example, after modifying a test file), run `npm run update-snapshots` and include the updated files with the pull request.
Lint before sending a pull request by running `npm run lint`. Lint before sending a pull request by running `npm run lint`.
There should be no issues. There should be no issues.

View file

@ -42,6 +42,7 @@
"test-cover": "c8 --check-coverage --branches 100 --functions 100 --lines 100 --statements 100 npm test", "test-cover": "c8 --check-coverage --branches 100 --functions 100 --lines 100 --statements 100 npm test",
"test-declaration": "cd example/typescript && tsc && node type-check.js", "test-declaration": "cd example/typescript && tsc && node type-check.js",
"test-extra": "ava --timeout=5m test/markdownlint-test-extra-parse.js test/markdownlint-test-extra-type.js", "test-extra": "ava --timeout=5m test/markdownlint-test-extra-parse.js test/markdownlint-test-extra-type.js",
"update-snapshots": "ava --update-snapshots test/markdownlint-test-scenarios.js",
"upgrade": "npx --yes npm-check-updates --upgrade" "upgrade": "npx --yes npm-check-updates --upgrade"
}, },
"engines": { "engines": {

View file

@ -1,3 +0,0 @@
text
text and text 2
texts with trailing spaces

View file

@ -1,62 +0,0 @@
[
{
"lineNumber": 1,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 1",
"errorContext": null,
"errorRange": [
1,
13
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 13,
"insertText": " "
}
},
{
"lineNumber": 2,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 5",
"errorContext": null,
"errorRange": [
5,
2
],
"fixInfo": {
"editColumn": 5,
"deleteCount": 2,
"insertText": " "
}
},
{
"lineNumber": 3,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 27",
"errorContext": null,
"errorRange": [
27,
3
],
"fixInfo": {
"editColumn": 27,
"deleteCount": 3,
"insertText": " "
}
}
]

View file

@ -1,30 +0,0 @@
## One
#### Two
### Three ###
* Alpha
* Bravo
* Charlie
* Delta
* Echo
Text
Text text
1. One
2. Two
3. Three
4. Four
5. Five
6. Six
7. Seven
8. Eight
9. Nine
10. Ten
11. Eleven
12. Twelve

View file

@ -1,255 +0,0 @@
[
{
"lineNumber": 3,
"ruleNames": [
"MD001",
"heading-increment",
"header-increment"
],
"ruleDescription": "Heading levels should only increment by one level at a time",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md001",
"errorDetail": "Expected: h3; Actual: h4",
"errorContext": null,
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 1,
"ruleNames": [
"MD002",
"first-heading-h1",
"first-header-h1"
],
"ruleDescription": "First heading should be a top-level heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md002",
"errorDetail": "Expected: h1; Actual: h2",
"errorContext": null,
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 5,
"ruleNames": [
"MD003",
"heading-style",
"header-style"
],
"ruleDescription": "Heading style",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md003",
"errorDetail": "Expected: atx; Actual: atx_closed",
"errorContext": null,
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 10,
"ruleNames": [
"MD004",
"ul-style"
],
"ruleDescription": "Unordered list style",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md004",
"errorDetail": "Expected: asterisk; Actual: dash",
"errorContext": null,
"errorRange": [
1,
2
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 1,
"insertText": "*"
}
},
{
"lineNumber": 8,
"ruleNames": [
"MD005",
"list-indent"
],
"ruleDescription": "Inconsistent indentation for list items at the same level",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md005",
"errorDetail": "Expected: 0; Actual: 1",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": null
},
{
"lineNumber": 23,
"ruleNames": [
"MD005",
"list-indent"
],
"ruleDescription": "Inconsistent indentation for list items at the same level",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md005",
"errorDetail": "Expected: 1; Actual: 0",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 0,
"insertText": " "
}
},
{
"lineNumber": 29,
"ruleNames": [
"MD005",
"list-indent"
],
"ruleDescription": "Inconsistent indentation for list items at the same level",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md005",
"errorDetail": "Expected: (3); Actual: (4)",
"errorContext": null,
"errorRange": [
1,
5
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 1,
"insertText": ""
}
},
{
"lineNumber": 12,
"ruleNames": [
"MD006",
"ul-start-left"
],
"ruleDescription": "Consider starting bulleted lists at the beginning of the line",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md006",
"errorDetail": "Expected: 0; Actual: 1",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": {
"deleteCount": 1
}
},
{
"lineNumber": 13,
"ruleNames": [
"MD006",
"ul-start-left"
],
"ruleDescription": "Consider starting bulleted lists at the beginning of the line",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md006",
"errorDetail": "Expected: 0; Actual: 1",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": {
"deleteCount": 1
}
},
{
"lineNumber": 8,
"ruleNames": [
"MD007",
"ul-indent"
],
"ruleDescription": "Unordered list indentation",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md007",
"errorDetail": "Expected: 0; Actual: 1",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 1,
"insertText": ""
}
},
{
"lineNumber": 12,
"ruleNames": [
"MD007",
"ul-indent"
],
"ruleDescription": "Unordered list indentation",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md007",
"errorDetail": "Expected: 0; Actual: 1",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 1,
"insertText": ""
}
},
{
"lineNumber": 13,
"ruleNames": [
"MD007",
"ul-indent"
],
"ruleDescription": "Unordered list indentation",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md007",
"errorDetail": "Expected: 0; Actual: 1",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 1,
"insertText": ""
}
},
{
"lineNumber": 15,
"ruleNames": [
"MD009",
"no-trailing-spaces"
],
"ruleDescription": "Trailing spaces",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md009",
"errorDetail": "Expected: 0 or 2; Actual: 1",
"errorContext": null,
"errorRange": [
5,
1
],
"fixInfo": {
"editColumn": 5,
"deleteCount": 1
}
},
{
"lineNumber": 17,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 5",
"errorContext": null,
"errorRange": [
5,
1
],
"fixInfo": {
"editColumn": 5,
"deleteCount": 1,
"insertText": " "
}
}
]

View file

@ -1,25 +0,0 @@
# Top level heading
<!-- markdownlint-disable MD003 -->
A [reversed](link) example.
123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789 123456789
## 123456789 123456789 123456789 123456789 123456789 123456789
command with no output
## No space A
## Multiple spaces B
## No space C ##
## No space D ##
## Multiple spaces E ##
## Multiple spaces F ##
*Another* [reversed](link) example.

View file

@ -1,226 +0,0 @@
[
{
"lineNumber": 5,
"ruleNames": [
"MD011",
"no-reversed-links"
],
"ruleDescription": "Reversed link syntax",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md011",
"errorDetail": "(reversed)[link]",
"errorContext": null,
"errorRange": [
3,
16
],
"fixInfo": {
"editColumn": 3,
"deleteCount": 16,
"insertText": "[reversed](link)"
}
},
{
"lineNumber": 26,
"ruleNames": [
"MD011",
"no-reversed-links"
],
"ruleDescription": "Reversed link syntax",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md011",
"errorDetail": "(reversed)[link]",
"errorContext": null,
"errorRange": [
11,
16
],
"fixInfo": {
"editColumn": 11,
"deleteCount": 16,
"insertText": "[reversed](link)"
}
},
{
"lineNumber": 7,
"ruleNames": [
"MD012",
"no-multiple-blanks"
],
"ruleDescription": "Multiple consecutive blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md012",
"errorDetail": "Expected: 1; Actual: 2",
"errorContext": null,
"errorRange": null,
"fixInfo": {
"deleteCount": -1
}
},
{
"lineNumber": 8,
"ruleNames": [
"MD013",
"line-length"
],
"ruleDescription": "Line length",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md013",
"errorDetail": "Expected: 80; Actual: 99",
"errorContext": null,
"errorRange": [
81,
19
],
"fixInfo": null
},
{
"lineNumber": 10,
"ruleNames": [
"MD013",
"line-length"
],
"ruleDescription": "Line length",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md013",
"errorDetail": "Expected: 40; Actual: 62",
"errorContext": null,
"errorRange": [
41,
22
],
"fixInfo": null
},
{
"lineNumber": 12,
"ruleNames": [
"MD014",
"commands-show-output"
],
"ruleDescription": "Dollar signs used before commands without showing output",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md014",
"errorDetail": null,
"errorContext": "$ command with no output",
"errorRange": [
5,
2
],
"fixInfo": {
"editColumn": 5,
"deleteCount": 2
}
},
{
"lineNumber": 14,
"ruleNames": [
"MD018",
"no-missing-space-atx"
],
"ruleDescription": "No space after hash on atx style heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md018",
"errorDetail": null,
"errorContext": "##No space A",
"errorRange": [
1,
3
],
"fixInfo": {
"editColumn": 3,
"insertText": " "
}
},
{
"lineNumber": 16,
"ruleNames": [
"MD019",
"no-multiple-space-atx"
],
"ruleDescription": "Multiple spaces after hash on atx style heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md019",
"errorDetail": null,
"errorContext": "## Multiple spaces B",
"errorRange": [
1,
5
],
"fixInfo": {
"editColumn": 3,
"deleteCount": 1
}
},
{
"lineNumber": 18,
"ruleNames": [
"MD020",
"no-missing-space-closed-atx"
],
"ruleDescription": "No space inside hashes on closed atx style heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md020",
"errorDetail": null,
"errorContext": "##No space C ##",
"errorRange": [
1,
3
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 15,
"insertText": "## No space C ##"
}
},
{
"lineNumber": 20,
"ruleNames": [
"MD020",
"no-missing-space-closed-atx"
],
"ruleDescription": "No space inside hashes on closed atx style heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md020",
"errorDetail": null,
"errorContext": "## No space D##",
"errorRange": [
13,
3
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 15,
"insertText": "## No space D ##"
}
},
{
"lineNumber": 22,
"ruleNames": [
"MD021",
"no-multiple-space-closed-atx"
],
"ruleDescription": "Multiple spaces inside hashes on closed atx style heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md021",
"errorDetail": null,
"errorContext": "## Multiple spaces E ##",
"errorRange": [
1,
5
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 24,
"insertText": "## Multiple spaces E ##"
}
},
{
"lineNumber": 24,
"ruleNames": [
"MD021",
"no-multiple-space-closed-atx"
],
"ruleDescription": "Multiple spaces inside hashes on closed atx style heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md021",
"errorDetail": null,
"errorContext": "## Multiple spaces F ##",
"errorRange": [
20,
5
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 24,
"insertText": "## Multiple spaces F ##"
}
}
]

View file

@ -1,20 +0,0 @@
# Heading
Text
# Heading
## Another heading
> Multiple spaces
> Blank line above
1. Alpha
3. Beta
> > Multiple spaces, multiple blockquotes
> >
> > > Multiple spaces, multiple blockquotes
> > >
> > > Multiple spaces, multiple blockquotes

View file

@ -1,211 +0,0 @@
[
{
"lineNumber": 1,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 1; Actual: 0; Below",
"errorContext": "# Heading",
"errorRange": null,
"fixInfo": {
"lineNumber": 2,
"insertText": "\n"
}
},
{
"lineNumber": 1,
"ruleNames": [
"MD023",
"heading-start-left",
"header-start-left"
],
"ruleDescription": "Headings must start at the beginning of the line",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md023",
"errorDetail": null,
"errorContext": " # Heading",
"errorRange": [
1,
2
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 1
}
},
{
"lineNumber": 4,
"ruleNames": [
"MD024",
"no-duplicate-heading",
"no-duplicate-header"
],
"ruleDescription": "Multiple headings with the same content",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md024",
"errorDetail": null,
"errorContext": "# Heading",
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 4,
"ruleNames": [
"MD025",
"single-title",
"single-h1"
],
"ruleDescription": "Multiple top-level headings in the same document",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md025",
"errorDetail": null,
"errorContext": "# Heading",
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 6,
"ruleNames": [
"MD026",
"no-trailing-punctuation"
],
"ruleDescription": "Trailing punctuation in heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md026",
"errorDetail": "Punctuation: '.'",
"errorContext": null,
"errorRange": [
19,
1
],
"fixInfo": {
"editColumn": 19,
"deleteCount": 1
}
},
{
"lineNumber": 8,
"ruleNames": [
"MD027",
"no-multiple-space-blockquote"
],
"ruleDescription": "Multiple spaces after blockquote symbol",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md027",
"errorDetail": null,
"errorContext": "> Multiple spaces",
"errorRange": [
1,
4
],
"fixInfo": {
"editColumn": 2,
"deleteCount": 1
}
},
{
"lineNumber": 15,
"ruleNames": [
"MD027",
"no-multiple-space-blockquote"
],
"ruleDescription": "Multiple spaces after blockquote symbol",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md027",
"errorDetail": null,
"errorContext": "> > Multiple spaces, multiple...",
"errorRange": [
1,
6
],
"fixInfo": {
"editColumn": 4,
"deleteCount": 1
}
},
{
"lineNumber": 17,
"ruleNames": [
"MD027",
"no-multiple-space-blockquote"
],
"ruleDescription": "Multiple spaces after blockquote symbol",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md027",
"errorDetail": null,
"errorContext": "> > > Multiple spaces, multip...",
"errorRange": [
1,
8
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 1
}
},
{
"lineNumber": 19,
"ruleNames": [
"MD027",
"no-multiple-space-blockquote"
],
"ruleDescription": "Multiple spaces after blockquote symbol",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md027",
"errorDetail": null,
"errorContext": "> > > Multiple spaces, multip...",
"errorRange": [
1,
4
],
"fixInfo": {
"editColumn": 2,
"deleteCount": 1
}
},
{
"lineNumber": 9,
"ruleNames": [
"MD028",
"no-blanks-blockquote"
],
"ruleDescription": "Blank line inside blockquote",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md028",
"errorDetail": null,
"errorContext": null,
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 13,
"ruleNames": [
"MD029",
"ol-prefix"
],
"ruleDescription": "Ordered list item prefix",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md029",
"errorDetail": "Expected: 2; Actual: 3; Style: 1/2/3",
"errorContext": null,
"errorRange": [
1,
4
],
"fixInfo": null
},
{
"lineNumber": 13,
"ruleNames": [
"MD030",
"list-marker-space"
],
"ruleDescription": "Spaces after list markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md030",
"errorDetail": "Expected: 1; Actual: 2",
"errorContext": null,
"errorRange": [
1,
4
],
"fixInfo": {
"editColumn": 3,
"deleteCount": 2,
"insertText": " "
}
}
]

View file

@ -1,21 +0,0 @@
#
-
(bare list item marker)
1.
(bare list item marker)
-a
(not a list item)
1.a
(not a list item)
- a
1. a
- a
1. a

View file

@ -1,42 +0,0 @@
[
{
"lineNumber": 19,
"ruleNames": [
"MD030",
"list-marker-space"
],
"ruleDescription": "Spaces after list markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md030",
"errorDetail": "Expected: 1; Actual: 2",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": {
"editColumn": 2,
"deleteCount": 2,
"insertText": " "
}
},
{
"lineNumber": 21,
"ruleNames": [
"MD030",
"list-marker-space"
],
"ruleDescription": "Spaces after list markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md030",
"errorDetail": "Expected: 1; Actual: 2",
"errorContext": null,
"errorRange": [
1,
4
],
"fixInfo": {
"editColumn": 3,
"deleteCount": 2,
"insertText": " "
}
}
]

View file

@ -1,5 +1,6 @@
{ {
"default": true, "default": true,
"MD041": false, "MD041": false,
"MD049": false "MD049": false,
"MD050": false
} }

View file

@ -1,65 +0,0 @@
```js
debugger;
```
* List
Inline<hr/>HTML
Bare <https://example.com> link
---
***
*Emphasis*
Space *inside* emphasis
Space `inside` code span
Space [inside](link) text
```
```
space ``inside`` code
space `inside` of `code` elements
`space` inside `of` code `elements`
space ``inside`` of ``code`` elements
`` ` embedded backtick``
``embedded backtick` ``
some *space* in *some* emphasis
some *space* in *some* emphasis
some *space* in **some** emphasis
some _space_ in _some_ emphasis
some __space__ in __some__ emphasis
Text
text `code
span` text
text.
Text
text `code
span` text
text.
* List
---
Text
text ```code
span code
span code``` text
text
text text ````code
span code
span```` text
text.
Text [space](link) text [space](link) text [space](link) text.
Space *inside
multi-line* emphasis.

View file

@ -1,585 +0,0 @@
[
{
"lineNumber": 3,
"ruleNames": [
"MD031",
"blanks-around-fences"
],
"ruleDescription": "Fenced code blocks should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md031",
"errorDetail": null,
"errorContext": "```",
"errorRange": null,
"fixInfo": {
"lineNumber": 4,
"insertText": "\n"
}
},
{
"lineNumber": 4,
"ruleNames": [
"MD032",
"blanks-around-lists"
],
"ruleDescription": "Lists should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md032",
"errorDetail": null,
"errorContext": "* List",
"errorRange": null,
"fixInfo": {
"insertText": "\n"
}
},
{
"lineNumber": 47,
"ruleNames": [
"MD032",
"blanks-around-lists"
],
"ruleDescription": "Lists should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md032",
"errorDetail": null,
"errorContext": "* List",
"errorRange": null,
"fixInfo": {
"lineNumber": 48,
"insertText": "\n"
}
},
{
"lineNumber": 6,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: hr",
"errorContext": null,
"errorRange": [
7,
5
],
"fixInfo": null
},
{
"lineNumber": 8,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com",
"errorRange": [
6,
19
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 19,
"insertText": "<https://example.com>"
}
},
{
"lineNumber": 11,
"ruleNames": [
"MD035",
"hr-style"
],
"ruleDescription": "Horizontal rule style",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md035",
"errorDetail": "Expected: ---; Actual: ***",
"errorContext": null,
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 13,
"ruleNames": [
"MD036",
"no-emphasis-as-heading",
"no-emphasis-as-header"
],
"ruleDescription": "Emphasis used instead of a heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md036",
"errorDetail": null,
"errorContext": "Emphasis",
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 15,
"ruleNames": [
"MD037",
"no-space-in-emphasis"
],
"ruleDescription": "Spaces inside emphasis markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md037",
"errorDetail": null,
"errorContext": "* inside *",
"errorRange": [
7,
10
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 10,
"insertText": "*inside*"
}
},
{
"lineNumber": 31,
"ruleNames": [
"MD037",
"no-space-in-emphasis"
],
"ruleDescription": "Spaces inside emphasis markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md037",
"errorDetail": null,
"errorContext": "* some*",
"errorRange": [
17,
7
],
"fixInfo": {
"editColumn": 17,
"deleteCount": 7,
"insertText": "*some*"
}
},
{
"lineNumber": 32,
"ruleNames": [
"MD037",
"no-space-in-emphasis"
],
"ruleDescription": "Spaces inside emphasis markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md037",
"errorDetail": null,
"errorContext": "*some *",
"errorRange": [
17,
7
],
"fixInfo": {
"editColumn": 17,
"deleteCount": 7,
"insertText": "*some*"
}
},
{
"lineNumber": 33,
"ruleNames": [
"MD037",
"no-space-in-emphasis"
],
"ruleDescription": "Spaces inside emphasis markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md037",
"errorDetail": null,
"errorContext": "**some **",
"errorRange": [
17,
9
],
"fixInfo": {
"editColumn": 17,
"deleteCount": 9,
"insertText": "**some**"
}
},
{
"lineNumber": 34,
"ruleNames": [
"MD037",
"no-space-in-emphasis"
],
"ruleDescription": "Spaces inside emphasis markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md037",
"errorDetail": null,
"errorContext": "_ some_",
"errorRange": [
17,
7
],
"fixInfo": {
"editColumn": 17,
"deleteCount": 7,
"insertText": "_some_"
}
},
{
"lineNumber": 35,
"ruleNames": [
"MD037",
"no-space-in-emphasis"
],
"ruleDescription": "Spaces inside emphasis markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md037",
"errorDetail": null,
"errorContext": "__ some __",
"errorRange": [
19,
10
],
"fixInfo": {
"editColumn": 19,
"deleteCount": 10,
"insertText": "__some__"
}
},
{
"lineNumber": 62,
"ruleNames": [
"MD037",
"no-space-in-emphasis"
],
"ruleDescription": "Spaces inside emphasis markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md037",
"errorDetail": null,
"errorContext": "* inside",
"errorRange": [
7,
8
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 8,
"insertText": "*inside"
}
},
{
"lineNumber": 63,
"ruleNames": [
"MD037",
"no-space-in-emphasis"
],
"ruleDescription": "Spaces inside emphasis markers",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md037",
"errorDetail": null,
"errorContext": "multi-line *",
"errorRange": [
1,
12
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 12,
"insertText": "multi-line*"
}
},
{
"lineNumber": 17,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "` inside`",
"errorRange": [
7,
9
],
"fixInfo": {
"editColumn": 8,
"deleteCount": 7,
"insertText": "inside"
}
},
{
"lineNumber": 24,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "`` inside``",
"errorRange": [
7,
11
],
"fixInfo": {
"editColumn": 9,
"deleteCount": 7,
"insertText": "inside"
}
},
{
"lineNumber": 25,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "` code`",
"errorRange": [
19,
7
],
"fixInfo": {
"editColumn": 20,
"deleteCount": 5,
"insertText": "code"
}
},
{
"lineNumber": 26,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "` elements`",
"errorRange": [
26,
11
],
"fixInfo": {
"editColumn": 27,
"deleteCount": 9,
"insertText": "elements"
}
},
{
"lineNumber": 27,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "`` code``",
"errorRange": [
21,
9
],
"fixInfo": {
"editColumn": 23,
"deleteCount": 5,
"insertText": "code"
}
},
{
"lineNumber": 28,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "`` ` embedded backtick``",
"errorRange": [
1,
25
],
"fixInfo": {
"editColumn": 3,
"deleteCount": 21,
"insertText": " ` embedded backtick"
}
},
{
"lineNumber": 29,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "``embedded backtick` ``",
"errorRange": [
1,
24
],
"fixInfo": {
"editColumn": 3,
"deleteCount": 20,
"insertText": "embedded backtick` "
}
},
{
"lineNumber": 38,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "` code",
"errorRange": [
6,
6
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 5,
"insertText": "code"
}
},
{
"lineNumber": 44,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "span `",
"errorRange": [
1,
7
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 6,
"insertText": "span"
}
},
{
"lineNumber": 53,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "span code ```",
"errorRange": [
1,
13
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 10,
"insertText": "span code"
}
},
{
"lineNumber": 55,
"ruleNames": [
"MD038",
"no-space-in-code"
],
"ruleDescription": "Spaces inside code span elements",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md038",
"errorDetail": null,
"errorContext": "```` code",
"errorRange": [
11,
9
],
"fixInfo": {
"editColumn": 15,
"deleteCount": 5,
"insertText": "code"
}
},
{
"lineNumber": 19,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[ inside ]",
"errorRange": [
7,
10
],
"fixInfo": {
"editColumn": 8,
"deleteCount": 8,
"insertText": "inside"
}
},
{
"lineNumber": 60,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[ space]",
"errorRange": [
6,
8
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 6,
"insertText": "space"
}
},
{
"lineNumber": 60,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[space ]",
"errorRange": [
26,
8
],
"fixInfo": {
"editColumn": 27,
"deleteCount": 6,
"insertText": "space"
}
},
{
"lineNumber": 60,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[ space ]",
"errorRange": [
46,
9
],
"fixInfo": {
"editColumn": 47,
"deleteCount": 7,
"insertText": "space"
}
},
{
"lineNumber": 21,
"ruleNames": [
"MD040",
"fenced-code-language"
],
"ruleDescription": "Fenced code blocks should have a language specified",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md040",
"errorDetail": null,
"errorContext": "```",
"errorRange": null,
"fixInfo": null
}
]

View file

@ -1,49 +0,0 @@
Not a heading
An [empty]() link
An [empty](#) link with fragment
An [empty](<>) link with angle brackets
This is a test file for the markdownlint package.
This is a paragraph
about markdownlint
that capitalizes the
name wrong twice:
markdownlint.
A [normal](link) and an [empty one]() and a [fragment](#one).
An image without alternate text ![](image.jpg)
```text
Fenced code
```
Indented code
~~~text
Fenced code
~~~
Mixed *emphasis* on *this* line *with* multiple *issues*
Mixed __strong emphasis__ on __this__ line __with__ multiple __issues__
Inconsistent
emphasis _text
spanning_ many
lines
Inconsistent
strong **emphasis
spanning** many
lines
Inconsistent *double* text *interleaved* text *double* *interleaved* emphasis.
Inconsistent __double__ text __interleaved__ text __double__ __interleaved__ strong emphasis.
Missing newline character

View file

@ -1,478 +0,0 @@
[
{
"lineNumber": 1,
"ruleNames": [
"MD041",
"first-line-heading",
"first-line-h1"
],
"ruleDescription": "First line in a file should be a top-level heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md041",
"errorDetail": null,
"errorContext": "Not a heading",
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 3,
"ruleNames": [
"MD042",
"no-empty-links"
],
"ruleDescription": "No empty links",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md042",
"errorDetail": null,
"errorContext": "[empty]()",
"errorRange": [
4,
9
],
"fixInfo": null
},
{
"lineNumber": 5,
"ruleNames": [
"MD042",
"no-empty-links"
],
"ruleDescription": "No empty links",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md042",
"errorDetail": null,
"errorContext": "[empty](#)",
"errorRange": [
4,
10
],
"fixInfo": null
},
{
"lineNumber": 7,
"ruleNames": [
"MD042",
"no-empty-links"
],
"ruleDescription": "No empty links",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md042",
"errorDetail": null,
"errorContext": "[empty](<>)",
"errorRange": [
4,
11
],
"fixInfo": null
},
{
"lineNumber": 17,
"ruleNames": [
"MD042",
"no-empty-links"
],
"ruleDescription": "No empty links",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md042",
"errorDetail": null,
"errorContext": "[empty one]()",
"errorRange": [
25,
13
],
"fixInfo": null
},
{
"lineNumber": 49,
"ruleNames": [
"MD043",
"required-headings",
"required-headers"
],
"ruleDescription": "Required heading structure",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md043",
"errorDetail": null,
"errorContext": "# Heading",
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 9,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: markdownlint; Actual: MARKDOWNLINT",
"errorContext": null,
"errorRange": [
29,
12
],
"fixInfo": {
"editColumn": 29,
"deleteCount": 12,
"insertText": "markdownlint"
}
},
{
"lineNumber": 12,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: markdownlint; Actual: Markdownlint",
"errorContext": null,
"errorRange": [
7,
12
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 12,
"insertText": "markdownlint"
}
},
{
"lineNumber": 15,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: markdownlint; Actual: MarkDownLint",
"errorContext": null,
"errorRange": [
1,
12
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 12,
"insertText": "markdownlint"
}
},
{
"lineNumber": 19,
"ruleNames": [
"MD045",
"no-alt-text"
],
"ruleDescription": "Images should have alternate text (alt text)",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md045",
"errorDetail": null,
"errorContext": null,
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 25,
"ruleNames": [
"MD046",
"code-block-style"
],
"ruleDescription": "Code block style",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md046",
"errorDetail": "Expected: fenced; Actual: indented",
"errorContext": null,
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 49,
"ruleNames": [
"MD047",
"single-trailing-newline"
],
"ruleDescription": "Files should end with a single newline character",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md047",
"errorDetail": null,
"errorContext": null,
"errorRange": [
25,
1
],
"fixInfo": {
"editColumn": 26,
"insertText": "\n"
}
},
{
"lineNumber": 27,
"ruleNames": [
"MD048",
"code-fence-style"
],
"ruleDescription": "Code fence style",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md048",
"errorDetail": "Expected: backtick; Actual: tilde",
"errorContext": null,
"errorRange": null,
"fixInfo": null
},
{
"errorContext": null,
"errorDetail": "Expected: asterisk; Actual: underscore",
"errorRange": [
21,
6
],
"fixInfo": {
"deleteCount": 6,
"editColumn": 21,
"insertText": "*this*"
},
"lineNumber": 31,
"ruleDescription": "Emphasis style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md049",
"ruleNames": [
"MD049",
"emphasis-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: asterisk; Actual: underscore",
"errorRange": [
49,
8
],
"fixInfo": {
"deleteCount": 8,
"editColumn": 49,
"insertText": "*issues*"
},
"lineNumber": 31,
"ruleDescription": "Emphasis style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md049",
"ruleNames": [
"MD049",
"emphasis-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: asterisk; Actual: underscore",
"errorRange": null,
"fixInfo": null,
"lineNumber": 36,
"ruleDescription": "Emphasis style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md049",
"ruleNames": [
"MD049",
"emphasis-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: asterisk; Actual: underscore",
"errorRange": [
14,
8
],
"fixInfo": {
"deleteCount": 8,
"editColumn": 14,
"insertText": "*double*"
},
"lineNumber": 45,
"ruleDescription": "Emphasis style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md049",
"ruleNames": [
"MD049",
"emphasis-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: asterisk; Actual: underscore",
"errorRange": [
28,
13
],
"fixInfo": {
"deleteCount": 13,
"editColumn": 28,
"insertText": "*interleaved*"
},
"lineNumber": 45,
"ruleDescription": "Emphasis style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md049",
"ruleNames": [
"MD049",
"emphasis-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: asterisk; Actual: underscore",
"errorRange": [
47,
8
],
"fixInfo": {
"deleteCount": 8,
"editColumn": 47,
"insertText": "*double*"
},
"lineNumber": 45,
"ruleDescription": "Emphasis style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md049",
"ruleNames": [
"MD049",
"emphasis-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: asterisk; Actual: underscore",
"errorRange": [
56,
13
],
"fixInfo": {
"deleteCount": 13,
"editColumn": 56,
"insertText": "*interleaved*"
},
"lineNumber": 45,
"ruleDescription": "Emphasis style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md049",
"ruleNames": [
"MD049",
"emphasis-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: underscore; Actual: asterisk",
"errorRange": [
30,
8
],
"fixInfo": {
"deleteCount": 8,
"editColumn": 30,
"insertText": "__this__"
},
"lineNumber": 33,
"ruleDescription": "Strong style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md050",
"ruleNames": [
"MD050",
"strong-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: underscore; Actual: asterisk",
"errorRange": [
62,
10
],
"fixInfo": {
"deleteCount": 10,
"editColumn": 62,
"insertText": "__issues__"
},
"lineNumber": 33,
"ruleDescription": "Strong style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md050",
"ruleNames": [
"MD050",
"strong-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: underscore; Actual: asterisk",
"errorRange": null,
"fixInfo": null,
"lineNumber": 41,
"ruleDescription": "Strong style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md050",
"ruleNames": [
"MD050",
"strong-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: underscore; Actual: asterisk",
"errorRange": [
14,
10
],
"fixInfo": {
"deleteCount": 10,
"editColumn": 14,
"insertText": "__double__"
},
"lineNumber": 47,
"ruleDescription": "Strong style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md050",
"ruleNames": [
"MD050",
"strong-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: underscore; Actual: asterisk",
"errorRange": [
30,
15
],
"fixInfo": {
"deleteCount": 15,
"editColumn": 30,
"insertText": "__interleaved__"
},
"lineNumber": 47,
"ruleDescription": "Strong style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md050",
"ruleNames": [
"MD050",
"strong-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: underscore; Actual: asterisk",
"errorRange": [
51,
10
],
"fixInfo": {
"deleteCount": 10,
"editColumn": 51,
"insertText": "__double__"
},
"lineNumber": 47,
"ruleDescription": "Strong style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md050",
"ruleNames": [
"MD050",
"strong-style"
]
},
{
"errorContext": null,
"errorDetail": "Expected: underscore; Actual: asterisk",
"errorRange": [
62,
15
],
"fixInfo": {
"deleteCount": 15,
"editColumn": 62,
"insertText": "__interleaved__"
},
"lineNumber": 47,
"ruleDescription": "Strong style should be consistent",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md050",
"ruleNames": [
"MD050",
"strong-style"
]
}
]

View file

@ -1,3 +0,0 @@
# detailed-results-MD051-MD060
A [link with a missing](#fragment)

View file

@ -1,18 +0,0 @@
[
{
"errorContext": "[link with a missing](#fragment)",
"errorDetail": null,
"errorRange": [
3,
32
],
"fixInfo": null,
"lineNumber": 3,
"ruleDescription": "Link fragments should be valid",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md051",
"ruleNames": [
"MD051",
"link-fragments"
]
}
]

View file

@ -1,13 +0,0 @@
# Detailed Results Bare URLs
For more, see <https://example.com>.
For more, see <https://example.com/>.
For more, see <https://example.com/?query=string#hash>.
For more, see <https://example.com/info.htm>.
Visit <https://example.com>, then refresh.
The site (<https://example.com>) is down.

View file

@ -1,122 +0,0 @@
[
{
"lineNumber": 3,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com",
"errorRange": [
15,
19
],
"fixInfo": {
"editColumn": 15,
"deleteCount": 19,
"insertText": "<https://example.com>"
}
},
{
"lineNumber": 5,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/",
"errorRange": [
15,
20
],
"fixInfo": {
"editColumn": 15,
"deleteCount": 20,
"insertText": "<https://example.com/>"
}
},
{
"lineNumber": 7,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/?query=str...",
"errorRange": [
15,
38
],
"fixInfo": {
"editColumn": 15,
"deleteCount": 38,
"insertText": "<https://example.com/?query=string#hash>"
}
},
{
"lineNumber": 9,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/info.htm",
"errorRange": [
15,
28
],
"fixInfo": {
"editColumn": 15,
"deleteCount": 28,
"insertText": "<https://example.com/info.htm>"
}
},
{
"lineNumber": 11,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com",
"errorRange": [
7,
19
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 19,
"insertText": "<https://example.com>"
}
},
{
"lineNumber": 13,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com",
"errorRange": [
11,
19
],
"fixInfo": {
"editColumn": 11,
"deleteCount": 19,
"insertText": "<https://example.com>"
}
}
]

View file

@ -1,27 +0,0 @@
# Blanks Around Headings
## Apple
Text
## Banana
Text
## Cherry
Text
## Durian ##
Text
---
Elderberry
----------
Text
## Fig

View file

@ -1,36 +0,0 @@
[
{
"lineNumber": 8,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 2; Actual: 1; Below",
"errorContext": "## Banana",
"errorRange": null,
"fixInfo": {
"lineNumber": 9,
"insertText": "\n"
}
},
{
"lineNumber": 21,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 2; Actual: 0; Below",
"errorContext": "Elderberry",
"errorRange": null,
"fixInfo": {
"lineNumber": 23,
"insertText": "\n\n"
}
}
]

View file

@ -1,31 +0,0 @@
# Blanks Around Headings
## Apple
Text
## Banana
Text
## Cherry
Text
## Durian ##
Text
Elderberry
----------
Text
## Fig

View file

@ -1,34 +0,0 @@
[
{
"lineNumber": 19,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 3; Actual: 2; Above",
"errorContext": "## Durian ##",
"errorRange": null,
"fixInfo": {
"insertText": "\n"
}
},
{
"lineNumber": 22,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 3; Actual: 1; Above",
"errorContext": "Elderberry",
"errorRange": null,
"fixInfo": {
"insertText": "\n\n"
}
}
]

View file

@ -1,26 +0,0 @@
# Blanks Around Headings
## Apple
Text
## Banana
Text
## Cherry
Text
## Durian ##
Text
---
Elderberry
----------
Text
## Fig

View file

@ -1,68 +0,0 @@
[
{
"lineNumber": 7,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 1; Actual: 0; Below",
"errorContext": "## Banana",
"errorRange": null,
"fixInfo": {
"lineNumber": 8,
"insertText": "\n"
}
},
{
"lineNumber": 13,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 1; Actual: 0; Above",
"errorContext": "## Durian ##",
"errorRange": null,
"fixInfo": {
"insertText": "\n"
}
},
{
"lineNumber": 18,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 1; Actual: 0; Above",
"errorContext": "Elderberry",
"errorRange": null,
"fixInfo": {
"insertText": "\n"
}
},
{
"lineNumber": 18,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 1; Actual: 0; Below",
"errorContext": "Elderberry",
"errorRange": null,
"fixInfo": {
"lineNumber": 20,
"insertText": "\n"
}
}
]

View file

@ -1,24 +0,0 @@
# Detailed Results Code Fences in Blockquotes
Text
```markdown
Text
```
Text
> Text
>
> ```markdown
> Text
> ```
>
> Text
> > Text
> >
> > ```markdown
> > Text
> > ```
> >
> > Text

View file

@ -1,98 +0,0 @@
[
{
"lineNumber": 4,
"ruleNames": [
"MD031",
"blanks-around-fences"
],
"ruleDescription": "Fenced code blocks should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md031",
"errorDetail": null,
"errorContext": "```markdown",
"errorRange": null,
"fixInfo": {
"lineNumber": 4,
"insertText": "\n"
}
},
{
"lineNumber": 6,
"ruleNames": [
"MD031",
"blanks-around-fences"
],
"ruleDescription": "Fenced code blocks should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md031",
"errorDetail": null,
"errorContext": "```",
"errorRange": null,
"fixInfo": {
"lineNumber": 7,
"insertText": "\n"
}
},
{
"lineNumber": 10,
"ruleNames": [
"MD031",
"blanks-around-fences"
],
"ruleDescription": "Fenced code blocks should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md031",
"errorDetail": null,
"errorContext": "> ```markdown",
"errorRange": null,
"fixInfo": {
"lineNumber": 10,
"insertText": ">\n"
}
},
{
"lineNumber": 12,
"ruleNames": [
"MD031",
"blanks-around-fences"
],
"ruleDescription": "Fenced code blocks should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md031",
"errorDetail": null,
"errorContext": "> ```",
"errorRange": null,
"fixInfo": {
"lineNumber": 13,
"insertText": ">\n"
}
},
{
"lineNumber": 15,
"ruleNames": [
"MD031",
"blanks-around-fences"
],
"ruleDescription": "Fenced code blocks should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md031",
"errorDetail": null,
"errorContext": "> > ```markdown",
"errorRange": null,
"fixInfo": {
"lineNumber": 15,
"insertText": "> >\n"
}
},
{
"lineNumber": 17,
"ruleNames": [
"MD031",
"blanks-around-fences"
],
"ruleDescription": "Fenced code blocks should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md031",
"errorDetail": null,
"errorContext": "> > ```",
"errorRange": null,
"fixInfo": {
"lineNumber": 18,
"insertText": "> >\n"
}
}
]

View file

@ -1,3 +0,0 @@
text
text and text 2
texts with trailing spaces

View file

@ -1,62 +0,0 @@
[
{
"lineNumber": 1,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 1",
"errorContext": null,
"errorRange": [
1,
13
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 13,
"insertText": " "
}
},
{
"lineNumber": 2,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 5",
"errorContext": null,
"errorRange": [
5,
2
],
"fixInfo": {
"editColumn": 5,
"deleteCount": 2,
"insertText": " "
}
},
{
"lineNumber": 3,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 27",
"errorContext": null,
"errorRange": [
27,
3
],
"fixInfo": {
"editColumn": 27,
"deleteCount": 3,
"insertText": " "
}
}
]

View file

@ -1,13 +0,0 @@
---
front: matter
ignore: this
---
# Fixing with Front Matter
Text text text
Text [link](url) text
## Nested Heading
Text

View file

@ -1,93 +0,0 @@
[
{
"lineNumber": 6,
"ruleNames": [
"MD009",
"no-trailing-spaces"
],
"ruleDescription": "Trailing spaces",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md009",
"errorDetail": "Expected: 0 or 2; Actual: 3",
"errorContext": null,
"errorRange": [
15,
3
],
"fixInfo": {
"editColumn": 15,
"deleteCount": 3
}
},
{
"lineNumber": 5,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 1; Actual: 0; Below",
"errorContext": "# Fixing with Front Matter",
"errorRange": null,
"fixInfo": {
"lineNumber": 6,
"insertText": "\n"
}
},
{
"lineNumber": 9,
"ruleNames": [
"MD022",
"blanks-around-headings",
"blanks-around-headers"
],
"ruleDescription": "Headings should be surrounded by blank lines",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md022",
"errorDetail": "Expected: 1; Actual: 0; Above",
"errorContext": "## Nested Heading",
"errorRange": null,
"fixInfo": {
"insertText": "\n"
}
},
{
"lineNumber": 8,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[ link ]",
"errorRange": [
6,
8
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 6,
"insertText": "link"
}
},
{
"lineNumber": 11,
"ruleNames": [
"MD047",
"single-trailing-newline"
],
"ruleDescription": "Files should end with a single newline character",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md047",
"errorDetail": null,
"errorContext": null,
"errorRange": [
4,
1
],
"fixInfo": {
"editColumn": 5,
"insertText": "\n"
}
}
]

View file

@ -1,6 +0,0 @@
---
front: matter
---
Text
Text

View file

@ -1,35 +0,0 @@
[
{
"lineNumber": 6,
"ruleNames": [
"MD009",
"no-trailing-spaces"
],
"ruleDescription": "Trailing spaces",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md009",
"errorDetail": "Expected: 0; Actual: 1",
"errorContext": null,
"errorRange": [
5,
1
],
"fixInfo": {
"editColumn": 5,
"deleteCount": 1
}
},
{
"lineNumber": 4,
"ruleNames": [
"MD041",
"first-line-heading",
"first-line-h1"
],
"ruleDescription": "First line in a file should be a top-level heading",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md041",
"errorDetail": null,
"errorContext": "Text",
"errorRange": null,
"fixInfo": null
}
]

View file

@ -1,107 +0,0 @@
# Detailed HTML Results
Text
<em>Block block</em>
Text <em>inline inline</em> text
Text
<strong>Block block</strong>
Text <strong>inline inline</strong> text
Text
<p>
Block
block <em>block</em> block
block
block <strong>block</strong> block
block
block <em>block</em> block <strong>block</strong> block
block <strong>block</strong> block <em>block</em> block
</p>
Text
<strong><em>Block</em> block</strong>
Text <strong><em>inline</em> inline</strong> text
Text
<em><strong>Block</strong> block</em>
Text <em><strong>inline</strong> inline</em> text
Text
Text <em>inline</em> text <strong>inline</strong> text <em>inline</em> text
Text <strong>inline</strong> text <em>inline</em> text <strong>inline</strong> text
Text
\<not>Block block\</not>
\\<problem>Block block\\</problem>
<not\>Block block</not\>
Text \<not>inline inline\</not> text
Text \\<problem>inline inline\\</problem> text
Text <not\>inline inline</not\> text
Text
> Text <em>inline inline</em> text
> text <strong>inline inline</strong> text
Text
Text <em>inline inline</em> text
text <strong>inline inline</strong> text
Text
```html
Text <em>inline inline</em> text
text <strong>inline inline</strong> text
```
Text
`<em>`
Text ``<em>`` text
Text `<em>` text ``<em>`` text ```<em>``` text
Text `<em>` text <em>inline</em> text
Text ``text <em> text`` text
Text
Text <a href="#anchor">inline</a> text
text <img src="src.png"/> text
Text
<name@example.com> is an email autolink.
Another email autolink: <first+last@ex.exa-mple.com>.
Text
<foo-bar-baz> is an HTML element.
But <foo.bar.baz> is not an autolink or HTML element.
And neither is <foo_bar>.
Nor <123abc>.
Text

View file

@ -1,322 +0,0 @@
[
{
"lineNumber": 5,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
1,
4
],
"fixInfo": null
},
{
"lineNumber": 7,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
6,
4
],
"fixInfo": null
},
{
"lineNumber": 17,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: p",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": null
},
{
"lineNumber": 19,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
7,
4
],
"fixInfo": null
},
{
"lineNumber": 23,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
7,
4
],
"fixInfo": null
},
{
"lineNumber": 24,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
36,
4
],
"fixInfo": null
},
{
"lineNumber": 29,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
9,
4
],
"fixInfo": null
},
{
"lineNumber": 31,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
14,
4
],
"fixInfo": null
},
{
"lineNumber": 35,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
1,
4
],
"fixInfo": null
},
{
"lineNumber": 37,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
6,
4
],
"fixInfo": null
},
{
"lineNumber": 41,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
6,
4
],
"fixInfo": null
},
{
"lineNumber": 41,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
56,
4
],
"fixInfo": null
},
{
"lineNumber": 43,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
35,
4
],
"fixInfo": null
},
{
"lineNumber": 49,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: problem",
"errorContext": null,
"errorRange": [
3,
9
],
"fixInfo": null
},
{
"lineNumber": 55,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: problem",
"errorContext": null,
"errorRange": [
8,
9
],
"fixInfo": null
},
{
"lineNumber": 61,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
8,
4
],
"fixInfo": null
},
{
"lineNumber": 84,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: em",
"errorContext": null,
"errorRange": [
18,
4
],
"fixInfo": null
},
{
"lineNumber": 90,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: a",
"errorContext": null,
"errorRange": [
6,
18
],
"fixInfo": null
},
{
"lineNumber": 91,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: img",
"errorContext": null,
"errorRange": [
6,
20
],
"fixInfo": null
},
{
"lineNumber": 101,
"ruleNames": [
"MD033",
"no-inline-html"
],
"ruleDescription": "Inline HTML",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md033",
"errorDetail": "Element: foo-bar-baz",
"errorContext": null,
"errorRange": [
1,
13
],
"fixInfo": null
}
]

View file

@ -1,44 +0,0 @@
# Detailed Link Results
Text <https://example.com/> text
Text <https://example.com/brackets> text <https://example.com/bare> text
Text <https://example.com/bare> text <https://example.com/brackets> text
Text `code https://example.com/code code` text <https://example.com/> text
> Text <https://example.com/brackets> text <https://example.com/bare> text
Text <https://example.com/dir>
text <https://example.com/file.txt>
text <https://example.com/dir/dir>
text <https://example.com/dir/dir/file?query=param>
```text
Code https://example.com/code?type=fence code
```
Code https://example.com/code?type=indent code
Text <https://example.com/same> more text <https://example.com/same> still more text <https://example.com/same> done
Text <https://example.com/same> more \* text https://example.com/same more \[ text <https://example.com/same> done
Text <https://example.com/first> more text <https://example.com/second> still more text <https://example.com/third> done
[Incorrect link syntax](https://www.example.com/)
Text [link](https://example.com/) text.
Text [link](https://example.com/) text.
Text [link](https://example.com/) text.
Text [link][reference] text.
Text [link][reference] text.
Text [link][reference] text.
[reference]: https://example.com/

View file

@ -1,395 +0,0 @@
[
{
"lineNumber": 30,
"ruleNames": [
"MD011",
"no-reversed-links"
],
"ruleDescription": "Reversed link syntax",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md011",
"errorDetail": "(Incorrect link syntax)[https://www.example.com/]",
"errorContext": null,
"errorRange": [
1,
49
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 49,
"insertText": "[Incorrect link syntax](https://www.example.com/)"
}
},
{
"lineNumber": 3,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/",
"errorRange": [
6,
20
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 20,
"insertText": "<https://example.com/>"
}
},
{
"lineNumber": 5,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/bare",
"errorRange": [
42,
24
],
"fixInfo": {
"editColumn": 42,
"deleteCount": 24,
"insertText": "<https://example.com/bare>"
}
},
{
"lineNumber": 7,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/bare",
"errorRange": [
6,
24
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 24,
"insertText": "<https://example.com/bare>"
}
},
{
"lineNumber": 9,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/",
"errorRange": [
48,
20
],
"fixInfo": {
"editColumn": 48,
"deleteCount": 20,
"insertText": "<https://example.com/>"
}
},
{
"lineNumber": 11,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/bare",
"errorRange": [
44,
24
],
"fixInfo": {
"editColumn": 44,
"deleteCount": 24,
"insertText": "<https://example.com/bare>"
}
},
{
"lineNumber": 13,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/dir",
"errorRange": [
6,
23
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 23,
"insertText": "<https://example.com/dir>"
}
},
{
"lineNumber": 14,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/file.txt",
"errorRange": [
6,
28
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 28,
"insertText": "<https://example.com/file.txt>"
}
},
{
"lineNumber": 16,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/dir/dir/fi...",
"errorRange": [
6,
44
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 44,
"insertText": "<https://example.com/dir/dir/file?query=param>"
}
},
{
"lineNumber": 24,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/same",
"errorRange": [
43,
24
],
"fixInfo": {
"editColumn": 43,
"deleteCount": 24,
"insertText": "<https://example.com/same>"
}
},
{
"lineNumber": 26,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/same",
"errorRange": null,
"fixInfo": null
},
{
"lineNumber": 28,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/first",
"errorRange": [
6,
25
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 25,
"insertText": "<https://example.com/first>"
}
},
{
"lineNumber": 28,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/second",
"errorRange": [
42,
26
],
"fixInfo": {
"editColumn": 42,
"deleteCount": 26,
"insertText": "<https://example.com/second>"
}
},
{
"lineNumber": 28,
"ruleNames": [
"MD034",
"no-bare-urls"
],
"ruleDescription": "Bare URL used",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md034",
"errorDetail": null,
"errorContext": "https://example.com/third",
"errorRange": [
85,
25
],
"fixInfo": {
"editColumn": 85,
"deleteCount": 25,
"insertText": "<https://example.com/third>"
}
},
{
"lineNumber": 32,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[link ]",
"errorRange": [
6,
7
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 5,
"insertText": "link"
}
},
{
"lineNumber": 34,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[ link]",
"errorRange": [
6,
7
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 5,
"insertText": "link"
}
},
{
"lineNumber": 36,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[ link ]",
"errorRange": [
6,
8
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 6,
"insertText": "link"
}
},
{
"lineNumber": 38,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[link ]",
"errorRange": [
6,
7
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 5,
"insertText": "link"
}
},
{
"lineNumber": 40,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[ link]",
"errorRange": [
6,
7
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 5,
"insertText": "link"
}
},
{
"lineNumber": 42,
"ruleNames": [
"MD039",
"no-space-in-links"
],
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"errorDetail": null,
"errorContext": "[ link ]",
"errorRange": [
6,
8
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 6,
"insertText": "link"
}
}
]

View file

@ -1,3 +0,0 @@
text
text and text 2
texts with trailing spaces

View file

@ -1,62 +0,0 @@
[
{
"lineNumber": 1,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 1",
"errorContext": null,
"errorRange": [
1,
13
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 13,
"insertText": ""
}
},
{
"lineNumber": 2,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 5",
"errorContext": null,
"errorRange": [
5,
2
],
"fixInfo": {
"editColumn": 5,
"deleteCount": 2,
"insertText": ""
}
},
{
"lineNumber": 3,
"ruleNames": [
"MD010",
"no-hard-tabs"
],
"ruleDescription": "Hard tabs",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md010",
"errorDetail": "Column: 27",
"errorContext": null,
"errorRange": [
27,
3
],
"fixInfo": {
"editColumn": 27,
"deleteCount": 3,
"insertText": ""
}
}
]

View file

@ -1,3 +0,0 @@
# Ordered list examples
9. Item

View file

@ -1,18 +0,0 @@
[
{
"lineNumber": 3,
"ruleNames": [
"MD029",
"ol-prefix"
],
"ruleDescription": "Ordered list item prefix",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md029",
"errorDetail": "Expected: 1; Actual: 9; Style: 1/1/1",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": null
}
]

View file

@ -1,19 +0,0 @@
# Ordered list examples
text
0. Item
0. Item
0. Item
text
1. Item
1. Item
1. Item
text
1. Item
2. Item
3. Item

View file

@ -1,98 +0,0 @@
[
{
"lineNumber": 11,
"ruleNames": [
"MD029",
"ol-prefix"
],
"ruleDescription": "Ordered list item prefix",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md029",
"errorDetail": "Expected: 0; Actual: 1; Style: 0/0/0",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": null
},
{
"lineNumber": 12,
"ruleNames": [
"MD029",
"ol-prefix"
],
"ruleDescription": "Ordered list item prefix",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md029",
"errorDetail": "Expected: 0; Actual: 1; Style: 0/0/0",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": null
},
{
"lineNumber": 13,
"ruleNames": [
"MD029",
"ol-prefix"
],
"ruleDescription": "Ordered list item prefix",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md029",
"errorDetail": "Expected: 0; Actual: 1; Style: 0/0/0",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": null
},
{
"lineNumber": 17,
"ruleNames": [
"MD029",
"ol-prefix"
],
"ruleDescription": "Ordered list item prefix",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md029",
"errorDetail": "Expected: 0; Actual: 1; Style: 0/0/0",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": null
},
{
"lineNumber": 18,
"ruleNames": [
"MD029",
"ol-prefix"
],
"ruleDescription": "Ordered list item prefix",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md029",
"errorDetail": "Expected: 0; Actual: 2; Style: 0/0/0",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": null
},
{
"lineNumber": 19,
"ruleNames": [
"MD029",
"ol-prefix"
],
"ruleDescription": "Ordered list item prefix",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md029",
"errorDetail": "Expected: 0; Actual: 3; Style: 0/0/0",
"errorContext": null,
"errorRange": [
1,
3
],
"fixInfo": null
}
]

View file

@ -1,33 +0,0 @@
# Detailed Results Proper Names
Text markdownlint text.
Text Node.js text.
Text .NET text.
Text example.NET text.
Text "markdownlint" text.
Text "Node.js" text.
Text ".NET" text.
Text "example.NET" text.
Text **markdownlint** text.
Text **Node.js** text.
Text **.NET** text.
Text **example.NET** text.
markdownlint
Node.js
.NET
example.NET

View file

@ -1,322 +0,0 @@
[
{
"lineNumber": 3,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: markdownlint; Actual: Markdownlint",
"errorContext": null,
"errorRange": [
6,
12
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 12,
"insertText": "markdownlint"
}
},
{
"lineNumber": 5,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: Node.js; Actual: node.JS",
"errorContext": null,
"errorRange": [
6,
7
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 7,
"insertText": "Node.js"
}
},
{
"lineNumber": 7,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: .NET; Actual: .net",
"errorContext": null,
"errorRange": [
6,
4
],
"fixInfo": {
"editColumn": 6,
"deleteCount": 4,
"insertText": ".NET"
}
},
{
"lineNumber": 9,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: .NET; Actual: .net",
"errorContext": null,
"errorRange": [
13,
4
],
"fixInfo": {
"editColumn": 13,
"deleteCount": 4,
"insertText": ".NET"
}
},
{
"lineNumber": 11,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: markdownlint; Actual: Markdownlint",
"errorContext": null,
"errorRange": [
7,
12
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 12,
"insertText": "markdownlint"
}
},
{
"lineNumber": 13,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: Node.js; Actual: node.JS",
"errorContext": null,
"errorRange": [
7,
7
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 7,
"insertText": "Node.js"
}
},
{
"lineNumber": 15,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: .NET; Actual: .net",
"errorContext": null,
"errorRange": [
7,
4
],
"fixInfo": {
"editColumn": 7,
"deleteCount": 4,
"insertText": ".NET"
}
},
{
"lineNumber": 17,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: .NET; Actual: .net",
"errorContext": null,
"errorRange": [
14,
4
],
"fixInfo": {
"editColumn": 14,
"deleteCount": 4,
"insertText": ".NET"
}
},
{
"lineNumber": 19,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: markdownlint; Actual: Markdownlint",
"errorContext": null,
"errorRange": [
8,
12
],
"fixInfo": {
"editColumn": 8,
"deleteCount": 12,
"insertText": "markdownlint"
}
},
{
"lineNumber": 21,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: Node.js; Actual: node.JS",
"errorContext": null,
"errorRange": [
8,
7
],
"fixInfo": {
"editColumn": 8,
"deleteCount": 7,
"insertText": "Node.js"
}
},
{
"lineNumber": 23,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: .NET; Actual: .net",
"errorContext": null,
"errorRange": [
8,
4
],
"fixInfo": {
"editColumn": 8,
"deleteCount": 4,
"insertText": ".NET"
}
},
{
"lineNumber": 25,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: .NET; Actual: .net",
"errorContext": null,
"errorRange": [
15,
4
],
"fixInfo": {
"editColumn": 15,
"deleteCount": 4,
"insertText": ".NET"
}
},
{
"lineNumber": 27,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: markdownlint; Actual: Markdownlint",
"errorContext": null,
"errorRange": [
1,
12
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 12,
"insertText": "markdownlint"
}
},
{
"lineNumber": 29,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: Node.js; Actual: node.JS",
"errorContext": null,
"errorRange": [
1,
7
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 7,
"insertText": "Node.js"
}
},
{
"lineNumber": 31,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: .NET; Actual: .net",
"errorContext": null,
"errorRange": [
1,
4
],
"fixInfo": {
"editColumn": 1,
"deleteCount": 4,
"insertText": ".NET"
}
},
{
"lineNumber": 33,
"ruleNames": [
"MD044",
"proper-names"
],
"ruleDescription": "Proper names should have the correct capitalization",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md044",
"errorDetail": "Expected: .NET; Actual: .net",
"errorContext": null,
"errorRange": [
8,
4
],
"fixInfo": {
"editColumn": 8,
"deleteCount": 4,
"insertText": ".NET"
}
}
]

View file

@ -1,17 +0,0 @@
# Spaces Inside Link Text
[link](https://example.com/) {MD039}
["link"](https://example.com/) {MD039}
[`link`](https://example.com/) {MD039}
[*link*](https://example.com/) {MD039}
[__link__](https://example.com/) {MD039}
[link "link"](https://example.com/) {MD039}
[link `link`](https://example.com/) {MD039}
[*link* link](https://example.com/) {MD039}

View file

@ -1,162 +0,0 @@
[
{
"errorContext": "[ link ]",
"errorDetail": null,
"errorRange": [
1,
8
],
"fixInfo": {
"deleteCount": 6,
"editColumn": 2,
"insertText": "link"
},
"lineNumber": 3,
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"ruleNames": [
"MD039",
"no-space-in-links"
]
},
{
"errorContext": "[ \"link\" ]",
"errorDetail": null,
"errorRange": [
1,
10
],
"fixInfo": {
"deleteCount": 8,
"editColumn": 2,
"insertText": "\"link\""
},
"lineNumber": 5,
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"ruleNames": [
"MD039",
"no-space-in-links"
]
},
{
"errorContext": "[ `link` ]",
"errorDetail": null,
"errorRange": [
1,
10
],
"fixInfo": {
"deleteCount": 8,
"editColumn": 2,
"insertText": "`link`"
},
"lineNumber": 7,
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"ruleNames": [
"MD039",
"no-space-in-links"
]
},
{
"errorContext": "[ *link* ]",
"errorDetail": null,
"errorRange": [
1,
10
],
"fixInfo": {
"deleteCount": 8,
"editColumn": 2,
"insertText": "*link*"
},
"lineNumber": 9,
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"ruleNames": [
"MD039",
"no-space-in-links"
]
},
{
"errorContext": "[ __link__ ]",
"errorDetail": null,
"errorRange": [
1,
12
],
"fixInfo": {
"deleteCount": 10,
"editColumn": 2,
"insertText": "__link__"
},
"lineNumber": 11,
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"ruleNames": [
"MD039",
"no-space-in-links"
]
},
{
"errorContext": "[ link \"link\" ]",
"errorDetail": null,
"errorRange": [
1,
15
],
"fixInfo": {
"deleteCount": 13,
"editColumn": 2,
"insertText": "link \"link\""
},
"lineNumber": 13,
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"ruleNames": [
"MD039",
"no-space-in-links"
]
},
{
"errorContext": "[ link `link` ]",
"errorDetail": null,
"errorRange": [
1,
15
],
"fixInfo": {
"deleteCount": 13,
"editColumn": 2,
"insertText": "link `link`"
},
"lineNumber": 15,
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"ruleNames": [
"MD039",
"no-space-in-links"
]
},
{
"errorContext": "[ *link* link ]",
"errorDetail": null,
"errorRange": [
1,
15
],
"fixInfo": {
"deleteCount": 13,
"editColumn": 2,
"insertText": "*link* link"
},
"lineNumber": 17,
"ruleDescription": "Spaces inside link text",
"ruleInformation": "https://github.com/DavidAnson/markdownlint/blob/v0.0.0/doc/Rules.md#md039",
"ruleNames": [
"MD039",
"no-space-in-links"
]
}
]

View file

@ -2,12 +2,10 @@
"use strict"; "use strict";
const fs = require("fs"); const fs = require("fs").promises;
const path = require("path"); const path = require("path");
const { promisify } = require("util");
const test = require("ava").default; const test = require("ava").default;
const { version } = require("../package.json"); const { markdownlint } = require("../lib/markdownlint").promises;
const markdownlint = require("../lib/markdownlint");
const helpers = require("../helpers"); const helpers = require("../helpers");
/** /**
@ -17,152 +15,93 @@ const helpers = require("../helpers");
* @returns {Function} Test function. * @returns {Function} Test function.
*/ */
function createTestForFile(file) { function createTestForFile(file) {
const markdownlintPromise = promisify(markdownlint); return (t) => {
return function testForFile(t) { // Read configuration for test file
const detailedResults = /[/\\]detailed-results-/.test(file); const contentPromise = fs.readFile(file, "utf8");
t.plan(detailedResults ? 3 : 2);
const resultsFile = file.replace(/\.md$/, ".results.json");
const fixedFile = file.replace(/\.md$/, ".md.fixed");
const configFile = file.replace(/\.md$/, ".json"); const configFile = file.replace(/\.md$/, ".json");
let config = null; return fs.access(configFile)
const actualPromise = fs.promises.stat(configFile)
.then( .then(
function configFileExists() { () => fs.readFile(configFile, "utf8").then(JSON.parse),
return fs.promises.readFile(configFile, "utf8") () => {}
// @ts-ignore // Read and lint Markdown test file
.then(JSON.parse); ).then((config) => Promise.all([
}, config,
function noConfigFile() { contentPromise,
return {}; markdownlint({
"files": [ file ],
config
}) })
.then( ]))
function captureConfig(configResult) { // Compare expected results and snapshot
config = configResult; .then((params) => {
} const [ config, content, results ] = params;
) // Canonicalize version number
.then( const errors = results[file];
function lintWithConfig() { errors
return markdownlintPromise({ .filter((error) => !!error.ruleInformation)
"files": [ file ], .forEach((error) => {
config error.ruleInformation =
error.ruleInformation.replace(/v\d+\.\d+\.\d+/, "v0.0.0");
}); });
}) // Match identified issues by MD### markers
.then( const marker = /\{(MD\d+)(?::(\d+))?\}/g;
function diffFixedFiles(resultVersion2or3) { const lines = content.split(helpers.newLineRe);
return detailedResults ? const expected = {};
Promise.all([ lines.forEach((line, index) => {
markdownlintPromise({ let match = null;
"files": [ file ], while ((match = marker.exec(line))) {
config const rule = match[1];
}), // eslint-disable-next-line no-multi-assign
fs.promises.readFile(file, "utf8"), const indices = expected[rule] = expected[rule] || [];
fs.promises.readFile(fixedFile, "utf8") indices.push(match[2] ? Number.parseInt(match[2], 10) : index + 1);
])
.then(function validateApplyFixes(fulfillments) {
const [ resultVersion3, content, expected ] = fulfillments;
const errors = resultVersion3[file];
const actual = helpers.applyFixes(content, errors);
// Uncomment the following line to update *.md.fixed files
// fs.writeFileSync(fixedFile, actual, "utf8");
t.is(actual, expected, "Unexpected output from applyFixes.");
return resultVersion2or3;
}) :
resultVersion2or3;
}
)
.then(
function convertResultVersion2To0(resultVersion2or3) {
const result0 = {};
const result2or3 = resultVersion2or3[file];
result2or3.forEach(function forResult(result) {
const ruleName = result.ruleNames[0];
const lineNumbers = result0[ruleName] || [];
if (!lineNumbers.includes(result.lineNumber)) {
lineNumbers.push(result.lineNumber);
}
result0[ruleName] = lineNumbers;
});
return [ result0, result2or3 ];
}
);
const expectedPromise = detailedResults ?
fs.promises.readFile(resultsFile, "utf8")
.then(
function fileContents(contents) {
// @ts-ignore
const errorObjects = JSON.parse(contents);
errorObjects.forEach(function forObject(errorObject) {
if (errorObject.ruleInformation) {
errorObject.ruleInformation =
errorObject.ruleInformation.replace("v0.0.0", `v${version}`);
}
});
return errorObjects;
}) :
fs.promises.readFile(file, "utf8")
.then(
function fileContents(contents) {
// @ts-ignore
const lines = contents.split(helpers.newLineRe);
const results = {};
lines.forEach(function forLine(line, lineNum) {
const regex = /\{(MD\d+)(?::(\d+))?\}/g;
let match = null;
while ((match = regex.exec(line))) {
const rule = match[1];
const errors = results[rule] || [];
errors.push(
match[2] ?
Number.parseInt(match[2], 10) :
lineNum + 1
);
results[rule] = errors;
}
});
const sortedResults = {};
Object.keys(results).sort().forEach(function forKey(key) {
sortedResults[key] = results[key];
});
return sortedResults;
});
return Promise.all([ actualPromise, expectedPromise ])
.then(
function compareResults(fulfillments) {
const [ [ actual0, actual2or3 ], expected ] = fulfillments;
const actual = detailedResults ? actual2or3 : actual0;
t.deepEqual(actual, expected, "Line numbers are not correct.");
return actual2or3;
})
.then(
function verifyFixes(errors) {
if (detailedResults) {
return t.true(true);
} }
return fs.promises.readFile(file, "utf8") });
.then( if (Object.keys(expected).length > 0) {
function applyFixes(content) { const actual = {};
const corrections = helpers.applyFixes(content, errors); errors.forEach((error) => {
return markdownlintPromise({ const rule = error.ruleNames[0];
"strings": { // eslint-disable-next-line no-multi-assign
"input": corrections const indices = actual[rule] = actual[rule] || [];
}, if (indices[indices.length - 1] !== error.lineNumber) {
config indices.push(error.lineNumber);
}); }
}) });
.then( t.deepEqual(actual, expected, "Too few or too many issues found.");
function checkFixes(newErrors) { }
const unfixed = newErrors.input // Create snapshot
.filter((error) => !!error.fixInfo); const fixed = helpers.applyFixes(content, errors)
t.deepEqual(unfixed, [], "Fixable error was not fixed."); .replace(/\r\n/g, "\n");
} t.snapshot({
); errors,
}) fixed
});
return {
config,
fixed
};
})
// Identify missing fixes
.then((params) => {
const { config, fixed } = params;
return markdownlint({
"strings": {
"input": fixed
},
config
}).then((results) => {
const unfixed = results.input.filter((error) => !!error.fixInfo);
t.deepEqual(unfixed, [], "Fixable error(s) not fixed.");
});
})
.catch() .catch()
.then(t.done); .then(t.done);
}; };
} }
fs.readdirSync("./test") require("fs").readdirSync("./test")
.filter((file) => /\.md$/.test(file)) .filter((file) => /\.md$/.test(file))
// @ts-ignore // @ts-ignore
.forEach((file) => test(file, createTestForFile(path.join("./test", file)))); .forEach((file) => test(
file,
createTestForFile(path.join("./test", file))
));

File diff suppressed because it is too large Load diff

Binary file not shown.