mirror of
https://github.com/DavidAnson/markdownlint.git
synced 2025-12-16 22:10:13 +01:00
Update MD031/blanks-around-fences to add blockquote characters when fixing issues in that context.
This commit is contained in:
parent
65b19b703b
commit
e319f9501c
4 changed files with 120 additions and 1 deletions
|
|
@ -5,6 +5,8 @@
|
||||||
const { addErrorContext, forEachLine, isBlankLine } = require("../helpers");
|
const { addErrorContext, forEachLine, isBlankLine } = require("../helpers");
|
||||||
const { lineMetadata } = require("./cache");
|
const { lineMetadata } = require("./cache");
|
||||||
|
|
||||||
|
const codeFencePrefixRe = /^(.*?)\s*[`~]/;
|
||||||
|
|
||||||
module.exports = {
|
module.exports = {
|
||||||
"names": [ "MD031", "blanks-around-fences" ],
|
"names": [ "MD031", "blanks-around-fences" ],
|
||||||
"description": "Fenced code blocks should be surrounded by blank lines",
|
"description": "Fenced code blocks should be surrounded by blank lines",
|
||||||
|
|
@ -19,6 +21,7 @@ module.exports = {
|
||||||
if ((includeListItems || !inItem) &&
|
if ((includeListItems || !inItem) &&
|
||||||
((onTopFence && !isBlankLine(lines[i - 1])) ||
|
((onTopFence && !isBlankLine(lines[i - 1])) ||
|
||||||
(onBottomFence && !isBlankLine(lines[i + 1])))) {
|
(onBottomFence && !isBlankLine(lines[i + 1])))) {
|
||||||
|
const [ , prefix ] = line.match(codeFencePrefixRe);
|
||||||
addErrorContext(
|
addErrorContext(
|
||||||
onError,
|
onError,
|
||||||
i + 1,
|
i + 1,
|
||||||
|
|
@ -28,7 +31,7 @@ module.exports = {
|
||||||
null,
|
null,
|
||||||
{
|
{
|
||||||
"lineNumber": i + (onTopFence ? 1 : 2),
|
"lineNumber": i + (onTopFence ? 1 : 2),
|
||||||
"insertText": "\n"
|
"insertText": `${prefix}\n`
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
||||||
18
test/detailed-results-code-fences-in-blockquotes.md
Normal file
18
test/detailed-results-code-fences-in-blockquotes.md
Normal file
|
|
@ -0,0 +1,18 @@
|
||||||
|
# Detailed Results Code Fences in Blockquotes
|
||||||
|
|
||||||
|
Text
|
||||||
|
```markdown
|
||||||
|
Text
|
||||||
|
```
|
||||||
|
Text
|
||||||
|
|
||||||
|
> Text
|
||||||
|
> ```markdown
|
||||||
|
> Text
|
||||||
|
> ```
|
||||||
|
> Text
|
||||||
|
> > Text
|
||||||
|
> > ```markdown
|
||||||
|
> > Text
|
||||||
|
> > ```
|
||||||
|
> > Text
|
||||||
24
test/detailed-results-code-fences-in-blockquotes.md.fixed
Normal file
24
test/detailed-results-code-fences-in-blockquotes.md.fixed
Normal file
|
|
@ -0,0 +1,24 @@
|
||||||
|
# Detailed Results Code Fences in Blockquotes
|
||||||
|
|
||||||
|
Text
|
||||||
|
|
||||||
|
```markdown
|
||||||
|
Text
|
||||||
|
```
|
||||||
|
|
||||||
|
Text
|
||||||
|
|
||||||
|
> Text
|
||||||
|
>
|
||||||
|
> ```markdown
|
||||||
|
> Text
|
||||||
|
> ```
|
||||||
|
>
|
||||||
|
> Text
|
||||||
|
> > Text
|
||||||
|
> >
|
||||||
|
> > ```markdown
|
||||||
|
> > Text
|
||||||
|
> > ```
|
||||||
|
> >
|
||||||
|
> > Text
|
||||||
|
|
@ -0,0 +1,74 @@
|
||||||
|
[
|
||||||
|
{
|
||||||
|
"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
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"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
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"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
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"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
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"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
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"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
|
||||||
|
}
|
||||||
|
]
|
||||||
Loading…
Add table
Add a link
Reference in a new issue