aboutsummaryrefslogtreecommitdiff
path: root/runtime/syntax/scheme.vim
diff options
context:
space:
mode:
authorJustin M. Keyes <justinkz@gmail.com>2016-10-24 13:17:41 +0200
committerGitHub <noreply@github.com>2016-10-24 13:17:41 +0200
commitfb503d73da49e26a3e44a07cd7c857d9fda9d035 (patch)
treed7f30d325c9649b4bfa9bf6d6823eddf882aeb25 /runtime/syntax/scheme.vim
parent43309d1993a9affc8d6b73fbd4721e6256c28712 (diff)
parentc91a0dca02fda46c4b4edbbdfab1a191b2e4fcbd (diff)
downloadrneovim-fb503d73da49e26a3e44a07cd7c857d9fda9d035.tar.gz
rneovim-fb503d73da49e26a3e44a07cd7c857d9fda9d035.tar.bz2
rneovim-fb503d73da49e26a3e44a07cd7c857d9fda9d035.zip
Merge #5483 from Shougo/vim-0648142
vim-patch 0648142, 91c4937, 06d2d38, 2685212, 269f595
Diffstat (limited to 'runtime/syntax/scheme.vim')
-rw-r--r--runtime/syntax/scheme.vim17
1 files changed, 16 insertions, 1 deletions
diff --git a/runtime/syntax/scheme.vim b/runtime/syntax/scheme.vim
index a210b0c720..c59e09cd17 100644
--- a/runtime/syntax/scheme.vim
+++ b/runtime/syntax/scheme.vim
@@ -1,6 +1,6 @@
" Vim syntax file
" Language: Scheme (R5RS + some R6RS extras)
-" Last Change: 2012 May 13
+" Last Change: 2016 May 23
" Maintainer: Sergey Khorev <sergey.khorev@gmail.com>
" Original author: Dirk van Deun <dirk@igwe.vub.ac.be>
@@ -245,6 +245,18 @@ if exists("b:is_mzscheme") || exists("is_mzscheme")
syn region schemeUnquote matchgroup=Delimiter start="#,@\[" end="\]" contains=ALL
syn region schemeQuoted matchgroup=Delimiter start="#['`]" end=![ \t()\[\]";]!me=e-1 contains=ALL
syn region schemeQuoted matchgroup=Delimiter start="#['`](" matchgroup=Delimiter end=")" contains=ALL
+
+ " Identifiers are very liberal in MzScheme/Racket
+ syn match schemeOther ![^()[\]{}",'`;#|\\ ]\+!
+
+ " Language setting
+ syn match schemeLang "#lang [-+_/A-Za-z0-9]\+\>"
+
+ " Various number forms
+ syn match schemeNumber "[-+]\=[0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\>"
+ syn match schemeNumber "[-+]\=\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\>"
+ syn match schemeNumber "[-+]\=[0-9]\+/[0-9]\+\>"
+ syn match schemeNumber "\([-+]\=\([0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\|\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\|[0-9]\+/[0-9]\+\)\)\=[-+]\([0-9]\+\(\.[0-9]*\)\=\(e[-+]\=[0-9]\+\)\=\|\.[0-9]\+\(e[-+]\=[0-9]\+\)\=\|[0-9]\+/[0-9]\+\)\=i\>"
endif
@@ -321,6 +333,9 @@ if version >= 508 || !exists("did_scheme_syntax_inits")
HiLink schemeExtSyntax Type
HiLink schemeExtFunc PreProc
+
+ HiLink schemeLang PreProc
+
delcommand HiLink
endif