runtime(make): add compiler/make.vim to reset compiler plugin settings
closes: #15645
Co-authored-by: K.Takata <kentkt@csc.jp>
Signed-off-by: Konfekt <Konfekt@users.noreply.github.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
diff --git a/runtime/compiler/README.txt b/runtime/compiler/README.txt
index dccf4a9..327d0a7 100644
--- a/runtime/compiler/README.txt
+++ b/runtime/compiler/README.txt
@@ -4,6 +4,8 @@
These scripts usually set options, for example 'errorformat'.
See ":help write-compiler-plugin".
+To undo the effect of a compiler plugin, use the make compiler plugin.
+
If you want to write your own compiler plugin, have a look at the other files
for how to do it, the format is simple.
diff --git a/runtime/compiler/make.vim b/runtime/compiler/make.vim
new file mode 100644
index 0000000..748251b
--- /dev/null
+++ b/runtime/compiler/make.vim
@@ -0,0 +1,13 @@
+" Vim compiler plugin
+"
+" Maintainer: The Vim Project <https://github.com/vim/vim>
+" 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/runtime/doc/quickfix.txt b/runtime/doc/quickfix.txt
index 6942a58..ea5f01d 100644
--- a/runtime/doc/quickfix.txt
+++ b/runtime/doc/quickfix.txt
@@ -1,4 +1,4 @@
-*quickfix.txt* For Vim version 9.1. Last change: 2024 Sep 09
+*quickfix.txt* For Vim version 9.1. Last change: 2024 Sep 10
VIM REFERENCE MANUAL by Bram Moolenaar
@@ -1276,6 +1276,7 @@
For writing a compiler plugin, see |write-compiler-plugin|.
+Use the |compiler-make| plugin to undo the effect of a compiler plugin.
DOTNET *compiler-dotnet*
@@ -1291,7 +1292,6 @@
let dotnet_show_project_file = v:false
compiler dotnet
<
-
GCC *quickfix-gcc* *compiler-gcc*
There's one variable you can set for the GCC compiler:
@@ -1302,7 +1302,6 @@
commands run from make are generating false
positives.
-
JAVAC *compiler-javac*
Commonly used compiler options can be added to 'makeprg' by setting the
@@ -1310,6 +1309,12 @@
let g:javac_makeprg_params = "-Xlint:all -encoding utf-8"
<
+GNU MAKE *compiler-make*
+
+Since the default make program is "make", the compiler plugin for make,
+:compiler make, will reset the 'makeprg' and 'errorformat' option to
+the default values and unlet any variables that may have been set by a
+previous compiler plugin.
MANX AZTEC C *quickfix-manx* *compiler-manx*
diff --git a/runtime/doc/tags b/runtime/doc/tags
index 77c02a8..dd5a0a6 100644
--- a/runtime/doc/tags
+++ b/runtime/doc/tags
@@ -6548,6 +6548,7 @@
compiler-groff quickfix.txt /*compiler-groff*
compiler-hpada ft_ada.txt /*compiler-hpada*
compiler-javac quickfix.txt /*compiler-javac*
+compiler-make quickfix.txt /*compiler-make*
compiler-manx quickfix.txt /*compiler-manx*
compiler-pandoc quickfix.txt /*compiler-pandoc*
compiler-perl quickfix.txt /*compiler-perl*