- html (default)
- django
- jinja
- nunjucks (for nunjucks and twig)
- handlebars (for handlebars and mustache)
- golang
- angular
La configuration se fait soit à travers le fichier pyproject.toml
de votre projet, soit à travers un fichier .djlintrc
. Les arguments de la ligne de commande remplaceront toujours les paramètres du fichier pyproject.toml
. Les paramètres locaux du projet prévaudront toujours sur les fichiers de configuration globaux.
Le format du fichier pyproject.toml
est toml
.
[tool.djlint]
<options de configuration>
Le format du fichier djlintrc
est json
.
{
"option": "valeur"
}
Ignore les codes de linter.
ignore="H014,H015"
"ignore": "H014,H015"
Permet de trouver uniquement les fichiers ayant une extension spécifique.
extension="html.dj"
"extension": "html.dj"
Sert à indenter les blocs de code personnalisés. Par exemple {% toc %}...{% endtoc %}
custom_blocks="toc,example"
"custom_blocks": "toc,example"
Permet d’indenter les balises HTML personnalisées. Par exemple, <mjml>
ou <simple-greeting>
ou <mj-\w+>
.
custom_html="mjml,simple-greeting,mj-\w+"
"custom_html": "mjml,simple-greeting,mj-\w+"
Permet de modifier l’indentation du code. La valeur par défaut est 4 (quatre espaces).
indent=3
"indent": "3"
Remplacer les chemins d’exclusion par défaut.
exclude=".venv,venv,.tox,.eggs,..."
"exclude": ".venv,venv,.tox,.eggs,..."
Ajouter des chemins supplémentaires à l’exclusion par défaut.
extend_exclude=".custom"
"extend_exclude": ".custom"
Ajout d’une ligne vide supplémentaire après les groupes de balises {% <tag> ... %}
.
blank_line_after_tag="load,extends,include"
"blank_line_after_tag": "load,extends,include"
Ajoute une ligne blanche supplémentaire avant les groupes de balises {% <tag> ... %}
. Les lignes vides ne seront jamais ajoutées au début du fichier ou entre des balises similaires.
blank_line_before_tag="load,extends,include"
"blank_line_before_tag": "load,extends,include"
Définissez un profil pour la langue du modèle. Le profil activera les règles de linter qui s’appliquent à votre langage de modèle, et peut également changer le reformatage. Par exemple, dans handlebars
, il n’y a pas d’espaces dans les balises {{#if}}
.
Options:
profile="django"
"profile": "django"
Ne formatez ou ne limez que les fichiers qui commencent par un commentaire contenant uniquement le texte ‘djlint:on’. Le commentaire peut être un commentaire HTML ou un commentaire dans le langage de modèle défini par le paramètre de profil. Si aucun profil n’est spécifié, un commentaire dans l’un des langages de modèle est accepté.
<!-- djlint:on -->
{# djlint:on #}
{% comment %} djlint:on {% endcomment %}
{{ /* djlint:on */ }}
{{!-- djlint:on --}}
require_pragma=true
"require_pragma": "true"
Le formateur essaiera de mettre certaines balises html et template sur une seule ligne au lieu de les envelopper si la longueur de la ligne ne dépasse pas cette valeur.
max_line_length=120
"max_line_length": "120"
Le formateur tentera d’envelopper les attributs de la balise si la longueur de l’attribut dépasse cette valeur.
max_attribute_length=10
"max_attribute_length": "10"
Ajouter les exclusions .gitignore à l’exclusion par défaut.
use_gitignore=True
"use_gitignore": "True"
Le formateur tentera de formater la syntaxe des modèles à l’intérieur des attributs des balises. Désactivé par défaut.
format_attribute_template_tags=true
"format_attribute_template_tags": "true"
Personnalise l’ordre du message de sortie. Défaut=“{code} {ligne} {message} {match}”. Si {filename}
n’est pas inclus dans le message, alors la sortie sera groupée par fichier et un en-tête sera automatiquement ajouté à chaque groupe.
Optional variables:
{filename}
{line}
{code}
{message}
{match}
linter_output_format="{filename}:{line}: {code} {message} {match}"
"linter_output_format": "{filename}:{line}: {code} {message} {match}"
Préserve l’espace de tête du texte, dans la mesure du possible. Idéal pour les fichiers de modèles non-html où l’indentation du texte est intentionnelle.
preserve_leading_space=true
"preserve_leading_space": true
Préserve les blancs lorsque cela est possible. Idéal pour les fichiers de modèles non-html où les lignes vides sont intentionnelles.
preserve_blank_lines=true
"preserve_blank_lines": true
Ignorer les règles de linter sur une base par fichier.
[tool.djlint.per-file-ignores]
"file.html"= "H026,H025"
"file_two.html"="H001"
"per-file-ignores": {
"file.html": "H026,H025",
"file_two.html":"H001"
}
Formate le contenu des balises script
en utilisant js-beautify
. Voir js-beautify pour toutes les options de configuration. La syntaxe des modèles n’est pas [entièrement prise en charge] (https://github.com/beautify-web/js-beautify/issues) dans pris en charge.
[tool.djlint]
format_js=true
[tool.djlint.js]
indent_size=5
"format_js": true
"js": {
"indent_size": 5
}
Formate le contenu des balises script
en utilisant css-beautify
. Voir css-beautify pour toutes les options de configuration. La syntaxe des modèles n’est pas [entièrement prise en charge] (https://github.com/beautify-web/js-beautify/issues) dans pris en charge.
[tool.djlint]
format_css=true
[tool.djlint.css]
indent_size=5
"format_css": true
"css": {
"indent_size": 5
}
Une liste de chemins à utiliser comme source de djlint. Lorsque cette option est spécifiée, la source de la ligne de commande doit être -
comme si vous utilisiez stdin.
[tool.djlint]
files=["index.html"]
"files": [
"index.html"
}