summaryrefslogtreecommitdiff
path: root/config/nvim/syntax/HeavenCfg.vim
diff options
context:
space:
mode:
authornavewindre <boneyaard@gmail.com>2024-09-17 07:20:56 +0200
committernavewindre <boneyaard@gmail.com>2024-09-17 07:20:56 +0200
commit1dcf16ef24c7ab3f82292ad9ae195febc6964f6a (patch)
treeabe662e431f3b488eed1a0d076006264fccf9362 /config/nvim/syntax/HeavenCfg.vim
parentfb649a47671702785edd22299d72374b848a7fd5 (diff)
ye
Diffstat (limited to 'config/nvim/syntax/HeavenCfg.vim')
-rw-r--r--config/nvim/syntax/HeavenCfg.vim24
1 files changed, 24 insertions, 0 deletions
diff --git a/config/nvim/syntax/HeavenCfg.vim b/config/nvim/syntax/HeavenCfg.vim
new file mode 100644
index 0000000..3297f8e
--- /dev/null
+++ b/config/nvim/syntax/HeavenCfg.vim
@@ -0,0 +1,24 @@
+function! DefineKeywords(keywords)
+ for keyword in a:keywords
+ execute 'syntax keyword HeavenCfgKeyword '. keyword
+ endfor
+ hi def link HeavenCfgKeyword Keyword
+endfunction
+
+function! DefineSpecial(keywords)
+ for keyword in a:keywords
+ execute 'syntax keyword HeavenCfgSpecial '. keyword
+ endfor
+ hi def link HeavenCfgSpecial Special
+endfunction
+
+call DefineKeywords( ['DEF', 'I32', 'F32', 'STR', 'BYTES', 'U8', 'CLR', 'VEC2', 'VEC3' ] )
+
+call DefineSpecial( ['map', 'mat'] )
+
+syntax match HeavenCfgVar /\<\w\+\>/
+syntax match HeavenCfgString /"[^"]*"/
+syntax match HeavenCfgNum /\v\d+(\.\d+)?([eE][+-]?\d+)?/
+hi def link HeavenCfgNum Number
+hi def link HeavenCfgString String
+hi def link HeavenCfgVar Variable