Nunchaku Pizza Master

    markdownlint-rule-helpers

    0.17.0 • Public • Published

    markdownlint-rule-helpers

    A collection of markdownlint helper functions for custom rules

    Overview

    The Markdown linter markdownlint offers a variety of built-in validation rules and supports the creation of custom rules. The internal rules share various helper functions; this package exposes those for reuse by custom rules.

    API

    Undocumented - This package exports the internal functions as-is. The APIs were not originally meant to be public, are not officially supported, and may change from release to release. There are brief descriptive comments above each function, but no JSDoc annotations. That said, some of what's here will be useful to custom rule authors and may avoid duplicating code.

    Example

    const { forEachLine, getLineMetadata } = require("markdownlint-rule-helpers");
    
    module.exports = {
      "names": [ "every-n-lines" ],
      "description": "Rule that reports an error every N lines",
      "tags": [ "test" ],
      "function": (params, onError) => {
        const n = params.config.n || 2;
        forEachLine(getLineMetadata(params), (line, lineIndex) => {
          const lineNumber = lineIndex + 1;
          if ((lineNumber % n) === 0) {
            onError({
              "lineNumber": lineNumber,
              "detail": "Line number " + lineNumber
            });
          }
        });
      }
    };

    See also: markdownlint built-in rule implementations.

    Tests

    None - The entire body of code is tested to 100% coverage by the core markdownlint project, so there are no additional tests here.

    Install

    npm i markdownlint-rule-helpers

    DownloadsWeekly Downloads

    219,529

    Version

    0.17.0

    License

    MIT

    Unpacked Size

    39.5 kB

    Total Files

    4

    Last publish

    Collaborators

    • davidanson