neovim

Neovim text editor
git clone https://git.dasho.dev/neovim.git
Log | Files | Refs | README

sather.vim (3489B)


      1 " Vim syntax file
      2 " Language:	Sather/pSather
      3 " Maintainer:	Claudio Fleiner <claudio@fleiner.com>
      4 " URL:		http://www.fleiner.com/vim/syntax/sather.vim
      5 " Last Change:	2003 May 11
      6 
      7 " Sather is a OO-language developed at the International Computer Science
      8 " Institute (ICSI) in Berkeley, CA. pSather is a parallel extension to Sather.
      9 " Homepage: http://www.icsi.berkeley.edu/~sather
     10 " Sather files use .sa as suffix
     11 
     12 " quit when a syntax file was already loaded
     13 if exists("b:current_syntax")
     14  finish
     15 endif
     16 
     17 " keyword definitions
     18 syn keyword satherExternal	 extern
     19 syn keyword satherBranch	 break continue
     20 syn keyword satherLabel		 when then
     21 syn keyword satherConditional	 if else elsif end case typecase assert with
     22 syn match satherConditional	 "near$"
     23 syn match satherConditional	 "far$"
     24 syn match satherConditional	 "near *[^(]"he=e-1
     25 syn match satherConditional	 "far *[^(]"he=e-1
     26 syn keyword satherSynchronize	 lock guard sync
     27 syn keyword satherRepeat	 loop parloop do
     28 syn match satherRepeat		 "while!"
     29 syn match satherRepeat		 "break!"
     30 syn match satherRepeat		 "until!"
     31 syn keyword satherBoolValue	 true false
     32 syn keyword satherValue		 self here cluster
     33 syn keyword satherOperator	 new "== != & ^ | && ||
     34 syn keyword satherOperator	 and or not
     35 syn match satherOperator	 "[#!]"
     36 syn match satherOperator	 ":-"
     37 syn keyword satherType		 void attr where
     38 syn match satherType	       "near *("he=e-1
     39 syn match satherType	       "far *("he=e-1
     40 syn keyword satherStatement	 return
     41 syn keyword satherStorageClass	 static const
     42 syn keyword satherExceptions	 try raise catch
     43 syn keyword satherMethodDecl	 is pre post
     44 syn keyword satherClassDecl	 abstract value class include
     45 syn keyword satherScopeDecl	 public private readonly
     46 
     47 
     48 syn match   satherSpecial	    contained "\\\d\d\d\|\\."
     49 syn region  satherString	    start=+"+  skip=+\\\\\|\\"+  end=+"+  contains=satherSpecial
     50 syn match   satherCharacter	    "'[^\\]'"
     51 syn match   satherSpecialCharacter  "'\\.'"
     52 syn match   satherNumber	  "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
     53 syn match   satherCommentSkip	  contained "^\s*\*\($\|\s\+\)"
     54 syn region  satherComment2String  contained start=+"+  skip=+\\\\\|\\"+  end=+$\|"+  contains=satherSpecial
     55 syn match   satherComment	  "--.*" contains=satherComment2String,satherCharacter,satherNumber
     56 
     57 
     58 syn sync ccomment satherComment
     59 
     60 " Define the default highlighting.
     61 " Only when an item doesn't have highlighting yet
     62 
     63 hi def link satherBranch		satherStatement
     64 hi def link satherLabel		satherStatement
     65 hi def link satherConditional	satherStatement
     66 hi def link satherSynchronize	satherStatement
     67 hi def link satherRepeat		satherStatement
     68 hi def link satherExceptions	satherStatement
     69 hi def link satherStorageClass	satherDeclarative
     70 hi def link satherMethodDecl	satherDeclarative
     71 hi def link satherClassDecl	satherDeclarative
     72 hi def link satherScopeDecl	satherDeclarative
     73 hi def link satherBoolValue	satherValue
     74 hi def link satherSpecial		satherValue
     75 hi def link satherString		satherValue
     76 hi def link satherCharacter	satherValue
     77 hi def link satherSpecialCharacter satherValue
     78 hi def link satherNumber		satherValue
     79 hi def link satherStatement	Statement
     80 hi def link satherOperator		Statement
     81 hi def link satherComment		Comment
     82 hi def link satherType		Type
     83 hi def link satherValue		String
     84 hi def link satherString		String
     85 hi def link satherSpecial		String
     86 hi def link satherCharacter	String
     87 hi def link satherDeclarative	Type
     88 hi def link satherExternal		PreCondit
     89 
     90 let b:current_syntax = "sather"
     91 
     92 " vim: ts=8