What is remark-lint-final-newline?
The remark-lint-final-newline package is a plugin for remark-lint, a tool for linting Markdown files. This specific plugin ensures that Markdown files end with a newline character. It helps maintain consistency and follows best practices for text files.
What are remark-lint-final-newline's main functionalities?
Linting for final newline
This feature ensures that the Markdown file ends with a newline character. The code sample shows how to include the plugin in a remark-lint configuration.
module.exports = {
plugins: [
'remark-lint',
'remark-lint-final-newline'
]
};
Other packages similar to remark-lint-final-newline
eslint-plugin-markdown
eslint-plugin-markdown is an ESLint plugin that allows you to lint Markdown files using ESLint. It can be configured to enforce a final newline in Markdown files, among other rules. Unlike remark-lint-final-newline, which is specific to remark-lint, eslint-plugin-markdown integrates with ESLint, providing a broader range of linting capabilities.
markdownlint
markdownlint is a Node.js style checker and linting tool for Markdown files. It includes a rule (MD047) to ensure that files end with a single newline character. markdownlint is a standalone tool, whereas remark-lint-final-newline is a plugin for the remark-lint ecosystem.
Warn when a line feed at the end of a file is missing.
Empty files are allowed.
See StackExchange for why.
Fix
remark-stringify
always adds a final line feed to files.
See Using remark to fix your Markdown
on how to automatically fix warnings for this rule.
Example
ok.md
In
Note: ␊
represents LF.
Alpha␊
Out
No messages.
not-ok.md
In
Note: The below file does not have a final newline.
Bravo
Out
1:1: Missing newline character at end of file
Presets
This rule is included in the following presets:
Install
npm:
npm install remark-lint-final-newline
Use
You probably want to use it on the CLI through a config file:
…
"remarkConfig": {
"plugins": [
…
"lint",
+ "lint-final-newline",
…
]
}
…
Or use it on the CLI directly
remark -u lint -u lint-final-newline readme.md
Or use this on the API:
var remark = require('remark')
var report = require('vfile-reporter')
remark()
.use(require('remark-lint'))
+ .use(require('remark-lint-final-newline'))
.process('_Emphasis_ and **importance**', function (err, file) {
console.error(report(err || file))
})
Contribute
See contributing.md
in remarkjs/.github
for ways
to get started.
See support.md
for ways to get help.
This project has a code of conduct.
By interacting with this repository, organization, or community you agree to
abide by its terms.
License
MIT © Titus Wormer