diff --git a/syntax/raku.vim b/syntax/raku.vim index 4880a63..c342f6f 100644 --- a/syntax/raku.vim +++ b/syntax/raku.vim @@ -160,7 +160,7 @@ exec "syn match rakuType display \"\\%(". s:words . "\\)\\%([A-Za-z_\\xC0-\\xFF0 unlet s:group s:words_list s:keywords s:types s:words_space s:temp s:words syn match rakuPreDeclare display "[.^]\@1" nextgroup=rakuDeclare,rakuIdentifier skipwhite skipempty -syn match rakuDeclare display "[.^]\@1" nextgroup=rakuIdentifier skipwhite skipempty +syn match rakuDeclare display "[.^]\@1" nextgroup=rakuIdentifier skipwhite skipempty syn match rakuDeclareRegex display "[.^]\@1" nextgroup=rakuRegexName skipwhite skipempty syn match rakuTypeConstraint display "\%([.^]\|^\s*\)\@" @@ -196,7 +196,7 @@ exec "syn match rakuRSXZOp display \"[RSXZ]:\\@!\\%(\\a\\@=\\%(". s:alpha_metaop syn match rakuBlockLabel display "^\s*\zs\h\w*\s*::\@!\_s\@=" -syn match rakuNumber display "[A-Za-z_\xC0-\xFF0-9]\@1\|NaN\>\)" syn match rakuNumber display "[A-Za-z_\xC0-\xFF0-9]\@1[^{]\+\%({\s*\%(#.*\)\?\)\?$" + \ start="^\z(\s*\)\%(my\|our\|augment\|multi\|proto\|only\)\?\s*\%(\%([A-Za-z_\xC0-\xFF]\%([A-Za-z_\xC0-\xFF0-9]\|[-'][A-Za-z_\xC0-\xFF]\@=\)*\)\s\+\)\?\<\%(CATCH\|try\|ENTER\|LEAVE\|CHECK\|INIT\|BEGIN\|END\|KEEP\|UNDO\|PRE\|POST\|module\|package\|enum\|subset\|class\|sub\%(method\)\?\|multi\|method\|slang\|grammar\|regex\|token\|rule\|model\|actor\)\>[^{]\+\%({\s*\%(#.*\)\?\)\?$" \ end="^\z1}" \ transparent fold keepend extend endif