mirror of
https://github.com/vim/vim.git
synced 2025-09-23 03:43:49 -04:00
updated for version 7.0001
This commit is contained in:
105
runtime/syntax/sather.vim
Normal file
105
runtime/syntax/sather.vim
Normal file
@@ -0,0 +1,105 @@
|
||||
" Vim syntax file
|
||||
" Language: Sather/pSather
|
||||
" Maintainer: Claudio Fleiner <claudio@fleiner.com>
|
||||
" URL: http://www.fleiner.com/vim/syntax/sather.vim
|
||||
" Last Change: 2003 May 11
|
||||
|
||||
" Sather is a OO-language developped at the International Computer Science
|
||||
" Institute (ICSI) in Berkeley, CA. pSather is a parallel extension to Sather.
|
||||
" Homepage: http://www.icsi.berkeley.edu/~sather
|
||||
" Sather files use .sa as suffix
|
||||
|
||||
" 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
|
||||
|
||||
" keyword definitions
|
||||
syn keyword satherExternal extern
|
||||
syn keyword satherBranch break continue
|
||||
syn keyword satherLabel when then
|
||||
syn keyword satherConditional if else elsif end case typecase assert with
|
||||
syn match satherConditional "near$"
|
||||
syn match satherConditional "far$"
|
||||
syn match satherConditional "near *[^(]"he=e-1
|
||||
syn match satherConditional "far *[^(]"he=e-1
|
||||
syn keyword satherSynchronize lock guard sync
|
||||
syn keyword satherRepeat loop parloop do
|
||||
syn match satherRepeat "while!"
|
||||
syn match satherRepeat "break!"
|
||||
syn match satherRepeat "until!"
|
||||
syn keyword satherBoolValue true false
|
||||
syn keyword satherValue self here cluster
|
||||
syn keyword satherOperator new "== != & ^ | && ||
|
||||
syn keyword satherOperator and or not
|
||||
syn match satherOperator "[#!]"
|
||||
syn match satherOperator ":-"
|
||||
syn keyword satherType void attr where
|
||||
syn match satherType "near *("he=e-1
|
||||
syn match satherType "far *("he=e-1
|
||||
syn keyword satherStatement return
|
||||
syn keyword satherStorageClass static const
|
||||
syn keyword satherExceptions try raise catch
|
||||
syn keyword satherMethodDecl is pre post
|
||||
syn keyword satherClassDecl abstract value class include
|
||||
syn keyword satherScopeDecl public private readonly
|
||||
|
||||
|
||||
syn match satherSpecial contained "\\\d\d\d\|\\."
|
||||
syn region satherString start=+"+ skip=+\\\\\|\\"+ end=+"+ contains=satherSpecial
|
||||
syn match satherCharacter "'[^\\]'"
|
||||
syn match satherSpecialCharacter "'\\.'"
|
||||
syn match satherNumber "-\=\<\d\+L\=\>\|0[xX][0-9a-fA-F]\+\>"
|
||||
syn match satherCommentSkip contained "^\s*\*\($\|\s\+\)"
|
||||
syn region satherComment2String contained start=+"+ skip=+\\\\\|\\"+ end=+$\|"+ contains=satherSpecial
|
||||
syn match satherComment "--.*" contains=satherComment2String,satherCharacter,satherNumber
|
||||
|
||||
|
||||
syn sync ccomment satherComment
|
||||
|
||||
" 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_sather_syn_inits")
|
||||
if version < 508
|
||||
let did_sather_syn_inits = 1
|
||||
command -nargs=+ HiLink hi link <args>
|
||||
else
|
||||
command -nargs=+ HiLink hi def link <args>
|
||||
endif
|
||||
|
||||
HiLink satherBranch satherStatement
|
||||
HiLink satherLabel satherStatement
|
||||
HiLink satherConditional satherStatement
|
||||
HiLink satherSynchronize satherStatement
|
||||
HiLink satherRepeat satherStatement
|
||||
HiLink satherExceptions satherStatement
|
||||
HiLink satherStorageClass satherDeclarative
|
||||
HiLink satherMethodDecl satherDeclarative
|
||||
HiLink satherClassDecl satherDeclarative
|
||||
HiLink satherScopeDecl satherDeclarative
|
||||
HiLink satherBoolValue satherValue
|
||||
HiLink satherSpecial satherValue
|
||||
HiLink satherString satherValue
|
||||
HiLink satherCharacter satherValue
|
||||
HiLink satherSpecialCharacter satherValue
|
||||
HiLink satherNumber satherValue
|
||||
HiLink satherStatement Statement
|
||||
HiLink satherOperator Statement
|
||||
HiLink satherComment Comment
|
||||
HiLink satherType Type
|
||||
HiLink satherValue String
|
||||
HiLink satherString String
|
||||
HiLink satherSpecial String
|
||||
HiLink satherCharacter String
|
||||
HiLink satherDeclarative Type
|
||||
HiLink satherExternal PreCondit
|
||||
delcommand HiLink
|
||||
endif
|
||||
|
||||
let b:current_syntax = "sather"
|
||||
|
||||
" vim: ts=8
|
Reference in New Issue
Block a user