neovim/runtime/syntax/cabalproject.vim

29 lines
944 B
VimL

" Vim syntax file
" Language: Cabal Project
" Maintainer: profunctor@pm.me
" Last Change: Marcin Szamotulski
" Original Author: Marcin Szamotulski
if exists("b:current_syntax")
finish
endif
syn match CabalProjectComment /^\s*--.*/ contains=@Spell
syn match CabalProjectField /^\w\%(\w\|-\)\+/ contains=@NoSpell
syn keyword CabalProjectBoolean true false True False
syn keyword CabalProjectCompiler ghc ghcjs jhc lhc uhc haskell-suite
syn match CabalProjectNat /\<\d\+\>/
syn keyword CabalProjectJobs $ncpus
syn keyword CabalProjectProfilingLevel default none exported-functions toplevel-functions all-functions
hi def link CabalProjectComment Comment
hi def link CabalProjectField Statement
hi def link CabalProjectBoolean Boolean
hi def link CabalProjectCompiler Identifier
hi def link CabalProjectNat Number
hi def link CabalProjectJobs Number
hi def link CabalProjectProfilingLevel Statement
let b:current_syntax = "cabal.project"