mirror of
				https://github.com/vim/vim.git
				synced 2025-10-31 09:57:14 -04:00 
			
		
		
		
	
		
			
	
	
		
			55 lines
		
	
	
		
			1.9 KiB
		
	
	
	
		
			VimL
		
	
	
	
	
	
		
		
			
		
	
	
			55 lines
		
	
	
		
			1.9 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 exists(":CompilerSet") != 2    " older Vim always used :setlocal | ||
|  |   command -nargs=* CompilerSet setlocal <args> | ||
|  | endif | ||
|  | 
 | ||
|  | " 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 &l: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')) | ||
|  | 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 |