runtime(compilers): ensure compiler! sets global options (#14336)

Previously some options were only set locally by
&l:makeprg/errorformat

This suffices for :compiler (without a trailing bang)
but falls short for :compiler! that sets &g:makeprg/errorformat as
well

Also apply kind suggestions by @dkearns and @lifepillar 

Signed-off-by: Konfekt <Konfekt@users.noreply.github.com>
Signed-off-by: Doug Kearns <dougkearns@gmail.com>
Signed-off-by: Christian Brabandt <cb@256bit.org>
This commit is contained in:
Enno
2024-03-31 18:37:05 +02:00
committed by GitHub
parent 80aabaab66
commit 18d730d7b5
6 changed files with 34 additions and 16 deletions

View File

@ -3,7 +3,8 @@ vim9script
# Language: ConTeXt typesetting engine
# Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
# Former Maintainers: Nikolai Weibull <now@bitwi.se>
# Latest Revision: 2023 Dec 26
# Contributors: Enno Nagel
# Last Change: 2024 Mar 29
if exists("g:current_compiler")
finish
@ -19,7 +20,8 @@ g:current_compiler = 'context'
if get(b:, 'context_ignore_makefile', get(g:, 'context_ignore_makefile', 0)) ||
(!filereadable('Makefile') && !filereadable('makefile'))
&l:makeprg = join(context.ConTeXtCmd(shellescape(expand('%:p:t'))), ' ')
var makeprg = join(context.ConTeXtCmd(shellescape(expand('%:p:t'))), ' ')
execute 'CompilerSet makeprg=' .. escape(makeprg, ' ')
else
g:current_compiler = 'make'
endif