NOTE: PyMarkDownLint is no longer under active development.
[] (https://travis-ci.org/jorisroovers/pymarkdownlint) [] (https://pypi.python.org/pypi/pymarkdownlint)
Markdown linter written in python. Inspired by mivok/markdownlint.
Get started by running:
markdownlint examples/ # lint all files in a directory
markdownlint examples/example1.md # lint a single file
markdownlint examples/example1.md # lint a single file
NOTE: The returned exit code equals the number of errors found.
Other commands and variations:
Usage: markdownlint [OPTIONS] PATH
Markdown lint tool, checks your markdown for styling issues
Options:
--config PATH Config file location (default: .markdownlint).
--list-files List markdown files in given path and exit.
--ignore TEXT Ignore rules (comma-separated by id or name).
--version Show the version and exit.
--help Show this message and exit.
You can modify pymarkdownlint's behavior by specifying a config file like so:
markdownlint --config myconfigfile
By default, markdownlint will look for an optional .markdownlint
file for configuration.
[general]
# rules can be ignored by name or by id
ignore=max-line-length, R3
ID | Name | Description |
---|---|---|
R1 | max-line-length | Line length must be < 80 chars. |
R2 | trailing-whitespace | Line cannot have trailing whitespace (space or tab) |
R3 | hard-tabs | Line contains hard tab characters (\t) |
To run tests:
./run_tests.sh # run unit tests and print test coverage
./run_tests.sh --no-coverage # run unit tests without test coverage
./run_tests.sh --pep8 # pep8 checks
./run_tests.sh --stats # print some code stats
There is a Vagrantfile in this repository that can be used for development.
vagrant up
vagrant ssh
- More rules!
- Better output handling with verbosity levels
- Ignore/exclude files CLI options
- Rule specific configuration in config files
- Auto doc generation based on rules