mirror of
https://github.com/neovim/neovim.git
synced 2024-12-29 14:41:06 -07:00
66568ed452
runtime: fix :compiler leaving behind a g:makeprg variable (vim/vim#14414)
Problem: :compiler may leave behind a g:makeprg variable after vim/vim#14336.
Solution: Use a script local variable.
b73faa1c02
Also apply previously omitted change to compiler/context.vim.
52 lines
1.8 KiB
VimL
52 lines
1.8 KiB
VimL
" Vim compiler file
|
|
" Compiler: ConTeXt typesetting engine
|
|
" Maintainer: Nicola Vitacolonna <nvitacolonna@gmail.com>
|
|
" 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'))
|
|
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
|