https://github.com/adrienverge/yamllint
A linter for YAML files.
https://github.com/adrienverge/yamllint
lint linter yaml yamllint
Last synced: 7 days ago
JSON representation
A linter for YAML files.
- Host: GitHub
- URL: https://github.com/adrienverge/yamllint
- Owner: adrienverge
- License: gpl-3.0
- Created: 2016-01-11T08:26:36.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2025-03-23T09:41:32.000Z (23 days ago)
- Last Synced: 2025-04-01T06:11:39.483Z (14 days ago)
- Topics: lint, linter, yaml, yamllint
- Language: Python
- Homepage:
- Size: 786 KB
- Stars: 3,013
- Watchers: 31
- Forks: 285
- Open Issues: 130
-
Metadata Files:
- Readme: README.rst
- Changelog: CHANGELOG.rst
- Contributing: CONTRIBUTING.rst
- License: LICENSE
Awesome Lists containing this project
- awesome-ccamel - adrienverge/yamllint - A linter for YAML files. (Python)
- awesome-repositories - adrienverge/yamllint - A linter for YAML files. (Python)
- awesome-linters - yamllint - Linter for YAML files. (Linters / YAML)
- jimsghstars - adrienverge/yamllint - A linter for YAML files. (Python)
README
yamllint
========A linter for YAML files.
yamllint does not only check for syntax validity, but for weirdnesses like key
repetition and cosmetic problems such as lines length, trailing spaces,
indentation, etc... image::
https://github.com/adrienverge/yamllint/actions/workflows/ci.yaml/badge.svg?branch=master
:target: https://github.com/adrienverge/yamllint/actions/workflows/ci.yaml?query=branch%3Amaster
:alt: CI tests status
.. image::
https://coveralls.io/repos/github/adrienverge/yamllint/badge.svg?branch=master
:target: https://coveralls.io/github/adrienverge/yamllint?branch=master
:alt: Code coverage status
.. image:: https://readthedocs.org/projects/yamllint/badge/?version=latest
:target: https://yamllint.readthedocs.io/en/latest/?badge=latest
:alt: Documentation statusWritten in Python (compatible with Python 3 only).
Documentation
-------------https://yamllint.readthedocs.io/
Overview
--------Screenshot
^^^^^^^^^^.. image:: docs/screenshot.png
:alt: yamllint screenshotInstallation
^^^^^^^^^^^^Using pip, the Python package manager:
.. code:: bash
pip install --user yamllint
yamllint is also packaged for all major operating systems, see installation
examples (``dnf``, ``apt-get``...) `in the documentation
`_.Usage
^^^^^.. code:: bash
# Lint one or more files
yamllint my_file.yml my_other_file.yaml ..... code:: bash
# Lint all YAML files in a directory
yamllint ... code:: bash
# Use a pre-defined lint configuration
yamllint -d relaxed file.yaml# Use a custom lint configuration
yamllint -c /path/to/myconfig file-to-lint.yaml.. code:: bash
# Output a parsable format (for syntax checking in editors like Vim, emacs...)
yamllint -f parsable file.yaml`Read more in the complete documentation! `__
Features
^^^^^^^^Here is a yamllint configuration file example:
.. code:: yaml
extends: default
rules:
# 80 chars should be enough, but don't fail if a line is longer
line-length:
max: 80
level: warning# don't bother me with this rule
indentation: disableWithin a YAML file, special comments can be used to disable checks for a single
line:.. code:: yaml
This line is waaaaaaaaaay too long # yamllint disable-line
or for a whole block:
.. code:: yaml
# yamllint disable rule:colons
- Lorem : ipsum
dolor : sit amet,
consectetur : adipiscing elit
# yamllint enableSpecific files can be ignored (totally or for some rules only) using a
``.gitignore``-style pattern:.. code:: yaml
# For all rules
ignore: |
*.dont-lint-me.yaml
/bin/
!/bin/*.lint-me-anyway.yamlrules:
key-duplicates:
ignore: |
generated
*.template.yaml
trailing-spaces:
ignore: |
*.ignore-trailing-spaces.yaml
/ascii-art/*`Read more in the complete documentation! `__
License
-------`GPL version 3 `_