Update MD031/blanks-around-fences to add blockquote characters when fixing issues in that context.

This commit is contained in:
David Anson 2020-04-07 21:01:39 -07:00
parent 65b19b703b
commit e319f9501c
4 changed files with 120 additions and 1 deletions

View file

@ -5,6 +5,8 @@
const { addErrorContext, forEachLine, isBlankLine } = require("../helpers");
const { lineMetadata } = require("./cache");
const codeFencePrefixRe = /^(.*?)\s*[`~]/;
module.exports = {
"names": [ "MD031", "blanks-around-fences" ],
"description": "Fenced code blocks should be surrounded by blank lines",
@ -19,6 +21,7 @@ module.exports = {
if ((includeListItems || !inItem) &&
((onTopFence && !isBlankLine(lines[i - 1])) ||
(onBottomFence && !isBlankLine(lines[i + 1])))) {
const [ , prefix ] = line.match(codeFencePrefixRe);
addErrorContext(
onError,
i + 1,
@ -28,7 +31,7 @@ module.exports = {
null,
{
"lineNumber": i + (onTopFence ? 1 : 2),
"insertText": "\n"
"insertText": `${prefix}\n`
});
}
});

View file

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

View file

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

View file

@ -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
}
]