much love
[mu.git] / editor / mulisp.vim
blobe84bf090cb2437811b8370670d7cf64a668ee3f1
1 " Vim syntax file
2 " Language:    Mu Lisp
3 " Maintainer:  Kartik Agaram <mu@akkartik.com>
4 " URL:         http://github.com/akkartik/mu
5 " License:     public domain
7 " Copy this file into your ftplugin directory, and add the following to your
8 " vimrc or to .vim/ftdetect/mulisp.vim:
9 "   autocmd BufReadPost,BufNewFile *.limg set filetype=mulisp
11 let s:save_cpo = &cpo
12 set cpo&vim
14 setlocal iskeyword=@,48-57,?,!,_,$
16 " Hack: I define new syntax groups here, and I don't know how to distribute
17 " colorscheme-independent color suggestions for them.
18 highlight Normal ctermfg=245
19 highlight muLispNormal ctermfg=0
20 highlight muLispOuterKeyword ctermfg=160
21 highlight link muLispKeyword Type
23 syntax region String   start=+"+  skip=+\\"+  end=+"+
25 syntax region muLispNormal matchgroup=Normal start=/\[/ end=/\]/ contains=muLispLiteral,muLispComment,muLispDelimiter,muLispKeyword
27 syntax match muLispComment /#.*/ contained | highlight link muLispComment Comment
28 syntax match muLispLiteral /\<[0-9]\+\>/ contained | highlight link muLispLiteral Constant
29 syntax match muLispLiteral /\[[^\]]*\]/ contained
30 syntax match muLispDelimiter /[(),@`]/ contained | highlight link muLispDelimiter Delimiter
32 syntax keyword muLispOuterKeyword globals sandbox
33 syntax keyword muLispKeyword fn def mac let if while for
35 let &cpo = s:save_cpo