summaryrefslogtreecommitdiff
path: root/runtime/syntax/clean.vim
diff options
context:
space:
mode:
authorBram Moolenaar <Bram@vim.org>2013-11-03 21:14:31 +0100
committerBram Moolenaar <Bram@vim.org>2013-11-03 21:14:31 +0100
commitd5d015d4570eabc9a2da620cce906617e72ac625 (patch)
treec6b0ad205f8155241b2d0e38918258fe1237eaeb /runtime/syntax/clean.vim
parent18e5469b6e73dfbd85ac9831224cd4ec29cbe308 (diff)
downloadvim-git-d5d015d4570eabc9a2da620cce906617e72ac625.tar.gz
Update runtime files.
Diffstat (limited to 'runtime/syntax/clean.vim')
-rw-r--r--runtime/syntax/clean.vim23
1 files changed, 12 insertions, 11 deletions
diff --git a/runtime/syntax/clean.vim b/runtime/syntax/clean.vim
index 11aa028b7..ea95aa209 100644
--- a/runtime/syntax/clean.vim
+++ b/runtime/syntax/clean.vim
@@ -2,7 +2,7 @@
" Language: Clean
" Author: Pieter van Engelen <pietere@sci.kun.nl>
" Co-Author: Arthur van Leeuwen <arthurvl@sci.kun.nl>
-" Last Change: 2013 Jun 19 by Jurriën Stutterheim
+" Last Change: 2013 Oct 15 by Jurriën Stutterheim
" For version 5.x: Clear all syntax items
" For version 6.x: Quit when a syntax file was already loaded
@@ -31,11 +31,10 @@ syn keyword cleanIncludeKeyword contained from import as qualified
" To do some Denotation Highlighting
syn keyword cleanBoolDenot True False
-syn region cleanStringDenot start=+"+ end=+"+
-syn match cleanCharDenot "'.'"
-syn match cleanCharsDenot "'[^'\\]*\(\\.[^'\\]\)*'" contained
-syn match cleanIntegerDenot "[+-~]\=\<\(\d\+\|0[0-7]\+\|0x[0-9A-Fa-f]\+\)\>"
-syn match cleanRealDenot "[+-~]\=\<\d\+\.\d+\(E[+-~]\=\d+\)\="
+syn region cleanStringDenot start=+"+ skip=+\(\(\\\\\)\+\|\\"\)+ end=+"+ display
+syn match cleanCharDenot "'\(\\\\\|\\'\|[^'\\]\)\+'" display
+syn match cleanIntegerDenot "[\~+-]\?\<\(\d\+\|0[0-7]\+\|0x[0-9A-Fa-f]\+\)\>" display
+syn match cleanRealDenot "[\~+-]\?\d\+\.\d\+\(E[\~+-]\?\d\+\)\?" display
" To highlight the use of lists, tuples and arrays
syn region cleanList start="\[" end="\]" contains=ALL
@@ -44,11 +43,13 @@ syn region cleanArray start="{:" end=":}" contains=ALL
syn match cleanTuple "([^=]*,[^=]*)" contains=ALL
" To do some Comment Highlighting
-syn region cleanComment start="/\*" end="\*/" contains=cleanComment
-syn match cleanComment "//.*"
+syn region cleanComment start="/\*" end="\*/" contains=cleanComment,cleanTodo fold
+syn region cleanComment start="//.*" end="$" display contains=cleanTodo
+syn keyword cleanTodo TODO FIXME XXX contained
+
+" Now for some useful type definition recognition
+syn match cleanFuncTypeDef "\([a-zA-Z].*\|(\=[-~@#$%^?!+*<>\/|&=:]\+)\=\)\s*\(infix[lr]\=\)\=\s*\d\=\s*::.*->.*" contains=cleanSpecial,cleanBasicType,cleanSpecialType,cleanKeyword
-" Now for some useful typedefinitionrecognition
-syn match cleanFuncTypeDef "\([a-zA-Z].*\|(\=[-~@#$%^?!+*<>\/|&=:]\+)\=\)[ \t]*\(infix[lr]\=\)\=[ \t]*\d\=[ \t]*::.*->.*" contains=cleanSpecial
" Define the default highlighting.
" For version 5.7 and earlier: only when not done already
@@ -64,7 +65,6 @@ if version >= 508 || !exists("did_clean_syntax_init")
" Comments
HiLink cleanComment Comment
" Constants and denotations
- HiLink cleanCharsDenot String
HiLink cleanStringDenot String
HiLink cleanCharDenot Character
HiLink cleanIntegerDenot Number
@@ -91,6 +91,7 @@ if version >= 508 || !exists("did_clean_syntax_init")
HiLink cleanTuple Special
" Error
" Todo
+ HiLink cleanTodo Todo
delcommand HiLink
endif