aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPřemysl Janouch <p.janouch@gmail.com>2017-06-20 16:22:04 +0200
committerPřemysl Janouch <p.janouch@gmail.com>2017-06-20 16:22:04 +0200
commit4a199c7b67b41eb7ac382f035c14aad71e27db86 (patch)
tree784c4ca139db6dbc6e5ec4b59323816d97ca70a6
parent0ae4a423354a75200ba476e245e4068400165797 (diff)
downloadell-4a199c7b67b41eb7ac382f035c14aad71e27db86.tar.gz
ell-4a199c7b67b41eb7ac382f035c14aad71e27db86.tar.xz
ell-4a199c7b67b41eb7ac382f035c14aad71e27db86.zip
Add VIM syntax highlighting
-rw-r--r--ell.vim22
-rw-r--r--greet.ell1
2 files changed, 23 insertions, 0 deletions
diff --git a/ell.vim b/ell.vim
new file mode 100644
index 0000000..a51faf9
--- /dev/null
+++ b/ell.vim
@@ -0,0 +1,22 @@
+if exists("b:current_syntax")
+ finish
+endif
+
+syn iskeyword 1-255,^[,^],^{,^},^(,^),^;,^@-@,^#,^',^9,^10,^13,^32
+syn keyword ellSTL local set list values if map print .. system parse try throw
+ \ + - * / not and or eq? lt? = < unless filter for break
+ \ ne? le? ge? gt? <> <= >= >
+
+syn match ellComment "#.*"
+syn match ellSpecial "[][}{)(;@]"
+syn match ellVar "\(@[\t ]*\)\@<=\k\+"
+syn match ellEscape display "\\\([xX]\x\{2}\|.\|$\)" contained
+syn region ellString start=+'+ skip=+\\\\\|\\'+ end=+'+ contains=ellEscape
+
+let b:current_syntax = "ell"
+hi def link ellSTL Function
+hi def link ellComment Comment
+hi def link ellSpecial Special
+hi def link ellVar Identifier
+hi def link ellEscape SpecialChar
+hi def link ellString String
diff --git a/greet.ell b/greet.ell
index b2f8ef9..a84463c 100644
--- a/greet.ell
+++ b/greet.ell
@@ -1,3 +1,4 @@
+# Decrement variable passed by name
set decr {
set @1 (- @@1 1)
}