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 details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
djlint-0.0.9-py3-none-any.whl
(22.2 kB
view details)
File details
Details for the file djlint-0.0.9.tar.gz.
File metadata
- Download URL: djlint-0.0.9.tar.gz
- Upload date:
- Size: 27.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4645029fda06dd1406d16ffc9530c566b2a166153e8aefc19d0ae9c39ae59e33
|
|
| MD5 |
cbad1c7fe89498106324a88e06c88c71
|
|
| BLAKE2b-256 |
9438cd7c1864fc7592cfea51dcc6c1d01bb2a7144ab6b35c0da2bba433c3c339
|
File details
Details for the file djlint-0.0.9-py3-none-any.whl.
File metadata
- Download URL: djlint-0.0.9-py3-none-any.whl
- Upload date:
- Size: 22.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.4.2 importlib_metadata/4.6.1 pkginfo/1.7.1 requests/2.26.0 requests-toolbelt/0.9.1 tqdm/4.61.2 CPython/3.9.6
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4dd084a795a115588ecf7ea931543a766e36642b49ba641f3116f9c2b66d1fa6
|
|
| MD5 |
02405ca53803d2cbcffba86e7ceb5be1
|
|
| BLAKE2b-256 |
11beb9dc5f91ab04623eec065bbc0af8f8c4cf5f55b03f7e579d810401873dbf
|