diff runtime/syntax/slice.vim @ 7:3fc0f57ecb91 v7.0001

updated for version 7.0001
author vimboss
date Sun, 13 Jun 2004 20:20:40 +0000
parents
children 25a70b1cd2da
line wrap: on
line diff
new file mode 100644
--- /dev/null
+++ b/runtime/syntax/slice.vim
@@ -0,0 +1,90 @@
+" Vim syntax file
+" Language:	Slice (ZeroC's Specification Language for Ice)
+" Maintainer:	Morel Bodin <bodin@tuxfamily.net>
+" Last Change:	2003 Sep 24
+
+" For version 5.x: Clear all syntax items
+" For version 6.x: Quit when a syntax file was already loaded
+if version < 600
+  syntax clear
+elseif exists("b:current_syntax")
+  finish
+endif
+
+" The Slice keywords
+
+syn keyword sliceType	    bool byte double float int long short string void
+syn keyword sliceQualifier  const extends idempotent implements local nonmutating out throws
+syn keyword sliceConstruct	class enum exception dictionnary interface module LocalObject Object sequence struct
+syn keyword sliceQualifier  const extends idempotent implements local nonmutating out throws
+syn keyword sliceBoolean    false true
+
+" Include directives
+syn match   sliceIncluded   display contained "<[^>]*>"
+syn match   sliceInclude    display "^\s*#\s*include\>\s*["<]" contains=sliceIncluded
+
+" Double-include guards
+syn region  sliceGuard      start="^#\(define\|ifndef\|endif\)" end="$"
+
+" Strings and characters
+syn region sliceString		start=+"+  end=+"+
+
+" Numbers (shamelessly ripped from c.vim, only slightly modified)
+"integer number, or floating point number without a dot and with "f".
+syn case ignore
+syn match   sliceNumbers    display transparent "\<\d\|\.\d" contains=sliceNumber,sliceFloat,sliceOctal
+syn match   sliceNumber     display contained "\d\+"
+"hex number
+syn match   sliceNumber     display contained "0x\x\+\(u\=l\{0,2}\|ll\=u\)\>"
+" Flag the first zero of an octal number as something special
+syn match   sliceOctal      display contained "0\o\+\(u\=l\{0,2}\|ll\=u\)\>" contains=sliceOctalZero
+syn match   sliceOctalZero  display contained "\<0"
+syn match   sliceFloat      display contained "\d\+f"
+"floating point number, with dot, optional exponent
+syn match   sliceFloat      display contained "\d\+\.\d*\(e[-+]\=\d\+\)\=[fl]\="
+"floating point number, starting with a dot, optional exponent
+syn match   sliceFloat      display contained "\.\d\+\(e[-+]\=\d\+\)\=[fl]\=\>"
+"floating point number, without dot, with exponent
+syn match   sliceFloat      display contained "\d\+e[-+]\=\d\+[fl]\=\>"
+" flag an octal number with wrong digits
+syn case match
+
+
+" Comments
+syn region sliceComment    start="/\*"  end="\*/"
+syn match sliceComment	"//.*"
+
+syn sync ccomment sliceComment
+
+" Define the default highlighting.
+" For version 5.7 and earlier: only when not done already
+" For version 5.8 and later: only when an item doesn't have highlighting yet
+if version >= 508 || !exists("did_slice_syn_inits")
+  if version < 508
+    let did_slice_syn_inits = 1
+    command -nargs=+ HiLink hi link <args>
+  else
+    command -nargs=+ HiLink hi def link <args>
+  endif
+
+  HiLink sliceComment	Comment
+  HiLink sliceConstruct	Keyword
+  HiLink sliceType	Type
+  HiLink sliceString	String
+  HiLink sliceIncluded	String
+  HiLink sliceQualifier	Keyword
+  HiLink sliceInclude	Include
+  HiLink sliceGuard	PreProc
+  HiLink sliceBoolean	Boolean
+  HiLink sliceFloat	Number
+  HiLink sliceNumber	Number
+  HiLink sliceOctal	Number
+  HiLink sliceOctalZero	Special
+  HiLink sliceNumberError Special
+
+  delcommand HiLink
+endif
+
+let b:current_syntax = "slice"
+
+" vim: ts=8