Django Template Linter
Project description
djlint
Simple Django template linter and reformatter.
Install
pip install djlint
Linter Usage
djlint src # file or path
# with custom extensions
djlint src -e html.dj
Reformatter Usage
Reforamtting is beta. Check the output before applying changes. Please PR any changes needed 👍🏽
djlint src --reformat --check
djlint src --reformat
Optional args
Arg | Definition | Default |
---|---|---|
-e, --extension | File extension to lint. | default=html |
--check | Checks file formatting | |
--reformat | Reformats html |
Linter Rules
Error Codes
Code | Meaning |
---|---|
E001 | Variables should be wrapped in a single whitespace. Ex: {{ this }} |
E002 | Double quotes should be used in tags. Ex {% extends "this.html" %} |
Warning Codes
Code | Meaning |
---|---|
W003 | Endblock should have name. Ex: {% endblock body %}. |
W004 | Status urls should follow {% static path/to/file %} pattern. |
W005 | Html tag should have lang attribute. |
W006 | Img tag should have alt, height and width attributes. |
W007 | <!DOCTYPE ... > should be present before the html tag. |
W008 | Attributes should be double quoted. |
W009 | Tag names should be lowercase. |
W010 | Attribute names should be lowercase. |
W011 | Attirbute values should be quoted. |
W012 | There should be no spaces around attribute =. |
W013 | Line is longer than 99 chars. |
W014 | More than 2 blank lines. |
W015 | Follow h tags with a blank line. |
W016 | Missging title tag in html. |
Adding Rules
A good rule consists of
- Name
- Code - Codes beginning with "E" signify error, and "W" warning.
- Message - Message to display when error is found.
- Patterns - regex expressions that will find the error.
Changelog
0.0.8
Added rules.
0.0.1
Initial release.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
djlint-0.0.9.tar.gz
(27.7 kB
view hashes)
Built Distribution
djlint-0.0.9-py3-none-any.whl
(22.2 kB
view hashes)