runtime(compiler): add biome linter
Commit:
https://github.com/vim/vim/commit/d0dd5614dbfedbb270690561b6f72b0a5d5246fb
Author: Konfekt <[email protected]>
Date: Sat Nov 15 10:38:35 2025 +0000
runtime(compiler): add biome linter
closes: https://github.com/vim/vim/issues/18685
Signed-off-by: Konfekt <[email protected]>
Signed-off-by: Christian Brabandt <[email protected]>
diff --git a/.github/MAINTAINERS b/.github/MAINTAINERS
index fd371d6af..5eb9a3560 100644
--- a/.github/MAINTAINERS
+++ b/.github/MAINTAINERS
@@ -45,6 +45,7 @@ runtime/colors/torte.vim
@habamax @romainl @neutaaaaan
runtime/colors/wildcharm.vim @habamax @romainl
@neutaaaaan
runtime/colors/zaibatsu.vim @habamax @romainl
@neutaaaaan
runtime/colors/zellner.vim @habamax @romainl
@neutaaaaan
+runtime/compiler/biome.vim @Konfekt
runtime/compiler/checkstyle.vim @dkearns
runtime/compiler/cm3.vim @dkearns
runtime/compiler/cucumber.vim @tpope
diff --git a/runtime/compiler/biome.vim b/runtime/compiler/biome.vim
new file mode 100644
index 000000000..57a80d4b1
--- /dev/null
+++ b/runtime/compiler/biome.vim
@@ -0,0 +1,23 @@
+" Vim compiler file
+" Compiler: Biome (= linter for JavaScript, TypeScript, JSX, TSX, JSON,
+" JSONC, HTML, Vue, Svelte, Astro, CSS, GraphQL and GritQL files)
+" Maintainer: @Konfekt
+" Last Change: 2025 Nov 12
+if exists("current_compiler") | finish | endif
+let current_compiler = "biome"
+
+let s:cpo_save = &cpo
+set cpo&vim
+
+exe 'CompilerSet makeprg=' .. escape('biome check --linter-enabled=true
--formatter-enabled=false --assist-enabled=false --reporter=github '
+ \ .. get(b:, 'biome_makeprg_params', get(g:, 'biome_makeprg_params',
'')), ' \|"')
+
+CompilerSet errorformat=::%trror%.%#file=%f\,line=%l\,%.%#col=%c\,%.%#::%m
+CompilerSet errorformat+=::%tarning%.%#file=%f\,line=%l\,%.%#col=%c\,%.%#::%m
+CompilerSet errorformat+=::%totice%.%#file=%f\,line=%l\,%.%#col=%c\,%.%#::%m
+CompilerSet errorformat+=%-G\s%#
+CompilerSet errorformat+=%-Gcheck\ %.%#
+CompilerSet errorformat+=%-G%.%#Some\ errors\ were\ emitted\ while\ running\
checks%.
+
+let &cpo = s:cpo_save
+unlet s:cpo_save
diff --git a/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 0044ab85d..669e4f29d 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1281,6 +1281,17 @@ For writing a compiler plugin, see
|write-compiler-plugin|.
Use the |compiler-make| plugin to undo the effect of a compiler plugin.
+BIOME *compiler-biome* *quickfix-biome*
+
+Biome check lints JavaScript, TypeScript, JSX, TSX, JSON, JSONC, HTML, Vue,
+Svelte, Astro, CSS, GraphQL and GritQL files.
+
+Commonly used compiler options can be added to 'makeprg' by setting the
+b/g:biome_makeprg_params variable. For example (global default is ""): >
+
+ let b:biome_makeprg_params = "--diagnostic-level=error --staged"
+
+
CPPCHECK *quickfix-cppcheck* *compiler-cppcheck*
Use g/b:`c_cppcheck_params` to set cppcheck parameters. The global
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 6feb92b2a..4aad80ca1 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -6739,6 +6739,7 @@ compile-changes-7 version7.txt /*compile-changes-7*
compile-changes-8 version8.txt /*compile-changes-8*
compile-changes-9 version9.txt /*compile-changes-9*
compile-changes-9.2 version9.txt /*compile-changes-9.2*
+compiler-biome quickfix.txt /*compiler-biome*
compiler-compaqada ft_ada.txt /*compiler-compaqada*
compiler-cppcheck quickfix.txt /*compiler-cppcheck*
compiler-decada ft_ada.txt /*compiler-decada*
@@ -9932,6 +9933,7 @@ quickfix quickfix.txt /*quickfix*
quickfix-6 version6.txt /*quickfix-6*
quickfix-ID quickfix.txt /*quickfix-ID*
quickfix-buffer quickfix.txt /*quickfix-buffer*
+quickfix-biome quickfix.txt /*quickfix-biome*
quickfix-changedtick quickfix.txt /*quickfix-changedtick*
quickfix-context quickfix.txt /*quickfix-context*
quickfix-cppcheck quickfix.txt /*quickfix-cppcheck*
--
--
You received this message from the "vim_dev" maillist.
Do not top-post! Type your reply below the text you are replying to.
For more information, visit http://www.vim.org/maillist.php
---
You received this message because you are subscribed to the Google Groups
"vim_dev" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion visit
https://groups.google.com/d/msgid/vim_dev/E1vKDmB-004UZF-9E%40256bit.org.