26438
|
1 " Vim syntax file
|
|
2 " Language: squirrel
|
|
3 " Current Maintainer: Matt Dunford (zenmatic@gmail.com)
|
|
4 " URL: https://github.com/zenmatic/vim-syntax-squirrel
|
|
5 " Last Change: 2021 Nov 28
|
|
6
|
|
7 " http://squirrel-lang.org/
|
|
8
|
|
9 " quit when a syntax file was already loaded
|
|
10 if exists("b:current_syntax")
|
|
11 finish
|
|
12 endif
|
|
13
|
|
14 " inform C syntax that the file was included from cpp.vim
|
|
15 let b:filetype_in_cpp_family = 1
|
|
16
|
|
17 " Read the C syntax to start with
|
|
18 runtime! syntax/c.vim
|
|
19 unlet b:current_syntax
|
|
20
|
|
21 " squirrel extensions
|
|
22 syn keyword squirrelStatement delete this in yield resume base clone
|
|
23 syn keyword squirrelAccess local
|
|
24 syn keyword cConstant null
|
|
25 syn keyword squirrelModifier static
|
|
26 syn keyword squirrelType bool instanceof typeof
|
|
27 syn keyword squirrelExceptions throw try catch
|
|
28 syn keyword squirrelStructure class function extends constructor
|
|
29 syn keyword squirrelBoolean true false
|
|
30 syn keyword squirrelRepeat foreach
|
|
31
|
|
32 syn region squirrelMultiString start='@"' end='"$' end='";$'me=e-1
|
|
33
|
|
34 syn match squirrelShComment "^\s*#.*$"
|
|
35
|
|
36 " Default highlighting
|
|
37 hi def link squirrelAccess squirrelStatement
|
|
38 hi def link squirrelExceptions Exception
|
|
39 hi def link squirrelStatement Statement
|
|
40 hi def link squirrelModifier Type
|
|
41 hi def link squirrelType Type
|
|
42 hi def link squirrelStructure Structure
|
|
43 hi def link squirrelBoolean Boolean
|
|
44 hi def link squirrelMultiString String
|
|
45 hi def link squirrelRepeat cRepeat
|
|
46 hi def link squirrelShComment Comment
|
|
47
|
|
48 let b:current_syntax = "squirrel"
|
|
49
|
|
50 " vim: ts=8
|