]> git.ipfire.org Git - thirdparty/vim.git/commitdiff
runtime(compiler): add biome linter
authorKonfekt <Konfekt@users.noreply.github.com>
Sat, 15 Nov 2025 10:38:35 +0000 (10:38 +0000)
committerChristian Brabandt <cb@256bit.org>
Sat, 15 Nov 2025 10:39:57 +0000 (10:39 +0000)
closes: #18685

Signed-off-by: Konfekt <Konfekt@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
.github/MAINTAINERS
runtime/compiler/biome.vim [new file with mode: 0644]
runtime/doc/quickfix.txt
runtime/doc/tags

index fd371d6aff47f174f521b47eeaf9bda7e6c39ce4..5eb9a3560719926d443e4f93bfd256b62e21624f 100644 (file)
@@ -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 (file)
index 0000000..57a80d4
--- /dev/null
@@ -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
index 0044ab85d51b71a7aee503d31d1d06033109762f..669e4f29d19f64ffe1c6b6533cbb0a5a16907aa6 100644 (file)
@@ -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
index 6feb92b2ae24a732441209feee9ce3fabea11bb2..4aad80ca1a50e768a9b810e80151701a6969c174 100644 (file)
@@ -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*