markdownlint/lib/rules/blanksAroundFences.js
Josh Goldberg b63647f6b1 Moved rules into their own files
Everything under `lib/rules/*` is a rules file (with the name of the rule in camelCase), re-exported into an array in `lib/rules.js`.
Moved the regular expressions from `lib/rules.js` to `lib/expressions.js`, and the rest of the variables into `lib/shared.js`.
2017-10-29 19:55:01 -07:00

19 lines
652 B
JavaScript

var expressions = require("../expressions");
var shared = require("../shared");
module.exports = {
"name": "MD031",
"desc": "Fenced code blocks should be surrounded by blank lines",
"tags": [ "code", "blank_lines" ],
"aliases": [ "blanks-around-fences" ],
"regexp": null,
"func": function MD031(params, errors) {
var lines = params.lines;
shared.forEachLine(params, function forLine(line, i, inCode, onFence) {
if (((onFence > 0) && (i - 1 >= 0) && lines[i - 1].length) ||
((onFence < 0) && (i + 1 < lines.length) && lines[i + 1].length)) {
errors.addContext(i + 1, lines[i].trim());
}
});
}
};