diff --git a/colors/detailed.vim b/colors/detailed.vim index de8e85c..45c3347 100644 --- a/colors/detailed.vim +++ b/colors/detailed.vim @@ -747,50 +747,53 @@ fun! s:ruby_syntax_and_highlights() " The default syntax/ruby.vim gets this way wrong (only does 2 chars and is " transparent): syn match rubyBlockArgument "&[_[:lower:]][_[:alnum:]]*" contains=NONE display - " Bonus! - syn match rubyInitialize '\' contained containedin=rubyMethodDeclaration - syn match rubyEncodingDirective "\cencoding: *utf-8" contained + " This was disabled in + " https://github.com/vim-ruby/vim-ruby/commit/074200ffa39b19baf9d9750d399d53d97f21ee07 + " and removed in + " https://github.com/vim-ruby/vim-ruby/commit/eba523334fe14e5c9b9585a287a336317da26d70 + hi def link rubyBlockParameter rubyIdentifier + syn match rubyBlockParameter "\%(\h\|[^\x00-\x7F]\)\%(\w\|[^\x00-\x7F]\)*" contained + syn cluster rubyDeclaration add=rubyBlockParameter + hi link rubyBlockParameter detailedBlockParameter + syn region rubyBlockParameterList start="\%(\%(\\|{\)\_s*\)\@32<=|" end="|" contains=rubyBlockParameter,rubySplatOperator,rubyDoubleSplatOperator,rubyProcOperator + " This is new though + syn match rubyNumberedBlockParam "_[1-9]" display + syn match rubyNumberedBlockParamError "_0" display + hi link rubyNumberedBlockParam rubyBlockParameter + hi def link rubyNumberedBlockParamError rubyError - " TODO - make this more elegant. - syn match rubyFirstAndSecondCommentLine '\%^#.*' - \ contains=rubyEncodingDirective contained - syn match rubyFirstAndSecondCommentLine '\%^#.*\n#.*' - \ contains=rubyEncodingDirective contained + " Bonus! + syn match detailedInitialize '\' contained containedin=rubyMethodDeclaration - syn match rubyComment "#.*" contains=rubySharpBang,rubySpaceError, - \rubyFirstAndSecondCommentLine,detailedTodo,detailedFixme,detailedXxx,@Spell + syn match rubyComment "#.*" contains=@rubyCommentSpecial,rubySpaceError, + \detailedTodo,detailedFixme,detailedXxx,@Spell hi link rubyConditional Conditional - hi link rubyExceptional rubyConditional " No-show. - hi link rubyMethodExceptional rubyDefine " And another. + hi link rubyExceptionHandler rubyConditional " No-show. hi link rubyStringEscape Special hi link rubyQuoteEscape rubyStringEscape - hi link rubyInvalidVariable Error - hi link rubyNoInterpolation rubyString " E.g. \#{} inside a string. hi link rubyException Exception hi link rubyKeyword Keyword hi link rubyConstant detailedConstant - hi link rubyEncodingDirective detailedEncodingDirective - hi link rubyInitialize detailedInitialize - hi link rubyRailsARAssociationMethod detailedRailsARAssociationMethod + hi link rubyEncoding detailedEncodingDirective + hi link rubyEntity detailedRailsARAssociationMethod hi link rubySpaceError BadWhitespace hi link rubyData detailedData hi link rubyDataDirective detailedDataDirective - hi link rubyDocumentation Comment - hi link rubyComment Comment hi link rubyFirstAndSecondCommentLine rubySharpBang hi link rubySharpBang detailedSharpBang - hi link rubyDoBlock rubyRepeatExpression + hi link rubyDoBlock detailedRepeatExpression hi link rubyRepeatExpression detailedRepeatExpression hi link rubyRepeatModifier detailedRepeatModifier hi link rubyRepeat detailedRepeat - hi link rubyCaseExpression rubyConditionalExpression + hi link rubyCaseExpression detailedConditionalExpression hi link rubyConditionalExpression detailedConditionalExpression hi link rubyConditionalModifier detailedConditionalModifier hi link rubyControl detailedControl hi link rubyBlockExpression detailedBlockExpression - hi link rubyBlock detailedBlock + hi link rubyClassBlock detailedBlock + hi link rubyModuleBlock detailedBlock hi link rubyMethodBlock detailedMethodBlock hi link rubyEval detailedEval hi link rubyAttribute detailedAttribute @@ -802,20 +805,18 @@ fun! s:ruby_syntax_and_highlights() hi link rubyPredefinedVariable detailedPredefinedVariable hi link rubyPredefinedConstant detailedPredefinedConstant hi link rubyBlockParameterList detailedBlockParameterList - hi link rubyBlockParameter detailedBlockParameter hi link rubySymbol detailedSymbol hi link rubyBlockArgument detailedBlockArgument hi link rubyFloat detailedFloat hi link rubyInteger detailedInteger hi link rubyPseudoVariable detailedPseudoVariable - hi link rubyASCIICode detailedASCIICode + hi link rubyCharacter detailedASCIICode hi link rubyRegexpDelimiter detailedRegexpDelimiter hi link rubyRegexpDot detailedRegexpDot hi link rubyRegexpAnchor detailedRegexpAnchor hi link rubyRegexpEscape detailedRegexpEscape hi link rubyRegexpQuantifier detailedRegexpQuantifier hi link rubyRegexpCharClass detailedRegexpCharClass - hi link rubyRegexpComment Comment hi link rubyRegexpSpecial detailedRegexpSpecial hi link rubyInterpolationDelimiter detailedInterpolationDelimiter hi link rubyStringDelimiter detailedStringDelimiter