codekingpro/portable-devtools
114k
1" Vim default file2" Language: Racc input file3" Previous Maintainer: Nikolai Weibull <now@bitwi.se>4" Latest Revision: 2008-06-225 6if exists("b:current_syntax")7 finish8endif9 10let s:cpo_save = &cpo11set cpo&vim12 13syn keyword raccTodo contained TODO FIXME XXX NOTE14 15syn region raccComment start='/\*' end='\*/'16 \ contains=raccTodo,@Spell17syn region raccComment display oneline start='#' end='$'18 \ contains=raccTodo,@Spell19 20syn region raccClass transparent matchgroup=raccKeyword21 \ start='\<class\>' end='\<rule\>'he=e-422 \ contains=raccComment,raccPrecedence,23 \ raccTokenDecl,raccExpect,raccOptions,raccConvert,24 \ raccStart,25 26syn region raccPrecedence transparent matchgroup=raccKeyword27 \ start='\<prechigh\>' end='\<preclow\>'28 \ contains=raccComment,raccPrecSpec29 30syn keyword raccPrecSpec contained nonassoc left right31 \ nextgroup=raccPrecToken,raccPrecString skipwhite32 \ skipnl33 34syn match raccPrecToken contained '\<\u[A-Z0-9_]*\>'35 \ nextgroup=raccPrecToken,raccPrecString skipwhite36 \ skipnl37 38syn region raccPrecString matchgroup=raccPrecString start=+"+39 \ skip=+\\\\\|\\"+ end=+"+40 \ contains=raccSpecial41 \ nextgroup=raccPrecToken,raccPrecString skipwhite42 \ skipnl43syn region raccPrecString matchgroup=raccPrecString start=+'+44 \ skip=+\\\\\|\\'+ end=+'+ contains=raccSpecial45 \ nextgroup=raccPrecToken,raccPrecString skipwhite46 \ skipnl47 48syn keyword raccTokenDecl contained token49 \ nextgroup=raccTokenR skipwhite skipnl50 51syn match raccTokenR contained '\<\u[A-Z0-9_]*\>'52 \ nextgroup=raccTokenR skipwhite skipnl53 54syn keyword raccExpect contained expect55 \ nextgroup=raccNumber skipwhite skipnl56 57syn match raccNumber contained '\<\d\+\>'58 59syn keyword raccOptions contained options60 \ nextgroup=raccOptionsR skipwhite skipnl61 62syn keyword raccOptionsR contained omit_action_call result_var63 \ nextgroup=raccOptionsR skipwhite skipnl64 65syn region raccConvert transparent contained matchgroup=raccKeyword66 \ start='\<convert\>' end='\<end\>'67 \ contains=raccComment,raccConvToken skipwhite68 \ skipnl69 70syn match raccConvToken contained '\<\u[A-Z0-9_]*\>'71 \ nextgroup=raccString skipwhite skipnl72 73syn keyword raccStart contained start74 \ nextgroup=raccTargetS skipwhite skipnl75 76syn match raccTargetS contained '\<\l[a-z0-9_]*\>'77 78syn match raccSpecial contained '\\["'\\]'79 80syn region raccString start=+"+ skip=+\\\\\|\\"+ end=+"+81 \ contains=raccSpecial82syn region raccString start=+'+ skip=+\\\\\|\\'+ end=+'+83 \ contains=raccSpecial84 85syn region raccRules transparent matchgroup=raccKeyword start='\<rule\>'86 \ end='\<end\>' contains=raccComment,raccString,87 \ raccNumber,raccToken,raccTarget,raccDelimiter,88 \ raccAction89 90syn match raccTarget contained '\<\l[a-z0-9_]*\>'91 92syn match raccDelimiter contained '[:|]'93 94syn match raccToken contained '\<\u[A-Z0-9_]*\>'95 96syn include @raccRuby syntax/ruby.vim97 98syn region raccAction transparent matchgroup=raccDelimiter99 \ start='{' end='}' contains=@raccRuby100 101syn region raccHeader transparent matchgroup=raccPreProc102 \ start='^---- header.*' end='^----'he=e-4103 \ contains=@raccRuby104 105syn region raccInner transparent matchgroup=raccPreProc106 \ start='^---- inner.*' end='^----'he=e-4107 \ contains=@raccRuby108 109syn region raccFooter transparent matchgroup=raccPreProc110 \ start='^---- footer.*' end='^----'he=e-4111 \ contains=@raccRuby112 113syn sync match raccSyncHeader grouphere raccHeader '^---- header'114syn sync match raccSyncInner grouphere raccInner '^---- inner'115syn sync match raccSyncFooter grouphere raccFooter '^---- footer'116 117hi def link raccTodo Todo118hi def link raccComment Comment119hi def link raccPrecSpec Type120hi def link raccPrecToken raccToken121hi def link raccPrecString raccString122hi def link raccTokenDecl Keyword123hi def link raccToken Identifier124hi def link raccTokenR raccToken125hi def link raccExpect Keyword126hi def link raccNumber Number127hi def link raccOptions Keyword128hi def link raccOptionsR Identifier129hi def link raccConvToken raccToken130hi def link raccStart Keyword131hi def link raccTargetS Type132hi def link raccSpecial special133hi def link raccString String134hi def link raccTarget Type135hi def link raccDelimiter Delimiter136hi def link raccPreProc PreProc137hi def link raccKeyword Keyword138 139let b:current_syntax = "racc"140 141let &cpo = s:cpo_save142unlet s:cpo_save143 