集成支持

有多个为 djLint 开发的编辑器集成方案。

Pre-Commit

djLint 可以集成到 pre-commit hook 作为代码检查工具和格式化工具。

该代码仓库为特定的 djLint 配置文件(profile)提供了多个预先配置好的 hook(这些 hook 只是预先设置了 --profile 参数,并告知 pre-commit 需要查找哪些文件扩展名):

  • 使用 djlint 进行代码检查并使用 djlint-reformat 进行代码格式化。
    在未设置 --profile 时会查找 templates/**.html
  • 使用 djlint-djangodjlint-reformat-django
    这时会查找 templates/**.html 并设置 --profile=django
  • 使用 djlint-jinjadjlint-reformat-jinja
    这时会查找 *.j2*.jinja*.jinja2 并设置 --profile=jinja
  • 使用 djlint-nunjucksdjlint-reformat-nunjucks
    这时会查找 *.njk 并设置 --profile=nunjucks
  • 使用 djlint-handlebarsdjlint-reformat-handlebars
    这时会查找 *.hbs 并设置 --profile=handlebars
  • 使用 djlint-golangdjlint-reformat-golang
    这时会查找 *.tmpl 并设置 --profile=golang

请注意,这些预定义的 hook 在它们接受的输入方面有时会过于保守(您的模板可能使用了不同的扩展名),因此 pre-commit 明确允许您覆盖这些预定义的选项。有关额外的配置信息,请参阅 pre-commit 的文档。

默认 Django 示例

repos:
  - repo: https://github.com/djlint/djLint
    rev: v1.37.0
    hooks:
      - id: djlint-reformat-django
      - id: djlint-django

使用 .html 后缀而非 .hbs 后缀的 Handlebars

repos:
  - repo: https://github.com/djlint/djLint
    rev: v1.37.0
    hooks:
      - id: djlint-reformat-handlebars
        files: "\\.html"
        types_or: ["html"]
      - id: djlint-handlebars
        files: "\\.html"
        types_or: ["html"]

您可以使用 files 或 exclude 参数将每个 hook 限制在其自身的目录范围内,从而允许您在同一个代码仓库中支持多种模板语言。

SublimeText 代码检查

djLint 也可用作 SublimeText 的代码检查插件。你可以通过 package-control 安装。

  1. cmd + shift + p
  2. 安装 SublimeLinter
  3. 安装 SublimeLinter-contrib-djlint

确保 djLint 安装在你的全局 python 中,或你的 PATH 变量中。

Visual Studio Code

neovim

djLint 可以在 neovim 中检查或格式化代码。

使用 none-ls 插件。

使用 coc.nvim

使用 efm-langserver

  1. 通过 Mason 安装 efm-langserver 和 djLint::MasonInstall efm djlint
  2. htmldjango 添加到 filetypes
  3. 创建格式化配置:
local djlint = {
    formatCommand = "djlint --reformat --quiet --warn -",
    formatStdin = true,
}
  1. 使用 htmldjango = { djlint } 将语言连接到格式化工具。

示例配置:

local djlint = {
    formatCommand = "djlint --reformat --quiet --warn -",
    formatStdin = true,
}

require("lspconfig").efm.setup({
    filetypes = { "htmldjango" },
    init_options = { documentFormatting = true },
    settings = {
        rootMarkers = { ".git/" },
        languages = {
            htmldjango = { djlint },
        },
    },
})

MegaLinter

djLint 已集成到 MegaLinter 的百余个代码检查工具中。

运行 npx mega-linter-runner --install 并根据提示来安装它。

编辑此页 最后更新 Jun 4, 2026