55 lines
1.6 KiB
Markdown
55 lines
1.6 KiB
Markdown
# mdcheckr [![Build Status](https://travis-ci.org/mike42/mdcheckr.svg?branch=master)](https://travis-ci.org/mike42/mdcheckr)
|
|
|
|
`mdcheckr` is a testing tool to detect quality problems with your Markdown documentation. It is designed to act as a quality gate in your continuous integration pipeline.
|
|
|
|
- **Syntax errors in code blocks** - Syntax-check code blocks that identify their language. Currently works for:
|
|
- bash ([example](tests/04_codeblock_bash_bad.md))
|
|
- PHP ([example](tests/05_codeblock_php_bad.md))
|
|
- **Code blocks**- Detection of un-closed code blocks ([example](tests/06_codeblock_plain_bad.md))
|
|
- **Broken links**- Flag files that link to relative paths or URLs on the internet which can't be accessed ([example](tests/00_rel_link_bad.md), [example](tests/01_abs_link_bad.md)).
|
|
- **Broken images**- Detect broken embeds, local and remote ([example](tests/02_rel_img_bad.md), [example](tests/03_abs_image_bad.md)).
|
|
|
|
This tool is not intended to enforce a code style, and will not critique aspects of your Markdown code which do not affect the output.
|
|
|
|
## Dependencies
|
|
|
|
Requirements:
|
|
|
|
- curl
|
|
- xmllint
|
|
- pandoc
|
|
|
|
## Installation
|
|
|
|
```bash
|
|
curl https://raw.githubusercontent.com/mike42/mdcheckr/master/mdcheckr -o mdcheckr
|
|
chmod +x mdcheckr
|
|
sudo cp mdcheckr /usr/local/bin
|
|
```
|
|
|
|
## Usage
|
|
|
|
```
|
|
mdcheckr [ -h | --help ] [ -v | --version ] FILE ..
|
|
```
|
|
|
|
## Examples
|
|
|
|
Check a single markdown file:
|
|
|
|
```
|
|
mdcheckr README.md
|
|
```
|
|
|
|
Check all the markdown files in the current directory:
|
|
|
|
```
|
|
find . -name '*.md' -print0 | xargs -0 mdcheckr
|
|
```
|
|
|
|
Check all the markdown files in your Git repository:
|
|
|
|
```bash
|
|
git ls-files | grep '\.md$' | tr '\n' '\0' | xargs -0 mdcheckr
|
|
```
|