47 lines
1.1 KiB
VimL
47 lines
1.1 KiB
VimL
|
" Vim syntax file
|
||
|
" Language: Slige
|
||
|
" Maintainer: SFJ
|
||
|
" Latest Revision: 1 January 1984
|
||
|
|
||
|
if exists("b:current_syntax")
|
||
|
finish
|
||
|
endif
|
||
|
|
||
|
syn keyword Keyword break return let fn loop if else struct import or and not
|
||
|
syn keyword Special null
|
||
|
syn keyword Type int string
|
||
|
syn keyword Boolean true false
|
||
|
|
||
|
syn match Operator '+'
|
||
|
syn match Operator '-'
|
||
|
syn match Operator '\*'
|
||
|
syn match Operator '/'
|
||
|
syn match Operator '='
|
||
|
syn match Operator '=='
|
||
|
syn match Operator '!='
|
||
|
syn match Operator '<'
|
||
|
syn match Operator '>'
|
||
|
syn match Operator '<='
|
||
|
syn match Operator '>='
|
||
|
syn match Operator '\.'
|
||
|
syn match Operator ':'
|
||
|
syn match Operator '->'
|
||
|
|
||
|
syn match Number '0'
|
||
|
syn match Number '[1-9][0-9]*'
|
||
|
syn match Number '0[0-7]\+'
|
||
|
syn match Number '0x[0-9a-fA-F]\+'
|
||
|
syn match Number '0b[01]\+'
|
||
|
|
||
|
syn region String start=+"+ skip=+\\"+ end=+"+
|
||
|
|
||
|
syn keyword Todo contained TODO FIXME XXX NOTE
|
||
|
syn match Comment "/\*.*\*/" contains=Todo
|
||
|
syn match Comment "//.*$" contains=Todo
|
||
|
|
||
|
syn match Function '[a-zA-Z_]\w*\ze('
|
||
|
|
||
|
syn region sligeBlock start="{" end="}" transparent fold
|
||
|
|
||
|
let b:current_syntax = "slige"
|