diff runtime/compiler/context.vim @ 10301:07d2b5a3b7cc

commit https://github.com/vim/vim/commit/46fceaaa8d1447a9588736d86eb4908214187b08 Author: Bram Moolenaar <Bram@vim.org> Date: Sun Oct 23 21:21:08 2016 +0200 Updated runtime files.
author Christian Brabandt <cb@256bit.org>
date Sun, 23 Oct 2016 21:30:06 +0200
parents
children 2acb87ee55fc
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/runtime/compiler/context.vim
@@ -0,0 +1,54 @@
+" 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