Lints Python code blocks in Markdown files using flake8
Flake8 Markdown lints GitHub-style Python code blocks in Markdown files using flake8
.
This package helps improve a Python project's documentation by ensuring that code samples are error-free.
pycon
)Flake8 Markdown can be installed from PyPI using pip
or your package manager of choice:
pip install flake8-markdown
You can use Flake8 Markdown as a CLI tool using the flake8-markdown
command.
flake8-markdown
accepts one or more globs as its arguments.
Example:
$ flake8-markdown "tests/samples/*.md"
tests/samples/emphasized_lines.md:6:1: F821 undefined name 'emphasized_imaginary_function'
tests/samples/basic.md:8:48: E999 SyntaxError: EOL while scanning string literal
tests/samples/basic.md:14:7: F821 undefined name 'undefined_variable'
You can also add flake8-markdown
to your project using pre-commit. When configured, any staged Markdown files will be linted using flake8-markdown
once you run git commit
.
To enable this hook in your local repository, add the following repo
to your .pre-commit-config.yaml
file:
# .pre-commit-config.yaml
repos:
- repo: https://github.com/johnfraney/flake8-markdown
rev: v0.5.0
hooks:
- id: flake8-markdown
Everyone interacting in the project's codebases, issue trackers, chat rooms, and mailing lists is expected to follow the PyPA Code of Conduct.
python
3.11python
3.7 and Pypy 3flake8
v5python
3.10python
3.6flake8
v4pycon
code block support