summaryrefslogtreecommitdiff
path: root/mnv/runtime/compiler/hare.mnv
blob: f4ee5b5f856cb8bded14457dfaf177b97ee6dd20 (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
33
34
35
36
37
38
mnv9script

# MNV compiler file.
# Compiler:    Hare
# Maintainer:  Amelia Clarke <selene@perilune.dev>
# Last Change: 2026 Jan 24
# Upstream:    https://git.sr.ht/~sircmpwn/hare.mnv

if exists('g:current_compiler')
  finish
endif
g:current_compiler = 'hare'

if filereadable('Makefile') || filereadable('makefile')
  CompilerSet makeprg=make
else
  const makeprg = 'hare build ' .. get(g:, 'hare_makeprg_params', '-q')
  execute 'CompilerSet makeprg=' .. escape(makeprg, ' "\|')
endif

CompilerSet errorformat=
  \%E%o:%l:%v:\ error:\ %m,
  \%E%o:%l:%v:\ syntax\ error:\ %m,
  \%E%o:%l:%v:\ %\\%%(unexpected\ name\ %\\)%\\@=%m,
  \%C,%C\ %.%#,%C%l\ %.%#,
  \%trror:\ %o:\ %\\%%(%\\h%\\w%\\+%\\%%(::%\\h%\\w%\\+%\\)%#:\ %\\)%\\@=%m,
  \%trror:\ %m,
  \%+EAbort:\ %m%>,
  \%C%.%#,
  \%-G%.%#

augroup HareQuickFix
  autocmd!
  autocmd QuickFixCmdPost make hare#QuickFixPaths()
  autocmd QuickFixCmdPost lmake hare#QuickFixPaths()
augroup END

# mnv: et sts=2 sw=2 ts=8 tw=80