From c25dae0e23034b795fbc319df14b17b95c85a29d Mon Sep 17 00:00:00 2001 From: Ivar Fatland Date: Sat, 13 Jun 2026 13:22:26 +0200 Subject: [PATCH] vendor all default compiler plugins --- nvim/.config/nvim/compiler/ant.vim | 35 +++ nvim/.config/nvim/compiler/bash.vim | 12 + nvim/.config/nvim/compiler/bcc.vim | 16 ++ nvim/.config/nvim/compiler/bdf.vim | 23 ++ nvim/.config/nvim/compiler/biome.vim | 23 ++ nvim/.config/nvim/compiler/cabal.vim | 39 +++ nvim/.config/nvim/compiler/cargo.vim | 48 ++++ nvim/.config/nvim/compiler/checkstyle.vim | 25 ++ nvim/.config/nvim/compiler/cm3.vim | 22 ++ nvim/.config/nvim/compiler/context.vim | 52 ++++ nvim/.config/nvim/compiler/cppcheck.vim | 40 +++ nvim/.config/nvim/compiler/cs.vim | 23 ++ nvim/.config/nvim/compiler/csslint.vim | 13 + nvim/.config/nvim/compiler/cucumber.vim | 26 ++ nvim/.config/nvim/compiler/dart.vim | 22 ++ nvim/.config/nvim/compiler/dart2js.vim | 24 ++ nvim/.config/nvim/compiler/dart2native.vim | 24 ++ nvim/.config/nvim/compiler/dartanalyser.vim | 19 ++ nvim/.config/nvim/compiler/dartdevc.vim | 24 ++ nvim/.config/nvim/compiler/dartdoc.vim | 22 ++ nvim/.config/nvim/compiler/dartfmt.vim | 21 ++ nvim/.config/nvim/compiler/decada.vim | 52 ++++ nvim/.config/nvim/compiler/dot.vim | 15 ++ nvim/.config/nvim/compiler/dotnet.vim | 36 +++ nvim/.config/nvim/compiler/erlang.vim | 14 + nvim/.config/nvim/compiler/eruby.vim | 35 +++ nvim/.config/nvim/compiler/eslint.vim | 12 + nvim/.config/nvim/compiler/fbc.vim | 23 ++ nvim/.config/nvim/compiler/fortran_F.vim | 24 ++ nvim/.config/nvim/compiler/fortran_cv.vim | 27 ++ nvim/.config/nvim/compiler/fortran_elf90.vim | 30 +++ nvim/.config/nvim/compiler/fortran_g77.vim | 45 ++++ nvim/.config/nvim/compiler/fortran_lf95.vim | 24 ++ nvim/.config/nvim/compiler/fpc.vim | 14 + nvim/.config/nvim/compiler/g95.vim | 25 ++ nvim/.config/nvim/compiler/gawk.vim | 30 +++ nvim/.config/nvim/compiler/gcc.vim | 46 ++++ nvim/.config/nvim/compiler/gfortran.vim | 24 ++ nvim/.config/nvim/compiler/ghc.vim | 26 ++ nvim/.config/nvim/compiler/gjs.vim | 21 ++ nvim/.config/nvim/compiler/gleam_build.vim | 25 ++ nvim/.config/nvim/compiler/gm2.vim | 22 ++ nvim/.config/nvim/compiler/gnat.vim | 69 +++++ nvim/.config/nvim/compiler/go.vim | 26 ++ nvim/.config/nvim/compiler/groff.vim | 45 ++++ nvim/.config/nvim/compiler/haml.vim | 25 ++ nvim/.config/nvim/compiler/hare.vim | 29 +++ nvim/.config/nvim/compiler/hp_acc.vim | 35 +++ nvim/.config/nvim/compiler/icc.vim | 15 ++ nvim/.config/nvim/compiler/icon.vim | 29 +++ nvim/.config/nvim/compiler/ifort.vim | 24 ++ nvim/.config/nvim/compiler/intel.vim | 23 ++ nvim/.config/nvim/compiler/irix5_c.vim | 23 ++ nvim/.config/nvim/compiler/irix5_cpp.vim | 23 ++ nvim/.config/nvim/compiler/javac.vim | 25 ++ nvim/.config/nvim/compiler/jest.vim | 28 ++ nvim/.config/nvim/compiler/jikes.vim | 15 ++ nvim/.config/nvim/compiler/jjs.vim | 20 ++ nvim/.config/nvim/compiler/jq.vim | 25 ++ nvim/.config/nvim/compiler/jshint.vim | 21 ++ nvim/.config/nvim/compiler/jsonlint.vim | 21 ++ nvim/.config/nvim/compiler/just.vim | 23 ++ nvim/.config/nvim/compiler/make.vim | 13 + nvim/.config/nvim/compiler/maven.vim | 72 ++++++ nvim/.config/nvim/compiler/mcs.vim | 32 +++ nvim/.config/nvim/compiler/mips_c.vim | 23 ++ nvim/.config/nvim/compiler/mipspro_c89.vim | 24 ++ nvim/.config/nvim/compiler/mipspro_cpp.vim | 23 ++ nvim/.config/nvim/compiler/modelsim_vcom.vim | 19 ++ nvim/.config/nvim/compiler/msbuild.vim | 18 ++ nvim/.config/nvim/compiler/msvc.vim | 15 ++ nvim/.config/nvim/compiler/mypy.vim | 19 ++ nvim/.config/nvim/compiler/neato.vim | 15 ++ nvim/.config/nvim/compiler/ocaml.vim | 57 +++++ nvim/.config/nvim/compiler/onsgmls.vim | 21 ++ nvim/.config/nvim/compiler/pandoc.vim | 63 +++++ nvim/.config/nvim/compiler/pbx.vim | 17 ++ nvim/.config/nvim/compiler/perl.vim | 48 ++++ nvim/.config/nvim/compiler/perlcritic.vim | 24 ++ nvim/.config/nvim/compiler/php.vim | 22 ++ nvim/.config/nvim/compiler/phpstan.vim | 12 + nvim/.config/nvim/compiler/pip_compile.vim | 43 ++++ nvim/.config/nvim/compiler/podchecker.vim | 25 ++ nvim/.config/nvim/compiler/powershell.vim | 89 +++++++ nvim/.config/nvim/compiler/pylint.vim | 22 ++ nvim/.config/nvim/compiler/pyright.vim | 25 ++ nvim/.config/nvim/compiler/pytest.vim | 103 ++++++++ nvim/.config/nvim/compiler/pyunit.vim | 13 + nvim/.config/nvim/compiler/raco.vim | 11 + nvim/.config/nvim/compiler/racomake.vim | 11 + nvim/.config/nvim/compiler/racosetup.vim | 11 + nvim/.config/nvim/compiler/racotest.vim | 11 + nvim/.config/nvim/compiler/rake.vim | 36 +++ nvim/.config/nvim/compiler/rhino.vim | 26 ++ nvim/.config/nvim/compiler/rime_deployer.vim | 33 +++ nvim/.config/nvim/compiler/rspec.vim | 32 +++ nvim/.config/nvim/compiler/rst.vim | 29 +++ nvim/.config/nvim/compiler/rubocop.vim | 19 ++ nvim/.config/nvim/compiler/ruby.vim | 41 +++ nvim/.config/nvim/compiler/rubyunit.vim | 32 +++ nvim/.config/nvim/compiler/ruff.vim | 23 ++ nvim/.config/nvim/compiler/rustc.vim | 53 ++++ nvim/.config/nvim/compiler/sass.vim | 27 ++ nvim/.config/nvim/compiler/scdoc.vim | 14 + nvim/.config/nvim/compiler/se.vim | 26 ++ nvim/.config/nvim/compiler/shellcheck.vim | 21 ++ nvim/.config/nvim/compiler/sml.vim | 24 ++ nvim/.config/nvim/compiler/spectral.vim | 14 + nvim/.config/nvim/compiler/splint.vim | 68 +++++ nvim/.config/nvim/compiler/spotbugs.vim | 254 +++++++++++++++++++ nvim/.config/nvim/compiler/stack.vim | 37 +++ nvim/.config/nvim/compiler/standard.vim | 13 + nvim/.config/nvim/compiler/stylelint.vim | 22 ++ nvim/.config/nvim/compiler/svelte-check.vim | 21 ++ nvim/.config/nvim/compiler/tcl.vim | 13 + nvim/.config/nvim/compiler/tex.vim | 70 +++++ nvim/.config/nvim/compiler/tidy.vim | 22 ++ nvim/.config/nvim/compiler/tombi.vim | 69 +++++ nvim/.config/nvim/compiler/ts-node.vim | 25 ++ nvim/.config/nvim/compiler/tsc.vim | 23 ++ nvim/.config/nvim/compiler/ty.vim | 20 ++ nvim/.config/nvim/compiler/typedoc.vim | 24 ++ nvim/.config/nvim/compiler/typst.vim | 17 ++ nvim/.config/nvim/compiler/vimdoc.vim | 23 ++ nvim/.config/nvim/compiler/xbuild.vim | 19 ++ nvim/.config/nvim/compiler/xmllint.vim | 24 ++ nvim/.config/nvim/compiler/xmlwf.vim | 20 ++ nvim/.config/nvim/compiler/xo.vim | 22 ++ nvim/.config/nvim/compiler/yamllint.vim | 16 ++ nvim/.config/nvim/compiler/zig.vim | 24 ++ nvim/.config/nvim/compiler/zig_build.vim | 25 ++ nvim/.config/nvim/compiler/zig_build_exe.vim | 21 ++ nvim/.config/nvim/compiler/zig_test.vim | 21 ++ nvim/.config/nvim/compiler/zsh.vim | 19 ++ 134 files changed, 3950 insertions(+) create mode 100644 nvim/.config/nvim/compiler/ant.vim create mode 100644 nvim/.config/nvim/compiler/bash.vim create mode 100644 nvim/.config/nvim/compiler/bcc.vim create mode 100644 nvim/.config/nvim/compiler/bdf.vim create mode 100644 nvim/.config/nvim/compiler/biome.vim create mode 100644 nvim/.config/nvim/compiler/cabal.vim create mode 100644 nvim/.config/nvim/compiler/cargo.vim create mode 100644 nvim/.config/nvim/compiler/checkstyle.vim create mode 100644 nvim/.config/nvim/compiler/cm3.vim create mode 100644 nvim/.config/nvim/compiler/context.vim create mode 100644 nvim/.config/nvim/compiler/cppcheck.vim create mode 100644 nvim/.config/nvim/compiler/cs.vim create mode 100644 nvim/.config/nvim/compiler/csslint.vim create mode 100644 nvim/.config/nvim/compiler/cucumber.vim create mode 100644 nvim/.config/nvim/compiler/dart.vim create mode 100644 nvim/.config/nvim/compiler/dart2js.vim create mode 100644 nvim/.config/nvim/compiler/dart2native.vim create mode 100644 nvim/.config/nvim/compiler/dartanalyser.vim create mode 100644 nvim/.config/nvim/compiler/dartdevc.vim create mode 100644 nvim/.config/nvim/compiler/dartdoc.vim create mode 100644 nvim/.config/nvim/compiler/dartfmt.vim create mode 100644 nvim/.config/nvim/compiler/decada.vim create mode 100644 nvim/.config/nvim/compiler/dot.vim create mode 100644 nvim/.config/nvim/compiler/dotnet.vim create mode 100644 nvim/.config/nvim/compiler/erlang.vim create mode 100644 nvim/.config/nvim/compiler/eruby.vim create mode 100644 nvim/.config/nvim/compiler/eslint.vim create mode 100644 nvim/.config/nvim/compiler/fbc.vim create mode 100644 nvim/.config/nvim/compiler/fortran_F.vim create mode 100644 nvim/.config/nvim/compiler/fortran_cv.vim create mode 100644 nvim/.config/nvim/compiler/fortran_elf90.vim create mode 100644 nvim/.config/nvim/compiler/fortran_g77.vim create mode 100644 nvim/.config/nvim/compiler/fortran_lf95.vim create mode 100644 nvim/.config/nvim/compiler/fpc.vim create mode 100644 nvim/.config/nvim/compiler/g95.vim create mode 100644 nvim/.config/nvim/compiler/gawk.vim create mode 100644 nvim/.config/nvim/compiler/gcc.vim create mode 100644 nvim/.config/nvim/compiler/gfortran.vim create mode 100644 nvim/.config/nvim/compiler/ghc.vim create mode 100644 nvim/.config/nvim/compiler/gjs.vim create mode 100644 nvim/.config/nvim/compiler/gleam_build.vim create mode 100644 nvim/.config/nvim/compiler/gm2.vim create mode 100644 nvim/.config/nvim/compiler/gnat.vim create mode 100644 nvim/.config/nvim/compiler/go.vim create mode 100644 nvim/.config/nvim/compiler/groff.vim create mode 100644 nvim/.config/nvim/compiler/haml.vim create mode 100644 nvim/.config/nvim/compiler/hare.vim create mode 100644 nvim/.config/nvim/compiler/hp_acc.vim create mode 100644 nvim/.config/nvim/compiler/icc.vim create mode 100644 nvim/.config/nvim/compiler/icon.vim create mode 100644 nvim/.config/nvim/compiler/ifort.vim create mode 100644 nvim/.config/nvim/compiler/intel.vim create mode 100644 nvim/.config/nvim/compiler/irix5_c.vim create mode 100644 nvim/.config/nvim/compiler/irix5_cpp.vim create mode 100644 nvim/.config/nvim/compiler/javac.vim create mode 100644 nvim/.config/nvim/compiler/jest.vim create mode 100644 nvim/.config/nvim/compiler/jikes.vim create mode 100644 nvim/.config/nvim/compiler/jjs.vim create mode 100644 nvim/.config/nvim/compiler/jq.vim create mode 100644 nvim/.config/nvim/compiler/jshint.vim create mode 100644 nvim/.config/nvim/compiler/jsonlint.vim create mode 100644 nvim/.config/nvim/compiler/just.vim create mode 100644 nvim/.config/nvim/compiler/make.vim create mode 100644 nvim/.config/nvim/compiler/maven.vim create mode 100644 nvim/.config/nvim/compiler/mcs.vim create mode 100644 nvim/.config/nvim/compiler/mips_c.vim create mode 100644 nvim/.config/nvim/compiler/mipspro_c89.vim create mode 100644 nvim/.config/nvim/compiler/mipspro_cpp.vim create mode 100644 nvim/.config/nvim/compiler/modelsim_vcom.vim create mode 100644 nvim/.config/nvim/compiler/msbuild.vim create mode 100644 nvim/.config/nvim/compiler/msvc.vim create mode 100644 nvim/.config/nvim/compiler/mypy.vim create mode 100644 nvim/.config/nvim/compiler/neato.vim create mode 100644 nvim/.config/nvim/compiler/ocaml.vim create mode 100644 nvim/.config/nvim/compiler/onsgmls.vim create mode 100644 nvim/.config/nvim/compiler/pandoc.vim create mode 100644 nvim/.config/nvim/compiler/pbx.vim create mode 100644 nvim/.config/nvim/compiler/perl.vim create mode 100644 nvim/.config/nvim/compiler/perlcritic.vim create mode 100644 nvim/.config/nvim/compiler/php.vim create mode 100644 nvim/.config/nvim/compiler/phpstan.vim create mode 100644 nvim/.config/nvim/compiler/pip_compile.vim create mode 100644 nvim/.config/nvim/compiler/podchecker.vim create mode 100644 nvim/.config/nvim/compiler/powershell.vim create mode 100644 nvim/.config/nvim/compiler/pylint.vim create mode 100644 nvim/.config/nvim/compiler/pyright.vim create mode 100644 nvim/.config/nvim/compiler/pytest.vim create mode 100644 nvim/.config/nvim/compiler/pyunit.vim create mode 100644 nvim/.config/nvim/compiler/raco.vim create mode 100644 nvim/.config/nvim/compiler/racomake.vim create mode 100644 nvim/.config/nvim/compiler/racosetup.vim create mode 100644 nvim/.config/nvim/compiler/racotest.vim create mode 100644 nvim/.config/nvim/compiler/rake.vim create mode 100644 nvim/.config/nvim/compiler/rhino.vim create mode 100644 nvim/.config/nvim/compiler/rime_deployer.vim create mode 100644 nvim/.config/nvim/compiler/rspec.vim create mode 100644 nvim/.config/nvim/compiler/rst.vim create mode 100644 nvim/.config/nvim/compiler/rubocop.vim create mode 100644 nvim/.config/nvim/compiler/ruby.vim create mode 100644 nvim/.config/nvim/compiler/rubyunit.vim create mode 100644 nvim/.config/nvim/compiler/ruff.vim create mode 100644 nvim/.config/nvim/compiler/rustc.vim create mode 100644 nvim/.config/nvim/compiler/sass.vim create mode 100644 nvim/.config/nvim/compiler/scdoc.vim create mode 100644 nvim/.config/nvim/compiler/se.vim create mode 100644 nvim/.config/nvim/compiler/shellcheck.vim create mode 100644 nvim/.config/nvim/compiler/sml.vim create mode 100644 nvim/.config/nvim/compiler/spectral.vim create mode 100644 nvim/.config/nvim/compiler/splint.vim create mode 100644 nvim/.config/nvim/compiler/spotbugs.vim create mode 100644 nvim/.config/nvim/compiler/stack.vim create mode 100644 nvim/.config/nvim/compiler/standard.vim create mode 100644 nvim/.config/nvim/compiler/stylelint.vim create mode 100644 nvim/.config/nvim/compiler/svelte-check.vim create mode 100644 nvim/.config/nvim/compiler/tcl.vim create mode 100644 nvim/.config/nvim/compiler/tex.vim create mode 100644 nvim/.config/nvim/compiler/tidy.vim create mode 100644 nvim/.config/nvim/compiler/tombi.vim create mode 100644 nvim/.config/nvim/compiler/ts-node.vim create mode 100644 nvim/.config/nvim/compiler/tsc.vim create mode 100644 nvim/.config/nvim/compiler/ty.vim create mode 100644 nvim/.config/nvim/compiler/typedoc.vim create mode 100644 nvim/.config/nvim/compiler/typst.vim create mode 100644 nvim/.config/nvim/compiler/vimdoc.vim create mode 100644 nvim/.config/nvim/compiler/xbuild.vim create mode 100644 nvim/.config/nvim/compiler/xmllint.vim create mode 100644 nvim/.config/nvim/compiler/xmlwf.vim create mode 100644 nvim/.config/nvim/compiler/xo.vim create mode 100644 nvim/.config/nvim/compiler/yamllint.vim create mode 100644 nvim/.config/nvim/compiler/zig.vim create mode 100644 nvim/.config/nvim/compiler/zig_build.vim create mode 100644 nvim/.config/nvim/compiler/zig_build_exe.vim create mode 100644 nvim/.config/nvim/compiler/zig_test.vim create mode 100644 nvim/.config/nvim/compiler/zsh.vim diff --git a/nvim/.config/nvim/compiler/ant.vim b/nvim/.config/nvim/compiler/ant.vim new file mode 100644 index 0000000..6219b01 --- /dev/null +++ b/nvim/.config/nvim/compiler/ant.vim @@ -0,0 +1,35 @@ +" Vim Compiler File +" Compiler: ant +" Maintainer: Johannes Zellner +" Last Change: Mi, 13 Apr 2005 22:50:07 CEST +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "ant" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=ant + +" first line: +" ant with jikes +E, which assumes the following +" two property lines in your 'build.xml': +" +" +" +" +" second line: +" ant with javac +" +" note that this will work also for tasks like [wtkbuild] +" +CompilerSet errorformat=\ %#[%.%#]\ %#%f:%l:%v:%*\\d:%*\\d:\ %t%[%^:]%#:%m, + \%A\ %#[%.%#]\ %f:%l:\ %m,%-Z\ %#[%.%#]\ %p^,%C\ %#[%.%#]\ %#%m + +" ,%-C%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/bash.vim b/nvim/.config/nvim/compiler/bash.vim new file mode 100644 index 0000000..cbd76ae --- /dev/null +++ b/nvim/.config/nvim/compiler/bash.vim @@ -0,0 +1,12 @@ +" Vim compiler file +" Compiler: Bash Syntax Checker +" Maintainer: @konfekt +" Last Change: 2024 Dec 27 + +if exists("current_compiler") + finish +endif +let current_compiler = "bash" + +CompilerSet makeprg=bash\ -n +CompilerSet errorformat=%f:\ line\ %l:\ %m diff --git a/nvim/.config/nvim/compiler/bcc.vim b/nvim/.config/nvim/compiler/bcc.vim new file mode 100644 index 0000000..2d9d4fb --- /dev/null +++ b/nvim/.config/nvim/compiler/bcc.vim @@ -0,0 +1,16 @@ +" Vim compiler file +" Compiler: bcc - Borland C +" Maintainer: Emile van Raaij (eraaij@xs4all.nl) +" Last Change: 2004 Mar 27 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "bcc" + +" A workable errorformat for Borland C +CompilerSet errorformat=%*[^0-9]%n\ %f\ %l:\ %m + +" default make +CompilerSet makeprg=make diff --git a/nvim/.config/nvim/compiler/bdf.vim b/nvim/.config/nvim/compiler/bdf.vim new file mode 100644 index 0000000..2aaa93b --- /dev/null +++ b/nvim/.config/nvim/compiler/bdf.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: BDF to PCF Conversion +" Previous Maintainer: Nikolai Weibull +" Contributors: Enno Nagel +" Last Change: 2024 Mar 29 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "bdf" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=bdftopcf\ $* +CompilerSet errorformat=%ABDF\ %trror\ on\ line\ %l:\ %m, + \%-Z%p^, + \%Cbdftopcf:\ bdf\ input\\,\ %f\\,\ corrupt, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/biome.vim b/nvim/.config/nvim/compiler/biome.vim new file mode 100644 index 0000000..57a80d4 --- /dev/null +++ b/nvim/.config/nvim/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/nvim/.config/nvim/compiler/cabal.vim b/nvim/.config/nvim/compiler/cabal.vim new file mode 100644 index 0000000..02d4d9b --- /dev/null +++ b/nvim/.config/nvim/compiler/cabal.vim @@ -0,0 +1,39 @@ +" Vim compiler file +" Compiler: Haskell Cabal Build file +" Maintainer: Mateo Gjika <@mateoxh> + +if exists('current_compiler') + finish +endif + +let current_compiler = 'cabal' + +let s:save_cpo = &cpo +set cpo&vim + +CompilerSet makeprg=cabal\ build + +CompilerSet errorformat= + \%W%f:(%l\\,%c)-(%e\\,%k):\ %tarning:\ [%.%#], + \%W%f:(%l\\,%c)-(%e\\,%k):\ %tarning:%m, + \%W%f:(%l\\,%c)-(%e\\,%k):\ %tarning:, + \%W%f:%l:%c-%k:\ %tarning:\ [%.%#], + \%W%f:%l:%c-%k:\ %tarning:%m, + \%W%f:%l:%c-%k:\ %tarning:, + \%W%f:%l:%c:\ %tarning:\ [%.%#], + \%W%f:%l:%c:\ %tarning:%m, + \%W%f:%l:%c:\ %tarning:, + \%E%f:(%l\\,%c)-(%e\\,%k):\ %trror:\ [%.%#], + \%E%f:(%l\\,%c)-(%e\\,%k):\ %trror:%m, + \%E%f:(%l\\,%c)-(%e\\,%k):\ %trror:, + \%E%f:%l:%c-%k:\ %trror:\ [%.%#], + \%E%f:%l:%c-%k:\ %trror:%m, + \%E%f:%l:%c-%k:\ %trror:, + \%E%f:%l:%c:\ %trror:\ [%.%#], + \%E%f:%l:%c:\ %trror:%m, + \%E%f:%l:%c:\ %trror:, + \%Z\ %\\+\|%.%#, + \%C%m + +let &cpo = s:save_cpo +unlet s:save_cpo diff --git a/nvim/.config/nvim/compiler/cargo.vim b/nvim/.config/nvim/compiler/cargo.vim new file mode 100644 index 0000000..bbea45d --- /dev/null +++ b/nvim/.config/nvim/compiler/cargo.vim @@ -0,0 +1,48 @@ +" Vim compiler file +" Compiler: Cargo Compiler +" Maintainer: Damien Radtke +" Latest Revision: 2023-09-11 +" 2024 Apr 05 by The Vim Project (removed :CompilerSet definition) +" For bugs, patches and license go to https://github.com/rust-lang/rust.vim + +if exists('current_compiler') + finish +endif +runtime compiler/rustc.vim +let current_compiler = "cargo" + +" vint: -ProhibitAbbreviationOption +let s:save_cpo = &cpo +set cpo&vim +" vint: +ProhibitAbbreviationOption + +if exists('g:cargo_makeprg_params') + execute 'CompilerSet makeprg=cargo\ '.escape(g:cargo_makeprg_params, ' \|"').'\ $*' +else + CompilerSet makeprg=cargo\ $* +endif + +augroup RustCargoQuickFixHooks + autocmd! + autocmd QuickFixCmdPre make call cargo#quickfix#CmdPre() + autocmd QuickFixCmdPost make call cargo#quickfix#CmdPost() +augroup END + +" Ignore general cargo progress messages +CompilerSet errorformat+= + \%-G%\\s%#Downloading%.%#, + \%-G%\\s%#Checking%.%#, + \%-G%\\s%#Compiling%.%#, + \%-G%\\s%#Finished%.%#, + \%-G%\\s%#error:\ Could\ not\ compile\ %.%#, + \%-G%\\s%#To\ learn\ more\\,%.%#, + \%-G%\\s%#For\ more\ information\ about\ this\ error\\,%.%#, + \%-Gnote:\ Run\ with\ \`RUST_BACKTRACE=%.%#, + \%.%#panicked\ at\ \\'%m\\'\\,\ %f:%l:%c + +" vint: -ProhibitAbbreviationOption +let &cpo = s:save_cpo +unlet s:save_cpo +" vint: +ProhibitAbbreviationOption + +" vim: set et sw=4 sts=4 ts=8: diff --git a/nvim/.config/nvim/compiler/checkstyle.vim b/nvim/.config/nvim/compiler/checkstyle.vim new file mode 100644 index 0000000..3c17ee4 --- /dev/null +++ b/nvim/.config/nvim/compiler/checkstyle.vim @@ -0,0 +1,25 @@ +" Vim compiler file +" Compiler: Checkstyle +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "checkstyle" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=java\ com.puppycrawl.tools.checkstyle.Main\ -f\ plain\ -c\ /sun_checks.xml +" CompilerSet makeprg=java\ -jar\ checkstyle-X.XX-all.jar\ -f\ plain\ -c\ /sun_checks.xml + +CompilerSet makeprg=checkstyle\ -f\ plain +CompilerSet errorformat=[%tRROR]\ %f:%l:%v:\ %m, + \[%tARN]\ %f:%l:%v:\ %m, + \[%tRROR]\ %f:%l:\ %m, + \[%tARN]\ %f:%l:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/cm3.vim b/nvim/.config/nvim/compiler/cm3.vim new file mode 100644 index 0000000..0ec3608 --- /dev/null +++ b/nvim/.config/nvim/compiler/cm3.vim @@ -0,0 +1,22 @@ +" Vim compiler file +" Compiler: Critical Mass Modula-3 Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "cm3" + +let s:cpo_save = &cpo +set cpo&vim + +" TODO: better handling of Quake errors +CompilerSet makeprg=cm3 +CompilerSet errorformat=%D---\ building\ in\ %f\ ---, + \%W\"%f\"\\,\ line\ %l:\ warning:\ %m, + \%E\"%f\"\\,\ line\ %l:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/context.vim b/nvim/.config/nvim/compiler/context.vim new file mode 100644 index 0000000..77f0eef --- /dev/null +++ b/nvim/.config/nvim/compiler/context.vim @@ -0,0 +1,52 @@ +" Vim compiler file +" Compiler: ConTeXt typesetting engine +" Maintainer: Nicola Vitacolonna +" Last Change: 2016 Oct 21 + +if exists("current_compiler") + finish +endif +let s:keepcpo= &cpo +set cpo&vim + +" If makefile exists and we are not asked to ignore it, we use standard make +" (do not redefine makeprg) +if get(b:, 'context_ignore_makefile', get(g:, 'context_ignore_makefile', 0)) || + \ (!filereadable('Makefile') && !filereadable('makefile')) + let current_compiler = 'context' + " The following assumes that the current working directory is set to the + " directory of the file to be typeset + let s:makeprg = get(b:, 'context_mtxrun', get(g:, 'context_mtxrun', 'mtxrun')) + \ . ' --script context --autogenerate --nonstopmode --synctex=' + \ . (get(b:, 'context_synctex', get(g:, 'context_synctex', 0)) ? '1' : '0') + \ . ' ' . get(b:, 'context_extra_options', get(g:, 'context_extra_options', '')) + \ . ' ' . shellescape(expand('%:p:t')) + " CompilerSet makeprg=context + execute 'CompilerSet makeprg=' .. escape(s:makeprg, ' ') +else + let current_compiler = 'make' +endif + +let b:context_errorformat = '' + \ . '%-Popen source%.%#> %f,' + \ . '%-Qclose source%.%#> %f,' + \ . "%-Popen source%.%#name '%f'," + \ . "%-Qclose source%.%#name '%f'," + \ . '%Etex %trror%.%#mp error on line %l in file %f:%.%#,' + \ . 'tex %trror%.%#error on line %l in file %f: %m,' + \ . '%Elua %trror%.%#error on line %l in file %f:,' + \ . '%+Emetapost %#> error: %#,' + \ . '! error: %#%m,' + \ . '%-C %#,' + \ . '%C! %m,' + \ . '%Z[ctxlua]%m,' + \ . '%+C<*> %.%#,' + \ . '%-C%.%#,' + \ . '%Z...%m,' + \ . '%-Zno-error,' + \ . '%-G%.%#' " Skip remaining lines + +execute 'CompilerSet errorformat=' . escape(b:context_errorformat, ' ') + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/cppcheck.vim b/nvim/.config/nvim/compiler/cppcheck.vim new file mode 100644 index 0000000..17f79f4 --- /dev/null +++ b/nvim/.config/nvim/compiler/cppcheck.vim @@ -0,0 +1,40 @@ +" vim compiler file +" Compiler: cppcheck (C++ static checker) +" Maintainer: Vincent B. (twinside@free.fr) +" Last Change: 2025 Nov 06 by @Konfekt + +if exists("current_compiler") | finish | endif +let current_compiler = "cppcheck" + +let s:cpo_save = &cpo +set cpo&vim + +let s:slash = has('win32')? '\' : '/' + +if !exists('g:c_cppcheck_params') + let g:c_cppcheck_params = '--verbose --force --inline-suppr' + \ ..' '..'--enable=warning,style,performance,portability,information,missingInclude' + \ ..' '..(executable('getconf') ? '-j' .. systemlist('getconf _NPROCESSORS_ONLN')[0] : '') + let s:undo_compiler = 'unlet! g:c_cppcheck_params' +endif + +exe 'CompilerSet makeprg=' .. escape('cppcheck --quiet' + \ ..' --template="{file}:{line}:{column}: {severity}: [{id}] {message} {callstack}"' + \ ..' '..get(b:, 'c_cppcheck_params', get(g:, 'c_cppcheck_params', (&filetype ==# 'cpp' ? ' --language=c++' : ''))) + \ ..' '..get(b:, 'c_cppcheck_includes', get(g:, 'c_cppcheck_includes', + \ (filereadable('compile_commands.json') ? '--project=compile_commands.json' : + \ (!empty(glob('*'..s:slash..'compile_commands.json', 1, 1)) ? '--project='..glob('*'..s:slash..'compile_commands.json', 1, 1)[0] : + \ (empty(&path) ? '' : '-I')..join(map(filter(split(&path, ','), 'isdirectory(v:val)'),'shellescape(v:val)'), ' -I'))))), + \ ' \|"') + +CompilerSet errorformat= + \%f:%l:%c:\ %tarning:\ %m, + \%f:%l:%c:\ %trror:\ %m, + \%f:%l:%c:\ %tnformation:\ %m, + \%f:%l:%c:\ %m, + \%.%#\ :\ [%f:%l]\ %m + +exe get(s:, 'undo_compiler', '') + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/cs.vim b/nvim/.config/nvim/compiler/cs.vim new file mode 100644 index 0000000..123dff8 --- /dev/null +++ b/nvim/.config/nvim/compiler/cs.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: Microsoft Visual Studio C# +" Maintainer: Yichao Zhou (broken.zhou@gmail.com) +" Previous Maintainer: Joseph H. Yao (hyao@sina.com) +" Last Change: Jul 22, 2019 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "cs" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat& +CompilerSet errorformat+=%f(%l\\,%v):\ %t%*[^:]:\ %m, + \%trror%*[^:]:\ %m, + \%tarning%*[^:]:\ %m + +CompilerSet makeprg=csc\ %:S + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/csslint.vim b/nvim/.config/nvim/compiler/csslint.vim new file mode 100644 index 0000000..608cc74 --- /dev/null +++ b/nvim/.config/nvim/compiler/csslint.vim @@ -0,0 +1,13 @@ +" Vim compiler file +" Compiler: csslint for CSS +" Maintainer: Daniel Moch +" Last Change: 2016 May 21 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "csslint" + +CompilerSet makeprg=csslint\ --format=compact +CompilerSet errorformat=%-G,%-G%f:\ lint\ free!,%f:\ line\ %l\\,\ col\ %c\\,\ %trror\ -\ %m,%f:\ line\ %l\\,\ col\ %c\\,\ %tarning\ -\ %m,%f:\ line\ %l\\,\ col\ %c\\,\ %m diff --git a/nvim/.config/nvim/compiler/cucumber.vim b/nvim/.config/nvim/compiler/cucumber.vim new file mode 100644 index 0000000..8089a5e --- /dev/null +++ b/nvim/.config/nvim/compiler/cucumber.vim @@ -0,0 +1,26 @@ +" Vim compiler file +" Compiler: Cucumber +" Maintainer: Tim Pope +" Last Change: 2016 Aug 29 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "cucumber" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=cucumber + +CompilerSet errorformat= + \%W%m\ (Cucumber::Undefined), + \%E%m\ (%\\S%#), + \%Z%f:%l, + \%Z%f:%l:%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim:set sw=2 sts=2: diff --git a/nvim/.config/nvim/compiler/dart.vim b/nvim/.config/nvim/compiler/dart.vim new file mode 100644 index 0000000..9577236 --- /dev/null +++ b/nvim/.config/nvim/compiler/dart.vim @@ -0,0 +1,22 @@ +" Vim compiler file +" Compiler: Dart VM +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "dart" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=dart +CompilerSet errorformat=%E%f:%l:%c:\ Error:\ %m, + \%CTry\ %.%#, + \%Z\ %#^%\\+, + \%C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/dart2js.vim b/nvim/.config/nvim/compiler/dart2js.vim new file mode 100644 index 0000000..a05dead --- /dev/null +++ b/nvim/.config/nvim/compiler/dart2js.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: Dart to JavaScript Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "dart2js" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=dart2js +CompilerSet errorformat=%E%f:%l:%c:, + \%-GError:\ Compilation\ failed., + \%CError:\ %m, + \%Z\ %#^%\\+, + \%C%.%#, + \%trror:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/dart2native.vim b/nvim/.config/nvim/compiler/dart2native.vim new file mode 100644 index 0000000..6604fc4 --- /dev/null +++ b/nvim/.config/nvim/compiler/dart2native.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: Dart to Native Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "dart2native" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=dart2native +CompilerSet errorformat=%E%f:%l:%c:\ Error:\ %m, + \%CTry\ %.%#, + \%Z\ %#^%\\+, + \%Z%$, + \%C%.%#, + \%E%f:\ %trror:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/dartanalyser.vim b/nvim/.config/nvim/compiler/dartanalyser.vim new file mode 100644 index 0000000..48a976a --- /dev/null +++ b/nvim/.config/nvim/compiler/dartanalyser.vim @@ -0,0 +1,19 @@ +" Vim compiler file +" Compiler: Dart Analyzer +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "dartanalyzer" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=dartanalyzer\ --format\ machine +CompilerSet errorformat=%t%\\w%\\+\|%\\w%\\+\|%\\w%\\+\|%f\|%l\|%c\|%\\d%\\+\|%m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/dartdevc.vim b/nvim/.config/nvim/compiler/dartdevc.vim new file mode 100644 index 0000000..16e4ed7 --- /dev/null +++ b/nvim/.config/nvim/compiler/dartdevc.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: Dart Development Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "dartdevc" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=dartdevc +CompilerSet errorformat=%E%f:%l:%c:\ Error:\ %m, + \%CTry\ %.%#, + \%Z\ %#^%\\+, + \%Z%$, + \%C%.%#, + \%E%f:\ %trror:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/dartdoc.vim b/nvim/.config/nvim/compiler/dartdoc.vim new file mode 100644 index 0000000..78f0d24 --- /dev/null +++ b/nvim/.config/nvim/compiler/dartdoc.vim @@ -0,0 +1,22 @@ +" Vim compiler file +" Compiler: Dart Documentation Generator +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "dartdoc" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=dartdoc +CompilerSet errorformat=\ \ %tarning:\ %m, + \\ \ %trror:\ %m, + \%+EGeneration\ failed:\ %m, + \%+ISuccess!\ Docs\ generated\ into\ %f, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/dartfmt.vim b/nvim/.config/nvim/compiler/dartfmt.vim new file mode 100644 index 0000000..d204df8 --- /dev/null +++ b/nvim/.config/nvim/compiler/dartfmt.vim @@ -0,0 +1,21 @@ +" Vim compiler file +" Compiler: Dart Formatter +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "dartfmt" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=dartfmt +CompilerSet errorformat=%Eline\ %l\\,\ column\ %c\ of\ %f:\ %m, + \%Z\ %\\{3}│\ %\\+^%\\+, + \%C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/decada.vim b/nvim/.config/nvim/compiler/decada.vim new file mode 100644 index 0000000..11b0cb4 --- /dev/null +++ b/nvim/.config/nvim/compiler/decada.vim @@ -0,0 +1,52 @@ +"------------------------------------------------------------------------------ +" Description: Vim Ada/Dec Ada compiler file +" Language: Ada (Dec Ada) +" $Id: decada.vim 887 2008-07-08 14:29:01Z krischik $ +" Copyright: Copyright (C) 2006 Martin Krischik +" Maintainer: Martin Krischik +" $Author: krischik $ +" $Date: 2008-07-08 16:29:01 +0200 (Di, 08 Jul 2008) $ +" Version: 4.6 +" $Revision: 887 $ +" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/compiler/decada.vim $ +" History: 21.07.2006 MK New Dec Ada +" 15.10.2006 MK Bram's suggestion for runtime integration +" 08.09.2006 MK Correct double load protection. +" Help Page: compiler-decada +"------------------------------------------------------------------------------ +" Last Change: 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if (exists("current_compiler") && current_compiler == "decada") || version < 700 + finish +endif +let s:keepcpo= &cpo +set cpo&vim + +let current_compiler = "decada" + +if !exists("g:decada") + let g:decada = decada#New () + + call ada#Map_Menu ( + \'Dec Ada.Build', + \'', + \'call decada.Make ()') + + call g:decada.Set_Session () +endif + +execute "CompilerSet makeprg=" . escape (g:decada.Make_Command, ' ') +execute "CompilerSet errorformat=" . escape (g:decada.Error_Format, ' ') + +let &cpo = s:keepcpo +unlet s:keepcpo + +finish " 1}}} + +"------------------------------------------------------------------------------ +" Copyright (C) 2006 Martin Krischik +" +" Vim is Charityware - see ":help license" or uganda.txt for licence details. +"------------------------------------------------------------------------------ +" vim: textwidth=78 wrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab +" vim: foldmethod=marker diff --git a/nvim/.config/nvim/compiler/dot.vim b/nvim/.config/nvim/compiler/dot.vim new file mode 100644 index 0000000..145411e --- /dev/null +++ b/nvim/.config/nvim/compiler/dot.vim @@ -0,0 +1,15 @@ +" Vim compiler file +" Compiler: ATT dot +" Maintainer: Marcos Macedo +" Last Change: 2024 March 21 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "dot" + +CompilerSet makeprg=dot\ -T$*\ \"%:p\"\ -o\ \"%:p:r.$*\" +" matches error messages as below skipping final part after line number +" Error: ./file.dot: syntax error in line 1 near 'rankdir' +CompilerSet errorformat=%trror:\ %f:\ %m\ in\ line\ %l%.%# diff --git a/nvim/.config/nvim/compiler/dotnet.vim b/nvim/.config/nvim/compiler/dotnet.vim new file mode 100644 index 0000000..1290357 --- /dev/null +++ b/nvim/.config/nvim/compiler/dotnet.vim @@ -0,0 +1,36 @@ +" Vim compiler file +" Compiler: dotnet build (.NET CLI) +" Maintainer: Nick Jensen +" Last Change: 2022-12-06 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" License: Vim (see :h license) +" Repository: https://github.com/nickspoons/vim-cs + +if exists("current_compiler") + finish +endif +let current_compiler = "dotnet" + +let s:cpo_save = &cpo +set cpo&vim + +if get(g:, "dotnet_errors_only", v:false) + CompilerSet makeprg=dotnet\ build\ -nologo + \\ -consoleloggerparameters:NoSummary + \\ -consoleloggerparameters:ErrorsOnly +else + CompilerSet makeprg=dotnet\ build\ -nologo\ -consoleloggerparameters:NoSummary +endif + +if get(g:, "dotnet_show_project_file", v:true) + CompilerSet errorformat=%E%f(%l\\,%c):\ %trror\ %m, + \%W%f(%l\\,%c):\ %tarning\ %m, + \%-G%.%# +else + CompilerSet errorformat=%E%f(%l\\,%c):\ %trror\ %m\ [%.%#], + \%W%f(%l\\,%c):\ %tarning\ %m\ [%.%#], + \%-G%.%# +endif + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/erlang.vim b/nvim/.config/nvim/compiler/erlang.vim new file mode 100644 index 0000000..b30b5c1 --- /dev/null +++ b/nvim/.config/nvim/compiler/erlang.vim @@ -0,0 +1,14 @@ +" Vim compiler file +" Compiler: Erlang +" Maintainer: Dmitry Vasiliev +" Last Change: 2019 Jul 23 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "erlang" + +CompilerSet makeprg=erlc\ -Wall\ %:S + +CompilerSet errorformat=%f:%l:\ %m diff --git a/nvim/.config/nvim/compiler/eruby.vim b/nvim/.config/nvim/compiler/eruby.vim new file mode 100644 index 0000000..2f9f9aa --- /dev/null +++ b/nvim/.config/nvim/compiler/eruby.vim @@ -0,0 +1,35 @@ +" Vim compiler file +" Language: eRuby +" Maintainer: Doug Kearns +" URL: https://github.com/vim-ruby/vim-ruby +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "eruby" + +let s:cpo_save = &cpo +set cpo-=C + +if exists("eruby_compiler") && eruby_compiler == "eruby" + CompilerSet makeprg=eruby +else + CompilerSet makeprg=erb +endif + +CompilerSet errorformat= + \eruby:\ %f:%l:%m, + \%+E%f:%l:\ parse\ error, + \%W%f:%l:\ warning:\ %m, + \%E%f:%l:in\ %*[^:]:\ %m, + \%E%f:%l:\ %m, + \%-C%\t%\\d%#:%#\ %#from\ %f:%l:in\ %.%#, + \%-Z%\t%\\d%#:%#\ %#from\ %f:%l, + \%-Z%p^, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim: nowrap sw=2 sts=2 ts=8: diff --git a/nvim/.config/nvim/compiler/eslint.vim b/nvim/.config/nvim/compiler/eslint.vim new file mode 100644 index 0000000..0414817 --- /dev/null +++ b/nvim/.config/nvim/compiler/eslint.vim @@ -0,0 +1,12 @@ +" Vim compiler file +" Compiler: ESLint for JavaScript +" Maintainer: Romain Lafourcade +" Last Change: 2024 Nov 30 + +if exists("current_compiler") + finish +endif +let current_compiler = "eslint" + +CompilerSet makeprg=npx\ eslint\ --format\ stylish +CompilerSet errorformat=%-P%f,\%\\s%#%l:%c\ %#\ %trror\ \ %m,\%\\s%#%l:%c\ %#\ %tarning\ \ %m,\%-Q,\%-G%.%#, diff --git a/nvim/.config/nvim/compiler/fbc.vim b/nvim/.config/nvim/compiler/fbc.vim new file mode 100644 index 0000000..afedc32 --- /dev/null +++ b/nvim/.config/nvim/compiler/fbc.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: FreeBASIC Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "fbc" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=fbc +CompilerSet errorformat=%-G%.%#Too\ many\ errors\\,\ exiting, + \%f(%l)\ %tarning\ %n(%\\d%\\+):\ %m, + \%E%f(%l)\ error\ %n:\ %m, + \%-Z%p^, + \%-C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/fortran_F.vim b/nvim/.config/nvim/compiler/fortran_F.vim new file mode 100644 index 0000000..7f6ec81 --- /dev/null +++ b/nvim/.config/nvim/compiler/fortran_F.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: Fortran Company/NAGWare F compiler +" URL: http://www.unb.ca/chem/ajit/compiler/fortran_F.vim +" Maintainer: Ajit J. Thakkar (ajit AT unb.ca); +" Version: 0.2 +" Last Change: 2004 Mar 27 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "fortran_F" + +let s:cposet=&cpoptions +set cpoptions-=C + +CompilerSet errorformat=%trror:\ %f\\,\ line\ %l:%m, + \%tarning:\ %f\\,\ line\ %l:%m, + \%tatal\ Error:\ %f\\,\ line\ %l:%m, + \%-G%.%# +CompilerSet makeprg=F + +let &cpoptions=s:cposet +unlet s:cposet diff --git a/nvim/.config/nvim/compiler/fortran_cv.vim b/nvim/.config/nvim/compiler/fortran_cv.vim new file mode 100644 index 0000000..ea46d99 --- /dev/null +++ b/nvim/.config/nvim/compiler/fortran_cv.vim @@ -0,0 +1,27 @@ +" Vim compiler file +" Compiler: Compaq Visual Fortran +" Maintainer: Joh.-G. Simon (johann-guenter.simon@linde-le.com) +" Last Change: 11/05/2002 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "fortran_cv" + +let s:cposet = &cpoptions +set cpoptions-=C + +" A workable errorformat for Compaq Visual Fortran +CompilerSet errorformat= + \%E%f(%l)\ :\ Error:%m, + \%W%f(%l)\ :\ Warning:%m, + \%-Z%p%^%.%#, + \%-G%.%#, +" Compiler call +CompilerSet makeprg=df\ /nologo\ /noobj\ /c\ %:S +" Visual fortran defaults to printing output on stderr +" Adjust option shellpipe accordingly + +let &cpoptions = s:cposet +unlet s:cposet diff --git a/nvim/.config/nvim/compiler/fortran_elf90.vim b/nvim/.config/nvim/compiler/fortran_elf90.vim new file mode 100644 index 0000000..903701e --- /dev/null +++ b/nvim/.config/nvim/compiler/fortran_elf90.vim @@ -0,0 +1,30 @@ +" Vim compiler file +" Compiler: Essential Lahey Fortran 90 +" Probably also works for Lahey Fortran 90 +" URL: http://www.unb.ca/chem/ajit/compiler/fortran_elf90.vim +" Maintainer: Ajit J. Thakkar (ajit AT unb.ca); +" Version: 0.2 +" Last Change: 2004 Mar 27 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "fortran_elf90" + +let s:cposet=&cpoptions +set cpoptions-=C + +CompilerSet errorformat=\%ALine\ %l\\,\ file\ %f, + \%C%tARNING\ --%m, + \%C%tATAL\ --%m, + \%C%tBORT\ --%m, + \%+C%\\l%.%#\., + \%C%p\|, + \%C%.%#, + \%Z%$, + \%-G%.%# +CompilerSet makeprg=elf90 + +let &cpoptions=s:cposet +unlet s:cposet diff --git a/nvim/.config/nvim/compiler/fortran_g77.vim b/nvim/.config/nvim/compiler/fortran_g77.vim new file mode 100644 index 0000000..dcac2a7 --- /dev/null +++ b/nvim/.config/nvim/compiler/fortran_g77.vim @@ -0,0 +1,45 @@ +" Vim compiler file +" Compiler: g77 (GNU Fortran) +" Maintainer: Ralf Wildenhues +" Last Change: $Date: 2004/06/13 18:17:36 $ +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" $Revision: 1.1 $ + +if exists("current_compiler") + finish +endif +let current_compiler = "fortran_g77" + +let s:cpo_save = &cpo +set cpo-=C + +" Note: The errorformat assumes GNU make + +" sample multiline errors (besides gcc backend one-liners): +" gev.f:14: +" parameter UPLO = 'Upper-triangle' +" ^ +" Unsupported VXT statement at (^) +" gev.f:6: +" integer desca( * ), descb( * ) +" 1 +" gev.f:19: (continued): +" end subroutine +" 2 +" Invalid declaration of or reference to symbol `desca' at (2) [initially seen at (1)] + +CompilerSet errorformat= + \%Omake:\ %r, + \%f:%l:\ warning:\ %m, + \%A%f:%l:\ (continued):, + \%W%f:%l:\ warning:, + \%A%f:%l:\ , + \%-C\ \ \ %p%*[0123456789^]%.%#, + \%-C\ \ \ %.%#, + \%D%*\\a[%*\\d]:\ Entering\ directory\ `%f', + \%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f', + \%DMaking\ %*\\a\ in\ %f, + \%Z%m + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/fortran_lf95.vim b/nvim/.config/nvim/compiler/fortran_lf95.vim new file mode 100644 index 0000000..2cb7158 --- /dev/null +++ b/nvim/.config/nvim/compiler/fortran_lf95.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: Lahey/Fujitsu Fortran 95 +" URL: http://www.unb.ca/chem/ajit/compiler/fortran_lf95.vim +" Maintainer: Ajit J. Thakkar (ajit AT unb.ca); +" Version: 0.2 +" Last Change: 2004 Mar 27 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "fortran_lf95" + +let s:cposet=&cpoptions +set cpoptions-=C + +CompilerSet errorformat=\ %#%n-%t:\ \"%f\"\\,\ line\ %l:%m, + \Error\ LINK\.%n:%m, + \Warning\ LINK\.%n:%m, + \%-G%.%# +CompilerSet makeprg=lf95 + +let &cpoptions=s:cposet +unlet s:cposet diff --git a/nvim/.config/nvim/compiler/fpc.vim b/nvim/.config/nvim/compiler/fpc.vim new file mode 100644 index 0000000..0d321ab --- /dev/null +++ b/nvim/.config/nvim/compiler/fpc.vim @@ -0,0 +1,14 @@ +" Vim compiler file +" Compiler: FPC 2.1 +" Maintainer: Jaroslaw Blasiok +" Last Change: 2005 October 07 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "fpc" + +" NOTE: compiler must be run with -vb to write whole source path, not only file +" name. +CompilerSet errorformat=%f(%l\\,%c)\ %m diff --git a/nvim/.config/nvim/compiler/g95.vim b/nvim/.config/nvim/compiler/g95.vim new file mode 100644 index 0000000..e0b3a68 --- /dev/null +++ b/nvim/.config/nvim/compiler/g95.vim @@ -0,0 +1,25 @@ +" Compiler: G95 +" Maintainer: H Xu +" Version: 0.1.3 +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" Homepage: http://www.vim.org/scripts/script.php?script_id=3492 +" https://bitbucket.org/xuhdev/compiler-g95.vim +" License: Same as Vim + +if exists('current_compiler') + finish +endif +let current_compiler = 'g95' +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat= + \%AIn\ file\ %f:%l, + \%-C%p1, + \%-Z%trror:\ %m, + \%-Z%tarning\ (%n):\ %m, + \%-C%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/gawk.vim b/nvim/.config/nvim/compiler/gawk.vim new file mode 100644 index 0000000..f2a360d --- /dev/null +++ b/nvim/.config/nvim/compiler/gawk.vim @@ -0,0 +1,30 @@ +" Vim compiler file +" Compiler: GNU Awk +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "gawk" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=gawk +CompilerSet errorformat=%Z%.awk:\ %f:%l:\ %p^\ %m, + \%Eg%\\=awk:\ %f:%l:\ fatal:\ %m, + \%Egawk:\ %f:%l:\ error:\ %m, + \%Wgawk:\ %f:%l:\ warning:\ %m, + \%Egawk:\ %f:%l:\ %.%#, + \gawk:\ %f:%l:\ %tatal:\ %m, + \gawk:\ %f:%l:\ %trror:\ %m, + \gawk:\ %f:%l:\ %tarning:\ %m, + \gawk:\ %tatal:\ %m, + \gawk:\ %trror:\ %m, + \gawk:\ %tarning:\ %m, + \%+C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/gcc.vim b/nvim/.config/nvim/compiler/gcc.vim new file mode 100644 index 0000000..1d5900e --- /dev/null +++ b/nvim/.config/nvim/compiler/gcc.vim @@ -0,0 +1,46 @@ +" Vim compiler file +" Compiler: GNU C Compiler +" Previous Maintainer: Nikolai Weibull +" Last Change: 2010 Oct 14 +" changed pattern for entering/leaving directories +" by Daniel Hahler, 2019 Jul 12 +" added line suggested by Anton Lindqvist 2016 Mar 31 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" 2025 Dec 17 by The Vim Project (correctly parse: 'make: *** [Makefile:2: all] Error 1') + +if exists("current_compiler") + finish +endif +let current_compiler = "gcc" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet errorformat= + \make:\ ***\ [%f:%l:\ %m, + \%*[^\"]\"%f\"%*\\D%l:%c:\ %m, + \%*[^\"]\"%f\"%*\\D%l:\ %m, + \\"%f\"%*\\D%l:%c:\ %m, + \\"%f\"%*\\D%l:\ %m, + \%-G%f:%l:\ %trror:\ (Each\ undeclared\ identifier\ is\ reported\ only\ once, + \%-G%f:%l:\ %trror:\ for\ each\ function\ it\ appears\ in.), + \%f:%l:%c:\ %trror:\ %m, + \%f:%l:%c:\ %tarning:\ %m, + \%f:%l:%c:\ %m, + \%f:%l:\ %trror:\ %m, + \%f:%l:\ %tarning:\ %m, + \%f:%l:\ %m, + \%f:\\(%*[^\\)]\\):\ %m, + \\"%f\"\\,\ line\ %l%*\\D%c%*[^\ ]\ %m, + \%D%*\\a[%*\\d]:\ Entering\ directory\ %*[`']%f', + \%X%*\\a[%*\\d]:\ Leaving\ directory\ %*[`']%f', + \%D%*\\a:\ Entering\ directory\ %*[`']%f', + \%X%*\\a:\ Leaving\ directory\ %*[`']%f', + \%DMaking\ %*\\a\ in\ %f + +if exists('g:compiler_gcc_ignore_unmatched_lines') + CompilerSet errorformat+=%-G%.%# +endif + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/gfortran.vim b/nvim/.config/nvim/compiler/gfortran.vim new file mode 100644 index 0000000..1fea3bc --- /dev/null +++ b/nvim/.config/nvim/compiler/gfortran.vim @@ -0,0 +1,24 @@ +" Compiler: GNU Fortran Compiler +" Maintainer: H Xu +" Version: 0.1.3 +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" Homepage: http://www.vim.org/scripts/script.php?script_id=3496 +" https://bitbucket.org/xuhdev/compiler-gfortran.vim +" License: Same as Vim + +if exists('current_compiler') + finish +endif +let current_compiler = 'gfortran' +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat= + \%A%f:%l.%c:, + \%-Z%trror:\ %m, + \%-Z%tarning:\ %m, + \%-C%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/ghc.vim b/nvim/.config/nvim/compiler/ghc.vim new file mode 100644 index 0000000..c98ae30 --- /dev/null +++ b/nvim/.config/nvim/compiler/ghc.vim @@ -0,0 +1,26 @@ +" Vim compiler file +" Compiler: GHC Haskell Compiler +" Maintainer: Daniel Campoverde +" Latest Revision: 2016-11-29 + +if exists("current_compiler") + finish +endif +let current_compiler = "ghc" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet errorformat= + \%-G%.%#:\ build, + \%-G%.%#preprocessing\ library\ %.%#, + \%-G[%.%#]%.%#, + \%E%f:%l:%c:\ %m, + \%-G--%.%# + +if exists('g:compiler_ghc_ignore_unmatched_lines') + CompilerSet errorformat+=%-G%.%# +endif + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/gjs.vim b/nvim/.config/nvim/compiler/gjs.vim new file mode 100644 index 0000000..b1be8cf --- /dev/null +++ b/nvim/.config/nvim/compiler/gjs.vim @@ -0,0 +1,21 @@ +" Vim compiler file +" Compiler: GJS (Gnome JavaScript Bindings) +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "gjs" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=gjs +CompilerSet errorformat=%.%#JS\ %tRROR:\ %m\ @\ %f:%c, + \%E%.%#JS\ ERROR:\ %m, + \%Z@%f:%l:%c, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/gleam_build.vim b/nvim/.config/nvim/compiler/gleam_build.vim new file mode 100644 index 0000000..c2b1679 --- /dev/null +++ b/nvim/.config/nvim/compiler/gleam_build.vim @@ -0,0 +1,25 @@ +" Vim compiler file +" Language: Gleam +" Maintainer: Kirill Morozov +" Based On: https://github.com/gleam-lang/gleam.vim +" Last Change: 2025 Apr 21 + +if exists('current_compiler') + finish +endif +let current_compiler = "gleam_build" + +CompilerSet makeprg=gleam\ build + +" Example error message: +" +" error: Unknown variable +" ┌─ /home/michael/root/projects/tutorials/gleam/try/code/src/main.gleam:19:18 +" │ +" 19 │ Ok(tuple(name, spot)) +" │ ^^^^ did you mean `sport`? +" +" The name `spot` is not in scope here. +CompilerSet errorformat=%Eerror:\ %m,%Wwarning:\ %m,%C\ %#┌─%#\ %f:%l:%c\ %#-%# + +" vim: sw=2 sts=2 et diff --git a/nvim/.config/nvim/compiler/gm2.vim b/nvim/.config/nvim/compiler/gm2.vim new file mode 100644 index 0000000..954da9d --- /dev/null +++ b/nvim/.config/nvim/compiler/gm2.vim @@ -0,0 +1,22 @@ +" Vim compiler file +" Compiler: GNU Modula-2 Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "gm2" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=gm2 +CompilerSet errorformat=%-G%f:%l:%c:\ error:\ compilation\ failed, + \%f:%l:%c:\ %trror:\ %m, + \%f:%l:%c:\ %tarning:\ %m, + \%f:%l:%c:\ %tote:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/gnat.vim b/nvim/.config/nvim/compiler/gnat.vim new file mode 100644 index 0000000..696d1c6 --- /dev/null +++ b/nvim/.config/nvim/compiler/gnat.vim @@ -0,0 +1,69 @@ +"------------------------------------------------------------------------------ +" Description: Vim Ada/GNAT compiler file +" Language: Ada (GNAT) +" $Id: gnat.vim 887 2008-07-08 14:29:01Z krischik $ +" Copyright: Copyright (C) 2006 Martin Krischik +" Maintainer: Martin Krischi +" Ned Okie +" $Author: krischik $ +" $Date: 2008-07-08 16:29:01 +0200 (Di, 08 Jul 2008) $ +" Version: 4.6 +" $Revision: 887 $ +" $HeadURL: https://gnuada.svn.sourceforge.net/svnroot/gnuada/trunk/tools/vim/compiler/gnat.vim $ +" History: 24.05.2006 MK Unified Headers +" 16.07.2006 MK Ada-Mode as vim-ball +" 15.10.2006 MK Bram's suggestion for runtime integration +" 19.09.2007 NO use project file only when there is a project +" Help Page: compiler-gnat +"------------------------------------------------------------------------------ + +if (exists("current_compiler")&& current_compiler == "gnat") || version < 700 + finish +endif +let s:keepcpo= &cpo +set cpo&vim + +let current_compiler = "gnat" + +if !exists("g:gnat") + let g:gnat = gnat#New () + + call ada#Map_Menu ( + \ 'GNAT.Build', + \ '', + \ 'call gnat.Make ()') + call ada#Map_Menu ( + \ 'GNAT.Pretty Print', + \ ':GnatPretty', + \ 'call gnat.Pretty ()') + call ada#Map_Menu ( + \ 'GNAT.Tags', + \ ':GnatTags', + \ 'call gnat.Tags ()') + call ada#Map_Menu ( + \ 'GNAT.Find', + \ ':GnatFind', + \ 'call gnat.Find ()') + call ada#Map_Menu ( + \ 'GNAT.Set Projectfile\.\.\.', + \ ':SetProject', + \ 'call gnat.Set_Project_File ()') + + call g:gnat.Set_Session () +endif + +execute "CompilerSet makeprg=" . escape (g:gnat.Get_Command('Make'), ' ') +execute "CompilerSet errorformat=" . escape (g:gnat.Error_Format, ' ') + +let &cpo = s:keepcpo +unlet s:keepcpo + +finish " 1}}} + +"------------------------------------------------------------------------------ +" Copyright (C) 2006 Martin Krischik +" +" Vim is Charityware - see ":help license" or uganda.txt for licence details. +"------------------------------------------------------------------------------ +" vim: textwidth=0 wrap tabstop=8 shiftwidth=3 softtabstop=3 noexpandtab +" vim: foldmethod=marker diff --git a/nvim/.config/nvim/compiler/go.vim b/nvim/.config/nvim/compiler/go.vim new file mode 100644 index 0000000..9c1a6f3 --- /dev/null +++ b/nvim/.config/nvim/compiler/go.vim @@ -0,0 +1,26 @@ +" Vim compiler file +" Compiler: Go +" Maintainer: David Barnett (https://github.com/google/vim-ft-go) +" Last Change: 2014 Aug 16 +" 2024 Apr 05 by The Vim Project (removed :CompilerSet definition) + +if exists('current_compiler') + finish +endif +let current_compiler = 'go' + +let s:save_cpo = &cpo +set cpo-=C + +CompilerSet makeprg=go\ build +CompilerSet errorformat= + \%-G#\ %.%#, + \%A%f:%l:%c:\ %m, + \%A%f:%l:\ %m, + \%C%*\\s%m, + \%-G%.%# + +let &cpo = s:save_cpo +unlet s:save_cpo + +" vim: sw=2 sts=2 et diff --git a/nvim/.config/nvim/compiler/groff.vim b/nvim/.config/nvim/compiler/groff.vim new file mode 100644 index 0000000..3e9ae04 --- /dev/null +++ b/nvim/.config/nvim/compiler/groff.vim @@ -0,0 +1,45 @@ +" Vim compiler file +" Compiler: Groff +" Maintainer: Konfekt +" Last Change: 2024 Nov 19 +" +" Expects output file extension, say `:make html` or `:make pdf`. +" Supported devices as of Sept 2024 are: (x)html, pdf, ps, dvi, lj4, lbp ... +" Adjust command-line flags, language, encoding by buffer-local/global variables +" groff_compiler_args, groff_compiler_lang, and groff_compiler_encoding, +" which default to '', &spelllang and 'utf8'. + +if exists("current_compiler") + finish +endif + +let s:keepcpo = &cpo +set cpo&vim + +let current_compiler = 'groff' + +silent! function s:groff_compiler_lang() + let lang = get(b:, 'groff_compiler_lang', + \ &spell ? matchstr(&spelllang, '^\a\a') : '') + if lang ==# 'en' | let lang = '' | endif + return empty(lang) ? '' : '-m'..lang +endfunction + +" Requires output format (= device) to be set by user after :make. +execute 'CompilerSet makeprg=groff'..escape( + \ ' '..s:groff_compiler_lang().. + \ ' -K'..get(b:, 'groff_compiler_encoding', get(g:, 'groff_compiler_encoding', 'utf8')).. + \ ' '..get(b:, 'groff_compiler_args', get(g:, 'groff_compiler_args', '')).. + \ ' -mom -T$* -- %:S > %:r:S.$*', ' \|"') +" From Gavin Freeborn's https://github.com/Gavinok/vim-troff under Vim License +" https://github.com/Gavinok/vim-troff/blob/91017b1423caa80aba541c997909a4f810edd275/compiler/troff.vim#L39 +CompilerSet errorformat=%o:\ (%f):%l:%m, + \%o:\ \ (%f):%l:%m, + \%o:%f:%l:%m, + \%o:\ %f:%l:%m, + \%f:%l:\ macro\ %trror:%m, + \%f:%l:%m, + \%W%tarning:\ file\ '%f'\\,\ around\ line\ %l:,%Z%m + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/haml.vim b/nvim/.config/nvim/compiler/haml.vim new file mode 100644 index 0000000..99c171d --- /dev/null +++ b/nvim/.config/nvim/compiler/haml.vim @@ -0,0 +1,25 @@ +" Vim compiler file +" Compiler: Haml +" Maintainer: Tim Pope +" Last Change: 2016 Aug 29 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "haml" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=haml + +CompilerSet errorformat= + \Haml\ %trror\ on\ line\ %l:\ %m, + \Syntax\ %trror\ on\ line\ %l:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim:set sw=2 sts=2: diff --git a/nvim/.config/nvim/compiler/hare.vim b/nvim/.config/nvim/compiler/hare.vim new file mode 100644 index 0000000..33edb3a --- /dev/null +++ b/nvim/.config/nvim/compiler/hare.vim @@ -0,0 +1,29 @@ +" Vim compiler file. +" Compiler: Hare +" Maintainer: Amelia Clarke +" Last Change: 2024-05-23 +" Upstream: https://git.sr.ht/~sircmpwn/hare.vim + +if exists('current_compiler') + finish +endif +let current_compiler = 'hare' + +let s:cpo_save = &cpo +set cpo&vim + +if filereadable('Makefile') || filereadable('makefile') + CompilerSet makeprg=make +else + CompilerSet makeprg=hare\ build +endif + +CompilerSet errorformat= + \%f:%l:%c:\ syntax\ error:\ %m, + \%f:%l:%c:\ error:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim: et sts=2 sw=2 ts=8 diff --git a/nvim/.config/nvim/compiler/hp_acc.vim b/nvim/.config/nvim/compiler/hp_acc.vim new file mode 100644 index 0000000..f6ccc57 --- /dev/null +++ b/nvim/.config/nvim/compiler/hp_acc.vim @@ -0,0 +1,35 @@ +" Vim compiler file +" Compiler: HP aCC +" Maintainer: Matthias Ulrich +" URL: http://www.subhome.de/vim/hp_acc.vim +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" +" aCC --version says: "HP ANSI C++ B3910B A.03.13" +" This compiler has been tested on: +" hp-ux 10.20, hp-ux 11.0 and hp-ux 11.11 (64bit) +" +" Tim Brown's aCC is: "HP ANSI C++ B3910B A.03.33" +" and it also works fine... +" +" Now suggestions by aCC are supported (compile flag aCC +w). +" Thanks to Tim Brown again!! +" + +if exists("current_compiler") + finish +endif +let current_compiler = "hp_acc" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat=%A%trror\ %n\:\ \"%f\"\\,\ line\ %l\ \#\ %m, + \%A%tarning\ (suggestion)\ %n\:\ \"%f\"\\,\ line\ %l\ \#\ %m\ %#, + \%A%tarning\ %n\:\ \"%f\"\\,\ line\ %l\ \#\ %m\ %#, + \%Z\ \ \ \ %p^%.%#, + \%-C%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo + +" vim:ts=8:sw=4:cindent diff --git a/nvim/.config/nvim/compiler/icc.vim b/nvim/.config/nvim/compiler/icc.vim new file mode 100644 index 0000000..37958f1 --- /dev/null +++ b/nvim/.config/nvim/compiler/icc.vim @@ -0,0 +1,15 @@ +" Vim compiler file +" Compiler: icc - Intel C++ +" Maintainer: Peter Puck +" Last Change: 2004 Mar 27 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "icc" + +" I think that Intel is calling the compiler icl under Windows + +CompilerSet errorformat=%-Z%p^,%f(%l):\ remark\ #%n:%m,%f(%l)\ :\ (col.\ %c)\ remark:\ %m,%E%f(%l):\ error:\ %m,%E%f(%l):\ error:\ #%n:\ %m,%W%f(%l):\ warning\ #%n:\ %m,%W%f(%l):\ warning:\ %m,%-C%.%# + diff --git a/nvim/.config/nvim/compiler/icon.vim b/nvim/.config/nvim/compiler/icon.vim new file mode 100644 index 0000000..8b46af2 --- /dev/null +++ b/nvim/.config/nvim/compiler/icon.vim @@ -0,0 +1,29 @@ +" Vim compiler file +" Compiler: Icon Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "icont" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=icont\ -s +CompilerSet errorformat=%-G%\\d%\\+\ errors%\\=, + \%ERun-time\ error\ %n, + \%ERun-time\ error\ %n\ in\ %m, + \%ZTraceback:, + \%+Coffending\ value:\ %.%#, + \%CFile\ %f;\ Line\ %l, + \%EFile\ %f;\ Line\ %l\ #\ %m, + \%EFile\ %f;\ %m, + \%E%f:%l:\ #\ %m, + \%E%f:\ %m, + \%+C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/ifort.vim b/nvim/.config/nvim/compiler/ifort.vim new file mode 100644 index 0000000..8c58ba6 --- /dev/null +++ b/nvim/.config/nvim/compiler/ifort.vim @@ -0,0 +1,24 @@ +" Compiler: Intel Fortran Compiler +" Maintainer: H Xu +" Version: 0.1.1 +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" Homepage: http://www.vim.org/scripts/script.php?script_id=3497 +" https://bitbucket.org/xuhdev/compiler-ifort.vim +" License: Same as Vim + +if exists('current_compiler') + finish +endif +let current_compiler = 'ifort' +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat= + \%A%f(%l):\ %trror\ \#%n:\ %m, + \%A%f(%l):\ %tarning\ \#%n:\ %m, + \%-Z%p^, + \%-G%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/intel.vim b/nvim/.config/nvim/compiler/intel.vim new file mode 100644 index 0000000..cde62b1 --- /dev/null +++ b/nvim/.config/nvim/compiler/intel.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: Intel C++ 7.1 +" Maintainer: David Harrison +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "intel" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat=%E%f(%l):\ error:\ %m, + \%W%f(%l):\ warning:\ %m, + \%I%f(%l):\ remark\ #%n:\ %m, + \%+C\ \ %m., + \%-Z\ \ %p^, + \%-G\\s%#, + \%-G%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/irix5_c.vim b/nvim/.config/nvim/compiler/irix5_c.vim new file mode 100644 index 0000000..f70bfb1 --- /dev/null +++ b/nvim/.config/nvim/compiler/irix5_c.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: SGI IRIX 5.3 cc +" Maintainer: David Harrison +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "irix5_c" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat=\%Ecfe:\ Error:\ %f\\,\ line\ %l:\ %m, + \%Wcfe:\ Warning:\ %n:\ %f\\,\ line\ %l:\ %m, + \%Wcfe:\ Warning\ %n:\ %f\\,\ line\ %l:\ %m, + \%W(%l)\ \ Warning\ %n:\ %m, + \%-Z\ %p^, + \-G\\s%#, + \%-G%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/irix5_cpp.vim b/nvim/.config/nvim/compiler/irix5_cpp.vim new file mode 100644 index 0000000..85ab8c6 --- /dev/null +++ b/nvim/.config/nvim/compiler/irix5_cpp.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: SGI IRIX 5.3 CC or NCC +" Maintainer: David Harrison +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "irix5_cpp" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat=%E\"%f\"\\,\ line\ %l:\ error(%n):\ , + \%E\"%f\"\\,\ line\ %l:\ error(%n):\ %m, + \%W\"%f\"\\,\ line\ %l:\ warning(%n):\ %m, + \%+IC++\ prelinker:\ %m, + \%-Z\ \ %p%^, + \%+C\ %\\{10}%.%#, + \%-G%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/javac.vim b/nvim/.config/nvim/compiler/javac.vim new file mode 100644 index 0000000..d4f24cd --- /dev/null +++ b/nvim/.config/nvim/compiler/javac.vim @@ -0,0 +1,25 @@ +" Vim compiler file +" Compiler: Java Development Kit Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Nov 19 (enable local javac_makeprg_params) +" 2025 Mar 11 (add comment for Dispatch) + +if exists("current_compiler") + finish +endif +let current_compiler = "javac" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=javac +execute $'CompilerSet makeprg=javac\ {escape(get(b:, 'javac_makeprg_params', get(g:, 'javac_makeprg_params', '')), ' \|"')}' + +CompilerSet errorformat=%E%f:%l:\ error:\ %m, + \%W%f:%l:\ warning:\ %m, + \%-Z%p^, + \%-C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/jest.vim b/nvim/.config/nvim/compiler/jest.vim new file mode 100644 index 0000000..663123c --- /dev/null +++ b/nvim/.config/nvim/compiler/jest.vim @@ -0,0 +1,28 @@ +" Vim compiler file +" Compiler: Jest +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "jest" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=npx\ --no-install\ jest\ --no-colors + +CompilerSet makeprg=jest\ --no-colors +CompilerSet errorformat=%-A\ \ ●\ Console, + \%E\ \ ●\ %m, + \%Z\ %\\{4}%.%#Error:\ %f:\ %m\ (%l:%c):%\\=, + \%Z\ %\\{6}at\ %\\S%#\ (%f:%l:%c), + \%Z\ %\\{6}at\ %\\S%#\ %f:%l:%c, + \%+C\ %\\{4}%\\w%.%#, + \%+C\ %\\{4}%[-+]%.%#, + \%-C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/jikes.vim b/nvim/.config/nvim/compiler/jikes.vim new file mode 100644 index 0000000..f12c2cf --- /dev/null +++ b/nvim/.config/nvim/compiler/jikes.vim @@ -0,0 +1,15 @@ +" Vim Compiler File +" Compiler: Jikes +" Maintainer: Dan Sharp +" Last Change: 2019 Jul 23 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" URL: http://dwsharp.users.sourceforge.net/vim/compiler + +if exists("current_compiler") + finish +endif +let current_compiler = "jikes" + +" Jikes defaults to printing output on stderr +CompilerSet makeprg=jikes\ -Xstdout\ +E\ \"%:S\" +CompilerSet errorformat=%f:%l:%v:%*\\d:%*\\d:%*\\s%m diff --git a/nvim/.config/nvim/compiler/jjs.vim b/nvim/.config/nvim/compiler/jjs.vim new file mode 100644 index 0000000..543d9ca --- /dev/null +++ b/nvim/.config/nvim/compiler/jjs.vim @@ -0,0 +1,20 @@ +" Vim compiler file +" Compiler: Nashorn Shell +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "jjs" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=jjs +CompilerSet errorformat=%f:%l:%c\ %m, + \%f:%l\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/jq.vim b/nvim/.config/nvim/compiler/jq.vim new file mode 100644 index 0000000..a656223 --- /dev/null +++ b/nvim/.config/nvim/compiler/jq.vim @@ -0,0 +1,25 @@ +" Vim compiler file +" Compiler: jq +" Maintainer: Vito +" Last Change: 2024 Apr 17 +" Upstream: https://github.com/vito-c/jq.vim + +if exists('b:current_compiler') + finish +endif +let b:current_compiler = 'jq' + +let s:save_cpoptions = &cpoptions +set cpoptions&vim + +if has('unix') + CompilerSet makeprg=jq\ -f\ %:S\ /dev/null +else + CompilerSet makeprg=jq\ -f\ %:S\ nul +endif +CompilerSet errorformat=%E%m\ at\ \\<%o\\>\\,\ line\ %l:, + \%Z, + \%-G%.%# + +let &cpoptions = s:save_cpoptions +unlet s:save_cpoptions diff --git a/nvim/.config/nvim/compiler/jshint.vim b/nvim/.config/nvim/compiler/jshint.vim new file mode 100644 index 0000000..9879ef4 --- /dev/null +++ b/nvim/.config/nvim/compiler/jshint.vim @@ -0,0 +1,21 @@ +" Vim compiler file +" Compiler: JSHint +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "jshint" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=npx\ jshint\ --verbose + +CompilerSet makeprg=jshint\ --verbose +CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %m\ (%t%n), + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/jsonlint.vim b/nvim/.config/nvim/compiler/jsonlint.vim new file mode 100644 index 0000000..6283b1b --- /dev/null +++ b/nvim/.config/nvim/compiler/jsonlint.vim @@ -0,0 +1,21 @@ +" Vim compiler file +" Compiler: JSON Lint +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "jsonlint" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=npx\ jsonlint\ --compact\ --quiet + +CompilerSet makeprg=jsonlint\ --compact\ --quiet +CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ found:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/just.vim b/nvim/.config/nvim/compiler/just.vim new file mode 100644 index 0000000..9dd7dfd --- /dev/null +++ b/nvim/.config/nvim/compiler/just.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: Just +" Maintainer: Alarcritty +" Last Change: 2026 Mar 20 + +if exists("current_compiler") + finish +endif +let current_compiler = "just" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=just + +CompilerSet errorformat= + \%Eerror:\ %m, + \%C%\\s%#——▶\ %f:%l:%c, + \%-C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/make.vim b/nvim/.config/nvim/compiler/make.vim new file mode 100644 index 0000000..748251b --- /dev/null +++ b/nvim/.config/nvim/compiler/make.vim @@ -0,0 +1,13 @@ +" Vim compiler plugin +" +" Maintainer: The Vim Project +" Last Change: 2024 Sep 10 +" Original Author: Konfekt +" +" This compiler plugin is used to reset previously set compiler options. + +if exists("g:current_compiler") | unlet g:current_compiler | endif +if exists("b:current_compiler") | unlet b:current_compiler | endif + +CompilerSet makeprg& +CompilerSet errorformat& diff --git a/nvim/.config/nvim/compiler/maven.vim b/nvim/.config/nvim/compiler/maven.vim new file mode 100644 index 0000000..1657da7 --- /dev/null +++ b/nvim/.config/nvim/compiler/maven.vim @@ -0,0 +1,72 @@ +" Vim compiler file +" Compiler: Maven +" Maintainer: D. Ben Knoble +" Maintainer: Konfekt +" Original Source: https://github.com/JalaiAmitahl/maven-compiler.vim/blob/master/compiler/mvn.vim +" (Copyright Dan Taylor, distributed under the same terms as LICENSE) +" Original Source: https://github.com/mikelue/vim-maven-plugin/blob/master/compiler/maven.vim +" (distributed under same terms as LICENSE per +" https://github.com/mikelue/vim-maven-plugin/issues/13) +" Last Change: 2025 Nov 18 + +if exists("current_compiler") + finish +endif +let current_compiler = "maven" + +" CompilerSet makeprg=mvn +execute $'CompilerSet makeprg=mvn\ --batch-mode\ {escape(get(b:, 'maven_makeprg_params', get(g:, 'maven_makeprg_params', '')), ' \|"')}' + +" Error message for POM +CompilerSet errorformat=[FATAL]\ Non-parseable\ POM\ %f:\ %m%\\s%\\+@%.%#line\ %l\\,\ column\ %c%.%#, +CompilerSet errorformat+=[%tRROR]\ Malformed\ POM\ %f:\ %m%\\s%\\+@%.%#line\ %l\\,\ column\ %c%.%# +" Handle Non-parseable POM with '@:' embedded in the 'position:' clause. +CompilerSet errorformat+=[FATAL]\ Non-parseable\ POM\ %f:\ %m%\\s%\\+%.%#@%l:%c%.%#, +CompilerSet errorformat+=[%tRROR]\ Malformed\ POM\ %f:\ %m%\\s%\\+%.%#@%l:%c%.%#, + +" JavaC messages with paths relative to module root: +" With column: +CompilerSet errorformat+=[%tARNING]\ %f:[%l\\,%c]\ %m +CompilerSet errorformat+=[%tRROR]\ %f:[%l\\,%c]\ %m +CompilerSet errorformat+=%A[%t%[A-Z]%#]\ %f:[%l\\,%c]\ %m,%Z +CompilerSet errorformat+=%A%f:[%l\\,%c]\ %m,%Z +" Without column: +CompilerSet errorformat+=[%tARNING]\ %f:[%l]\ %m +CompilerSet errorformat+=[%tRROR]\ %f:[%l]\ %m +CompilerSet errorformat+=%A[%t%[A-Z]%#]\ %f:[%l]\ %m,%Z +CompilerSet errorformat+=%A%f:[%l]\ %m,%Z + +" Plug-in messages with absolute paths: +" with column: +CompilerSet errorformat+=[%tARNING]\ %f:%l:%c:\ %m +CompilerSet errorformat+=[%tRROR]\ %f:%l:%c:\ %m +CompilerSet errorformat+=%A[%t%[A-Z]%#]\ %f:%l:%c:\ %m,%Z +CompilerSet errorformat+=%A%f:%l:%c:\ %m,%Z +" without column: +CompilerSet errorformat+=[%tARNING]\ %f:%l:\ %m +CompilerSet errorformat+=[%tRROR]\ %f:%l:\ %m +CompilerSet errorformat+=%A[%t%[A-Z]%#]\ %f:%l:\ %m,%Z +CompilerSet errorformat+=%A%f:%l:\ %m,%Z + +" SpotBugs +CompilerSet errorformat+=[%tRROR]\ %m%\\s%\\+\[%*[^]]]%\\s%\\+In\ %f\ %.%#, +CompilerSet errorformat+=[%tARNING]\ %m%\\s%\\+\[%*[^]]]%\\s%\\+In\ %f\ %.%#, +CompilerSet errorformat+=[%tRROR]\ %.%#\ [aA]t\ %f:\[lines\ %l-%\\d\\+]\ %.%#, +CompilerSet errorformat+=[%tARNING]\ %.%#\ [aA]t\ %f:\[lines\ %l-%\\d\\+]\ %.%#, +CompilerSet errorformat+=[%tRROR]\ %.%#\ [aA]t\ %f:\[line\ %l]\ %.%#, +CompilerSet errorformat+=[%tARNING]\ %.%#\ [aA]t\ %f:\[line\ %l]\ %.%#, + +" jUnit related build messages +CompilerSet errorformat+=%+E\ \ %#test%m,%Z +CompilerSet errorformat+=%+E[ERROR]\ Please\ refer\ to\ %f\ for\ the\ individual\ test\ results. +" Message from JUnit 5(5.3.X), TestNG(6.14.X), JMockit(1.43), and AssertJ(3.11.X) +CompilerSet errorformat+=%+E%>[ERROR]\ %.%\\+Time\ elapsed:%.%\\+<<<\ FAILURE!, +CompilerSet errorformat+=%+E%>[ERROR]\ %.%\\+Time\ elapsed:%.%\\+<<<\ ERROR!, +CompilerSet errorformat+=%+Z%\\s%#at\ %f(%\\f%\\+:%l), +CompilerSet errorformat+=%+C%.%# + +" Misc message removal +" CompilerSet errorformat+=%-GPicked\ up\ _JAVA_OPTIONS\ %.%#, +CompilerSet errorformat+=%-GAudit\ done., +CompilerSet errorformat+=%-G[INFO]\ %.%#, +CompilerSet errorformat+=%-G[debug]\ %.%# diff --git a/nvim/.config/nvim/compiler/mcs.vim b/nvim/.config/nvim/compiler/mcs.vim new file mode 100644 index 0000000..0c265b3 --- /dev/null +++ b/nvim/.config/nvim/compiler/mcs.vim @@ -0,0 +1,32 @@ +" Vim compiler file +" Compiler: Mono C# Compiler +" Maintainer: Jarek Sobiecki +" Contributors: Peter Collingbourne and Enno Nagel +" Last Change: 2024 Mar 29 +" 2024 Apr 05 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "mcs" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=mcs +CompilerSet errorformat= + \%D%.%#Project\ \"%f/%[%^/\"]%#\"%.%#, + \%X%.%#Done\ building\ project\ \"%f/%[%^/\"]%#\"%.%#, + \%-G%\\s%.%#, + \%E%f(%l):\ error\ CS%n:%m, + \%W%f(%l):\ warning\ CS%n:%m, + \%E%f(%l\\,%c):\ error\ CS%n:%m, + \%W%f(%l\\,%c):\ warning\ CS%n:%m, + \%E%>syntax\ error\\,%m,%Z%f(%l\\,%c):\ error\ CS%n:%m, + \%D%*\\a[%*\\d]:\ Entering\ directory\ `%f', + \%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f', + \%DMaking\ %*\\a\ in\ %f, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/mips_c.vim b/nvim/.config/nvim/compiler/mips_c.vim new file mode 100644 index 0000000..544f314 --- /dev/null +++ b/nvim/.config/nvim/compiler/mips_c.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: SGI IRIX 6.5 MIPS C (cc) +" Maintainer: David Harrison +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "mips_c" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat=%Ecc\-%n\ %.%#:\ ERROR\ File\ =\ %f\%\\,\ Line\ =\ %l, + \%Wcc\-%n\ %.%#:\ WARNING\ File\ =\ %f\%\\,\ Line\ =\ %l, + \%Icc\-%n\ %.%#:\ REMARK\ File\ =\ %f\%\\,\ Line\ =\ %l, + \%+C\ \ %m., + \%-Z\ \ %p^, + \%-G\\s%#, + \%-G%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/mipspro_c89.vim b/nvim/.config/nvim/compiler/mipspro_c89.vim new file mode 100644 index 0000000..4d6bdab --- /dev/null +++ b/nvim/.config/nvim/compiler/mipspro_c89.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: SGI IRIX 6.5 MIPSPro C (c89) +" Maintainer: David Harrison +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "mipspro_c89" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat=%Ecc\-%n\ %.%#:\ ERROR\ File\ =\ %f\%\\,\ Line\ =\ %l, + \%Wcc\-%n\ %.%#:\ WARNING\ File\ =\ %f\%\\,\ Line\ =\ %l, + \%Icc\-%n\ %.%#:\ REMARK\ File\ =\ %f\%\\,\ Line\ =\ %l, + \%-Z%p%^, + \%+C\ %\\{10}%m%., + \%+C\ \ %m, + \%-G\\s%#, + \%-G%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/mipspro_cpp.vim b/nvim/.config/nvim/compiler/mipspro_cpp.vim new file mode 100644 index 0000000..9aac2a6 --- /dev/null +++ b/nvim/.config/nvim/compiler/mipspro_cpp.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: SGI IRIX 6.5 MIPSPro C++ (CC) +" Maintainer: David Harrison +" Last Change: 2012 Apr 30 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "mipspro_cpp" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat=%Ecc\-%n\ %.%#:\ ERROR\ File\ =\ %f\%\\,\ Line\ =\ %l, + \%Wcc\-%n\ %.%#:\ WARNING\ File\ =\ %f\%\\,\ Line\ =\ %l, + \%Icc\-%n\ %.%#:\ REMARK\ File\ =\ %f\%\\,\ Line\ =\ %l, + \%+C\ \ %m., + \%-Z\ \ %p^, + \%-G\\s%#, + \%-G%.%# + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/modelsim_vcom.vim b/nvim/.config/nvim/compiler/modelsim_vcom.vim new file mode 100644 index 0000000..8c6b806 --- /dev/null +++ b/nvim/.config/nvim/compiler/modelsim_vcom.vim @@ -0,0 +1,19 @@ +" Vim Compiler File +" Compiler: Modelsim Vcom +" Maintainer: Paul Baleme +" Contributors: Enno Nagel +" Last Change: 2024 Mar 29 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" Thanks to: allanherriman@hotmail.com + +if exists("current_compiler") + finish +endif +let current_compiler = "modelsim_vcom" + +CompilerSet makeprg=vcom + +"setlocal errorformat=\*\*\ %tRROR:\ %f(%l):\ %m,%tRROR:\ %f(%l):\ %m,%tARNING\[%*[0-9]\]:\ %f(%l):\ %m,\*\*\ %tRROR:\ %m,%tRROR:\ %m,%tARNING\[%*[0-9]\]:\ %m +"setlocal errorformat=%tRROR:\ %f(%l):\ %m,%tARNING\[%*[0-9]\]:\ %m +CompilerSet errorformat=\*\*\ %tRROR:\ %f(%l):\ %m,\*\*\ %tRROR:\ %m,\*\*\ %tARNING:\ %m,\*\*\ %tOTE:\ %m,%tRROR:\ %f(%l):\ %m,%tARNING\[%*[0-9]\]:\ %f(%l):\ %m,%tRROR:\ %m,%tARNING\[%*[0-9]\]:\ %m + diff --git a/nvim/.config/nvim/compiler/msbuild.vim b/nvim/.config/nvim/compiler/msbuild.vim new file mode 100644 index 0000000..c871efa --- /dev/null +++ b/nvim/.config/nvim/compiler/msbuild.vim @@ -0,0 +1,18 @@ +" Vim compiler file +" Compiler: Microsoft Visual Studio C# +" Maintainer: Chiel ten Brinke (ctje92@gmail.com) +" Last Change: 2013 May 13 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "msbuild" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat=\ %#%f(%l\\\,%c):\ %m +CompilerSet makeprg=msbuild\ /nologo\ /v:q\ /property:GenerateFullPaths=true + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/msvc.vim b/nvim/.config/nvim/compiler/msvc.vim new file mode 100644 index 0000000..3d40de5 --- /dev/null +++ b/nvim/.config/nvim/compiler/msvc.vim @@ -0,0 +1,15 @@ +" Vim compiler file +" Compiler: Microsoft Visual C +" Maintainer: The Vim Project +" Last Change: 2023 Aug 10 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" Former Maintainer: Bram Moolenaar + +if exists("current_compiler") + finish +endif +let current_compiler = "msvc" + +" The errorformat for MSVC is the default. +CompilerSet errorformat& +CompilerSet makeprg=nmake diff --git a/nvim/.config/nvim/compiler/mypy.vim b/nvim/.config/nvim/compiler/mypy.vim new file mode 100644 index 0000000..c7a575c --- /dev/null +++ b/nvim/.config/nvim/compiler/mypy.vim @@ -0,0 +1,19 @@ +" Vim compiler file +" Compiler: Mypy (Python static checker) +" Maintainer: @Konfekt +" Last Change: 2025 Nov 06 + +if exists("current_compiler") | finish | endif +let current_compiler = "mypy" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=mypy +exe 'CompilerSet makeprg=' .. escape('mypy --show-column-numbers ' + \ ..get(b:, 'mypy_makeprg_params', get(g:, 'mypy_makeprg_params', '--strict --ignore-missing-imports')), + \ ' \|"') +CompilerSet errorformat=%f:%l:%c:\ %t%*[^:]:\ %m + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/neato.vim b/nvim/.config/nvim/compiler/neato.vim new file mode 100644 index 0000000..0f36734 --- /dev/null +++ b/nvim/.config/nvim/compiler/neato.vim @@ -0,0 +1,15 @@ +" Vim compiler file +" Compiler: ATT neato +" Maintainer: Marcos Macedo +" Last Change: 2024 March 21 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "neato" + +CompilerSet makeprg=neato\ -T$*\ \"%:p\"\ -o\ \"%:p:r.$*\" +" matches error messages as below skipping final part after line number +" Error: ./file.dot: syntax error in line 1 near 'rankdir' +CompilerSet errorformat=%trror:\ %f:\ %m\ in\ line\ %l%.%# diff --git a/nvim/.config/nvim/compiler/ocaml.vim b/nvim/.config/nvim/compiler/ocaml.vim new file mode 100644 index 0000000..754289f --- /dev/null +++ b/nvim/.config/nvim/compiler/ocaml.vim @@ -0,0 +1,57 @@ +" Vim Compiler File +" Compiler: ocaml +" Maintainer: Markus Mottl +" URL: https://github.com/ocaml/vim-ocaml +" Last Change: +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" 2020 Mar 28 - Improved error format (Thomas Leonard) +" 2017 Nov 26 - Improved error format (Markus Mottl) +" 2013 Aug 27 - Added a new OCaml error format (Markus Mottl) +" +" Marc Weber's comments: +" Setting makeprg doesn't make sense, because there is ocamlc, ocamlopt, +" ocamake and whatnot. So which one to use? +" +" This error format was moved from ftplugin/ocaml.vim to this file, +" because ftplugin is the wrong file to set an error format +" and the error format itself is annoying because it joins many lines in this +" error case: +" +" Error: The implementation foo.ml does not match the interface foo.cmi: +" Modules do not match case. +" +" So having it here makes people opt-in + + +if exists("current_compiler") + finish +endif +let current_compiler = "ocaml" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet errorformat = + \%EFile\ \"%f\"\\,\ lines\ %*\\d-%l\\,\ characters\ %c-%*\\d:, + \%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d:, + \%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d\ %.%#, + \%EFile\ \"%f\"\\,\ line\ %l\\,\ character\ %c:%m, + \%+EReference\ to\ unbound\ regexp\ name\ %m, + \%Eocamlyacc:\ e\ -\ line\ %l\ of\ \"%f\"\\,\ %m, + \%Wocamlyacc:\ w\ -\ %m, + \%-Zmake%.%#, + \%C%m, + \%D%*\\a[%*\\d]:\ Entering\ directory\ `%f', + \%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f', + \%D%*\\a:\ Entering\ directory\ `%f', + \%X%*\\a:\ Leaving\ directory\ `%f', + \%D%*\\a[%*\\d]:\ Entering\ directory\ '%f', + \%X%*\\a[%*\\d]:\ Leaving\ directory\ '%f', + \%D%*\\a:\ Entering\ directory\ '%f', + \%X%*\\a:\ Leaving\ directory\ '%f', + \%DEntering\ directory\ '%f', + \%XLeaving\ directory\ '%f', + \%DMaking\ %*\\a\ in\ %f + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/onsgmls.vim b/nvim/.config/nvim/compiler/onsgmls.vim new file mode 100644 index 0000000..4306f99 --- /dev/null +++ b/nvim/.config/nvim/compiler/onsgmls.vim @@ -0,0 +1,21 @@ +" Vim compiler file +" Compiler: onsgmls +" Maintainer: Robert Rowsome +" Last Change: 2019 Jul 23 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "onsgmls" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=onsgmls\ -s\ %:S + +CompilerSet errorformat=onsgmls:%f:%l:%c:%t:%m, + \onsgmls:%f:%l:%c:%m + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/pandoc.vim b/nvim/.config/nvim/compiler/pandoc.vim new file mode 100644 index 0000000..d120419 --- /dev/null +++ b/nvim/.config/nvim/compiler/pandoc.vim @@ -0,0 +1,63 @@ +" Vim compiler file +" Compiler: Pandoc +" Maintainer: Konfekt +" Last Change: 2024 Nov 19 +" 2025 May 15 by Vim Project: Update the title regex for CompilerSet #17321 +" 2026 Jan 10 by Vim Project: Do not set the title #19048 +" +" Expects output file extension, say `:make html` or `:make pdf`. +" Passes additional arguments to pandoc, say `:make html --self-contained`. +" Adjust command-line flags by buffer-local/global variable +" b/g:pandoc_compiler_args which defaults to empty. + +if exists("current_compiler") + finish +endif + +let s:keepcpo = &cpo +set cpo&vim + +let current_compiler = 'pandoc' + +" As of 2024-04-08 pandoc supports the following text input formats with +" an ftplugin on Github: +let s:supported_filetypes = + \ [ 'bibtex', 'markdown', 'creole', 'json', 'csv', 'tsv', 'docbook', + \ 'xml', 'fb2', 'html', 'jira', 'tex', 'mediawiki', 'nroff', 'org', + \ 'rtf', 'rst', 't2t', 'textile', 'twiki', 'typst', 'vimwiki' ] +" .. and out of those the following are included in Vim's runtime: +" 'xml', 'tex', 'html', 'rst', 'json', 'nroff', 'markdown' + +silent! function s:PandocFiletype(filetype) abort + let ft = a:filetype + + if ft ==# 'pandoc' | return 'markdown' + elseif ft ==# 'tex' | return 'latex' + " Pandoc does not support XML as a generic input format, but it does support + " EndNote XML and Jats XML out of which the latter seems more universal. + elseif ft ==# 'xml' | return 'jats' + elseif ft ==# 'text' || empty(ft) | return 'markdown' + elseif index(s:supported_filetypes, &ft) >= 0 | return ft + else + echomsg 'Unsupported filetype: '..ft..', falling back to Markdown as input format!' + return 'markdown' + endif +endfunction + +silent! function s:PandocLang() + let lang = get(b:, 'pandoc_compiler_lang', + \ &spell ? matchstr(&spelllang, '^\a\a') : '') + if lang ==# 'en' | let lang = '' | endif + return empty(lang) ? '' : '--metadata lang='..lang +endfunction + +execute 'CompilerSet makeprg=pandoc'..escape( + \ ' --standalone'.. + \ ' '..s:PandocLang().. + \ ' --from='..s:PandocFiletype(&filetype).. + \ ' '..get(b:, 'pandoc_compiler_args', get(g:, 'pandoc_compiler_args', '')).. + \ ' --output %:r:S.$* -- %:S', ' \|"') +CompilerSet errorformat=\"%f\",\ line\ %l:\ %m + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/pbx.vim b/nvim/.config/nvim/compiler/pbx.vim new file mode 100644 index 0000000..5a45f7f --- /dev/null +++ b/nvim/.config/nvim/compiler/pbx.vim @@ -0,0 +1,17 @@ +" Vim compiler file +" Compiler: Apple Project Builder +" Maintainer: Alexander von Below (public@vonBelow.Com) +" Last Change: 2004 Mar 27 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "pbx" + +" The compiler actually is gcc, so the errorformat is unchanged +CompilerSet errorformat& + +" default make +CompilerSet makeprg=pbxbuild + diff --git a/nvim/.config/nvim/compiler/perl.vim b/nvim/.config/nvim/compiler/perl.vim new file mode 100644 index 0000000..04643af --- /dev/null +++ b/nvim/.config/nvim/compiler/perl.vim @@ -0,0 +1,48 @@ +" Vim compiler file +" Compiler: Perl syntax checks (perl -Wc) +" Maintainer: vim-perl (need to be subscribed to post) +" Author: Christian J. Robinson +" Homepage: https://github.com/vim-perl/vim-perl +" Bugs/requests: https://github.com/vim-perl/vim-perl/issues +" License: Vim License (see :help license) +" Last Change: 2021 Nov 2 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "perl" + +let s:savecpo = &cpo +set cpo&vim + +if get(g:, 'perl_compiler_force_warnings', 1) + let s:warnopt = 'W' +else + let s:warnopt = 'w' +endif + +if getline(1) =~# '-[^ ]*T' + let s:taintopt = 'T' +else + let s:taintopt = '' +endif + +exe 'CompilerSet makeprg=perl\ -' . s:warnopt . s:taintopt . 'c\ %:S' + +CompilerSet errorformat= + \%-G%.%#had\ compilation\ errors., + \%-G%.%#syntax\ OK, + \%m\ at\ %f\ line\ %l., + \%+A%.%#\ at\ %f\ line\ %l\\,%.%#, + \%+C%.%# + +" Explanation: +" %-G%.%#had\ compilation\ errors., - Ignore the obvious. +" %-G%.%#syntax\ OK, - Don't include the 'a-okay' message. +" %m\ at\ %f\ line\ %l., - Most errors... +" %+A%.%#\ at\ %f\ line\ %l\\,%.%#, - As above, including ', near ...' +" %+C%.%# - ... Which can be multi-line. + +let &cpo = s:savecpo +unlet s:savecpo diff --git a/nvim/.config/nvim/compiler/perlcritic.vim b/nvim/.config/nvim/compiler/perlcritic.vim new file mode 100644 index 0000000..d50bc31 --- /dev/null +++ b/nvim/.config/nvim/compiler/perlcritic.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: perlcritic +" Maintainer: vim-perl (need to be subscribed to post) +" Author: Doug Kearns +" Homepage: https://github.com/vim-perl/vim-perl +" Bugs/requests: https://github.com/vim-perl/vim-perl/issues +" License: Vim License (see :help license) +" Last Change: 2021 Oct 20 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "perlcritic" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=perlcritic\ --nocolor\ --quiet\ --verbose\ \"\\%f:\\%l:\\%c:\\%s:\\%m\\n\" +CompilerSet errorformat=%f:%l:%c:%n:%m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/php.vim b/nvim/.config/nvim/compiler/php.vim new file mode 100644 index 0000000..f5d5210 --- /dev/null +++ b/nvim/.config/nvim/compiler/php.vim @@ -0,0 +1,22 @@ +" Vim compiler file +" Compiler: PHP CLI +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "php" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=php\ -lq +CompilerSet errorformat=%E%.%#Parse\ error:\ %m\ in\ %f\ on\ line\ %l, + \%W%.%#Notice:\ %m\ in\ %f\ on\ line\ %l, + \%E%.%#Parse\ error:\ %m\ in\ %f\ on\ line\ %l, + \%W%.%#Notice:\ %m\ in\ %f\ on\ line\ %l, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/phpstan.vim b/nvim/.config/nvim/compiler/phpstan.vim new file mode 100644 index 0000000..7d1592b --- /dev/null +++ b/nvim/.config/nvim/compiler/phpstan.vim @@ -0,0 +1,12 @@ +" Vim compiler file +" Compiler: PHPStan +" Maintainer: Dietrich Moerman +" Last Change: 2025 Jul 17 + +if exists("current_compiler") + finish +endif +let current_compiler = "phpstan" + +CompilerSet makeprg=composer\ exec\ --\ phpstan\ analyse\ -v\ --no-progress\ --error-format=raw +CompilerSet errorformat=%f:%l:%m,%-G%.%# diff --git a/nvim/.config/nvim/compiler/pip_compile.vim b/nvim/.config/nvim/compiler/pip_compile.vim new file mode 100644 index 0000000..ca4d509 --- /dev/null +++ b/nvim/.config/nvim/compiler/pip_compile.vim @@ -0,0 +1,43 @@ +" the Requirements File Format syntax support for Vim +" Version: 1.8.0 +" Author: raimon +" Upstream: https://github.com/raimon49/requirements.txt.vim +" License: MIT LICENSE +" The MIT License (MIT) +" +" Copyright (c) 2015 raimon +" +" Permission is hereby granted, free of charge, to any person obtaining a copy +" of this software and associated documentation files (the "Software"), to deal +" in the Software without restriction, including without limitation the rights +" to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +" copies of the Software, and to permit persons to whom the Software is +" furnished to do so, subject to the following conditions: +" +" The above copyright notice and this permission notice shall be included in all +" copies or substantial portions of the Software. +" +" THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +" IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +" FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +" AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +" LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +" OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +" SOFTWARE. + +if exists('b:current_compiler') + finish +endif +let b:current_compiler = 'pip_compile' + +let s:save_cpoptions = &cpoptions +set cpoptions&vim + +CompilerSet makeprg=pip-compile\ %:S +CompilerSet errorformat=%ECould\ not\ find\ a\ version\ that\ matches\ %o\ (from\ -r\ %f\ (line\ %l)), + \%C%m, + \%Z, + \%-G%.%# +let &cpoptions = s:save_cpoptions +unlet s:save_cpoptions +" vim: et sw=4 ts=4 sts=4: diff --git a/nvim/.config/nvim/compiler/podchecker.vim b/nvim/.config/nvim/compiler/podchecker.vim new file mode 100644 index 0000000..744c103 --- /dev/null +++ b/nvim/.config/nvim/compiler/podchecker.vim @@ -0,0 +1,25 @@ +" Vim compiler file +" Compiler: podchecker +" Maintainer: vim-perl (need to be subscribed to post) +" Author: Doug Kearns +" Homepage: https://github.com/vim-perl/vim-perl +" Bugs/requests: https://github.com/vim-perl/vim-perl/issues +" License: Vim License (see :help license) +" Last Change: 2021 Oct 20 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "podchecker" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=podchecker\ -w +CompilerSet errorformat=\*\*\*\ %tRROR:\ %m\ at\ line\ %l\ in\ file\ %f, + \\*\*\*\ %tARNING:\ %m\ at\ line\ %l\ in\ file\ %f, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/powershell.vim b/nvim/.config/nvim/compiler/powershell.vim new file mode 100644 index 0000000..d5dd692 --- /dev/null +++ b/nvim/.config/nvim/compiler/powershell.vim @@ -0,0 +1,89 @@ +" Vim compiler file +" Compiler: powershell +" URL: https://github.com/PProvost/vim-ps1 +" Contributors: Enno Nagel +" Last Change: 2024 Mar 29 +" 2024 Apr 03 by the Vim Project (removed :CompilerSet definition) +" 2024 Apr 05 by the Vim Project (avoid leaving behind g:makeprg) +" 2024 Nov 19 by the Vim Project (properly escape makeprg setting) +" 2025 Mar 11 by the Vim Project (add comment for Dispatch) + +if exists("current_compiler") + finish +endif +let current_compiler = "powershell" + +let s:cpo_save = &cpo +set cpo-=C + +if !exists("g:ps1_makeprg_cmd") + if executable('pwsh') + " pwsh is the future + let g:ps1_makeprg_cmd = 'pwsh' + elseif executable('pwsh.exe') + let g:ps1_makeprg_cmd = 'pwsh.exe' + elseif executable('powershell.exe') + let g:ps1_makeprg_cmd = 'powershell.exe' + else + let g:ps1_makeprg_cmd = '' + endif +endif + +if !executable(g:ps1_makeprg_cmd) + echoerr "To use the powershell compiler, please set g:ps1_makeprg_cmd to the powershell executable!" +endif + +" Show CategoryInfo, FullyQualifiedErrorId, etc? +let g:ps1_efm_show_error_categories = get(g:, 'ps1_efm_show_error_categories', 0) + +" Use absolute path because powershell requires explicit relative paths +" (./file.ps1 is okay, but # expands to file.ps1) +let s:makeprg = g:ps1_makeprg_cmd .. ' %:p:S' + +" Parse file, line, char from callstacks: +" Write-Ouput : The term 'Write-Ouput' is not recognized as the name of a +" cmdlet, function, script file, or operable program. Check the spelling +" of the name, or if a path was included, verify that the path is correct +" and try again. +" At C:\script.ps1:11 char:5 +" + Write-Ouput $content +" + ~~~~~~~~~~~ +" + CategoryInfo : ObjectNotFound: (Write-Ouput:String) [], CommandNotFoundException +" + FullyQualifiedErrorId : CommandNotFoundException + +" CompilerSet makeprg=pwsh +" CompilerSet makeprg=powershell +execute 'CompilerSet makeprg=' .. escape(s:makeprg, ' \|"') + +" Showing error in context with underlining. +CompilerSet errorformat=%+G+%m +" Error summary. +CompilerSet errorformat+=%E%*\\S\ :\ %m +" Error location. +CompilerSet errorformat+=%CAt\ %f:%l\ char:%c +" Errors that span multiple lines (may be wrapped to width of terminal). +CompilerSet errorformat+=%C%m +" Ignore blank/whitespace-only lines. +CompilerSet errorformat+=%Z\\s%# + +if g:ps1_efm_show_error_categories + CompilerSet errorformat^=%+G\ \ \ \ +\ %.%#\\s%#:\ %m +else + CompilerSet errorformat^=%-G\ \ \ \ +\ %.%#\\s%#:\ %m +endif + + +" Parse file, line, char from of parse errors: +" At C:\script.ps1:22 char:16 +" + Stop-Process -Name "invalidprocess +" + ~~~~~~~~~~~~~~~ +" The string is missing the terminator: ". +" + CategoryInfo : ParserError: (:) [], ParseException +" + FullyQualifiedErrorId : TerminatorExpectedAtEndOfString +CompilerSet errorformat+=At\ %f:%l\ char:%c + + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim:set sw=2 sts=2: diff --git a/nvim/.config/nvim/compiler/pylint.vim b/nvim/.config/nvim/compiler/pylint.vim new file mode 100644 index 0000000..749fe7d --- /dev/null +++ b/nvim/.config/nvim/compiler/pylint.vim @@ -0,0 +1,22 @@ +" Vim compiler file +" Compiler: Pylint for Python +" Maintainer: Daniel Moch +" Last Change: 2024 Nov 07 by The Vim Project (added params variable) +" 2024 Nov 19 by the Vim Project (properly escape makeprg setting) +" 2025 Nov 06 by the Vim Project (do not set buffer-local makeprg) + +if exists("current_compiler") | finish | endif +let current_compiler = "pylint" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=ruff +exe 'CompilerSet makeprg=' .. escape('pylint ' . + \ '--output-format=text --msg-template="{path}:{line}:{column}:{C}: [{symbol}] {msg}" --reports=no ' . + \ get(b:, "pylint_makeprg_params", get(g:, "pylint_makeprg_params", '--jobs=0')), + \ ' \|"') +CompilerSet errorformat=%A%f:%l:%c:%t:\ %m,%A%f:%l:\ %m,%A%f:(%l):\ %m,%-Z%p^%.%#,%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/pyright.vim b/nvim/.config/nvim/compiler/pyright.vim new file mode 100644 index 0000000..eef6a9e --- /dev/null +++ b/nvim/.config/nvim/compiler/pyright.vim @@ -0,0 +1,25 @@ +" Vim compiler file +" Compiler: Pyright (Python Type Checker) +" Maintainer: @konfekt +" Last Change: 2025 Feb 7 + +if exists("current_compiler") | finish | endif +let current_compiler = "pyright" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=pyright +" CompilerSet makeprg=basedpyright +exe 'CompilerSet makeprg=' .. escape( + \ get(b:, 'pyright_makeprg', get(g:, 'pyright_makeprg', 'pyright')), + \ ' \|"') +CompilerSet errorformat= + \%E%f:%l:%c\ -\ error:\ %m, + \%W%f:%l:%c\ -\ warning:\ %m, + \%N%f:%l:%c\ -\ note:\ %m, + \%C[\ \t]\ %.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/pytest.vim b/nvim/.config/nvim/compiler/pytest.vim new file mode 100644 index 0000000..7fc1899 --- /dev/null +++ b/nvim/.config/nvim/compiler/pytest.vim @@ -0,0 +1,103 @@ +" Vim compiler file +" Compiler: Pytest (Python testing framework) +" Maintainer: @Konfekt and @mgedmin +" Last Change: 2024 Nov 28 + +if exists("current_compiler") | finish | endif +let current_compiler = "pytest" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=pytest +if has('unix') + execute $'CompilerSet makeprg=/usr/bin/env\ PYTHONWARNINGS=ignore\ pytest\ {escape(get(b:, 'pytest_makeprg_params', get(g:, 'pytest_makeprg_params', '--tb=short --quiet')), ' \|"')}' +elseif has('win32') + execute $'CompilerSet makeprg=set\ PYTHONWARNINGS=ignore\ &&\ pytest\ {escape(get(b:, 'pytest_makeprg_params', get(g:, 'pytest_makeprg_params', '--tb=short --quiet')), ' \|"')}' +else + CompilerSet makeprg=pytest\ --tb=short\ --quiet + execute $'CompilerSet makeprg=pytest\ {escape(get(b:, 'pytest_makeprg_params', get(g:, 'pytest_makeprg_params', '--tb=short --quiet')), ' \|"')}' +endif + +" Pytest syntax errors {{{2 + +" Reset error format so that sourcing .vimrc again and again doesn't grow it +" without bounds +setlocal errorformat& + +" For the record, the default errorformat is this: +" +" %*[^"]"%f"%*\D%l: %m +" "%f"%*\D%l: %m +" %-G%f:%l: (Each undeclared identifier is reported only once +" %-G%f:%l: for each function it appears in.) +" %-GIn file included from %f:%l:%c: +" %-GIn file included from %f:%l:%c\, +" %-GIn file included from %f:%l:%c +" %-GIn file included from %f:%l +" %-G%*[ ]from %f:%l:%c +" %-G%*[ ]from %f:%l: +" %-G%*[ ]from %f:%l\, +" %-G%*[ ]from %f:%l +" %f:%l:%c:%m +" %f(%l):%m +" %f:%l:%m +" "%f"\, line %l%*\D%c%*[^ ] %m +" %D%*\a[%*\d]: Entering directory %*[`']%f' +" %X%*\a[%*\d]: Leaving directory %*[`']%f' +" %D%*\a: Entering directory %*[`']%f' +" %X%*\a: Leaving directory %*[`']%f' +" %DMaking %*\a in %f +" %f|%l| %m +" +" and sometimes it misfires, so let's fix it up a bit +" (TBH I don't even know what compiler produces filename(lineno) so why even +" have it?) +setlocal errorformat-=%f(%l):%m + +" Sometimes Vim gets confused about ISO-8601 timestamps and thinks they're +" filenames; this is a big hammer that ignores anything filename-like on lines +" that start with at least two spaces, possibly preceded by a number and +" optional punctuation +setlocal errorformat^=%+G%\\d%#%.%\\=\ \ %.%# + +" Similar, but when the entire line starts with a date +setlocal errorformat^=%+G\\d\\d\\d\\d-\\d\\d-\\d\\d\ \\d\\d:\\d\\d%.%# + +" make: *** [Makefile:14: target] Error 1 +setlocal errorformat^=%+Gmake:\ ***\ %.%# + +" FAILED tests.py::test_with_params[YYYY-MM-DD:HH:MM:SS] - Exception: bla bla +setlocal errorformat^=%+GFAILED\ %.%# + +" AssertionError: assert ...YYYY-MM-DD:HH:MM:SS... +setlocal errorformat^=%+GAssertionError:\ %.%# + +" --- /path/to/file:before YYYY-MM-DD HH:MM:SS.ssssss +setlocal errorformat^=---%f:%m + +" +++ /path/to/file:before YYYY-MM-DD HH:MM:SS.ssssss +setlocal errorformat^=+++%f:%m + +" Sometimes pytest prepends an 'E' marker at the beginning of a traceback line +setlocal errorformat+=E\ %#File\ \"%f\"\\,\ line\ %l%.%# + +" Python tracebacks (unittest + doctest output) {{{2 + +" This collapses the entire traceback into just the last file+lineno, +" which is convenient when you want to jump to the line that failed (and not +" the top-level entry point), but it makes it impossible to see the full +" traceback, which sucks. +""setlocal errorformat+= +"" \File\ \"%f\"\\,\ line\ %l%.%#, +"" \%C\ %.%#, +"" \%-A\ \ File\ \"unittest%.py\"\\,\ line\ %.%#, +"" \%-A\ \ File\ \"%f\"\\,\ line\ 0%.%#, +"" \%A\ \ File\ \"%f\"\\,\ line\ %l%.%#, +"" \%Z%[%^\ ]%\\@=%m +setlocal errorformat+=File\ \"%f\"\\,\ line\ %l\\,%#%m + +exe 'CompilerSet errorformat='..escape(&l:errorformat, ' \|"') + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/pyunit.vim b/nvim/.config/nvim/compiler/pyunit.vim new file mode 100644 index 0000000..2368346 --- /dev/null +++ b/nvim/.config/nvim/compiler/pyunit.vim @@ -0,0 +1,13 @@ +" Vim compiler file +" Compiler: Unit testing tool for Python +" Maintainer: Max Ischenko +" Last Change: 2004 Mar 27 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "pyunit" + +CompilerSet efm=%C\ %.%#,%A\ \ File\ \"%f\"\\,\ line\ %l%.%#,%Z%[%^\ ]%\\@=%m + diff --git a/nvim/.config/nvim/compiler/raco.vim b/nvim/.config/nvim/compiler/raco.vim new file mode 100644 index 0000000..d35d86b --- /dev/null +++ b/nvim/.config/nvim/compiler/raco.vim @@ -0,0 +1,11 @@ +" Vim compiler file +" Compiler: raco (Racket command-line tools) +" Maintainer: D. Ben Knoble +" URL: https://github.com/benknoble/vim-racket +" Last Change: 2022 Aug 12 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +let current_compiler = 'raco' + +CompilerSet makeprg=raco +CompilerSet errorformat=%f:%l:%c:%m diff --git a/nvim/.config/nvim/compiler/racomake.vim b/nvim/.config/nvim/compiler/racomake.vim new file mode 100644 index 0000000..bd2c327 --- /dev/null +++ b/nvim/.config/nvim/compiler/racomake.vim @@ -0,0 +1,11 @@ +" Vim compiler file +" Compiler: raco make (Racket command-line tools) +" Maintainer: D. Ben Knoble +" URL: https://github.com/benknoble/vim-racket +" Last Change: 2022 Aug 12 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +let current_compiler = 'racomake' + +CompilerSet makeprg=raco\ make\ --\ % +CompilerSet errorformat=%f:%l:%c:%m diff --git a/nvim/.config/nvim/compiler/racosetup.vim b/nvim/.config/nvim/compiler/racosetup.vim new file mode 100644 index 0000000..e16faf0 --- /dev/null +++ b/nvim/.config/nvim/compiler/racosetup.vim @@ -0,0 +1,11 @@ +" Vim compiler file +" Compiler: raco setup (Racket command-line tools) +" Maintainer: D. Ben Knoble +" URL: https://github.com/benknoble/vim-racket +" Last Change: 2022 Aug 12 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +let current_compiler = 'racosetup' + +CompilerSet makeprg=raco\ setup +CompilerSet errorformat=%f:%l:%c:%m diff --git a/nvim/.config/nvim/compiler/racotest.vim b/nvim/.config/nvim/compiler/racotest.vim new file mode 100644 index 0000000..3ac1173 --- /dev/null +++ b/nvim/.config/nvim/compiler/racotest.vim @@ -0,0 +1,11 @@ +" Vim compiler file +" Compiler: raco test (Racket command-line tools) +" Maintainer: D. Ben Knoble +" URL: https://github.com/benknoble/vim-racket +" Last Change: 2022 Aug 12 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +let current_compiler = 'racotest' + +CompilerSet makeprg=raco\ test\ % +CompilerSet errorformat=location:%f:%l:%c diff --git a/nvim/.config/nvim/compiler/rake.vim b/nvim/.config/nvim/compiler/rake.vim new file mode 100644 index 0000000..55f7373 --- /dev/null +++ b/nvim/.config/nvim/compiler/rake.vim @@ -0,0 +1,36 @@ +" Vim compiler file +" Language: Rake +" Maintainer: Tim Pope +" URL: https://github.com/vim-ruby/vim-ruby +" Last Change: 2018 Mar 02 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "rake" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=rake + +CompilerSet errorformat= + \%D(in\ %f), + \%\\s%#%\\d%#:%#\ %#from\ %f:%l:%m, + \%\\s%#%\\d%#:%#\ %#from\ %f:%l:, + \%\\s%##\ %f:%l:%m%\\&%.%#%\\D:%\\d%\\+:%.%#, + \%\\s%##\ %f:%l%\\&%.%#%\\D:%\\d%\\+, + \%\\s%#[%f:%l:\ %#%m%\\&%.%#%\\D:%\\d%\\+:%.%#, + \%\\s%#%f:%l:\ %#%m%\\&%.%#%\\D:%\\d%\\+:%.%#, + \%\\s%#%f:%l:, + \%m\ [%f:%l]:, + \%+Erake\ aborted!, + \%+EDon't\ know\ how\ to\ build\ task\ %.%#, + \%+Einvalid\ option:%.%#, + \%+Irake\ %\\S%\\+%\\s%\\+#\ %.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim: nowrap sw=2 sts=2 ts=8: diff --git a/nvim/.config/nvim/compiler/rhino.vim b/nvim/.config/nvim/compiler/rhino.vim new file mode 100644 index 0000000..b6fc9c8 --- /dev/null +++ b/nvim/.config/nvim/compiler/rhino.vim @@ -0,0 +1,26 @@ +" Vim compiler file +" Compiler: Rhino Shell (JavaScript in Java) +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "rhino" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=java\ -jar\ lib/rhino-X.X.XX.jar\ -w\ -strict + +CompilerSet makeprg=rhino +CompilerSet errorformat=%-Gjs:\ %.%#Compilation\ produced%.%#, + \%Ejs:\ \"%f\"\\,\ line\ %l:\ %m, + \%Ejs:\ uncaught\ JavaScript\ runtime\ exception:\ %m, + \%Wjs:\ warning:\ \"%f\"\\,\ line\ %l:\ %m, + \%Zjs:\ %p^, + \%Cjs:\ %.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/rime_deployer.vim b/nvim/.config/nvim/compiler/rime_deployer.vim new file mode 100644 index 0000000..5331412 --- /dev/null +++ b/nvim/.config/nvim/compiler/rime_deployer.vim @@ -0,0 +1,33 @@ +" Vim Compiler File +" Language: rime_deployer +" Maintainer: Wu, Zhenyu +" URL: https://rime.im +" Latest Revision: 2024-04-09 +" Last Change: 2025 Nov 16 by The Vim Project (set errorformat) + +if exists('b:current_compiler') + finish +endif +let b:current_compiler = 'rime_deployer' + +let s:save_cpoptions = &cpoptions +set cpoptions&vim + +" Android Termux +let s:prefix = getenv('PREFIX') +if s:prefix == v:null + let s:prefix = '/usr' +endif +" Android, NixOS, GNU/Linux, BSD +for s:shared_data_dir in ['/sdcard/rime-data', '/run/current-system/sw/share/rime-data', '/usr/local/share/rime-data', s:prefix . '/share/rime-data'] + if isdirectory(s:shared_data_dir) + break + endif +endfor +execute 'CompilerSet makeprg=rime_deployer\ --build\ %:p:h:S\' s:shared_data_dir +unlet s:prefix s:shared_data_dir +" CompilerSet errorformat=%f:%l:%c:\ %m,%f:%l:\ %m +CompilerSet errorformat& + +let &cpoptions = s:save_cpoptions +unlet s:save_cpoptions diff --git a/nvim/.config/nvim/compiler/rspec.vim b/nvim/.config/nvim/compiler/rspec.vim new file mode 100644 index 0000000..ab83acc --- /dev/null +++ b/nvim/.config/nvim/compiler/rspec.vim @@ -0,0 +1,32 @@ +" Vim compiler file +" Language: RSpec +" Maintainer: Tim Pope +" URL: https://github.com/vim-ruby/vim-ruby +" Last Change: 2018 Aug 07 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "rspec" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=rspec + +CompilerSet errorformat= + \%f:%l:\ %tarning:\ %m, + \%E%.%#:in\ `load':\ %f:%l:%m, + \%E%f:%l:in\ `%*[^']':\ %m, + \%-Z\ \ \ \ \ %\\+\#\ %f:%l:%.%#, + \%E\ \ \ \ \ Failure/Error:\ %m, + \%E\ \ \ \ \ Failure/Error:, + \%C\ \ \ \ \ %m, + \%C%\\s%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim: nowrap sw=2 sts=2 ts=8: diff --git a/nvim/.config/nvim/compiler/rst.vim b/nvim/.config/nvim/compiler/rst.vim new file mode 100644 index 0000000..72b6a58 --- /dev/null +++ b/nvim/.config/nvim/compiler/rst.vim @@ -0,0 +1,29 @@ +" Vim compiler file +" Compiler: sphinx >= 1.0.8, http://www.sphinx-doc.org +" Description: reStructuredText Documentation Format +" Previous Maintainer: Nikolai Weibull +" Last Change: 2017 Mar 31 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "rst" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet errorformat= + \%f\\:%l:\ %tEBUG:\ %m, + \%f\\:%l:\ %tNFO:\ %m, + \%f\\:%l:\ %tARNING:\ %m, + \%f\\:%l:\ %tRROR:\ %m, + \%f\\:%l:\ %tEVERE:\ %m, + \%f\\:%s:\ %tARNING:\ %m, + \%f\\:%s:\ %tRROR:\ %m, + \%D%*\\a[%*\\d]:\ Entering\ directory\ `%f', + \%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f', + \%DMaking\ %*\\a\ in\ %f + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/rubocop.vim b/nvim/.config/nvim/compiler/rubocop.vim new file mode 100644 index 0000000..9d2f014 --- /dev/null +++ b/nvim/.config/nvim/compiler/rubocop.vim @@ -0,0 +1,19 @@ +" Vim compiler file +" Compiler: RuboCop +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "rubocop" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=rubocop\ --format\ emacs +CompilerSet errorformat=%f:%l:%c:\ %t:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/ruby.vim b/nvim/.config/nvim/compiler/ruby.vim new file mode 100644 index 0000000..2c34142 --- /dev/null +++ b/nvim/.config/nvim/compiler/ruby.vim @@ -0,0 +1,41 @@ +" Vim compiler file +" Language: Ruby +" Function: Syntax check and/or error reporting +" Maintainer: Tim Pope +" URL: https://github.com/vim-ruby/vim-ruby +" Last Change: 2019 Jan 06 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "ruby" + +let s:cpo_save = &cpo +set cpo-=C + +" default settings runs script normally +" add '-c' switch to run syntax check only: +" +" CompilerSet makeprg=ruby\ -c +" +" or add '-c' at :make command line: +" +" :make -c % +" +CompilerSet makeprg=ruby + +CompilerSet errorformat= + \%+E%f:%l:\ parse\ error, + \%W%f:%l:\ warning:\ %m, + \%E%f:%l:in\ %*[^:]:\ %m, + \%E%f:%l:\ %m, + \%-C%\t%\\d%#:%#\ %#from\ %f:%l:in\ %.%#, + \%-Z%\t%\\d%#:%#\ %#from\ %f:%l, + \%-Z%p^, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim: nowrap sw=2 sts=2 ts=8: diff --git a/nvim/.config/nvim/compiler/rubyunit.vim b/nvim/.config/nvim/compiler/rubyunit.vim new file mode 100644 index 0000000..2c6f539 --- /dev/null +++ b/nvim/.config/nvim/compiler/rubyunit.vim @@ -0,0 +1,32 @@ +" Vim compiler file +" Language: Test::Unit - Ruby Unit Testing Framework +" Maintainer: Doug Kearns +" URL: https://github.com/vim-ruby/vim-ruby +" Last Change: 2014 Mar 23 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "rubyunit" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=testrb +" CompilerSet makeprg=ruby\ -Itest +" CompilerSet makeprg=m + +CompilerSet errorformat=\%W\ %\\+%\\d%\\+)\ Failure:, + \%C%m\ [%f:%l]:, + \%E\ %\\+%\\d%\\+)\ Error:, + \%C%m:, + \%C\ \ \ \ %f:%l:%.%#, + \%C%m, + \%Z\ %#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim: nowrap sw=2 sts=2 ts=8: diff --git a/nvim/.config/nvim/compiler/ruff.vim b/nvim/.config/nvim/compiler/ruff.vim new file mode 100644 index 0000000..d4f564b --- /dev/null +++ b/nvim/.config/nvim/compiler/ruff.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: Ruff (Python linter) +" Maintainer: @pbnj-dragon +" Last Change: 2024 Nov 07 +" 2024 Nov 19 by the Vim Project (properly escape makeprg setting) +" 2025 Nov 06 by the Vim Project (do not set buffer-local makeprg) +" 2024 Dec 24 by the Vim Project (mute Found messages) + +if exists("current_compiler") | finish | endif +let current_compiler = "ruff" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=ruff +exe 'CompilerSet makeprg=' .. escape('ruff check --output-format=concise ' + \ ..get(b:, 'ruff_makeprg_params', get(g:, 'ruff_makeprg_params', '--preview')), + \ ' \|"') +CompilerSet errorformat=%f:%l:%c:\ %m,%f:%l:\ %m,%f:%l:%c\ -\ %m,%f: +CompilerSet errorformat+=%-GFound\ %.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/rustc.vim b/nvim/.config/nvim/compiler/rustc.vim new file mode 100644 index 0000000..0b48891 --- /dev/null +++ b/nvim/.config/nvim/compiler/rustc.vim @@ -0,0 +1,53 @@ +" Vim compiler file +" Compiler: Rust Compiler +" Maintainer: Chris Morgan +" Latest Revision: 2023-09-11 +" 2025 Nov 15 by Vim project: remove test for Vim patch 7.4.191 +" 2025 Dec 18 by Vim project: detect more errors #18957 +" For bugs, patches and license go to https://github.com/rust-lang/rust.vim + +if exists("current_compiler") + finish +endif +let current_compiler = "rustc" + +" vint: -ProhibitAbbreviationOption +let s:save_cpo = &cpo +set cpo&vim +" vint: +ProhibitAbbreviationOption + +if get(g:, 'rustc_makeprg_no_percent', 0) + CompilerSet makeprg=rustc +else + CompilerSet makeprg=rustc\ \%:S +endif + +" New errorformat (after nightly 2016/08/10) +CompilerSet errorformat= + \%-G, + \%-Gerror:\ aborting\ %.%#, + \%-Gerror:\ Could\ not\ compile\ %.%#, + \%Eerror:\ %m, + \%Eerror[E%n]:\ %m, + \%Wwarning:\ %m, + \%Wwarning[E%n]:\ %m, + \%Inote:\ %m, + \%C\ %#-->\ %f:%l:%c, + \%C\ %#╭▸\ %f:%l:%c, + \%E\ \ left:%m,%C\ right:%m\ %f:%l:%c,%Z + +" Old errorformat (before nightly 2016/08/10) +CompilerSet errorformat+= + \%f:%l:%c:\ %t%*[^:]:\ %m, + \%f:%l:%c:\ %*\\d:%*\\d\ %t%*[^:]:\ %m, + \%-G%f:%l\ %s, + \%-G%*[\ ]^, + \%-G%*[\ ]^%*[~], + \%-G%*[\ ]... + +" vint: -ProhibitAbbreviationOption +let &cpo = s:save_cpo +unlet s:save_cpo +" vint: +ProhibitAbbreviationOption + +" vim: set et sw=4 sts=4 ts=8: diff --git a/nvim/.config/nvim/compiler/sass.vim b/nvim/.config/nvim/compiler/sass.vim new file mode 100644 index 0000000..d0ed65c --- /dev/null +++ b/nvim/.config/nvim/compiler/sass.vim @@ -0,0 +1,27 @@ +" Vim compiler file +" Compiler: Sass +" Maintainer: Tim Pope +" Last Change: 2016 Aug 29 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "sass" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=sass + +CompilerSet errorformat= + \%f:%l:%m\ (Sass::Syntax%trror), + \%ESyntax\ %trror:%m, + \%C%\\s%\\+on\ line\ %l\ of\ %f, + \%Z%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save + +" vim:set sw=2 sts=2: diff --git a/nvim/.config/nvim/compiler/scdoc.vim b/nvim/.config/nvim/compiler/scdoc.vim new file mode 100644 index 0000000..364ddc1 --- /dev/null +++ b/nvim/.config/nvim/compiler/scdoc.vim @@ -0,0 +1,14 @@ +" scdoc compiler for Vim +" Compiler: scdoc +" Maintainer: Gregory Anders +" Last Updated: 2019-10-24 +" 2024 Apr 05 by The Vim Project (removed :CompilerSet definition) +" Upstream: https://github.com/gpanders/vim-scdoc + +if exists('current_compiler') + finish +endif +let current_compiler = 'scdoc' + +CompilerSet makeprg=scdoc\ <\ %\ 2>&1 +CompilerSet errorformat=Error\ at\ %l:%c:\ %m,%-G%.%# diff --git a/nvim/.config/nvim/compiler/se.vim b/nvim/.config/nvim/compiler/se.vim new file mode 100644 index 0000000..c933227 --- /dev/null +++ b/nvim/.config/nvim/compiler/se.vim @@ -0,0 +1,26 @@ +" Vim compiler file +" Compiler: se (Liberty Eiffel Compiler) +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "se" + +let s:cpo_save = &cpo +set cpo-=C + +CompilerSet makeprg=se\ c + +CompilerSet errorformat=%W******\ Warning:\ %m, + \%E******\ Fatal\ Error:\ %m, + \%E******\ Error:\ %m, + \%ZLine\ %l\ column\ %c\ in\ %.%#\ (%f)\ %\\=:, + \%ZLine\ %l\ columns\ %c\\,\ %\\d%\\+\ %.%#\ (%f)\ %\\=:, + \%+C%*[^\ ]%.%#, + \%-GThe\ source\ lines\ involved, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/shellcheck.vim b/nvim/.config/nvim/compiler/shellcheck.vim new file mode 100644 index 0000000..5eeddc6 --- /dev/null +++ b/nvim/.config/nvim/compiler/shellcheck.vim @@ -0,0 +1,21 @@ +" Vim compiler file +" Compiler: ShellCheck +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "shellcheck" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=shellcheck\ -f\ gcc +CompilerSet errorformat=%f:%l:%c:\ %trror:\ %m\ [SC%n], + \%f:%l:%c:\ %tarning:\ %m\ [SC%n], + \%f:%l:%c:\ %tote:\ %m\ [SC%n], + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/sml.vim b/nvim/.config/nvim/compiler/sml.vim new file mode 100644 index 0000000..e829e20 --- /dev/null +++ b/nvim/.config/nvim/compiler/sml.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: SML/NJ Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "sml" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=sml +CompilerSet errorformat=%f:%l.%c-%e.%k\ %trror:\ %m, + \%f:%l.%c\ %trror:\ %m, + \%trror:\ %m, + \%f:%l.%c-%e.%k\ %tarning:\ %m, + \%f:%l.%c\ %tarning:\ %m, + \%tarning:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/spectral.vim b/nvim/.config/nvim/compiler/spectral.vim new file mode 100644 index 0000000..f1ea865 --- /dev/null +++ b/nvim/.config/nvim/compiler/spectral.vim @@ -0,0 +1,14 @@ +" Vim compiler file +" Compiler: Spectral for YAML +" Maintainer: Romain Lafourcade +" Last Change: 2021 July 21 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "spectral" + +CompilerSet makeprg=spectral\ lint\ %\ -f\ text +CompilerSet errorformat=%f:%l:%c\ %t%.%\\{-}\ %m + diff --git a/nvim/.config/nvim/compiler/splint.vim b/nvim/.config/nvim/compiler/splint.vim new file mode 100644 index 0000000..e004601 --- /dev/null +++ b/nvim/.config/nvim/compiler/splint.vim @@ -0,0 +1,68 @@ +" Vim compiler file +" Compiler: splint/lclint (C source code checker) +" Maintainer: Ralf Wildenhues +" Splint Home: http://www.splint.org/ +" Last Change: 2019 Jul 23 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" $Revision: 1.3 $ + +if exists("current_compiler") + finish +endif +let current_compiler = "splint" + +let s:cpo_save = &cpo +set cpo-=C + +" adapt this if you want to check more than one file at a time. +" put command line options in .splintrc or ~/.splintrc +CompilerSet makeprg=splint\ %:S + +" Note: when using the new array bounds checking flags: Each warning +" usually has several lines and several references to source code mostly +" within one or two lines (see sample warning below). The easiest way +" not to mess up file name detection and not to jump to all positions is +" to add something like +" -linelen 500 +boundscompacterrormessages +" to your .splintrc and 'set cmdheight=4' or more. +" TODO: reliable way to distinguish file names and constraints. +" +" sample warning (generic): +" +"foo.c:1006:12: Clauses exit with var referencing local storage in one +" case, fresh storage in other case +" foo.c:1003:2: Fresh storage var allocated +" +" sample warning (bounds checking): +" +"bounds.c: (in function updateEnv) +"bounds.c:10:5: Possible out-of-bounds store: +" strcpy(str, tmp) +" Unable to resolve constraint: +" requires maxSet(str @ bounds.c:10:13) >= maxRead(getenv("MYENV") @ +" bounds.c:6:9) +" needed to satisfy precondition: +" requires maxSet(str @ bounds.c:10:13) >= maxRead(tmp @ bounds.c:10:18) +" derived from strcpy precondition: requires maxSet() >= +" maxRead() +" A memory write may write to an address beyond the allocated buffer. (Use +" -boundswrite to inhibit warning) + +CompilerSet errorformat=%OLCLint*m, + \%OSplint*m, + \%f(%l\\,%c):\ %m, + \%*[\ ]%f:%l:%c:\ %m, + \%*[\ ]%f:%l:\ %m, + \%*[^\"]\"%f\"%*\\D%l:\ %m, + \\"%f\"%*\\D%l:\ %m, + \%A%f:%l:%c:\ %m, + \%A%f:%l:%m, + \\"%f\"\\, + \\ line\ %l%*\\D%c%*[^\ ]\ %m, + \%D%*\\a[%*\\d]:\ Entering\ directory\ `%f', + \%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f', + \%DMaking\ %*\\a\ in\ %f, + \%C\ %#%m + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/spotbugs.vim b/nvim/.config/nvim/compiler/spotbugs.vim new file mode 100644 index 0000000..8ed45f8 --- /dev/null +++ b/nvim/.config/nvim/compiler/spotbugs.vim @@ -0,0 +1,254 @@ +" Vim compiler file +" Compiler: Spotbugs (Java static checker; needs javac compiled classes) +" Maintainers: @konfekt and @zzzyxwvut +" Last Change: 2024 Dec 20 + +if exists('g:current_compiler') || bufname() !~# '\.java\=$' || wordcount().chars < 9 + finish +endif + +let s:cpo_save = &cpo +set cpo&vim + +" Unfortunately Spotbugs does not output absolute paths, so you need to +" pass the directory of the files being checked as `-sourcepath` parameter. +" The regex, auxpath and glob try to include all dependent classes of the +" current buffer. See https://github.com/spotbugs/spotbugs/issues/856 + +" FIXME: When "search()" is used with the "e" flag, it makes no _further_ +" progress after claiming an EOL match (i.e. "\_" or "\n", but not "$"). +" XXX: Omit anonymous class declarations +let s:keywords = '\C\<\%(\.\@1' +" Capture ";" for counting a class file directory (see s:package_dir_heads below) +let s:package_names = '\C\ 0 + let name_attr = synIDattr(synID(lnum, (col('.') - 1), 0), 'name') + if name_attr ==# 'javaClassDecl' + let tokens = matchlist(getline(lnum)..getline(lnum + 1), s:type_names) + if !empty(tokens) | call add(type_names, tokens[1]) | endif + elseif name_attr ==# 'javaExternal' + let tokens = matchlist(getline(lnum)..getline(lnum + 1), s:package_names) + if !empty(tokens) | let s:package = tokens[1] | endif + endif + let lnum = search(s:keywords, 'eW') + endwhile + return type_names + endfunction + +else + function! s:GetDeclaredTypeNames() abort + if bufname() =~# '\<\%(module\|package\)-info\.java\=$' + return [expand('%:t:r')] + endif + " Undo the unsetting of &hls, see below + if &hls + defer execute('set hls') + endif + " Possibly restore the current values for registers '"' and "y", see below + defer call('setreg', ['"', getreg('"'), getregtype('"')]) + defer call('setreg', ['y', getreg('y'), getregtype('y')]) + defer execute('silent bwipeout') + " Copy buffer contents for modification + silent %y y + new + " Apply ":help scratch-buffer" effects and match "$" in Java (generated) + " type names (see s:type_names) + setlocal iskeyword+=$ buftype=nofile bufhidden=hide noswapfile nohls + 0put y + " Discard text blocks and strings + silent keeppatterns %s/\\\@ 0 + let line = getline(lnum) + if line =~# '\' + let tokens = matchlist(line..getline(lnum + 1), s:package_names) + if !empty(tokens) | let s:package = tokens[1] | endif + else + let tokens = matchlist(line..getline(lnum + 1), s:type_names) + if !empty(tokens) | call add(type_names, tokens[1]) | endif + endif + let lnum = search(s:keywords, 'eW') + endwhile + return type_names + endfunction +endif + +if has('win32') + + function! s:GlobClassFiles(src_type_name) abort + return glob(a:src_type_name..'$*.class', 1, 1) + endfunction + +else + function! s:GlobClassFiles(src_type_name) abort + return glob(a:src_type_name..'\$*.class', 1, 1) + endfunction +endif + +if exists('b:spotbugs_properties') + " Let "ftplugin/java.vim" merge global entries, if any, in buffer-local + " entries + + function! s:GetProperty(name, default) abort + return get(b:spotbugs_properties, a:name, a:default) + endfunction + +elseif exists('g:spotbugs_properties') + + function! s:GetProperty(name, default) abort + return get(g:spotbugs_properties, a:name, a:default) + endfunction + +else + function! s:GetProperty(dummy, default) abort + return a:default + endfunction +endif + +if (exists('g:spotbugs_properties') || exists('b:spotbugs_properties')) && + \ ((!empty(s:GetProperty('sourceDirPath', [])) && + \ !empty(s:GetProperty('classDirPath', []))) || + \ (!empty(s:GetProperty('testSourceDirPath', [])) && + \ !empty(s:GetProperty('testClassDirPath', [])))) + + function! s:CommonIdxsAndDirs() abort + let src_dir_path = s:GetProperty('sourceDirPath', []) + let bin_dir_path = s:GetProperty('classDirPath', []) + let test_src_dir_path = s:GetProperty('testSourceDirPath', []) + let test_bin_dir_path = s:GetProperty('testClassDirPath', []) + let dir_cnt = min([len(src_dir_path), len(bin_dir_path)]) + let test_dir_cnt = min([len(test_src_dir_path), len(test_bin_dir_path)]) + " Do not break up path pairs with filtering! + return [[range(dir_cnt), + \ src_dir_path[0 : dir_cnt - 1], + \ bin_dir_path[0 : dir_cnt - 1]], + \ [range(test_dir_cnt), + \ test_src_dir_path[0 : test_dir_cnt - 1], + \ test_bin_dir_path[0 : test_dir_cnt - 1]]] + endfunction + + let s:common_idxs_and_dirs = s:CommonIdxsAndDirs() + delfunction s:CommonIdxsAndDirs + + function! s:FindClassFiles(src_type_name) abort + let class_files = [] + " Match pairwise the components of source and class pathnames + for [idxs, src_dirs, bin_dirs] in s:common_idxs_and_dirs + " Do not use "fnamemodify(a:src_type_name, ':p:s?src?bin?')" because + " only the rightmost "src" is looked for + for idx in idxs + let tail_idx = strridx(a:src_type_name, src_dirs[idx]) + " No such directory or no such inner type (i.e. without "$") + if tail_idx < 0 | continue | endif + " Substitute "bin_dirs[idx]" for the rightmost "src_dirs[idx]" + let candidate_type_name = strpart(a:src_type_name, 0, tail_idx).. + \ bin_dirs[idx].. + \ strpart(a:src_type_name, (tail_idx + strlen(src_dirs[idx]))) + for candidate in insert(s:GlobClassFiles(candidate_type_name), + \ candidate_type_name..'.class') + if filereadable(candidate) | call add(class_files, shellescape(candidate)) | endif + endfor + if !empty(class_files) | break | endif + endfor + if !empty(class_files) | break | endif + endfor + return class_files + endfunction + +else + function! s:FindClassFiles(src_type_name) abort + let class_files = [] + for candidate in insert(s:GlobClassFiles(a:src_type_name), + \ a:src_type_name..'.class') + if filereadable(candidate) | call add(class_files, shellescape(candidate)) | endif + endfor + return class_files + endfunction +endif + +if exists('g:spotbugs_alternative_path') && + \ !empty(get(g:spotbugs_alternative_path, 'fromPath', '')) && + \ !empty(get(g:spotbugs_alternative_path, 'toPath', '')) + + " See https://github.com/spotbugs/spotbugs/issues/909 + function! s:ResolveAbsolutePathname() abort + let pathname = expand('%:p') + let head_idx = stridx(pathname, g:spotbugs_alternative_path.toPath) + " No such file: a mismatched path request for a project + if head_idx < 0 | return pathname | endif + " Settle for failure with file readability tests _in s:FindClassFiles()_ + return strpart(pathname, 0, head_idx).. + \ g:spotbugs_alternative_path.fromPath.. + \ strpart(pathname, (head_idx + strlen(g:spotbugs_alternative_path.toPath))) + endfunction + +else + function! s:ResolveAbsolutePathname() abort + return expand('%:p') + endfunction +endif + +function! s:CollectClassFiles() abort + " Possibly obtain a symlinked path for an unsupported directory name + let pathname = s:ResolveAbsolutePathname() + " Get a platform-independent pathname prefix, cf. "expand('%:p:h')..'/'" + let tail_idx = strridx(pathname, expand('%:t')) + let src_pathname = strpart(pathname, 0, tail_idx) + let all_class_files = [] + " Get all type names in the current buffer and let the filename globbing + " discover inner type names from arbitrary type names + for type_name in s:GetDeclaredTypeNames() + call extend(all_class_files, s:FindClassFiles(src_pathname..type_name)) + endfor + return all_class_files +endfunction + +" Expose class files for removal etc. +let b:spotbugs_class_files = s:CollectClassFiles() +let s:package_dir_heads = repeat(':h', (1 + strlen(substitute(s:package, '[^.;]', '', 'g')))) +let s:package_root_dir = fnamemodify(s:ResolveAbsolutePathname(), s:package_dir_heads..':S') +let g:current_compiler = 'spotbugs' +" CompilerSet makeprg=spotbugs +let &l:makeprg = 'spotbugs'..(has('win32') ? '.bat' : '')..' '.. + \ get(b:, 'spotbugs_makeprg_params', get(g:, 'spotbugs_makeprg_params', '-workHard -experimental')).. + \ ' -textui -emacs -auxclasspath '..s:package_root_dir..' -sourcepath '..s:package_root_dir..' '.. + \ join(b:spotbugs_class_files, ' ') +" Emacs expects doubled line numbers +setlocal errorformat=%f:%l:%*[0-9]\ %m,%f:-%*[0-9]:-%*[0-9]\ %m + +" " This compiler is meant to be used for a single buffer only +" exe 'CompilerSet makeprg='..escape(&l:makeprg, ' \|"') +" exe 'CompilerSet errorformat='..escape(&l:errorformat, ' \|"') + +delfunction s:CollectClassFiles +delfunction s:ResolveAbsolutePathname +delfunction s:FindClassFiles +delfunction s:GetProperty +delfunction s:GlobClassFiles +delfunction s:GetDeclaredTypeNames +let &cpo = s:cpo_save +unlet! s:package_root_dir s:package_dir_heads s:common_idxs_and_dirs s:package +unlet! s:package_names s:type_names s:keywords s:cpo_save + +" vim: set foldmethod=syntax shiftwidth=2 expandtab: diff --git a/nvim/.config/nvim/compiler/stack.vim b/nvim/.config/nvim/compiler/stack.vim new file mode 100644 index 0000000..4236b4c --- /dev/null +++ b/nvim/.config/nvim/compiler/stack.vim @@ -0,0 +1,37 @@ +" Vim compiler file +" Compiler: Haskell Stack +" Maintainer: Daniel Campoverde +" Latest Revision: 2018-08-27 + +if exists("current_compiler") + finish +endif +let current_compiler = "stack" + +let s:cpo_save = &cpo +set cpo&vim + + +CompilerSet errorformat= + \%-G%.%#:\ build\ %.%#, + \%-G%.%#:\ configure\ %.%#, + \%-G[%.%#]%.%#, + \%-G%.%#preprocessing\ %.%#, + \%-G%.%#configuring\ %.%#, + \%-G%.%#building\ %.%#, + \%-G%.%#linking\ %.%#, + \%-G%.%#installing\ %.%#, + \%-G%.%#registering\ %.%#, + \%-G%.%#:\ copy/register%.%#, + \%-G%.%#process\ exited\ %.%#, + \%-G%.%#--builddir=%.%#, + \%-G--%.%#, + \%-G%.%#\|%.%#, + \%E%f:%l:%c:\ error:,%+Z\ \ \ \ %m, + \%E%f:%l:%c:\ error:\ %m,%-Z, + \%W%f:%l:%c:\ warning:,%+Z\ \ \ \ %m, + \%W%f:%l:%c:\ warning:\ %m,%-Z, + + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/standard.vim b/nvim/.config/nvim/compiler/standard.vim new file mode 100644 index 0000000..fdc79ae --- /dev/null +++ b/nvim/.config/nvim/compiler/standard.vim @@ -0,0 +1,13 @@ +" Vim compiler file +" Compiler: Standard for JavaScript +" Maintainer: Romain Lafourcade +" Last Change: 2020 August 20 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "standard" + +CompilerSet makeprg=npx\ standard +CompilerSet errorformat=%f:%l:%c:\ %m,%-G%.%# diff --git a/nvim/.config/nvim/compiler/stylelint.vim b/nvim/.config/nvim/compiler/stylelint.vim new file mode 100644 index 0000000..22acea9 --- /dev/null +++ b/nvim/.config/nvim/compiler/stylelint.vim @@ -0,0 +1,22 @@ +" Vim compiler file +" Compiler: Stylelint +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "stylelint" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=npx\ stylelint\ --formatter\ compact + +CompilerSet makeprg=stylelint\ --formatter\ compact +CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %trror\ -\ %m, + \%f:\ line\ %l\\,\ col\ %c\\,\ %tarning\ -\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/svelte-check.vim b/nvim/.config/nvim/compiler/svelte-check.vim new file mode 100644 index 0000000..bfffe28 --- /dev/null +++ b/nvim/.config/nvim/compiler/svelte-check.vim @@ -0,0 +1,21 @@ +" Vim compiler file +" Compiler: svelte-check +" Maintainer: @Konfekt +" Last Change: 2025 Feb 27 + +if exists("current_compiler") | finish | endif +let current_compiler = "svelte-check" + +CompilerSet makeprg=npx\ svelte-check\ --output\ machine +CompilerSet errorformat=%*\\d\ %t%*\\a\ \"%f\"\ %l:%c\ \"%m\", +CompilerSet errorformat+=%-G%*\\d\ START\ %.%#, +CompilerSet errorformat+=%-G%*\\d\ COMPLETED\ %.%#, +CompilerSet errorformat+=%-G%.%# + +" " Fall-back for versions of svelte-check that don't support --output machine +" " before May 2020 https://github.com/sveltejs/language-tools/commit/9f7a90379d287a41621a5e78af5b010a8ab810c3 +" " which is before the first production release 1.1.31 of Svelte-Check +" CompilerSet makeprg=npx\ svelte-check +" CompilerSet errorformat=%A%f:%l:%c, +" CompilerSet errorformat+=%C%t%*\\a\\:\ %m, +" CompilerSet errorformat+=%-G%.%#, diff --git a/nvim/.config/nvim/compiler/tcl.vim b/nvim/.config/nvim/compiler/tcl.vim new file mode 100644 index 0000000..1e6d1f3 --- /dev/null +++ b/nvim/.config/nvim/compiler/tcl.vim @@ -0,0 +1,13 @@ +" Vim compiler file +" Compiler: tcl +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "tcl" + +CompilerSet makeprg=tcl + +CompilerSet errorformat=%EError:\ %m,%+Z\ %\\{4}(file\ \"%f\"\ line\ %l),%-G%.%# diff --git a/nvim/.config/nvim/compiler/tex.vim b/nvim/.config/nvim/compiler/tex.vim new file mode 100644 index 0000000..529f7f7 --- /dev/null +++ b/nvim/.config/nvim/compiler/tex.vim @@ -0,0 +1,70 @@ +" Vim compiler file +" Compiler: TeX +" Maintainer: Artem Chuprina +" Contributors: Enno Nagel +" Last Change: 2024 Mar 29 +" 2024 Apr 03 by the Vim Project (removed :CompilerSet definition) +" 2024 Apr 05 by the Vim Project (avoid leaving behind g:makeprg) +" 2024 Nov 19 by the Vim Project (properly escape makeprg setting) +" 2025 Mar 11 by the Vim Project (add comment for Dispatch) + +if exists("current_compiler") + finish +endif +let s:keepcpo= &cpo +set cpo&vim + +" If makefile exists and we are not asked to ignore it, we use standard make +" (do not redefine makeprg) +if exists('b:tex_ignore_makefile') || exists('g:tex_ignore_makefile') || + \(!filereadable('Makefile') && !filereadable('makefile')) + " If buffer-local variable 'tex_flavor' exists, it defines TeX flavor, + " otherwise the same for global variable with same name, else it will be + " LaTeX + if exists("b:tex_flavor") + let current_compiler = b:tex_flavor + elseif exists("g:tex_flavor") + let current_compiler = g:tex_flavor + else + let current_compiler = "latex" + endif + let s:makeprg=current_compiler .. ' -interaction=nonstopmode' + " CompilerSet makeprg=latex + execute 'CompilerSet makeprg=' .. escape(s:makeprg, ' \|"') +else + let current_compiler = 'make' +endif + +" Value errorformat are taken from vim help, see :help errorformat-LaTeX, with +" addition from Srinath Avadhanula +CompilerSet errorformat=%E!\ LaTeX\ %trror:\ %m, + \%E!\ %m, + \%+WLaTeX\ %.%#Warning:\ %.%#line\ %l%.%#, + \%+W%.%#\ at\ lines\ %l--%*\\d, + \%WLaTeX\ %.%#Warning:\ %m, + \%Cl.%l\ %m, + \%+C\ \ %m., + \%+C%.%#-%.%#, + \%+C%.%#[]%.%#, + \%+C[]%.%#, + \%+C%.%#%[{}\\]%.%#, + \%+C<%.%#>%.%#, + \%C\ \ %m, + \%-GSee\ the\ LaTeX%m, + \%-GType\ \ H\ %m, + \%-G\ ...%.%#, + \%-G%.%#\ (C)\ %.%#, + \%-G(see\ the\ transcript%.%#), + \%-G\\s%#, + \%+O(%*[^()])%r, + \%+O%*[^()](%*[^()])%r, + \%+P(%f%r, + \%+P\ %\\=(%f%r, + \%+P%*[^()](%f%r, + \%+P[%\\d%[^()]%#(%f%r, + \%+Q)%r, + \%+Q%*[^()])%r, + \%+Q[%\\d%*[^()])%r + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/tidy.vim b/nvim/.config/nvim/compiler/tidy.vim new file mode 100644 index 0000000..9e72207 --- /dev/null +++ b/nvim/.config/nvim/compiler/tidy.vim @@ -0,0 +1,22 @@ +" Vim compiler file +" Compiler: HTML Tidy +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "tidy" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=tidy\ -quiet\ -errors\ --gnu-emacs\ yes +CompilerSet errorformat=%f:%l:%c:\ %trror:\ %m, + \%f:%l:%c:\ %tarning:\ %m, + \%f:%l:%c:\ %tnfo:\ %m, + \%f:%l:%c:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/tombi.vim b/nvim/.config/nvim/compiler/tombi.vim new file mode 100644 index 0000000..7a28672 --- /dev/null +++ b/nvim/.config/nvim/compiler/tombi.vim @@ -0,0 +1,69 @@ +" Vim compiler file +" Language: TOML +" Maintainer: Konfekt +" Last Change: 2025 Oct 29 + +if exists("current_compiler") | finish | endif +let current_compiler = "tombi" + +let s:cpo_save = &cpo +set cpo&vim + +if !executable('tombi') + echoerr "tombi compiler: 'tombi' executable not found in PATH" + let &cpo = s:cpo_save + unlet s:cpo_save + finish +endif + +" NO_COLOR support requires tombi 0.6.40 or later +if !exists('s:tombi_nocolor') + " Expect output like: 'tombi 0.6.40' or '0.6.40' + let s:out = trim(system('tombi --version')) + let s:tombi_ver = matchstr(s:out, '\v\s\d+\.\d+\.\d+$') + + function s:VersionGE(ver, req) abort + " Compare semantic versions a.b.c ≥ x.y.z + let l:pa = map(split(a:ver, '\.'), 'str2nr(v:val)') + let l:pb = map(split(a:req, '\.'), 'str2nr(v:val)') + while len(l:pa) < 3 | call add(l:pa, 0) | endwhile + while len(l:pb) < 3 | call add(l:pb, 0) | endwhile + for i in range(0, 2) + if l:pa[i] > l:pb[i] | return 1 + elseif l:pa[i] < l:pb[i] | return 0 + endif + endfor + return 1 + endfunction + let s:tombi_nocolor = s:VersionGE(s:tombi_ver, '0.6.40') + delfunction s:VersionGE +endif + +if s:tombi_nocolor + if has('win32') + if &shell =~# '\v<%(cmd|cmd)>' + CompilerSet makeprg=set\ NO_COLOR=1\ &&\ tombi\ lint + elseif &shell =~# '\v<%(powershell|pwsh)>' + CompilerSet makeprg=$env:NO_COLOR=\"1\";\ tombi\ lint + else + echoerr "tombi compiler: Unsupported shell for Windows" + endif + else " if has('unix') + CompilerSet makeprg=env\ NO_COLOR=1\ tombi\ lint + endif +else + " Older tombi: strip ANSI color codes with sed. + if executable('sed') + CompilerSet makeprg=tombi\ lint\ $*\ \|\ sed\ -E\ \"s/\\x1B(\\[[0-9;]*[JKmsu]\|\\(B)//g\" + else + echoerr "tombi compiler: tombi version < 0.6.40 requires 'sed' to strip ANSI color codes" + endif +endif + +CompilerSet errorformat=%E%*\\sError:\ %m,%Z%*\\sat\ %f:%l:%c +CompilerSet errorformat+=%W%*\\sWarning:\ %m,%Z%*\\sat\ %f:%l:%c +CompilerSet errorformat+=%-G1\ file\ failed\ to\ be\ linted +CompilerSet errorformat+=%-G1\ file\ linted\ successfully + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/ts-node.vim b/nvim/.config/nvim/compiler/ts-node.vim new file mode 100644 index 0000000..1b46d3b --- /dev/null +++ b/nvim/.config/nvim/compiler/ts-node.vim @@ -0,0 +1,25 @@ +" Vim compiler file +" Compiler: TypeScript Runner +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "node" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=npx\ ts-node + +CompilerSet makeprg=ts-node +CompilerSet errorformat=%f\ %#(%l\\,%c):\ %trror\ TS%n:\ %m, + \%E%f:%l, + \%+Z%\\w%\\+Error:\ %.%#, + \%C%p^%\\+, + \%C%.%#, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/tsc.vim b/nvim/.config/nvim/compiler/tsc.vim new file mode 100644 index 0000000..9922cd7 --- /dev/null +++ b/nvim/.config/nvim/compiler/tsc.vim @@ -0,0 +1,23 @@ +" Vim compiler file +" Compiler: TypeScript Compiler +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 +" 2025 Mar 11 by The Vim Project (add comment for Dispatch, add tsc_makeprg variable) + +if exists("current_compiler") + finish +endif +let current_compiler = "tsc" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=tsc +" CompilerSet makeprg=npx\ tsc +execute $'CompilerSet makeprg={escape(get(b:, 'tsc_makeprg', get(g:, 'tsc_makeprg', 'tsc')), ' \|"')}' +CompilerSet errorformat=%f\ %#(%l\\,%c):\ %trror\ TS%n:\ %m, + \%trror\ TS%n:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/ty.vim b/nvim/.config/nvim/compiler/ty.vim new file mode 100644 index 0000000..d9ee5aa --- /dev/null +++ b/nvim/.config/nvim/compiler/ty.vim @@ -0,0 +1,20 @@ +" Vim compiler file +" Compiler: Ty (Python Type Checker) +" Maintainer: @konfekt +" Last Change: 2024 Dec 24 + +if exists("current_compiler") | finish | endif +let current_compiler = "ty" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=ty +exe 'CompilerSet makeprg=' .. escape( + \ get(b:, 'ty_makeprg', get(g:, 'ty_makeprg', 'ty check --no-progress --color=never')) + \ ..' --output-format=concise', ' \|"') +CompilerSet errorformat=%f:%l:%c:\ %m,%f:%l:\ %m,%f:%l:%c\ -\ %m,%f: +CompilerSet errorformat+=%-GFound\ %.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/typedoc.vim b/nvim/.config/nvim/compiler/typedoc.vim new file mode 100644 index 0000000..7a152e8 --- /dev/null +++ b/nvim/.config/nvim/compiler/typedoc.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: TypeDoc +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "typedoc" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=npx\ typedoc + +CompilerSet makeprg=typedoc +CompilerSet errorformat=%EError:\ %f(%l), + \%WWarning:\ %f(%l), + \%+IDocumentation\ generated\ at\ %f, + \%Z\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/typst.vim b/nvim/.config/nvim/compiler/typst.vim new file mode 100644 index 0000000..f127401 --- /dev/null +++ b/nvim/.config/nvim/compiler/typst.vim @@ -0,0 +1,17 @@ +" Vim compiler file +" Language: Typst +" Previous Maintainer: Luca Saccarola +" Maintainer: This runtime file is looking for a new maintainer. +" Based On: https://github.com/kaarmu/typst.vim +" Last Change: 2025 Aug 05 + +if exists('current_compiler') + finish +endif +let current_compiler = get(g:, 'typst_cmd', 'typst') + +" With `--diagnostic-format` we can use the default errorformat +let s:makeprg = [current_compiler, 'compile', '--diagnostic-format', 'short', '%:S'] + +" CompilerSet makeprg=typst +execute 'CompilerSet makeprg=' . join(s:makeprg, '\ ') diff --git a/nvim/.config/nvim/compiler/vimdoc.vim b/nvim/.config/nvim/compiler/vimdoc.vim new file mode 100644 index 0000000..ca34f10 --- /dev/null +++ b/nvim/.config/nvim/compiler/vimdoc.vim @@ -0,0 +1,23 @@ +" Vim Compiler File +" Language: vimdoc +" Maintainer: Wu, Zhenyu +" Latest Revision: 2024-04-13 +" Last Change: 2025 Nov 16 by The Vim Project (set errorformat) +" +" If you can not find 'vimdoc' in the package manager of your distribution e.g +" 'pip', then you may need to build it from its source. + +if exists('b:current_compiler') + finish +endif +let b:current_compiler = 'vimdoc' + +let s:save_cpoptions = &cpoptions +set cpoptions&vim + +CompilerSet makeprg=vimdoc +" CompilerSet errorformat=%f:%l:%c:\ %m,%f:%l:\ %m +CompilerSet errorformat& + +let &cpoptions = s:save_cpoptions +unlet s:save_cpoptions diff --git a/nvim/.config/nvim/compiler/xbuild.vim b/nvim/.config/nvim/compiler/xbuild.vim new file mode 100644 index 0000000..42c7c65 --- /dev/null +++ b/nvim/.config/nvim/compiler/xbuild.vim @@ -0,0 +1,19 @@ +" Vim compiler file +" Compiler: Mono C# +" Maintainer: Chiel ten Brinke (ctje92@gmail.com) +" Last Change: 2013 May 13 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif + +let current_compiler = "xbuild" +let s:keepcpo= &cpo +set cpo&vim + +CompilerSet errorformat=\ %#%f(%l\\\,%c):\ %m +CompilerSet makeprg=xbuild\ /nologo\ /v:q\ /property:GenerateFullPaths=true + +let &cpo = s:keepcpo +unlet s:keepcpo diff --git a/nvim/.config/nvim/compiler/xmllint.vim b/nvim/.config/nvim/compiler/xmllint.vim new file mode 100644 index 0000000..16eebb4 --- /dev/null +++ b/nvim/.config/nvim/compiler/xmllint.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: Libxml2 Command-Line Tool +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "xmllint" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=xmllint\ --valid\ --noout +CompilerSet errorformat=%E%f:%l:\ %.%#\ error\ :\ %m, + \%W%f:%l:\ %.%#\ warning\ :\ %m, + \%-Z%p^, + \%C%.%#, + \%terror:\ %m, + \%tarning:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/xmlwf.vim b/nvim/.config/nvim/compiler/xmlwf.vim new file mode 100644 index 0000000..2e38ca4 --- /dev/null +++ b/nvim/.config/nvim/compiler/xmlwf.vim @@ -0,0 +1,20 @@ +" Vim Compiler File +" Compiler: xmlwf +" Maintainer: Robert Rowsome +" Last Change: 2019 Jul 23 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) + +if exists("current_compiler") + finish +endif +let current_compiler = "xmlwf" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=xmlwf\ %:S + +CompilerSet errorformat=%f:%l%c:%m + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/xo.vim b/nvim/.config/nvim/compiler/xo.vim new file mode 100644 index 0000000..74804ca --- /dev/null +++ b/nvim/.config/nvim/compiler/xo.vim @@ -0,0 +1,22 @@ +" Vim compiler file +" Compiler: XO +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "xo" + +let s:cpo_save = &cpo +set cpo&vim + +" CompilerSet makeprg=npx\ xo\ --reporter\ compact + +CompilerSet makeprg=xo\ --reporter\ compact +CompilerSet errorformat=%f:\ line\ %l\\,\ col\ %c\\,\ %trror\ %m, + \%f:\ line\ %l\\,\ col\ %c\\,\ %tarning\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save diff --git a/nvim/.config/nvim/compiler/yamllint.vim b/nvim/.config/nvim/compiler/yamllint.vim new file mode 100644 index 0000000..adb1dbd --- /dev/null +++ b/nvim/.config/nvim/compiler/yamllint.vim @@ -0,0 +1,16 @@ +" Vim compiler file +" Compiler: Yamllint for YAML +" Maintainer: Romain Lafourcade +" Last Change: 2021 July 21 +" 2024 Apr 03 by The Vim Project (removed :CompilerSet definition) +" 2025 Nov 16 by The Vim Project (set errorformat) + +if exists("current_compiler") + finish +endif +let current_compiler = "yamllint" + +CompilerSet makeprg=yamllint\ -f\ parsable +" CompilerSet errorformat=%f:%l:%c:\ [%t%*[^]]]\ %m,%f:%l:%c:\ [%*[^]]]\ %m +CompilerSet errorformat& + diff --git a/nvim/.config/nvim/compiler/zig.vim b/nvim/.config/nvim/compiler/zig.vim new file mode 100644 index 0000000..44014a3 --- /dev/null +++ b/nvim/.config/nvim/compiler/zig.vim @@ -0,0 +1,24 @@ +" Vim compiler file +" Compiler: Zig Compiler +" Upstream: https://github.com/ziglang/zig.vim + +if exists("current_compiler") + finish +endif +let current_compiler = "zig" + +let s:save_cpo = &cpo +set cpo&vim + +" a subcommand must be provided for the this compiler (test, build-exe, etc) +if has('patch-7.4.191') + CompilerSet makeprg=zig\ \$*\ \%:S +else + CompilerSet makeprg=zig\ \$*\ \"%\" +endif + +" TODO: improve errorformat as needed. + +let &cpo = s:save_cpo +unlet s:save_cpo +" vim: tabstop=8 shiftwidth=4 softtabstop=4 expandtab diff --git a/nvim/.config/nvim/compiler/zig_build.vim b/nvim/.config/nvim/compiler/zig_build.vim new file mode 100644 index 0000000..5a61c9f --- /dev/null +++ b/nvim/.config/nvim/compiler/zig_build.vim @@ -0,0 +1,25 @@ +" Vim compiler file +" Compiler: Zig Compiler (zig build) +" Upstream: https://github.com/ziglang/zig.vim +" Last Change: 2024 Apr 05 by The Vim Project (removed :CompilerSet definition) + +if exists('current_compiler') + finish +endif +runtime compiler/zig.vim +let current_compiler = 'zig_build' + +let s:save_cpo = &cpo +set cpo&vim + +if exists('g:zig_build_makeprg_params') + execute 'CompilerSet makeprg=zig\ build\ '.escape(g:zig_build_makeprg_params, ' \|"').'\ $*' +else + CompilerSet makeprg=zig\ build\ $* +endif + +" TODO: anything to add to errorformat for zig build specifically? + +let &cpo = s:save_cpo +unlet s:save_cpo +" vim: tabstop=8 shiftwidth=4 softtabstop=4 expandtab diff --git a/nvim/.config/nvim/compiler/zig_build_exe.vim b/nvim/.config/nvim/compiler/zig_build_exe.vim new file mode 100644 index 0000000..440eff7 --- /dev/null +++ b/nvim/.config/nvim/compiler/zig_build_exe.vim @@ -0,0 +1,21 @@ +" Vim compiler file +" Compiler: Zig Compiler (zig build-exe) +" Upstream: https://github.com/ziglang/zig.vim +" Last Change: 2025 Nov 16 by The Vim Project (set errorformat) + +if exists('current_compiler') + finish +endif +runtime compiler/zig.vim +let current_compiler = 'zig_build_exe' + +let s:save_cpo = &cpo +set cpo&vim + +CompilerSet makeprg=zig\ build-exe\ \%:S\ \$* +" CompilerSet errorformat=%f:%l:%c: %t%*[^:]: %m, %f:%l:%c: %m, %f:%l: %m +CompilerSet errorformat& + +let &cpo = s:save_cpo +unlet s:save_cpo +" vim: tabstop=8 shiftwidth=4 softtabstop=4 expandtab diff --git a/nvim/.config/nvim/compiler/zig_test.vim b/nvim/.config/nvim/compiler/zig_test.vim new file mode 100644 index 0000000..afe57ad --- /dev/null +++ b/nvim/.config/nvim/compiler/zig_test.vim @@ -0,0 +1,21 @@ +" Vim compiler file +" Compiler: Zig Compiler (zig test) +" Upstream: https://github.com/ziglang/zig.vim +" Last Change: 2025 Nov 16 by The Vim Project (set errorformat) + +if exists('current_compiler') + finish +endif +runtime compiler/zig.vim +let current_compiler = 'zig_test' + +let s:save_cpo = &cpo +set cpo&vim + +CompilerSet makeprg=zig\ test\ \%:S\ \$* +" CompilerSet errorformat=%f:%l:%c: %t%*[^:]: %m, %f:%l:%c: %m, %f:%l: %m +CompilerSet errorformat& + +let &cpo = s:save_cpo +unlet s:save_cpo +" vim: tabstop=8 shiftwidth=4 softtabstop=4 expandtab diff --git a/nvim/.config/nvim/compiler/zsh.vim b/nvim/.config/nvim/compiler/zsh.vim new file mode 100644 index 0000000..bd19558 --- /dev/null +++ b/nvim/.config/nvim/compiler/zsh.vim @@ -0,0 +1,19 @@ +" Vim compiler file +" Compiler: Zsh +" Maintainer: Doug Kearns +" Last Change: 2024 Apr 03 + +if exists("current_compiler") + finish +endif +let current_compiler = "zsh" + +let s:cpo_save = &cpo +set cpo&vim + +CompilerSet makeprg=zsh\ -n\ --\ %:S +CompilerSet errorformat=%f:\ line\ %l:\ %m, + \%-G%.%# + +let &cpo = s:cpo_save +unlet s:cpo_save