12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152 |
- " 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
|