view runtime/syntax/rpcgen.vim @ 7137:41896b9720cc v7.4.880

commit https://github.com/vim/vim/commit/02d803fc0cc99a1c86a3553a1d445137eab1aa8d Author: Bram Moolenaar <Bram@vim.org> Date: Fri Sep 25 17:50:22 2015 +0200 patch 7.4.880 Problem: No build and coverage status. Solution: Add links to the README file. (Christian Brabandt)
author Christian Brabandt <cb@256bit.org>
date Fri, 25 Sep 2015 18:00:05 +0200
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