0
0
Fork 0
mirror of https://github.com/DavidAnson/markdownlint-cli2-action.git synced 2024-12-22 04:43:32 +01:00
A GitHub Action to run the markdownlint-cli2 tool for linting Markdown/CommonMark files with the markdownlint library
Find a file
2023-06-11 17:36:54 -07:00
.github Add "config" and "fix" inputs, deprecate "command" input. 2023-06-11 17:36:54 -07:00
config Add "config" and "fix" inputs, deprecate "command" input. 2023-06-11 17:36:54 -07:00
dist Add "config" and "fix" inputs, deprecate "command" input. 2023-06-11 17:36:54 -07:00
test Add passing/failing file and no/one glob to tests. 2021-01-13 14:29:36 -08:00
.eslintrc.json Include link to rule information with title of annotations (clickable in GitHub), add 2023-04-25 19:58:01 -07:00
.gitignore Minor cleanup of unused/irrelevant components. 2021-01-13 14:17:17 -08:00
.markdownlint.json Add opinionated .markdownlint.json from markdownlint-cli2 project, reflow README.md. 2023-06-10 21:02:38 -07:00
.npmrc Default npm's ignore-scripts flag to true to prevent running pre- or post-scripts in package dependencies. 2022-12-23 15:33:43 -08:00
action.yml Add "config" and "fix" inputs, deprecate "command" input. 2023-06-11 17:36:54 -07:00
LICENSE Remove copyright year from LICENSE. 2023-04-06 21:23:30 -07:00
markdownlint-cli2-action.js Add "config" and "fix" inputs, deprecate "command" input. 2023-06-11 17:36:54 -07:00
package.json Add "config" and "fix" inputs, deprecate "command" input. 2023-06-11 17:36:54 -07:00
README.md Add "config" and "fix" inputs, deprecate "command" input. 2023-06-11 17:36:54 -07:00

markdownlint-cli2-action

A GitHub Action to run the markdownlint-cli2 tool for linting Markdown/CommonMark files with markdownlint

markdownlint-cli2 has extensive support for configuring options and disabling or customizing markdownlint rules. See the markdownlint-cli2 README for more information. markdownlint includes a wide variety of rules for analyzing and improving Markdown content. See the markdownlint README for more information.

Inputs

command (optional)

Deprecated in favor of the "fix" and "config" inputs

Command to run (unset, fix, or config)

If unspecified or "", the markdownlint-cli2 command is run.

If set to fix, the markdownlint-cli2-fix command is run and supported issues will be fixed automatically.

If set to config, the markdownlint-cli2-config command is run and the first element of globs should specify a supported configuration file.

For more detail: documentation for markdownlint-cli2.

config (optional)

Path of a file to use for the base configuration object (defaults to none)

Equivalent to using the --config command-line option and passing the specified configuration file.

fix (optional)

Whether to fix supported issues automatically (any truthy value enables)

Equivalent to specifying the --fix command-line option.

globs (optional)

Glob expression(s) of files to lint (newline-delimited by default)

The default *.{md,markdown} lints all Markdown files in the base directory of a project.

For more detail: glob syntax in markdownlint-cli2.

separator (optional)

String to use as a separator for the globs input (defaults to newline)

Allows the globs input to use something other than \n to separate glob expressions.

Outputs

[None]

Examples

To lint Markdown files in the base directory of a project:

- uses: DavidAnson/markdownlint-cli2-action@v10

To lint all Markdown files in a project:

- uses: DavidAnson/markdownlint-cli2-action@v10
  with:
    globs: '**/*.md'

To lint specific Markdown files in a project:

- uses: DavidAnson/markdownlint-cli2-action@v10
  with:
    globs: |
      README.md
      CHANGELOG.md
      docs/*.md      

To use a custom separator:

- uses: DavidAnson/markdownlint-cli2-action@v10
  with:
    globs: 'README.md,CHANGELOG.md,docs/*.md'
    separator: ','

To fix supported issues when linting:

- uses: DavidAnson/markdownlint-cli2-action@v10
  with:
    fix: true
    globs: '**/*.md'

To specify a custom configuration file:

- uses: DavidAnson/markdownlint-cli2-action@v10
  with:
    config: 'config/custom.markdownlint.jsonc'
    globs: '**/*.md'

To prevent linting issues from failing the workflow run:

- uses: DavidAnson/markdownlint-cli2-action@v10
  continue-on-error: true

See example.yml for a simple GitHub workflow that uses markdownlint-cli2-action.

See changed.yml for a GitHub workflow that lints only the Markdown files that changed in the most recent commit (useful for Pull Requests and/or gradually introducing linting rules to a new repository).