djlint 1.30.0 → 1.30.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (368) hide show
  1. package/package.json +3 -2
  2. package/.coveragerc +0 -9
  3. package/.editorconfig +0 -21
  4. package/.flake8 +0 -0
  5. package/.github/FUNDING.yml +0 -2
  6. package/.github/ISSUE_TEMPLATE/config.yml +0 -6
  7. package/.github/ISSUE_TEMPLATE/feature_request.md +0 -19
  8. package/.github/ISSUE_TEMPLATE/formatter_but_report.md +0 -30
  9. package/.github/ISSUE_TEMPLATE/linter_bug_report.md +0 -34
  10. package/.github/ISSUE_TEMPLATE/translation.md +0 -14
  11. package/.github/config.yml +0 -4
  12. package/.github/pull_request_template.md +0 -10
  13. package/.github/workflows/cancel.yml +0 -17
  14. package/.github/workflows/demo.yml +0 -98
  15. package/.github/workflows/issues.yml +0 -23
  16. package/.github/workflows/linkcheck.yaml +0 -21
  17. package/.github/workflows/lint.yml +0 -25
  18. package/.github/workflows/release.yml +0 -57
  19. package/.github/workflows/test.yml +0 -85
  20. package/.pre-commit-config.yaml +0 -45
  21. package/.pre-commit-hooks.yaml +0 -71
  22. package/.prettierignore +0 -7
  23. package/.prettierrc +0 -11
  24. package/.releaserc +0 -16
  25. package/CHANGELOG.md +0 -13
  26. package/MANIFEST.in +0 -2
  27. package/build_demo.sh +0 -17
  28. package/docs/.eleventy.js +0 -425
  29. package/docs/.eleventyignore +0 -2
  30. package/docs/.prettierignore +0 -3
  31. package/docs/.prettierrc +0 -11
  32. package/docs/package.json +0 -73
  33. package/docs/readme.md +0 -17
  34. package/docs/src/_data/configuration.json +0 -646
  35. package/docs/src/_data/eleventyComputed.js +0 -22
  36. package/docs/src/_data/i18n/index.js +0 -159
  37. package/docs/src/_data/js.js +0 -7
  38. package/docs/src/_data/locales.js +0 -17
  39. package/docs/src/_data/site.json +0 -8
  40. package/docs/src/_includes/demo.njk +0 -157
  41. package/docs/src/_includes/docs_layout.njk +0 -34
  42. package/docs/src/_includes/foot.njk +0 -26
  43. package/docs/src/_includes/index.njk +0 -187
  44. package/docs/src/_includes/languages_layout.njk +0 -11
  45. package/docs/src/_includes/layout.njk +0 -111
  46. package/docs/src/_includes/nav.njk +0 -85
  47. package/docs/src/_utils/minify-html.js +0 -14
  48. package/docs/src/_utils/rollupper.js +0 -91
  49. package/docs/src/_utils/scripts.11ty.js +0 -27
  50. package/docs/src/demo.njk +0 -4
  51. package/docs/src/docs/best-practices.md +0 -78
  52. package/docs/src/docs/changelog.md +0 -452
  53. package/docs/src/docs/configuration.md +0 -145
  54. package/docs/src/docs/docs.json +0 -4
  55. package/docs/src/docs/formatter.md +0 -82
  56. package/docs/src/docs/getting-started.md +0 -126
  57. package/docs/src/docs/ignoring-code.md +0 -75
  58. package/docs/src/docs/integrations.md +0 -120
  59. package/docs/src/docs/languages/angular.md +0 -31
  60. package/docs/src/docs/languages/django.md +0 -40
  61. package/docs/src/docs/languages/golang.md +0 -31
  62. package/docs/src/docs/languages/handlebars.md +0 -31
  63. package/docs/src/docs/languages/jinja.md +0 -39
  64. package/docs/src/docs/languages/languages.json +0 -3
  65. package/docs/src/docs/languages/mustache.md +0 -31
  66. package/docs/src/docs/languages/nunjucks.md +0 -39
  67. package/docs/src/docs/languages/twig.md +0 -41
  68. package/docs/src/docs/linter.md +0 -199
  69. package/docs/src/fr/demo.njk +0 -4
  70. package/docs/src/fr/docs/best-practices.md +0 -78
  71. package/docs/src/fr/docs/changelog.md +0 -452
  72. package/docs/src/fr/docs/configuration.md +0 -144
  73. package/docs/src/fr/docs/docs.json +0 -3
  74. package/docs/src/fr/docs/formatter.md +0 -83
  75. package/docs/src/fr/docs/getting-started.md +0 -127
  76. package/docs/src/fr/docs/ignoring-code.md +0 -75
  77. package/docs/src/fr/docs/integrations.md +0 -100
  78. package/docs/src/fr/docs/languages/angular.md +0 -31
  79. package/docs/src/fr/docs/languages/django.md +0 -31
  80. package/docs/src/fr/docs/languages/golang.md +0 -31
  81. package/docs/src/fr/docs/languages/handlebars.md +0 -31
  82. package/docs/src/fr/docs/languages/jinja.md +0 -31
  83. package/docs/src/fr/docs/languages/languages.json +0 -3
  84. package/docs/src/fr/docs/languages/mustache.md +0 -31
  85. package/docs/src/fr/docs/languages/nunjucks.md +0 -31
  86. package/docs/src/fr/docs/languages/twig.md +0 -31
  87. package/docs/src/fr/docs/linter.md +0 -207
  88. package/docs/src/fr/fr.json +0 -4
  89. package/docs/src/fr/index.njk +0 -4
  90. package/docs/src/index.njk +0 -4
  91. package/docs/src/lib/generate-content-hash.js +0 -13
  92. package/docs/src/robots.txt +0 -4
  93. package/docs/src/ru/demo.njk +0 -4
  94. package/docs/src/ru/docs/best-practices.md +0 -78
  95. package/docs/src/ru/docs/changelog.md +0 -453
  96. package/docs/src/ru/docs/configuration.md +0 -142
  97. package/docs/src/ru/docs/docs.json +0 -3
  98. package/docs/src/ru/docs/formatter.md +0 -82
  99. package/docs/src/ru/docs/getting-started.md +0 -127
  100. package/docs/src/ru/docs/ignoring-code.md +0 -75
  101. package/docs/src/ru/docs/integrations.md +0 -100
  102. package/docs/src/ru/docs/languages/angular.md +0 -31
  103. package/docs/src/ru/docs/languages/django.md +0 -31
  104. package/docs/src/ru/docs/languages/golang.md +0 -31
  105. package/docs/src/ru/docs/languages/handlebars.md +0 -31
  106. package/docs/src/ru/docs/languages/jinja.md +0 -31
  107. package/docs/src/ru/docs/languages/languages.json +0 -3
  108. package/docs/src/ru/docs/languages/mustache.md +0 -31
  109. package/docs/src/ru/docs/languages/nunjucks.md +0 -31
  110. package/docs/src/ru/docs/languages/twig.md +0 -31
  111. package/docs/src/ru/docs/linter.md +0 -126
  112. package/docs/src/ru/index.njk +0 -4
  113. package/docs/src/ru/ru.json +0 -4
  114. package/docs/src/sitemap.njk +0 -16
  115. package/docs/src/static/css/site.scss +0 -467
  116. package/docs/src/static/font/fontawesome/stylesheet.scss +0 -78
  117. package/docs/src/static/img/apple-touch-icon.png +0 -0
  118. package/docs/src/static/img/demo-min.gif +0 -0
  119. package/docs/src/static/img/demo.gif +0 -0
  120. package/docs/src/static/img/demo.webm +0 -0
  121. package/docs/src/static/img/favicon-16x16.png +0 -0
  122. package/docs/src/static/img/favicon-32x32.png +0 -0
  123. package/docs/src/static/img/favicon.ico +0 -0
  124. package/docs/src/static/img/icon-square.indd +0 -0
  125. package/docs/src/static/img/icon-square.png +0 -0
  126. package/docs/src/static/img/icon.png +0 -0
  127. package/docs/src/static/img/logo-192x192.png +0 -0
  128. package/docs/src/static/img/logo-512x512.png +0 -0
  129. package/docs/src/static/img/logos/angular.png +0 -0
  130. package/docs/src/static/img/logos/django.png +0 -0
  131. package/docs/src/static/img/logos/golang.png +0 -0
  132. package/docs/src/static/img/logos/handlebars.png +0 -0
  133. package/docs/src/static/img/logos/jinja.png +0 -0
  134. package/docs/src/static/img/logos/mustache.png +0 -0
  135. package/docs/src/static/img/logos/nunjucks.png +0 -0
  136. package/docs/src/static/img/logos/twig.png +0 -0
  137. package/docs/src/static/img/old_demo.gif +0 -0
  138. package/docs/src/static/img/style.css +0 -122
  139. package/docs/src/static/js/animate.js +0 -69
  140. package/docs/src/static/js/editor.js +0 -171
  141. package/docs/src/static/js/hamburger.js +0 -19
  142. package/docs/src/static/js/modal.js +0 -47
  143. package/docs/src/static/js/worker.js +0 -142
  144. package/docs/src/static/py/EditorConfig-99-py3-none-any.whl +0 -0
  145. package/docs/src/static/py/PyYAML-99-py3-none-any.whl +0 -0
  146. package/docs/src/static/py/click-99-py3-none-any.whl +0 -0
  147. package/docs/src/static/py/colorama-99-py3-none-any.whl +0 -0
  148. package/docs/src/static/py/cssbeautifier-99-py3-none-any.whl +0 -0
  149. package/docs/src/static/py/djlint-99-py3-none-any.whl +0 -0
  150. package/docs/src/static/py/html_tag_names-99-py3-none-any.whl +0 -0
  151. package/docs/src/static/py/html_void_elements-99-py3-none-any.whl +0 -0
  152. package/docs/src/static/py/jsbeautifier-99-py3-none-any.whl +0 -0
  153. package/docs/src/static/py/json5-99-py3-none-any.whl +0 -0
  154. package/docs/src/static/py/pathspec-99-py3-none-any.whl +0 -0
  155. package/docs/src/static/py/regex-2023.5.5-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl +0 -0
  156. package/docs/src/static/py/six-1.16.0-py2.py3-none-any.whl +0 -0
  157. package/docs/src/static/py/tomli-2.0.1-py3-none-any.whl +0 -0
  158. package/docs/src/static/py/tqdm-4.65.0-py3-none-any.whl +0 -0
  159. package/icon.xcf +0 -0
  160. package/poetry.lock +0 -835
  161. package/pyproject.toml +0 -100
  162. package/renovate.json +0 -44
  163. package/scripts/updateVersion.js +0 -16
  164. package/src/djlint/__init__.py +0 -451
  165. package/src/djlint/__main__.py +0 -4
  166. package/src/djlint/formatter/__init__.py +0 -1
  167. package/src/djlint/formatter/attributes.py +0 -212
  168. package/src/djlint/formatter/compress.py +0 -64
  169. package/src/djlint/formatter/condense.py +0 -221
  170. package/src/djlint/formatter/css.py +0 -60
  171. package/src/djlint/formatter/expand.py +0 -111
  172. package/src/djlint/formatter/indent.py +0 -418
  173. package/src/djlint/formatter/js.py +0 -58
  174. package/src/djlint/helpers.py +0 -321
  175. package/src/djlint/lint.py +0 -128
  176. package/src/djlint/output.py +0 -220
  177. package/src/djlint/reformat.py +0 -63
  178. package/src/djlint/rules/H025.py +0 -65
  179. package/src/djlint/rules.yaml +0 -279
  180. package/src/djlint/settings.py +0 -969
  181. package/src/djlint/src.py +0 -91
  182. package/tests/__init__.py +0 -0
  183. package/tests/conftest.py +0 -239
  184. package/tests/test_cli.py +0 -71
  185. package/tests/test_config/__init__.py +0 -0
  186. package/tests/test_config/test_blank_line_after_tag.py +0 -135
  187. package/tests/test_config/test_blank_line_before_tag.py +0 -141
  188. package/tests/test_config/test_close_void_tags.py +0 -31
  189. package/tests/test_config/test_custom_blocks.py +0 -56
  190. package/tests/test_config/test_custom_html.py +0 -45
  191. package/tests/test_config/test_djlintrc/.djlintrc +0 -38
  192. package/tests/test_config/test_djlintrc/__init__.py +0 -0
  193. package/tests/test_config/test_djlintrc/test_config.py +0 -44
  194. package/tests/test_config/test_djlintrc_custom/.djlint-cust +0 -38
  195. package/tests/test_config/test_djlintrc_custom/.djlintrc +0 -2
  196. package/tests/test_config/test_djlintrc_custom/__init__.py +0 -0
  197. package/tests/test_config/test_djlintrc_custom/test_config.py +0 -48
  198. package/tests/test_config/test_excludes/__init__.py +0 -0
  199. package/tests/test_config/test_excludes/excluded.html +0 -1
  200. package/tests/test_config/test_excludes/foo/excluded.html +0 -1
  201. package/tests/test_config/test_excludes/html.html +0 -1
  202. package/tests/test_config/test_excludes/pyproject.toml +0 -3
  203. package/tests/test_config/test_excludes/test_config.py +0 -30
  204. package/tests/test_config/test_extension/__init__.py +0 -0
  205. package/tests/test_config/test_extension/html.test +0 -1
  206. package/tests/test_config/test_extension/pyproject.toml +0 -3
  207. package/tests/test_config/test_extension/test_config.py +0 -27
  208. package/tests/test_config/test_files/.djlintrc_global +0 -9
  209. package/tests/test_config/test_files/test.html +0 -3
  210. package/tests/test_config/test_files/test_config.py +0 -123
  211. package/tests/test_config/test_files/test_two.html +0 -1
  212. package/tests/test_config/test_format_attribute_template_tags.py +0 -280
  213. package/tests/test_config/test_format_css.py +0 -197
  214. package/tests/test_config/test_format_js.py +0 -220
  215. package/tests/test_config/test_gitignore/__init__.py +0 -0
  216. package/tests/test_config/test_gitignore/html_one.html +0 -1
  217. package/tests/test_config/test_gitignore/html_two.html +0 -1
  218. package/tests/test_config/test_gitignore/test_config.py +0 -142
  219. package/tests/test_config/test_ignore/__init__.py +0 -0
  220. package/tests/test_config/test_ignore/html.html +0 -1
  221. package/tests/test_config/test_ignore/html_two.html +0 -12
  222. package/tests/test_config/test_ignore/pyproject.toml +0 -3
  223. package/tests/test_config/test_ignore/test_config.py +0 -32
  224. package/tests/test_config/test_ignore_blocks.py +0 -45
  225. package/tests/test_config/test_ignore_case.py +0 -39
  226. package/tests/test_config/test_indent.py +0 -63
  227. package/tests/test_config/test_linter_output_format/__init__.py +0 -0
  228. package/tests/test_config/test_linter_output_format/html-one.html +0 -1
  229. package/tests/test_config/test_linter_output_format/html-two.html +0 -1
  230. package/tests/test_config/test_linter_output_format/pyproject.toml +0 -3
  231. package/tests/test_config/test_linter_output_format/test_config.py +0 -34
  232. package/tests/test_config/test_max_attribute_length.py +0 -100
  233. package/tests/test_config/test_max_line_length.py +0 -94
  234. package/tests/test_config/test_per_file_ignores/__init__.py +0 -0
  235. package/tests/test_config/test_per_file_ignores/html.html +0 -2
  236. package/tests/test_config/test_per_file_ignores/pyproject.toml +0 -2
  237. package/tests/test_config/test_per_file_ignores/test_config.py +0 -25
  238. package/tests/test_config/test_pragmas/__init__.py +0 -0
  239. package/tests/test_config/test_pragmas/html_five.html +0 -2
  240. package/tests/test_config/test_pragmas/html_four.html +0 -5
  241. package/tests/test_config/test_pragmas/html_one.html +0 -1
  242. package/tests/test_config/test_pragmas/html_six.html +0 -2
  243. package/tests/test_config/test_pragmas/html_three.html +0 -4
  244. package/tests/test_config/test_pragmas/html_two.html +0 -2
  245. package/tests/test_config/test_pragmas/pyproject.toml +0 -3
  246. package/tests/test_config/test_pragmas/test_config.py +0 -142
  247. package/tests/test_config/test_preserve_blank_lines.py +0 -109
  248. package/tests/test_config/test_preserve_leading_space.py +0 -159
  249. package/tests/test_config/test_profile/__init__.py +0 -0
  250. package/tests/test_config/test_profile/html.html +0 -2
  251. package/tests/test_config/test_profile/pyproject.toml +0 -3
  252. package/tests/test_config/test_profile/test_config.py +0 -64
  253. package/tests/test_config/test_pyproject/__init__.py +0 -0
  254. package/tests/test_config/test_pyproject/blank.html +0 -0
  255. package/tests/test_config/test_pyproject/pyproject.toml +0 -36
  256. package/tests/test_config/test_pyproject/test_config.py +0 -44
  257. package/tests/test_django/__init__.py +0 -0
  258. package/tests/test_django/test_asset.py +0 -32
  259. package/tests/test_django/test_autoescape.py +0 -25
  260. package/tests/test_django/test_block.py +0 -29
  261. package/tests/test_django/test_blocktrans.py +0 -236
  262. package/tests/test_django/test_blocktrans_trimmed.py +0 -283
  263. package/tests/test_django/test_comments.py +0 -164
  264. package/tests/test_django/test_filter.py +0 -30
  265. package/tests/test_django/test_for.py +0 -34
  266. package/tests/test_django/test_if.py +0 -34
  267. package/tests/test_django/test_ifchanged.py +0 -37
  268. package/tests/test_django/test_include.py +0 -24
  269. package/tests/test_django/test_load.py +0 -24
  270. package/tests/test_django/test_quoted.py +0 -34
  271. package/tests/test_django/test_spaceless.py +0 -30
  272. package/tests/test_django/test_tag_spaces.py +0 -35
  273. package/tests/test_django/test_templatetag.py +0 -40
  274. package/tests/test_django/test_verbatim.py +0 -24
  275. package/tests/test_django/test_with.py +0 -32
  276. package/tests/test_djlint/-.html +0 -1
  277. package/tests/test_djlint/__init__.py +0 -0
  278. package/tests/test_djlint/bad.html +0 -6
  279. package/tests/test_djlint/bad.html.dj +0 -23
  280. package/tests/test_djlint/bad.html.dj2 +0 -2
  281. package/tests/test_djlint/multiple_files/a/a.html +0 -1
  282. package/tests/test_djlint/multiple_files/b/b1.html +0 -1
  283. package/tests/test_djlint/multiple_files/b/b2.html +0 -1
  284. package/tests/test_djlint/test_djlint.py +0 -242
  285. package/tests/test_golang/__init__.py +0 -0
  286. package/tests/test_golang/test_if.py +0 -24
  287. package/tests/test_golang/test_range.py +0 -24
  288. package/tests/test_handlebars/__init__.py +0 -0
  289. package/tests/test_handlebars/test_each.py +0 -34
  290. package/tests/test_handlebars/test_else.py +0 -24
  291. package/tests/test_handlebars/test_with.py +0 -24
  292. package/tests/test_html/__init__.py +0 -0
  293. package/tests/test_html/test_alpinejs.py +0 -65
  294. package/tests/test_html/test_attributes.py +0 -935
  295. package/tests/test_html/test_aurelia.py +0 -24
  296. package/tests/test_html/test_basics.py +0 -905
  297. package/tests/test_html/test_bracket_same_line.py +0 -177
  298. package/tests/test_html/test_case.py +0 -81
  299. package/tests/test_html/test_cdata.py +0 -34
  300. package/tests/test_html/test_comments.py +0 -333
  301. package/tests/test_html/test_css.py +0 -193
  302. package/tests/test_html/test_doctype_declarations.py +0 -202
  303. package/tests/test_html/test_ignored.py +0 -193
  304. package/tests/test_html/test_interpolation.py +0 -56
  305. package/tests/test_html/test_line_break_after_multiline_tag.py +0 -95
  306. package/tests/test_html/test_next_line_empty.py +0 -53
  307. package/tests/test_html/test_selfclosing.py +0 -55
  308. package/tests/test_html/test_single_attribute_per_line.py +0 -87
  309. package/tests/test_html/test_srcset.py +0 -43
  310. package/tests/test_html/test_svg.py +0 -104
  311. package/tests/test_html/test_symbol_entities.py +0 -34
  312. package/tests/test_html/test_tag_code.py +0 -24
  313. package/tests/test_html/test_tag_dd.py +0 -24
  314. package/tests/test_html/test_tag_details_summary.py +0 -24
  315. package/tests/test_html/test_tag_dt.py +0 -24
  316. package/tests/test_html/test_tag_fig_caption.py +0 -29
  317. package/tests/test_html/test_tag_hr.py +0 -29
  318. package/tests/test_html/test_tag_picture.py +0 -32
  319. package/tests/test_html/test_tag_pre.py +0 -45
  320. package/tests/test_html/test_tag_script.py +0 -516
  321. package/tests/test_html/test_tag_small.py +0 -24
  322. package/tests/test_html/test_tag_span.py +0 -119
  323. package/tests/test_html/test_tag_textarea.py +0 -82
  324. package/tests/test_html/test_tags.py +0 -842
  325. package/tests/test_html/test_text.py +0 -34
  326. package/tests/test_html/test_whitespace.py +0 -477
  327. package/tests/test_html/test_yaml.py +0 -156
  328. package/tests/test_jinja/__init__.py +0 -0
  329. package/tests/test_jinja/test_call.py +0 -34
  330. package/tests/test_jinja/test_parenthesis.py +0 -24
  331. package/tests/test_linter/__init__.py +0 -0
  332. package/tests/test_linter/test_custom_rules/.djlint_rules.yaml +0 -6
  333. package/tests/test_linter/test_custom_rules/__init__.py +0 -0
  334. package/tests/test_linter/test_custom_rules/html.html +0 -1
  335. package/tests/test_linter/test_custom_rules/pyproject.toml +0 -1
  336. package/tests/test_linter/test_custom_rules/test_linter.py +0 -29
  337. package/tests/test_linter/test_custom_rules_bad/.djlint_rules.yaml +0 -24
  338. package/tests/test_linter/test_custom_rules_bad/__init__.py +0 -0
  339. package/tests/test_linter/test_custom_rules_bad/html.html +0 -1
  340. package/tests/test_linter/test_custom_rules_bad/pyproject.toml +0 -1
  341. package/tests/test_linter/test_custom_rules_bad/test_linter.py +0 -29
  342. package/tests/test_linter/test_django_linter.py +0 -476
  343. package/tests/test_linter/test_h005.py +0 -45
  344. package/tests/test_linter/test_h006.py +0 -81
  345. package/tests/test_linter/test_h007.py +0 -45
  346. package/tests/test_linter/test_h008.py +0 -60
  347. package/tests/test_linter/test_h009.py +0 -45
  348. package/tests/test_linter/test_h010.py +0 -44
  349. package/tests/test_linter/test_h037.py +0 -150
  350. package/tests/test_linter/test_ignore_rules.py +0 -45
  351. package/tests/test_linter/test_jinja_linter.py +0 -227
  352. package/tests/test_linter/test_linter.py +0 -691
  353. package/tests/test_linter/test_nunjucks_linter.py +0 -59
  354. package/tests/test_linter/test_python_module_rules/.djlint_rules.yaml +0 -4
  355. package/tests/test_linter/test_python_module_rules/__init__.py +0 -0
  356. package/tests/test_linter/test_python_module_rules/html_bad.html +0 -3
  357. package/tests/test_linter/test_python_module_rules/html_ok.html +0 -3
  358. package/tests/test_linter/test_python_module_rules/my_module.py +0 -32
  359. package/tests/test_linter/test_python_module_rules/pyproject.toml +0 -1
  360. package/tests/test_linter/test_python_module_rules/test_linter.py +0 -26
  361. package/tests/test_nunjucks/__init__.py +0 -0
  362. package/tests/test_nunjucks/test_functions.py +0 -94
  363. package/tests/test_nunjucks/test_macros.py +0 -41
  364. package/tests/test_nunjucks/test_set.py +0 -206
  365. package/tests/test_nunjucks/test_spaceless.py +0 -24
  366. package/tests/test_twig/__init__.py +0 -0
  367. package/tests/test_twig/test_comments.py +0 -51
  368. package/tox.ini +0 -48
@@ -1,453 +0,0 @@
1
- ---
2
- description: djLint Изменения. Ознакомьтесь с обновлениями последних релизов и узнайте, какие функции вы можете ожидать при следующем обновлении.
3
- title: Изменения
4
- keywords: облицовка шаблонов, форматер шаблонов, djLint, HTML, шаблоны, форматер, линтер, использование, Изменения
5
- ---
6
-
7
- {% raw %}
8
-
9
- # Изменения
10
-
11
- Изменения теперь включен в [релиз](https://github.com/Riverside-Healthcare/djLint/releases).
12
-
13
- <!--## {{ "next_release" i18n }}-->
14
-
15
- ## 1.0.2
16
-
17
- ::: content
18
-
19
- - Исправления ошибок [#240](https://github.com/Riverside-Healthcare/djLint/issues/240)
20
- :::
21
-
22
- ## 1.0.1
23
-
24
- ::: content
25
-
26
- - Исправления ошибок [#236](https://github.com/Riverside-Healthcare/djLint/issues/236)
27
- :::
28
-
29
- ## 1.0.0
30
-
31
- ::: content
32
-
33
- - Исправления ошибок [#224](https://github.com/Riverside-Healthcare/djLint/issues/224)
34
- :::
35
-
36
- ## 0.7.6
37
-
38
- ::: content
39
-
40
- - Исправления ошибок [#189](https://github.com/Riverside-Healthcare/djLint/issues/189), [#197](https://github.com/Riverside-Healthcare/djLint/issues/189)
41
- - Добавлен флаг `--warn` для возврата ошибок в виде предупреждений.
42
- :::
43
-
44
- ## 0.7.5
45
-
46
- ::: content
47
-
48
- - Исправления ошибок [#187](https://github.com/Riverside-Healthcare/djLint/issues/187)
49
- - Добавлена улучшенная поддержка `yaml` front matter в файлах шаблонов
50
- - Добавлено правило T032 для [#123](https://github.com/Riverside-Healthcare/djLint/issues/123)
51
- - Добавлено правило H033 для [#124](https://github.com/Riverside-Healthcare/djLint/issues/124)
52
- - Изменены профили линтеров, чтобы они были инклюзивными, а не эксклюзивными для [#178](https://github.com/Riverside-Healthcare/djLint/issues/178)
53
- - Добавлена альтернативная опция файла конфигурации `.djlintrc` для [#188](https://github.com/Riverside-Healthcare/djLint/issues/188)
54
- :::
55
-
56
- ## 0.7.4
57
-
58
- ::: content
59
-
60
- - Исправления ошибок [#177](https://github.com/Riverside-Healthcare/djLint/issues/177)
61
- :::
62
-
63
- ## 0.7.3
64
-
65
- ::: content
66
-
67
- - Исправления ошибок [#173](https://github.com/Riverside-Healthcare/djLint/issues/173), [#174](https://github.com/Riverside-Healthcare/djLint/issues/174)
68
- - Упал Py3.6 с сайта `pyproject.toml`.
69
- :::
70
-
71
- ## 0.7.2
72
-
73
- ::: content
74
-
75
- - Исправления ошибок [#167](https://github.com/Riverside-Healthcare/djLint/issues/167), [#166](https://github.com/Riverside-Healthcare/djLint/issues/166), [#171](https://github.com/Riverside-Healthcare/djLint/issues/171), [#169](https://github.com/Riverside-Healthcare/djLint/issues/169)
76
- :::
77
-
78
- ## 0.7.1
79
-
80
- ::: content
81
-
82
- - Исправления ошибок [#166](https://github.com/Riverside-Healthcare/djLint/issues/166)
83
- :::
84
-
85
- ## 0.7.0
86
-
87
- ::: content
88
-
89
- - Добавлена настройка для пользовательских HTML-тегов
90
- - Исправления ошибок
91
- :::
92
-
93
- ## 0.6.9
94
-
95
- ::: content
96
-
97
- - Добавлены профили HTML и Angular
98
- - Разрешены некоторые сущности в правиле #H023
99
- - Исправления ошибок
100
- :::
101
-
102
- ## 0.6.8
103
-
104
- ::: content
105
-
106
- - Исправления ошибок
107
- - Обновленные документы
108
- :::
109
-
110
- ## 0.6.7
111
-
112
- ::: content
113
-
114
- - Добавлена опция конфигурации `format_attribute_template_tags` как опция для форматирования тегов шаблонов внутри атрибутов
115
- - Добавлена опция конфигурации `linter_output_format` для настройки порядка переменных сообщений линтера
116
- - Добавлены правила H030 и H031 для проверки мета-тегов
117
- :::
118
-
119
- ## 0.6.6
120
-
121
- ::: content
122
-
123
- - Большие исправления
124
- :::
125
-
126
- ## 0.6.5
127
-
128
- ::: content
129
-
130
- - Обновлены пути вывода, чтобы они были относительными к корню проекта
131
- - Исправления ошибок
132
- :::
133
-
134
- ## 0.6.4
135
-
136
- ::: content
137
-
138
- - Исправления ошибок
139
- :::
140
-
141
- ## 0.6.3
142
-
143
- ::: content
144
-
145
- - Добавлена поддержка тега django `blocktrans`.
146
- - Исправления ошибок
147
- :::
148
-
149
- ## 0.6.2
150
-
151
- ::: content
152
-
153
- - Исправления ошибок
154
- :::
155
-
156
- ## 0.6.1
157
-
158
- ::: content
159
-
160
- - Исправления ошибок
161
- - Сделать правило T028 более строгим с более четким посланием
162
- :::
163
-
164
- ## 0.6.0
165
-
166
- ::: content
167
-
168
- - Добавлено правило T027 для проверки наличия незакрытых тегов в синтаксисе шаблона
169
- - Добавлено правило T028 для проверки отсутствия пробельных тегов в атрибутах
170
- - Добавлено правило H029 для проверки метода формы в нижнем регистре
171
- - Игнорируются теги djagno blocktranslate, которые не имеют "trimmed" от форматера
172
- - Исправления ошибок
173
- :::
174
-
175
- ## 0.5.9a
176
-
177
- ::: content
178
-
179
- - Добавлена поддержка тестирования для python 3.10
180
- - Добавлен крючок предварительного коммита
181
- :::
182
-
183
- ## 0.5.9
184
-
185
- ::: content
186
-
187
- - Добавлена опция `--use-gitignore` для расширения исключений
188
- - Изменено сопоставление исключений по умолчанию
189
- - Исправлены пути исключения окон
190
- - Исправлено форматирование тегов `{%...%}` в атрибутах
191
- - Исправлено форматирование циклов for и вложенных условий в атрибутах
192
- :::
193
-
194
- ## 0.5.8
195
-
196
- ::: content
197
-
198
- - Добавлена опция require_pragma
199
- - Обновлен DJ018 для перехвата `data-src` и `action` на входах
200
- - Исправлен синтаксис игнорирования строк
201
- - Добавлена опция `--lint` в качестве заполнителя для использования по умолчанию
202
- - Исправления ошибок
203
- :::
204
-
205
- ## 0.5.7
206
-
207
- ::: content
208
-
209
- - Исправления ошибок
210
- :::
211
-
212
- ## 0.5.6
213
-
214
- ::: content
215
-
216
- - Добавлено правило H026 для поиска пустых тегов id и class
217
- - Исправления ошибок
218
- :::
219
-
220
- ## 0.5.5
221
-
222
- ::: content
223
-
224
- - Консолидированные настройки и сокращенный код
225
- - Исправления ошибок
226
- :::
227
-
228
- ## 0.5.4
229
-
230
- ::: content
231
-
232
- - Добавлено правило H020 для поиска пустых пар тегов
233
- - Добавлено правило H021 для поиска инлайн-стилей
234
- - Добавлено правило H022 для поиска http-ссылок
235
- - Добавлено правило H023 для поиска ссылок на сущности
236
- - Добавлено правило H024 для поиска типов в скриптах и стилях
237
- - Добавлено правило H025 для проверки сиротских тегов. Благодаря https://stackoverflow.com/a/1736801/10265880
238
- - Улучшено форматирование атрибутов
239
- - Обновлена опция `blank_line_after_tag` для добавления новой строки независимо от местоположения
240
- - Исправлено форматирование тегов django `trans`
241
- - Добавлено форматирование для встроенных стилей
242
- - Добавлено форматирование для условий шаблона внутри атрибутов
243
- - Добавлен srcset как возможное местоположение url в правилах линтера
244
- - Ускорено форматирование
245
- - Особая благодарность [jayvdb](https://github.com/jayvdb>)
246
- :::
247
-
248
- ## 0.5.3
249
-
250
- ::: content
251
-
252
- - Измените stdout для опций `--reformat/check`, чтобы выводить новый html только при использовании stdin в качестве входа
253
- :::
254
-
255
- ## 0.5.2
256
-
257
- ::: content
258
-
259
- - Разделите требование `alt` с H006 на H013
260
- - Добавлен необязательный файл пользовательских правил
261
- - Добавлен `golang` в качестве опции профиля
262
- - Исправлено форматирование игнорируемых блоков, содержащих встроенные комментарии
263
- - Добавлен текст по умолчанию для опций `--indent` и `-e`
264
- - Обновлены правила url для принятия #
265
- - Исправлена кодировка файлов в ОС Windows
266
- - Исправлен регекс для однострочных тегов шаблонов
267
- - Исправление `blank_line_after_tag` для тегов с пробелами в начале строки
268
-
269
- :::
270
-
271
- ## 0.5.1
272
-
273
- ::: content
274
-
275
- - Добавлено правило H019
276
- - Исправлены ошибки в DJ018 и H012
277
- :::
278
-
279
- ## 0.5.0
280
-
281
- ::: content
282
-
283
- - Исправлено несколько ошибок регекс-сопоставления в правилах linter
284
- - Запрещено возвращать ошибки в игнорируемых блоках
285
- - Добавлена возможность игнорировать блок кода из linter/formatter с тегами `{% djlint:off %}...{% djlint:on %}`.
286
- :::
287
-
288
- ## 0.4.9
289
-
290
- ::: content
291
-
292
- - Исправлена ошибка [#35](https://github.com/Riverside-Healthcare/djLint/issues/35)
293
- :::
294
-
295
- ## 0.4.8
296
-
297
- ::: content
298
-
299
- - Исправлена ошибка [#34](https://github.com/Riverside-Healthcare/djLint/issues/34)
300
- :::
301
-
302
- ## 0.4.7
303
-
304
- ::: content
305
-
306
- - Перемещение тега `source` в однострочные теги
307
- :::
308
-
309
- ## 0.4.6
310
-
311
- ::: content
312
-
313
- - Исправлена ошибка [#31](https://github.com/Riverside-Healthcare/djLint/issues/31)
314
- :::
315
-
316
- ## 0.4.5
317
-
318
- ::: content
319
-
320
- - Добавлены лучшие практики в документацию
321
- - Добавлена опция `--profile` для установки правил linter/formatter по умолчанию
322
- - Добавлены правила linter для шаблонов jinja url
323
- :::
324
-
325
- ## 0.4.4
326
-
327
- ::: content
328
-
329
- - Измените конфигурацию отступа со строки на int. `--indent 3`
330
- :::
331
-
332
- ## 0.4.3
333
-
334
- ::: content
335
-
336
- - Добавлена опция cli для интервала между отступами. `--indent=" "`.
337
- :::
338
-
339
- ## 0.4.2
340
-
341
- ::: content
342
-
343
- - Добавлена поддержка дополнительных пробелов после тегов с помощью опции `blank_line_after_tag`.
344
- :::
345
-
346
- ## 0.4.1
347
-
348
- ::: content
349
-
350
- - Добавлена поддержка одновременной обработки нескольких файлов или папок
351
- :::
352
-
353
- ## 0.4.0
354
-
355
- ::: content
356
-
357
- - Исправлено форматирование тегов django `{# ... #}` тегов
358
- - Добавлена поддержка отступов для тегов figcaption, details и summary
359
- - Добавлена поддержка переопределения или расширения списка исключенных путей в `pyproject.toml`.
360
- :::
361
-
362
- ## 0.3.9
363
-
364
- ::: content
365
-
366
- - Обновленная обработка атрибутов
367
- :::
368
-
369
- ## 0.3.8
370
-
371
- ::: content
372
-
373
- - Добавлена поддержка stdin
374
- :::
375
-
376
- ## 0.3.7
377
-
378
- ::: content
379
-
380
- - Исправлено форматирование тегов `small`, `dt` и `dd`.
381
- :::
382
-
383
- ## 0.3.6
384
-
385
- ::: content
386
-
387
- - Добавлена поддержка форматера для открывающих блоков Nunjucks `{%-`
388
- :::
389
-
390
- ## 0.3.5
391
-
392
- ::: content
393
-
394
- - Добавлена поддержка большего количества блоков Django
395
- - Добавлена поддержка пользовательских блоков
396
- - Добавлена поддержка конфигурации в `pyproject.toml`
397
- :::
398
-
399
- ## 0.3.4
400
-
401
- ::: content
402
-
403
- - Исправлен тег Nunjucks без пробелов в формате `-%}`
404
- :::
405
-
406
- ## 0.3.3
407
-
408
- ::: content
409
-
410
- - Позволяет коротким тегам `div` быть однострочными
411
- :::
412
-
413
- ## 0.3.2
414
-
415
- ::: content
416
-
417
- - Исправлено форматирование комментариев в Django
418
- - Игнорирование форматирования текстовой области
419
- :::
420
-
421
- ## 0.3.1
422
-
423
- ::: content
424
-
425
- - Обновлен регекс форматирования атрибутов
426
- - Обновлено правило притирки W010
427
- :::
428
-
429
- ## 0.3.0
430
-
431
- ::: content
432
-
433
- - Изменен код выхода на 1 в случае изменения форматирования
434
- - Добавлена поддержка тегов `asset` в Jinja
435
- :::
436
-
437
- ## 0.2.9
438
-
439
- ::: content
440
-
441
- - Обновленный регекс W018
442
- - Удалены дублирующиеся сообщения lint
443
- - Обновлен E001 для Handlebars
444
- :::
445
-
446
- ## 0.2.8
447
-
448
- ::: content
449
-
450
- - Исправлена ошибка прогресс-бара для старой версии Click
451
- :::
452
-
453
- {% endraw %}
@@ -1,142 +0,0 @@
1
- ---
2
- description: Конфигурация djLint для линтинга и форматирования HTML-шаблонов. Воспользуйтесь многочисленными возможностями форматирования.
3
- title: Конфигурация
4
- keywords: облицовка шаблонов, форматер шаблонов, djLint, HTML, шаблоны, форматер, линтер, использование, configuration
5
- ---
6
-
7
- # {{ "configuration" | i18n }}
8
-
9
- Конфигурация выполняется либо через файл `pyproject.toml` вашего проекта, либо через файл `.djlintrc`. Арги командной строки всегда будут переопределять любые настройки в `pyproject.toml`. Локальные настройки проекта всегда будут иметь приоритет над глобальными конфигурационными файлами.
10
-
11
- ```ini
12
- [tool.djlint]
13
- <config options>
14
- ```
15
-
16
- Формат для `.djlintrc` - `json`.
17
-
18
- ```json
19
- {
20
- "вариант": "значение"
21
- }
22
- ```
23
-
24
- ## Опции
25
-
26
- <div class="field">
27
- <label class="label">Фильтр опций</label>
28
- <div class="control">
29
- <input id="filter" class="input" type="text" placeholder="тип для фильтрации опций..." />
30
-
31
- </div>
32
- </div>
33
- <script>
34
- const hideAll=() => {
35
- (document.querySelectorAll('.option') || []).forEach((x) => {
36
- x.classList.add('is-hidden')
37
- })
38
- }
39
- const showAll=() => {
40
- (document.querySelectorAll('.option') || []).forEach((x) => {
41
- x.classList.remove('is-hidden')
42
- })
43
- }
44
- var search_data = {{ configuration | dump | safe }};
45
- document.querySelector('#filter').addEventListener('input', (event) => {
46
- document.querySelector('#no-matches').classList.add('is-hidden');
47
- if (event.target.value === ''){
48
- showAll()
49
- } else {
50
- var regex = new RegExp(event.target.value.replaceAll(' ', '.*[ _-].*'), 'gmi'),
51
- matches=[]
52
- search_data.forEach((obj) => {
53
- if (JSON.stringify(obj).match(regex)) {
54
- matches.push(obj.name)
55
- }
56
- if(matches.length > 0){
57
- document.querySelector('#no-matches').classList.add('is-hidden');
58
- (document.querySelectorAll('.option') || []).forEach((x) => {
59
- if (matches.includes(x.getAttribute('data-name'))){
60
- x.classList.remove('is-hidden')
61
- }
62
- else {
63
- x.classList.add('is-hidden')
64
- }
65
- })} else {
66
- hideAll();
67
- document.querySelector('#no-matches').classList.remove('is-hidden');
68
- }
69
- })
70
- }
71
- })
72
- </script>
73
- <hr />
74
-
75
- {% for option in configuration | sort(false, false, "name") %}
76
-
77
- <div class="option has-background-white-ter p-3 my-3 is-rounded" data-name="{{option.name}}">
78
- <div class="is-flex is-justify-content-space-between">
79
- <h3 class="title is-3">
80
- <a class="link bn" href="#{{ option.name | slugify }}">∞</a> {{ option.name }}</h3>
81
- <div class="tags is-inline-block">{% for tag in option.tags %}<span class="tag is-family-sans-serif is-link has-text-weight-medium">{{ tag }}</span>{% endfor %}</div></div>
82
-
83
- <p>{{ option.description[locale or "en"] | markdown | safe }}</p>
84
-
85
- <div class="tabs">
86
- <ul>
87
-
88
- {% for flag in option.usage %}
89
-
90
- <li class="{% if loop.index == 1 %}is-active{% endif %}"><a tab="{{- flag.name | slugify -}}-tab">{{ flag.name }}</a></li>
91
-
92
- {% endfor %}
93
-
94
- </ul>
95
- </div>
96
-
97
- <div class="tab-container">
98
- {% for flag in option.usage %}
99
- <div class="tab {% if loop.index == 1 %}is-active{% endif %}"id="{{- flag.name | slugify -}}-tab">
100
-
101
- ```{% if flag.name == "pyproject.toml" %}toml{% else %}json{% endif %}
102
- {{ flag.value | safe }}
103
- ```
104
-
105
- </div>
106
- {% endfor %}
107
-
108
- </div></div>
109
-
110
- {% endfor %}
111
-
112
- <div id="no-matches" class="is-hidden mb-5">Ничего не найдено. Попробуйте другой поиск.</div>
113
-
114
- <script>
115
- document.addEventListener('click', function (e) {
116
- if (
117
- e.target.closest('.tabs li a') &&
118
- e.target.closest('.tabs li a').hasAttribute('tab')
119
- ) {
120
- var tabLinks = document.querySelectorAll('.tabs li.is-active');
121
- for (var l = 0; l < tabLinks.length; l++) {
122
- tabLinks[l].classList.remove('is-active');
123
- }
124
-
125
- var tabs = document.querySelectorAll('.tab.is-active');
126
-
127
- for (var i = 0; i < tabs.length; i++) {
128
- tabs[i].classList.remove('is-active');
129
- }
130
-
131
- var activeBox = document.querySelectorAll('.tab#' + e.target.getAttribute('tab'))
132
- for(var y= 0; y < activeBox.length; y++){
133
- activeBox[y].classList.add('is-active');
134
- }
135
-
136
- var activeTab = document.querySelectorAll('a[tab="' + e.target.getAttribute('tab') + '"]')
137
- for(var y= 0; y < activeTab.length; y++){
138
- activeTab[y].parentElement.classList.add('is-active');
139
- }
140
- }
141
- });
142
- </script>
@@ -1,3 +0,0 @@
1
- {
2
- "layout": "docs_layout.njk"
3
- }
@@ -1,82 +0,0 @@
1
- ---
2
- description: Форматируйте свои HTML-шаблоны с помощью djLint. Быстрый и точный вывод сделает ваши шаблоны блестящими.
3
- title: Использование форматера
4
- keywords: облицовка шаблонов, форматер шаблонов, djLint, HTML, шаблоны, форматер, линтер, использование, Использование форматера
5
- ---
6
-
7
- # Использование форматера
8
-
9
- Форматировщик djLint возьмет неряшливые html-шаблоны и сделает форматирование последовательным и легким!
10
-
11
- Форматировщик - это бета-версия инструмента. Прежде чем вносить изменения, проверьте результат.
12
-
13
- Чтобы просмотреть, что может измениться в форматировании, выполните следующие действия:
14
-
15
- ```bash
16
- djlint . --check
17
- ```
18
-
19
- Для форматирования кода и обновления файлов выполните:
20
-
21
- ```bash
22
- djlint . --reformat
23
-
24
- # как насчет скриптов и стилей форматирования?
25
- djlint . --reformat --format-css --format-js
26
- ```
27
-
28
- <div class="box notification is-info is-light">
29
- <span class="icon is-large"><i class="fas fa-2x fa-circle-arrow-right"></i></span><div class="my-auto ml-3 is-inline-block"><a href="/ru/docs/configuration/">Ознакомьтесь с руководством по настройке, чтобы узнать обо всех возможностях!</a></div>
30
- </div>
31
-
32
- {% admonition
33
- "note",
34
- "Note",
35
- "Переформатирование не работает с длинными json/html, встроенными в данные атрибутов."
36
- %}
37
-
38
- {% admonition
39
- "note",
40
- "Note",
41
- "djLint не является парсером html или синтаксическим валидатором."
42
- %}
43
-
44
- ## Вот пример!
45
-
46
- ### До
47
-
48
- Вот кусок HTML, который отчаянно нуждается во внимании -
49
- {% raw %}
50
-
51
- ```
52
- {% load admin_list %}{% load i18n %}<p class="paginator">{% if pagination_required %}{% for i in page_range %}{% paginator_number cl i %}{% endfor %}{% endif %}{{ cl.result_count }}{% if cl.result_count == 1 %}{{ cl.opts.verbose_name }} {% else %}{{ cl.opts.verbose_name_plural }} {% endif %}{% if show_all_url %} <a href="{{ show_all_url }}" class="showall">{% translate 'Show all' %} </a> {% endif %}{% if cl.formset and cl.result_count %}<input type="submit" name="_save" class="default" value="{% translate 'Save' %}">{% endif %} </p>
53
- ```
54
-
55
- {% endraw %}
56
-
57
- ### После
58
-
59
- Теперь он выглядит немного лучше... мы можем его прочитать :)
60
-
61
- {% raw %}
62
-
63
- ```html
64
- {% load admin_list %} {% load i18n %}
65
- <p class="paginator">
66
- {% if pagination_required %} {% for i in page_range %} {% paginator_number cl
67
- i %} {% endfor %} {% endif %} {{ cl.result_count }} {% if cl.result_count == 1
68
- %} {{ cl.opts.verbose_name }} {% else %} {{ cl.opts.verbose_name_plural }} {%
69
- endif %} {% if show_all_url %}
70
- <a href="{{ show_all_url }}" class="showall"> {% translate 'Show all' %} </a>
71
- {% endif %} {% if cl.formset and cl.result_count %}
72
- <input
73
- type="submit"
74
- name="_save"
75
- class="default"
76
- value="{% translate 'Save' %}"
77
- />
78
- {% endif %}
79
- </p>
80
- ```
81
-
82
- {% endraw %}