repos:
-   repo: https://github.com/pre-commit/pre-commit-hooks
    rev: v4.4.0
    hooks:
    -   id: check-yaml
    -   id: check-json
    -   id: check-toml
    -   id: end-of-file-fixer
    -   id: trailing-whitespace
    -   id: check-case-conflict
-   repo: https://github.com/psf/black
    rev: 24.8.0
    hooks:
    -   id: black
- repo: https://github.com/pycqa/isort
  rev: 5.13.2
  hooks:
  - id: isort
    language_version: python3
- repo: https://github.com/astral-sh/ruff-pre-commit
  rev: v0.6.3
  hooks:
    - id: ruff
      args: ["--fix", "--show-fixes"]
- repo: https://github.com/igorshubovych/markdownlint-cli
  rev: v0.35.0
  hooks:
  - id: markdownlint
- repo: https://github.com/codespell-project/codespell
  rev: v2.3.0
  hooks:
    - id: codespell
      args: ["--ignore-regex=.*noqa"]
      exclude: >
          (?x)^(
              .*test_main.py
          )$
- repo: local
  hooks:
    - id: pylint
      name: pylint
      entry: pylint
      language: python
      language_version: python3
      args:
        [
          "-rn", # Only display messages.
          "-sn", # Don't display the pylint score.
          "--rcfile=.pylintrc"
        ]
exclude: |
  (?x) (
    ^html/
  )
