rpcgen.vim 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. " Vim syntax file
  2. " Language: rpcgen
  3. " Maintainer: Charles E. Campbell <NcampObell@SdrPchip.AorgM-NOSPAM>
  4. " Last Change: Aug 31, 2016
  5. " Version: 13
  6. " URL: http://www.drchip.org/astronaut/vim/index.html#SYNTAX_RPCGEN
  7. if exists("b:current_syntax")
  8. finish
  9. endif
  10. " Read the C syntax to start with
  11. runtime! syntax/c.vim
  12. syn keyword rpcProgram program skipnl skipwhite nextgroup=rpcProgName
  13. syn match rpcProgName contained "\<\i\I*\>" skipnl skipwhite nextgroup=rpcProgZone
  14. 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
  15. syn keyword rpcVersion contained version skipnl skipwhite nextgroup=rpcVersName
  16. syn match rpcVersName contained "\<\i\I*\>" skipnl skipwhite nextgroup=rpcVersZone
  17. syn region rpcVersZone contained matchgroup=Delimiter start="{" matchgroup=Delimiter end="}\s*=\s*\d\+\s*;"me=e-1 contains=cType,cStructure,cStorageClass,rpcDecl,rpcProcNmbr,cComment
  18. syn keyword rpcDecl contained string
  19. syn match rpcProcNmbr contained "=\s*\d\+;"me=e-1
  20. syn match rpcProgNmbrErr contained "=\s*0x[^23]\x*"ms=s+1
  21. syn match rpcPassThru "^\s*%.*$"
  22. " Define the default highlighting.
  23. if !exists("skip_rpcgen_syntax_inits")
  24. hi def link rpcProgName rpcName
  25. hi def link rpcProgram rpcStatement
  26. hi def link rpcVersName rpcName
  27. hi def link rpcVersion rpcStatement
  28. hi def link rpcDecl cType
  29. hi def link rpcPassThru cComment
  30. hi def link rpcName Special
  31. hi def link rpcProcNmbr Delimiter
  32. hi def link rpcProgNmbrErr Error
  33. hi def link rpcStatement Statement
  34. endif
  35. let b:current_syntax = "rpcgen"
  36. " vim: ts=8