view runtime/syntax/rpcgen.vim @ 7597:3012eaddb6b2

commit https://github.com/vim/vim/commit/345efa013dc6d1754ba06e5596a26c48c9935937 Author: Bram Moolenaar <Bram@vim.org> Date: Fri Jan 15 20:57:49 2016 +0100 Update runtime files
author Christian Brabandt <cb@256bit.org>
date Fri, 15 Jan 2016 21:00:07 +0100
parents ce4ecfbebded
children 43efa4f5a8ea
line wrap: on
line source

" Vim syntax file
" Language:	rpcgen
" Maintainer:	Charles E. Campbell <NdrOchipS@PcampbellAfamily.Mbiz>
" Last Change:	Jan 13, 2015
" Version:	10
" URL:	http://www.drchip.org/astronaut/vim/index.html#SYNTAX_RPCGEN

if exists("b:current_syntax")
  finish
endif

" Read the C syntax to start with
if version < 600
  source <sfile>:p:h/c.vim
else
  runtime! syntax/c.vim
endif

syn keyword rpcProgram	program				skipnl skipwhite nextgroup=rpcProgName
syn match   rpcProgName	contained	"\<\i\I*\>"	skipnl skipwhite nextgroup=rpcProgZone
syn region  rpcProgZone	contained	matchgroup=Delimiter start="{" matchgroup=Delimiter end="}\s*=\s*\(\d\+\|0x[23]\x\{7}\)\s*;"me=e-1 contains=rpcVersion,cComment,rpcProgNmbrErr
syn keyword rpcVersion	contained	version		skipnl skipwhite nextgroup=rpcVersName
syn match   rpcVersName	contained	"\<\i\I*\>"	skipnl skipwhite nextgroup=rpcVersZone
syn region  rpcVersZone	contained	matchgroup=Delimiter start="{" matchgroup=Delimiter end="}\s*=\s*\d\+\s*;"me=e-1 contains=cType,cStructure,cStorageClass,rpcDecl,rpcProcNmbr,cComment
syn keyword rpcDecl	contained	string
syn match   rpcProcNmbr	contained	"=\s*\d\+;"me=e-1
syn match   rpcProgNmbrErr contained	"=\s*0x[^23]\x*"ms=s+1
syn match   rpcPassThru			"^\s*%.*$"

" 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_rpcgen_syntax_inits")
  if version < 508
    let did_rpcgen_syntax_inits = 1
    command -nargs=+ HiLink hi link <args>
  else
    command -nargs=+ HiLink hi def link <args>
  endif

  HiLink rpcProgName	rpcName
  HiLink rpcProgram	rpcStatement
  HiLink rpcVersName	rpcName
  HiLink rpcVersion	rpcStatement

  HiLink rpcDecl	cType
  HiLink rpcPassThru	cComment

  HiLink rpcName	Special
  HiLink rpcProcNmbr	Delimiter
  HiLink rpcProgNmbrErr	Error
  HiLink rpcStatement	Statement

  delcommand HiLink
endif

let b:current_syntax = "rpcgen"

" vim: ts=8