5055
|
1 " Vim Compiler File
|
17261
|
2 " Compiler: ocaml
|
|
3 " Maintainer: Markus Mottl <markus.mottl@gmail.com>
|
23466
|
4 " URL: https://github.com/ocaml/vim-ocaml
|
17261
|
5 " Last Change:
|
23466
|
6 " 2020 Mar 28 - Improved error format (Thomas Leonard)
|
17261
|
7 " 2017 Nov 26 - Improved error format (Markus Mottl)
|
|
8 " 2013 Aug 27 - Added a new OCaml error format (Markus Mottl)
|
5055
|
9 "
|
|
10 " Marc Weber's comments:
|
|
11 " Setting makeprg doesn't make sense, because there is ocamlc, ocamlopt,
|
|
12 " ocamake and whatnot. So which one to use?
|
|
13 "
|
|
14 " This error format was moved from ftplugin/ocaml.vim to this file,
|
|
15 " because ftplugin is the wrong file to set an error format
|
|
16 " and the error format itself is annoying because it joins many lines in this
|
|
17 " error case:
|
|
18 "
|
|
19 " Error: The implementation foo.ml does not match the interface foo.cmi:
|
|
20 " Modules do not match case.
|
|
21 "
|
|
22 " So having it here makes people opt-in
|
|
23
|
23466
|
24
|
5055
|
25 if exists("current_compiler")
|
|
26 finish
|
|
27 endif
|
|
28 let current_compiler = "ocaml"
|
|
29
|
|
30 let s:cpo_save = &cpo
|
|
31 set cpo&vim
|
|
32
|
|
33 CompilerSet errorformat =
|
23466
|
34 \%EFile\ \"%f\"\\,\ lines\ %*\\d-%l\\,\ characters\ %c-%*\\d:,
|
5055
|
35 \%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d:,
|
17261
|
36 \%EFile\ \"%f\"\\,\ line\ %l\\,\ characters\ %c-%*\\d\ %.%#,
|
5055
|
37 \%EFile\ \"%f\"\\,\ line\ %l\\,\ character\ %c:%m,
|
|
38 \%+EReference\ to\ unbound\ regexp\ name\ %m,
|
|
39 \%Eocamlyacc:\ e\ -\ line\ %l\ of\ \"%f\"\\,\ %m,
|
|
40 \%Wocamlyacc:\ w\ -\ %m,
|
|
41 \%-Zmake%.%#,
|
|
42 \%C%m,
|
|
43 \%D%*\\a[%*\\d]:\ Entering\ directory\ `%f',
|
|
44 \%X%*\\a[%*\\d]:\ Leaving\ directory\ `%f',
|
|
45 \%D%*\\a:\ Entering\ directory\ `%f',
|
|
46 \%X%*\\a:\ Leaving\ directory\ `%f',
|
17261
|
47 \%D%*\\a[%*\\d]:\ Entering\ directory\ '%f',
|
|
48 \%X%*\\a[%*\\d]:\ Leaving\ directory\ '%f',
|
|
49 \%D%*\\a:\ Entering\ directory\ '%f',
|
|
50 \%X%*\\a:\ Leaving\ directory\ '%f',
|
|
51 \%DEntering\ directory\ '%f',
|
|
52 \%XLeaving\ directory\ '%f',
|
5055
|
53 \%DMaking\ %*\\a\ in\ %f
|
|
54
|
|
55 let &cpo = s:cpo_save
|
|
56 unlet s:cpo_save
|