@@ -161,6 +161,8 @@ use nix
161161### Haskell
162162
163163- [ cabal-fmt] ( https://github.com/phadej/cabal-fmt )
164+ - [ cabal-gild] ( https://github.com/tfausak/cabal-gild )
165+ - [ cabal2nix] ( https://github.com/NixOS/cabal2nix )
164166- [ fourmolu] ( https://github.com/parsonsmatt/fourmolu )
165167- [ hindent] ( https://github.com/chrisdone/hindent )
166168- [ hlint] ( https://github.com/ndmitchell/hlint )
@@ -186,11 +188,41 @@ clang-format = {
186188Otherwise, the default internal list is used which includes everything that
187189clang-format supports.
188190
191+ ### Ansible
192+
193+ - [ ansible-lint] ( https://github.com/ansible/ansible-lint )
194+
195+ ### C/C++
196+
197+ - [ cmake-format] ( https://cmake-format.readthedocs.io/en/latest/ )
198+
189199### Clojure
190200
191201- [ cljfmt] ( https://github.com/weavejester/cljfmt )
192202- [ zprint] ( https://github.com/kkinnear/zprint )
193203
204+ ### Crystal
205+
206+ - [ crystal] ( https://crystal-lang.org/reference/man/crystal#crystal-tool-format )
207+
208+ ### Dart
209+
210+ - [ dart analyze] ( https://dart.dev/tools/dart-analyze )
211+ - [ dart format] ( https://dart.dev/tools/dart-format )
212+
213+ ### Dhall
214+
215+ - [ dhall format] ( https://github.com/dhall-lang/dhall-lang )
216+
217+ ### Dockerfile
218+
219+ - [ hadolint] ( https://github.com/hadolint/hadolint )
220+
221+ ### Editorconfig
222+
223+ - [ eclint] ( https://github.com/jednano/eclint )
224+ - [ editorconfig-checker] ( https://github.com/editorconfig-checker/editorconfig-checker )
225+
194226### Elm
195227
196228- [ elm-format] ( https://github.com/avh4/elm-format )
@@ -204,24 +236,96 @@ clang-format supports.
204236- [ mix-format] ( https://hexdocs.pm/mix/main/Mix.Tasks.Format.html )
205237- [ mix-test] ( https://hexdocs.pm/mix/1.13/Mix.Tasks.Test.html )
206238
239+ ### Fortran
240+
241+ - [ fprettify] ( https://github.com/pseewald/fprettify )
242+
243+ ### Git
244+
245+ - [ annex] ( https://git-annex.branchable.com/ )
246+ - [ check-merge-conflicts] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_merge_conflict.py )
247+ - [ commitizen] ( https://github.com/commitizen-tools/commitizen )
248+ - [ convco] ( https://github.com/convco/convco )
249+ - [ forbid-new-submodules] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/forbid_new_submodules.py )
250+ - [ gitlint] ( https://github.com/jorisroovers/gitlint )
251+ - [ gptcommit] ( https://github.com/zurawiki/gptcommit )
252+ - [ no-commit-to-branch] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/no_commit_to_branch.py )
253+
254+ ### Golang
255+
256+ - gofmt: Runs ` go fmt `
257+ - [ golangci-lint] ( https://golangci-lint.run/ )
258+ - [ golines] ( https://github.com/segmentio/golines )
259+ - gotest: Runs ` go test `
260+ - [ govet] ( https://pkg.go.dev/cmd/vet )
261+ - [ revive] ( https://github.com/mgechev/revive )
262+ - [ staticcheck] ( https://github.com/dominikh/go-tools )
263+
264+ ### HTML
265+
266+ - [ html-tidy] ( https://github.com/htacg/tidy-html5 )
267+
268+ ### JSON
269+
270+ - [ check-json] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_json.py )
271+ - [ pretty-format-json] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/pretty_format_json.py )
272+
273+ ### Julia
274+
275+ - [ JuiaFormatter.jl] ( https://github.com/domluna/JuliaFormatter.jl )
276+
277+ ### LaTeX
278+
279+ - [ chktex] ( https://www.nongnu.org/chktex/ )
280+ - [ lacheck] ( https://ctan.org/pkg/lacheck )
281+ - [ latexindent] ( https://github.com/cmhughes/latexindent.pl )
282+
283+ ### Link checker
284+
285+ - [ lychee] ( https://github.com/lycheeverse/lychee )
286+ - [ mkdocs-linkcheck] ( https://github.com/byrnereese/linkchecker-mkdocs )
287+
288+ ### Lua
289+
290+ - [ luacheck] ( https://github.com/mpeterv/luacheck )
291+ - [ lua-ls] ( https://github.com/LuaLS/lua-language-server )
292+ - [ selene] ( https://github.com/Kampfkarren/selene )
293+ - [ stylua] ( https://github.com/JohnnyMorganz/StyLua )
294+
295+ ### Markdown
296+
297+ - [ markdownlint] ( https://github.com/DavidAnson/markdownlint )
298+ - [ mdformat] ( https://github.com/hukkin/mdformat )
299+ - [ mdl] ( https://github.com/markdownlint/markdownlint/ )
300+ - [ mdsh] ( https://zimbatm.github.io/mdsh/ )
301+
302+ ### JavaScript/TypeScript
303+
304+ - [ biome] ( https://biomejs.dev/ )
305+ - [ denofmt] ( https://docs.deno.com/runtime/reference/cli/fmt/ )
306+ - [ denolint] ( https://docs.deno.com/runtime/reference/cli/lint/ )
307+ - [ eslint] ( https://github.com/eslint/eslint )
308+ - rome: (alias to the biome hook)
309+
207310### OCaml
208311
209312- [ dune-fmt] ( https://dune.build/ )
210313- [ dune-opam-sync] ( https://dune.build/ )
211314- [ ocp-indent] ( http://www.typerex.org/ocp-indent.html )
212315- [ opam-lint] ( https://opam.ocaml.org/ )
213316
214- ### Purescript
317+ ### PHP
215318
216- - [ purty] ( https://gitlab.com/joneshf/purty )
319+ - [ phpcbf] ( https://github.com/squizlabs/PHP_CodeSniffer )
320+ - [ php-cs-fixer] ( https://github.com/PHP-CS-Fixer/PHP-CS-Fixer )
321+ - [ phpcs] ( https://github.com/squizlabs/PHP_CodeSniffer )
322+ - [ phpstan] ( https://github.com/phpstan/phpstan )
323+ - [ psalm] ( https://github.com/vimeo/psalm )
217324
218- ### JavaScript/TypeScript
325+ ### Purescript
219326
220- - [ biome] ( https://biomejs.dev/ )
221- - denofmt: Runs ` deno fmt `
222- - denolint: Runs ` deno lint `
223- - [ eslint] ( https://github.com/eslint/eslint )
224- - rome: (alias to the biome hook)
327+ - [ purs-tidy] ( https://github.com/natefaubion/purescript-tidy )
328+ - [ purty] ( https://gitlab.com/joneshf/purty )
225329
226330### Python
227331
@@ -232,45 +336,32 @@ clang-format supports.
232336- [ check-python] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_ast.py )
233337- [ fix-encoding-pragma] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/fix_encoding_pragma.py )
234338- [ flake8] ( https://github.com/PyCQA/flake8 )
339+ - [ flynt] ( https://github.com/ikamensh/flynt )
235340- [ isort] ( https://github.com/PyCQA/isort )
236341- [ mypy] ( https://github.com/python/mypy )
237342- [ name-tests-test] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/tests_should_end_in_test.py )
343+ - [ poetry-check] ( https://python-poetry.org/docs/pre-commit-hooks ) : Run ` poetry check ` .
344+ - [ poetry-lock] ( https://python-poetry.org/docs/pre-commit-hooks ) : Run ` poetry lock ` .
238345- [ pylint] ( https://github.com/PyCQA/pylint )
239346- [ pyright] ( https://github.com/microsoft/pyright )
240347- [ python-debug-statements] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/debug_statement_hook.py )
241- - [ poetry-check] ( https://python-poetry.org/docs/pre-commit-hooks ) : Run ` poetry check ` .
242- - [ poetry-lock] ( https://python-poetry.org/docs/pre-commit-hooks ) : Run ` poetry lock ` .
243348- [ pyupgrade] ( https://github.com/asottile/pyupgrade )
244349- [ ruff] ( https://github.com/charliermarsh/ruff )
245350- [ ruff-format] ( https://github.com/charliermarsh/ruff )
351+ - [ single-quoted-strings] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/string_fixer.py )
246352- [ sort-requirements-txt] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/requirements_txt_fixer.py )
247353
248- ### PHP
249-
250- - [ phpcbf] ( https://github.com/squizlabs/PHP_CodeSniffer )
251- - [ php-cs-fixer] ( https://github.com/PHP-CS-Fixer/PHP-CS-Fixer )
252- - [ phpcs] ( https://github.com/squizlabs/PHP_CodeSniffer )
253- - [ phpstan] ( https://github.com/phpstan/phpstan )
254- - [ psalm] ( https://github.com/vimeo/psalm )
255-
256354### Rust
257355
258- - cargo-check: Runs ` cargo check `
356+ - [ cargo-check] ( https://doc.rust-lang.org/ cargo/commands/cargo- check.html )
259357- [ clippy] ( https://github.com/rust-lang/rust-clippy )
260358- [ rustfmt] ( https://github.com/rust-lang/rustfmt )
261359
262- ### Golang
263-
264- - gofmt: Runs ` go fmt `
265- - [ golangci-lint] ( https://golangci-lint.run/ )
266- - gotest: Runs ` go test `
267- - [ govet] ( https://pkg.go.dev/cmd/vet )
268- - [ revive] ( https://github.com/mgechev/revive )
269- - [ staticcheck] ( https://github.com/dominikh/go-tools )
270-
271- ### Julia
360+ ### Secret detection
272361
273- - [ JuiaFormatter.jl] ( https://github.com/domluna/JuliaFormatter.jl )
362+ - [ pre-commit-ensure-sops] ( https://github.com/yuvipanda/pre-commit-hook-ensure-sops )
363+ - [ ripsecrets] ( https://github.com/sirwart/ripsecrets )
364+ - [ trufflehog] ( https://github.com/trufflesecurity/trufflehog ) : Secret scanner
274365
275366### Shell
276367
@@ -279,82 +370,36 @@ clang-format supports.
279370- [ shellcheck] ( https://github.com/koalaman/shellcheck )
280371- [ shfmt] ( https://github.com/mvdan/sh )
281372
282- ### LaTeX
283-
284- - [ chktex] ( https://www.nongnu.org/chktex/ )
285- - [ lacheck] ( https://ctan.org/pkg/lacheck )
286- - [ latexindent] ( https://github.com/cmhughes/latexindent.pl )
287-
288- ### Lua
289-
290- - [ luacheck] ( https://github.com/mpeterv/luacheck )
291- - [ lua-ls] ( https://github.com/LuaLS/lua-language-server )
292- - [ selene] ( https://github.com/Kampfkarren/selene )
293- - [ stylua] ( https://github.com/JohnnyMorganz/StyLua )
294-
295- ### HTML
296-
297- - [ html-tidy] ( https://github.com/htacg/tidy-html5 )
298-
299- ### Markdown
373+ ### Spell checker
300374
301- - [ markdownlint] ( https://github.com/DavidAnson/markdownlint )
302- - [ mdl] ( https://github.com/markdownlint/markdownlint/ )
303- - [ mdsh] ( https://zimbatm.github.io/mdsh/ )
375+ - [ cspell] ( https://cspell.org/ )
376+ - [ hunspell] ( https://github.com/hunspell/hunspell )
377+ - [ proselint] ( https://github.com/amperser/proselint )
378+ - [ typos] ( https://github.com/crate-ci/typos )
379+ - [ vale] ( https://github.com/errata-ai/vale )
304380
305381### Terraform
306382
307383- ` terraform-format ` : built-in formatter (using [ OpenTofu] ( https://opentofu.org/ ) 's [ ` fmt ` ] ( https://opentofu.org/docs/cli/commands/fmt/ ) )
308384- ` terraform-validate ` : built-in validator (using [ OpenTofu] ( https://opentofu.org/ ) 's [ ` validate ` ] ( https://opentofu.org/docs/cli/commands/validate/ ) )
309385- [ tflint] ( https://github.com/terraform-linters/tflint )
310386
311- ### YAML
312-
313- - [ check-yaml] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_yaml.py )
314- - [ sort-simple-yaml] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/sort_simple_yaml.py )
315- - [ yamlfmt] ( https://github.com/google/yamlfmt )
316- - [ yamllint] ( https://github.com/adrienverge/yamllint )
317-
318387### TOML
319388
320389- [ check-toml] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_toml.py )
321390- [ taplo fmt] ( https://github.com/tamasfe/taplo )
322391
323- ### JSON
324-
325- - [ check-json] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_json.py )
326- - [ pretty-format-json] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/pretty_format_json.py )
327-
328392### Typst
329393
330394- [ typstfmt] ( https://github.com/astrale-sharp/typstfmt )
331395- [ typstyle] ( https://github.com/Enter-tainer/typstyle )
332396
333- ### Fortran
334-
335- - [ fprettify] ( https://github.com/pseewald/fprettify )
336-
337- ### Spell checker
338-
339- - [ cspell] ( https://cspell.org/ )
340- - [ hunspell] ( https://github.com/hunspell/hunspell )
341- - [ typos] ( https://github.com/crate-ci/typos )
342-
343- ### Link checker
344-
345- - [ lychee] ( https://github.com/lycheeverse/lychee )
346- - [ mkdocs-linkcheck] ( https://github.com/byrnereese/linkchecker-mkdocs )
347-
348- ### Git
397+ ### YAML
349398
350- - [ annex] ( https://git-annex.branchable.com/ )
351- - [ check-merge-conflicts] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_merge_conflict.py )
352- - [ commitizen] ( https://github.com/commitizen-tools/commitizen )
353- - [ convco] ( https://github.com/convco/convco )
354- - [ forbid-new-submodules] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/forbid_new_submodules.py )
355- - [ gitlint] ( https://github.com/jorisroovers/gitlint )
356- - [ gptcommit] ( https://github.com/zurawiki/gptcommit )
357- - [ no-commit-to-branch] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/no_commit_to_branch.py )
399+ - [ check-yaml] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_yaml.py )
400+ - [ sort-simple-yaml] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/sort_simple_yaml.py )
401+ - [ yamlfmt] ( https://github.com/google/yamlfmt )
402+ - [ yamllint] ( https://github.com/adrienverge/yamllint )
358403
359404### Various other hooks
360405
@@ -367,26 +412,23 @@ clang-format supports.
367412- [ check-symlinks] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_symlinks.py )
368413- [ check-vcs-permalinks] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_vcs_permalinks.py )
369414- [ check-xml] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/check_xml.py )
370- - [ cmake-format ] ( https://cmake-format.readthedocs.io/en/latest / )
371- - [ crystal ] ( https://crystal-lang.org/reference/man/crystal#crystal-tool-format )
415+ - [ circleci ] ( https://circleci.com / )
416+ - [ conform ] ( https://github.com/edmundhung/conform )
372417- [ detect-aws-credentials] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/detect_aws_credentials.py )
373418- [ detect-private-keys] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/detect_private_key.py )
374- - ` dhall format ` : built-in formatter
375- - [ editorconfig-checker] ( https://github.com/editorconfig-checker/editorconfig-checker )
376419- [ end-of-file-fixer] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/end_of_file_fixer.py )
377420- [ fix-byte-order-marker] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/fix_byte_order_marker.py )
378- - [ hadolint] ( https://github.com/hadolint/hadolint )
379421- [ headache] ( https://github.com/frama-c/headache )
380422- [ mixed-line-endings] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/mixed_line_ending.py )
381423- [ mkdocs-linkcheck] ( https://github.com/byrnereese/linkchecker-mkdocs )
382424- [ openapi-spec-validator] ( https://github.com/python-openapi/openapi-spec-validator )
383425- [ prettier] ( https://prettier.io )
426+ - [ reuse] ( https://github.com/fsfe/reuse-tool )
384427- [ sort-file-contents] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/file_contents_sorter.py )
385428- [ tagref] ( https://github.com/stepchowfun/tagref )
386429- [ topiary] ( https://github.com/tweag/topiary )
387430- [ treefmt] ( https://github.com/numtide/treefmt )
388431- [ trim-trailing-whitespace] ( https://github.com/pre-commit/pre-commit-hooks/blob/main/pre_commit_hooks/trailing_whitespace_fixer.py )
389- - [ trufflehog] ( https://github.com/trufflesecurity/trufflehog ) : Secret scanner
390432
391433### Custom hooks
392434
0 commit comments