about summary refs log tree commit diff stats
diff options
context:
space:
mode:
authorKartik K. Agaram <vc@akkartik.com>2015-01-13 19:25:31 -0800
committerKartik K. Agaram <vc@akkartik.com>2015-01-13 19:25:48 -0800
commitb38d7fff33abf80bf90bc91e470c87ed175ab3c3 (patch)
treea9ce92b86218d2328ad9d0684f78de8fe4452efb
parent0c1450438fcb0fe3f53fcb9268f2f2c0708bb252 (diff)
downloadmu-b38d7fff33abf80bf90bc91e470c87ed175ab3c3.tar.gz
548 - hacky vim filetype for mu
-rw-r--r--mu.vim37
1 files changed, 37 insertions, 0 deletions
diff --git a/mu.vim b/mu.vim
new file mode 100644
index 00000000..8fd9e416
--- /dev/null
+++ b/mu.vim
@@ -0,0 +1,37 @@
+" Vim syntax file
+" Language:    mu
+" Maintainer:  Kartik Agaram <mu@akkartik.com>
+" URL:         http://github.com/akkartik/mu
+" License:     public domain
+"
+" Copy this into your ftplugin directory, and add the following to your vimrc:
+"   autocmd BufReadPost,BufNewFile *.mu,*.test set filetype=mu
+
+let s:save_cpo = &cpo
+set cpo&vim
+
+if exists("b:syntax")
+  finish
+endif
+let b:syntax = "mu"
+
+setlocal iskeyword=@,48-57,?,!,_,$,-
+
+syntax match muComment /;.*$/
+highlight link muComment Comment
+syntax match muSalientComment /;;.*$/
+highlight link muSalientComment SalientComment
+set comments-=:;
+set comments+=n:;
+syntax match CommentedCode ";? .*"
+let b:cmt_head = ";? "
+
+syntax region muString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=@Spell
+highlight link muString String
+
+syntax match muDelimiter "[{}\[\]]" | highlight link muDelimiter Delimiter
+syntax match muAssign "<-" | highlight link muAssign SpecialChar
+syntax match muAssign "\<raw\>"
+syntax keyword muFunc next-input input reply jump jump-if jump-unless loop loop-if loop-unless break-if break-unless | highlight link muFunc Function
+
+let &cpo = s:save_cpo