blob: fc7145a6fd1b1205837bbe73d29c27f76144f00f (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
|
" vim: ts=4 sw=4 et
function! neomake#makers#ft#racket#EnabledMakers() abort
return ['raco']
endfunction
" This is the same form of syntax-checking used by DrRacket as well. The
" downside is that it will only catch the first error, but none of the
" subsequent ones. This is due to how evaluation in Racket works.
"
" About the error format: raco will print the first line as
" <file>:<line>:<column> <message>
" Every successive line will be indented by two spaces:
" in: <keyword>
" context...:
" <file>:<line>:<column>: <keyword>
" The last pattern will be repeated as often as necessary. Example:
" foo.rkt:4:1: dfine: unbound identifier in modulemessage
" in: dfine
" context...:
" /usr/local/Cellar/racket/6.5/share/racket/pkgs/compiler-lib/compiler/commands/expand.rkt:34:15: loop
" /usr/local/Cellar/racket/6.5/share/racket/pkgs/compiler-lib/compiler/commands/expand.rkt:10:2: show-program
" /usr/local/Cellar/racket/6.5/share/racket/pkgs/compiler-lib/compiler/commands/expand.rkt: [running body]
" /usr/local/Cellar/minimal-racket/6.6/share/racket/collects/raco/raco.rkt: [running body]
" /usr/local/Cellar/minimal-racket/6.6/share/racket/collects/raco/main.rkt: [running body]
function! neomake#makers#ft#racket#raco() abort
return {
\ 'exe': 'raco',
\ 'args': ['expand'],
\ 'errorformat': '%-G %.%#,%E%f:%l:%c: %m'
\ }
endfunction
|