Team Ai
Datasetpublic

codekingpro/portable-devtools

sourceHugging Faceupdated 5mo agoView on Hugging Face
1likes14kdownloads
kconfig.vim738 linesDownload Raw Back to syntax
1" Vim syntax file2" Maintainer:           Christian Brabandt <cb@256bit.org>3" Previous Maintainer:  Nikolai Weibull <now@bitwi.se>4" Latest Revision:      2025 Jan 205" License:              Vim (see :h license)6" Repository:		https://github.com/chrisbra/vim-kconfig7 8if exists("b:current_syntax")9  finish10endif11 12let s:cpo_save = &cpo13set cpo&vim14 15exe "syn sync minlines=" . get(g:, 'kconfig_minlines', 50)16 17if exists("g:kconfig_syntax_heavy")18 19  syn match   kconfigBegin              '^' nextgroup=kconfigKeyword20                                        \ skipwhite21 22  syn keyword kconfigTodo               contained TODO FIXME XXX NOTE23 24  syn match   kconfigComment            display '#.*$' contains=kconfigTodo25 26  syn keyword kconfigKeyword            config nextgroup=kconfigSymbol27                                        \ skipwhite28 29  syn keyword kconfigKeyword            menuconfig nextgroup=kconfigSymbol30                                        \ skipwhite31 32  syn keyword kconfigKeyword            comment menu mainmenu33                                        \ nextgroup=kconfigKeywordPrompt34                                        \ skipwhite35 36  syn keyword kconfigKeyword            choice37                                        \ nextgroup=@kconfigConfigOptions38                                        \ skipwhite skipnl39 40  syn keyword kconfigKeyword            endmenu endchoice41 42  syn keyword kconfigPreProc            source43                                        \ nextgroup=kconfigPath44                                        \ skipwhite45 46  " TODO: This is a hack.  The who .*Expr stuff should really be generated so47  " that we can reuse it for various nextgroups.48  syn keyword kconfigConditional        if endif49                                        \ nextgroup=@kconfigConfigOptionIfExpr50                                        \ skipwhite51 52  syn match   kconfigKeywordPrompt      '"[^"\\]*\%(\\.[^"\\]*\)*"'53                                        \ contained54                                        \ nextgroup=@kconfigConfigOptions55                                        \ skipwhite skipnl56 57  syn match   kconfigPath               '"[^"\\]*\%(\\.[^"\\]*\)*"\|\S\+'58                                        \ contained59 60  syn match   kconfigSymbol             '\<\k\+\>'61                                        \ contained62                                        \ nextgroup=@kconfigConfigOptions63                                        \ skipwhite skipnl64 65  " FIXME: There is – probably – no reason to cluster these instead of just66  " defining them in the same group.67  syn cluster kconfigConfigOptions      contains=kconfigTypeDefinition,68                                        \        kconfigInputPrompt,69                                        \        kconfigDefaultValue,70                                        \        kconfigDependencies,71                                        \        kconfigReverseDependencies,72                                        \        kconfigNumericalRanges,73                                        \        kconfigHelpText,74                                        \        kconfigDefBool,75                                        \        kconfigOptional76 77  syn keyword kconfigTypeDefinition     bool boolean tristate string hex int78                                        \ contained79                                        \ nextgroup=kconfigTypeDefPrompt,80                                        \           @kconfigConfigOptions81                                        \ skipwhite skipnl82 83  syn match   kconfigTypeDefPrompt      '"[^"\\]*\%(\\.[^"\\]*\)*"'84                                        \ contained85                                        \ nextgroup=kconfigConfigOptionIf,86                                        \           @kconfigConfigOptions87                                        \ skipwhite skipnl88 89  syn match   kconfigTypeDefPrompt      "'[^'\\]*\%(\\.[^'\\]*\)*'"90                                        \ contained91                                        \ nextgroup=kconfigConfigOptionIf,92                                        \           @kconfigConfigOptions93                                        \ skipwhite skipnl94 95  syn keyword kconfigInputPrompt        prompt96                                        \ contained97                                        \ nextgroup=kconfigPromptPrompt98                                        \ skipwhite99 100  syn match   kconfigPromptPrompt       '"[^"\\]*\%(\\.[^"\\]*\)*"'101                                        \ contained102                                        \ nextgroup=kconfigConfigOptionIf,103                                        \           @kconfigConfigOptions104                                        \ skipwhite skipnl105 106  syn match   kconfigPromptPrompt       "'[^'\\]*\%(\\.[^'\\]*\)*'"107                                        \ contained108                                        \ nextgroup=kconfigConfigOptionIf,109                                        \           @kconfigConfigOptions110                                        \ skipwhite skipnl111 112  syn keyword   kconfigDefaultValue     default113                                        \ contained114                                        \ nextgroup=@kconfigConfigOptionExpr115                                        \ skipwhite116 117  syn match   kconfigDependencies       'depends on\|requires'118                                        \ contained119                                        \ nextgroup=@kconfigConfigOptionIfExpr120                                        \ skipwhite121 122  syn keyword kconfigReverseDependencies select123                                        \ contained124                                        \ nextgroup=@kconfigRevDepSymbol125                                        \ skipwhite126 127  syn cluster kconfigRevDepSymbol       contains=kconfigRevDepCSymbol,128                                        \        kconfigRevDepNCSymbol129 130  syn match   kconfigRevDepCSymbol      '"[^"\\]*\%(\\.[^"\\]*\)*"'131                                        \ contained132                                        \ nextgroup=kconfigConfigOptionIf,133                                        \           @kconfigConfigOptions134                                        \ skipwhite skipnl135 136  syn match   kconfigRevDepCSymbol      "'[^'\\]*\%(\\.[^'\\]*\)*'"137                                        \ contained138                                        \ nextgroup=kconfigConfigOptionIf,139                                        \           @kconfigConfigOptions140                                        \ skipwhite skipnl141 142  syn match   kconfigRevDepNCSymbol     '\<\k\+\>'143                                        \ contained144                                        \ nextgroup=kconfigConfigOptionIf,145                                        \           @kconfigConfigOptions146                                        \ skipwhite skipnl147 148  syn keyword kconfigNumericalRanges    range149                                        \ contained150                                        \ nextgroup=@kconfigRangeSymbol151                                        \ skipwhite152 153  syn cluster kconfigRangeSymbol        contains=kconfigRangeCSymbol,154                                        \        kconfigRangeNCSymbol155 156  syn match   kconfigRangeCSymbol       '"[^"\\]*\%(\\.[^"\\]*\)*"'157                                        \ contained158                                        \ nextgroup=@kconfigRangeSymbol2159                                        \ skipwhite skipnl160 161  syn match   kconfigRangeCSymbol       "'[^'\\]*\%(\\.[^'\\]*\)*'"162                                        \ contained163                                        \ nextgroup=@kconfigRangeSymbol2164                                        \ skipwhite skipnl165 166  syn match   kconfigRangeNCSymbol      '\<\k\+\>'167                                        \ contained168                                        \ nextgroup=@kconfigRangeSymbol2169                                        \ skipwhite skipnl170 171  syn cluster kconfigRangeSymbol2       contains=kconfigRangeCSymbol2,172                                        \        kconfigRangeNCSymbol2173 174  syn match   kconfigRangeCSymbol2      "'[^'\\]*\%(\\.[^'\\]*\)*'"175                                        \ contained176                                        \ nextgroup=kconfigConfigOptionIf,177                                        \           @kconfigConfigOptions178                                        \ skipwhite skipnl179 180  syn match   kconfigRangeNCSymbol2     '\<\k\+\>'181                                        \ contained182                                        \ nextgroup=kconfigConfigOptionIf,183                                        \           @kconfigConfigOptions184                                        \ skipwhite skipnl185 186  syn region  kconfigHelpText           contained187        \ matchgroup=kconfigConfigOption188        \ start='\%(help\|---help---\)\ze\s*\n\z(\s\+\)'189        \ skip='^$'190        \ end='^\z1\@!'191        \ nextgroup=@kconfigConfigOptions192        \ skipwhite skipnl193 194  " XXX: Undocumented195  syn keyword kconfigDefBool            def_bool196                                        \ contained197                                        \ nextgroup=@kconfigDefBoolSymbol198                                        \ skipwhite199 200  syn cluster kconfigDefBoolSymbol      contains=kconfigDefBoolCSymbol,201                                        \        kconfigDefBoolNCSymbol202 203  syn match   kconfigDefBoolCSymbol     '"[^"\\]*\%(\\.[^"\\]*\)*"'204                                        \ contained205                                        \ nextgroup=kconfigConfigOptionIf,206                                        \           @kconfigConfigOptions207                                        \ skipwhite skipnl208 209  syn match   kconfigDefBoolCSymbol     "'[^'\\]*\%(\\.[^'\\]*\)*'"210                                        \ contained211                                        \ nextgroup=kconfigConfigOptionIf,212                                        \           @kconfigConfigOptions213                                        \ skipwhite skipnl214 215  syn match   kconfigDefBoolNCSymbol    '\<\k\+\>'216                                        \ contained217                                        \ nextgroup=kconfigConfigOptionIf,218                                        \           @kconfigConfigOptions219                                        \ skipwhite skipnl220 221  " XXX: This is actually only a valid option for “choice”, but treating it222  " specially would require a lot of extra groups.223  syn keyword kconfigOptional           optional224                                        \ contained225                                        \ nextgroup=@kconfigConfigOptions226                                        \ skipwhite skipnl227 228  syn keyword kconfigConfigOptionIf     if229                                        \ contained230                                        \ nextgroup=@kconfigConfigOptionIfExpr231                                        \ skipwhite232 233  syn cluster kconfigConfigOptionIfExpr contains=@kconfigConfOptIfExprSym,234                                        \        kconfigConfOptIfExprNeg,235                                        \        kconfigConfOptIfExprGroup236 237  syn cluster kconfigConfOptIfExprSym   contains=kconfigConfOptIfExprCSym,238                                        \        kconfigConfOptIfExprNCSym239 240  syn match   kconfigConfOptIfExprCSym  '"[^"\\]*\%(\\.[^"\\]*\)*"'241                                        \ contained242                                        \ nextgroup=@kconfigConfigOptions,243                                        \           kconfigConfOptIfExprAnd,244                                        \           kconfigConfOptIfExprOr,245                                        \           kconfigConfOptIfExprEq,246                                        \           kconfigConfOptIfExprNEq247                                        \ skipwhite skipnl248 249  syn match   kconfigConfOptIfExprCSym  "'[^'\\]*\%(\\.[^'\\]*\)*'"250                                        \ contained251                                        \ nextgroup=@kconfigConfigOptions,252                                        \           kconfigConfOptIfExprAnd,253                                        \           kconfigConfOptIfExprOr,254                                        \           kconfigConfOptIfExprEq,255                                        \           kconfigConfOptIfExprNEq256                                        \ skipwhite skipnl257 258  syn match   kconfigConfOptIfExprNCSym '\<\k\+\>'259                                        \ contained260                                        \ nextgroup=@kconfigConfigOptions,261                                        \           kconfigConfOptIfExprAnd,262                                        \           kconfigConfOptIfExprOr,263                                        \           kconfigConfOptIfExprEq,264                                        \           kconfigConfOptIfExprNEq265                                        \ skipwhite skipnl266 267  syn cluster kconfigConfOptIfExprSym2  contains=kconfigConfOptIfExprCSym2,268                                        \        kconfigConfOptIfExprNCSym2269 270  syn match   kconfigConfOptIfExprEq    '='271                                        \ contained272                                        \ nextgroup=@kconfigConfOptIfExprSym2273                                        \ skipwhite274 275  syn match   kconfigConfOptIfExprNEq   '!='276                                        \ contained277                                        \ nextgroup=@kconfigConfOptIfExprSym2278                                        \ skipwhite279 280  syn match   kconfigConfOptIfExprCSym2 "'[^'\\]*\%(\\.[^'\\]*\)*'"281                                        \ contained282                                        \ nextgroup=@kconfigConfigOptions,283                                        \           kconfigConfOptIfExprAnd,284                                        \           kconfigConfOptIfExprOr285                                        \ skipwhite skipnl286 287  syn match   kconfigConfOptIfExprNCSym2 '\<\k\+\>'288                                        \ contained289                                        \ nextgroup=@kconfigConfigOptions,290                                        \           kconfigConfOptIfExprAnd,291                                        \           kconfigConfOptIfExprOr292                                        \ skipwhite skipnl293 294  syn match   kconfigConfOptIfExprNeg   '!'295                                        \ contained296                                        \ nextgroup=@kconfigConfigOptionIfExpr297                                        \ skipwhite298 299  syn match   kconfigConfOptIfExprAnd   '&&'300                                        \ contained301                                        \ nextgroup=@kconfigConfigOptionIfExpr302                                        \ skipwhite303 304  syn match   kconfigConfOptIfExprOr    '||'305                                        \ contained306                                        \ nextgroup=@kconfigConfigOptionIfExpr307                                        \ skipwhite308 309  syn match   kconfigConfOptIfExprGroup '('310                                        \ contained311                                        \ nextgroup=@kconfigConfigOptionIfGExp312                                        \ skipwhite313 314  " TODO: hm, this kind of recursion doesn't work right.  We need another set of315  " expressions that have kconfigConfigOPtionIfGExp as nextgroup and a matcher316  " for '(' that sets it all off.317  syn cluster kconfigConfigOptionIfGExp contains=@kconfigConfOptIfGExpSym,318                                        \        kconfigConfOptIfGExpNeg,319                                        \        kconfigConfOptIfExprGroup320 321  syn cluster kconfigConfOptIfGExpSym   contains=kconfigConfOptIfGExpCSym,322                                        \        kconfigConfOptIfGExpNCSym323 324  syn match   kconfigConfOptIfGExpCSym  '"[^"\\]*\%(\\.[^"\\]*\)*"'325                                        \ contained326                                        \ nextgroup=@kconfigConfigIf,327                                        \           kconfigConfOptIfGExpAnd,328                                        \           kconfigConfOptIfGExpOr,329                                        \           kconfigConfOptIfGExpEq,330                                        \           kconfigConfOptIfGExpNEq331                                        \ skipwhite skipnl332 333  syn match   kconfigConfOptIfGExpCSym  "'[^'\\]*\%(\\.[^'\\]*\)*'"334                                        \ contained335                                        \ nextgroup=@kconfigConfigIf,336                                        \           kconfigConfOptIfGExpAnd,337                                        \           kconfigConfOptIfGExpOr,338                                        \           kconfigConfOptIfGExpEq,339                                        \           kconfigConfOptIfGExpNEq340                                        \ skipwhite skipnl341 342  syn match   kconfigConfOptIfGExpNCSym '\<\k\+\>'343                                        \ contained344                                        \ nextgroup=kconfigConfOptIfExprGrpE,345                                        \           kconfigConfOptIfGExpAnd,346                                        \           kconfigConfOptIfGExpOr,347                                        \           kconfigConfOptIfGExpEq,348                                        \           kconfigConfOptIfGExpNEq349                                        \ skipwhite skipnl350 351  syn cluster kconfigConfOptIfGExpSym2  contains=kconfigConfOptIfGExpCSym2,352                                        \        kconfigConfOptIfGExpNCSym2353 354  syn match   kconfigConfOptIfGExpEq    '='355                                        \ contained356                                        \ nextgroup=@kconfigConfOptIfGExpSym2357                                        \ skipwhite358 359  syn match   kconfigConfOptIfGExpNEq   '!='360                                        \ contained361                                        \ nextgroup=@kconfigConfOptIfGExpSym2362                                        \ skipwhite363 364  syn match   kconfigConfOptIfGExpCSym2 '"[^"\\]*\%(\\.[^"\\]*\)*"'365                                        \ contained366                                        \ nextgroup=kconfigConfOptIfExprGrpE,367                                        \           kconfigConfOptIfGExpAnd,368                                        \           kconfigConfOptIfGExpOr369                                        \ skipwhite skipnl370 371  syn match   kconfigConfOptIfGExpCSym2 "'[^'\\]*\%(\\.[^'\\]*\)*'"372                                        \ contained373                                        \ nextgroup=kconfigConfOptIfExprGrpE,374                                        \           kconfigConfOptIfGExpAnd,375                                        \           kconfigConfOptIfGExpOr376                                        \ skipwhite skipnl377 378  syn match   kconfigConfOptIfGExpNCSym2 '\<\k\+\>'379                                        \ contained380                                        \ nextgroup=kconfigConfOptIfExprGrpE,381                                        \           kconfigConfOptIfGExpAnd,382                                        \           kconfigConfOptIfGExpOr383                                        \ skipwhite skipnl384 385  syn match   kconfigConfOptIfGExpNeg   '!'386                                        \ contained387                                        \ nextgroup=@kconfigConfigOptionIfGExp388                                        \ skipwhite389 390  syn match   kconfigConfOptIfGExpAnd   '&&'391                                        \ contained392                                        \ nextgroup=@kconfigConfigOptionIfGExp393                                        \ skipwhite394 395  syn match   kconfigConfOptIfGExpOr    '||'396                                        \ contained397                                        \ nextgroup=@kconfigConfigOptionIfGExp398                                        \ skipwhite399 400  syn match   kconfigConfOptIfExprGrpE  ')'401                                        \ contained402                                        \ nextgroup=@kconfigConfigOptions,403                                        \           kconfigConfOptIfExprAnd,404                                        \           kconfigConfOptIfExprOr405                                        \ skipwhite skipnl406 407 408  syn cluster kconfigConfigOptionExpr   contains=@kconfigConfOptExprSym,409                                        \        kconfigConfOptExprNeg,410                                        \        kconfigConfOptExprGroup411 412  syn cluster kconfigConfOptExprSym     contains=kconfigConfOptExprCSym,413                                        \        kconfigConfOptExprNCSym414 415  syn match   kconfigConfOptExprCSym    '"[^"\\]*\%(\\.[^"\\]*\)*"'416                                        \ contained417                                        \ nextgroup=kconfigConfigOptionIf,418                                        \           kconfigConfOptExprAnd,419                                        \           kconfigConfOptExprOr,420                                        \           kconfigConfOptExprEq,421                                        \           kconfigConfOptExprNEq,422                                        \           @kconfigConfigOptions423                                        \ skipwhite skipnl424 425  syn match   kconfigConfOptExprCSym    "'[^'\\]*\%(\\.[^'\\]*\)*'"426                                        \ contained427                                        \ nextgroup=kconfigConfigOptionIf,428                                        \           kconfigConfOptExprAnd,429                                        \           kconfigConfOptExprOr,430                                        \           kconfigConfOptExprEq,431                                        \           kconfigConfOptExprNEq,432                                        \           @kconfigConfigOptions433                                        \ skipwhite skipnl434 435  syn match   kconfigConfOptExprNCSym   '\<\k\+\>'436                                        \ contained437                                        \ nextgroup=kconfigConfigOptionIf,438                                        \           kconfigConfOptExprAnd,439                                        \           kconfigConfOptExprOr,440                                        \           kconfigConfOptExprEq,441                                        \           kconfigConfOptExprNEq,442                                        \           @kconfigConfigOptions443                                        \ skipwhite skipnl444 445  syn cluster kconfigConfOptExprSym2    contains=kconfigConfOptExprCSym2,446                                        \        kconfigConfOptExprNCSym2447 448  syn match   kconfigConfOptExprEq      '='449                                        \ contained450                                        \ nextgroup=@kconfigConfOptExprSym2451                                        \ skipwhite452 453  syn match   kconfigConfOptExprNEq     '!='454                                        \ contained455                                        \ nextgroup=@kconfigConfOptExprSym2456                                        \ skipwhite457 458  syn match   kconfigConfOptExprCSym2   '"[^"\\]*\%(\\.[^"\\]*\)*"'459                                        \ contained460                                        \ nextgroup=kconfigConfigOptionIf,461                                        \           kconfigConfOptExprAnd,462                                        \           kconfigConfOptExprOr,463                                        \           @kconfigConfigOptions464                                        \ skipwhite skipnl465 466  syn match   kconfigConfOptExprCSym2   "'[^'\\]*\%(\\.[^'\\]*\)*'"467                                        \ contained468                                        \ nextgroup=kconfigConfigOptionIf,469                                        \           kconfigConfOptExprAnd,470                                        \           kconfigConfOptExprOr,471                                        \           @kconfigConfigOptions472                                        \ skipwhite skipnl473 474  syn match   kconfigConfOptExprNCSym2  '\<\k\+\>'475                                        \ contained476                                        \ nextgroup=kconfigConfigOptionIf,477                                        \           kconfigConfOptExprAnd,478                                        \           kconfigConfOptExprOr,479                                        \           @kconfigConfigOptions480                                        \ skipwhite skipnl481 482  syn match   kconfigConfOptExprNeg     '!'483                                        \ contained484                                        \ nextgroup=@kconfigConfigOptionExpr485                                        \ skipwhite486 487  syn match   kconfigConfOptExprAnd     '&&'488                                        \ contained489                                        \ nextgroup=@kconfigConfigOptionExpr490                                        \ skipwhite491 492  syn match   kconfigConfOptExprOr      '||'493                                        \ contained494                                        \ nextgroup=@kconfigConfigOptionExpr495                                        \ skipwhite496 497  syn match   kconfigConfOptExprGroup   '('498                                        \ contained499                                        \ nextgroup=@kconfigConfigOptionGExp500                                        \ skipwhite501 502  syn cluster kconfigConfigOptionGExp   contains=@kconfigConfOptGExpSym,503                                        \        kconfigConfOptGExpNeg,504                                        \        kconfigConfOptGExpGroup505 506  syn cluster kconfigConfOptGExpSym     contains=kconfigConfOptGExpCSym,507                                        \        kconfigConfOptGExpNCSym508 509  syn match   kconfigConfOptGExpCSym    '"[^"\\]*\%(\\.[^"\\]*\)*"'510                                        \ contained511                                        \ nextgroup=kconfigConfOptExprGrpE,512                                        \           kconfigConfOptGExpAnd,513                                        \           kconfigConfOptGExpOr,514                                        \           kconfigConfOptGExpEq,515                                        \           kconfigConfOptGExpNEq516                                        \ skipwhite skipnl517 518  syn match   kconfigConfOptGExpCSym    "'[^'\\]*\%(\\.[^'\\]*\)*'"519                                        \ contained520                                        \ nextgroup=kconfigConfOptExprGrpE,521                                        \           kconfigConfOptGExpAnd,522                                        \           kconfigConfOptGExpOr,523                                        \           kconfigConfOptGExpEq,524                                        \           kconfigConfOptGExpNEq525                                        \ skipwhite skipnl526 527  syn match   kconfigConfOptGExpNCSym   '\<\k\+\>'528                                        \ contained529                                        \ nextgroup=kconfigConfOptExprGrpE,530                                        \           kconfigConfOptGExpAnd,531                                        \           kconfigConfOptGExpOr,532                                        \           kconfigConfOptGExpEq,533                                        \           kconfigConfOptGExpNEq534                                        \ skipwhite skipnl535 536  syn cluster kconfigConfOptGExpSym2    contains=kconfigConfOptGExpCSym2,537                                        \        kconfigConfOptGExpNCSym2538 539  syn match   kconfigConfOptGExpEq      '='540                                        \ contained541                                        \ nextgroup=@kconfigConfOptGExpSym2542                                        \ skipwhite543 544  syn match   kconfigConfOptGExpNEq     '!='545                                        \ contained546                                        \ nextgroup=@kconfigConfOptGExpSym2547                                        \ skipwhite548 549  syn match   kconfigConfOptGExpCSym2   '"[^"\\]*\%(\\.[^"\\]*\)*"'550                                        \ contained551                                        \ nextgroup=kconfigConfOptExprGrpE,552                                        \           kconfigConfOptGExpAnd,553                                        \           kconfigConfOptGExpOr554                                        \ skipwhite skipnl555 556  syn match   kconfigConfOptGExpCSym2   "'[^'\\]*\%(\\.[^'\\]*\)*'"557                                        \ contained558                                        \ nextgroup=kconfigConfOptExprGrpE,559                                        \           kconfigConfOptGExpAnd,560                                        \           kconfigConfOptGExpOr561                                        \ skipwhite skipnl562 563  syn match   kconfigConfOptGExpNCSym2  '\<\k\+\>'564                                        \ contained565                                        \ nextgroup=kconfigConfOptExprGrpE,566                                        \           kconfigConfOptGExpAnd,567                                        \           kconfigConfOptGExpOr568                                        \ skipwhite skipnl569 570  syn match   kconfigConfOptGExpNeg     '!'571                                        \ contained572                                        \ nextgroup=@kconfigConfigOptionGExp573                                        \ skipwhite574 575  syn match   kconfigConfOptGExpAnd     '&&'576                                        \ contained577                                        \ nextgroup=@kconfigConfigOptionGExp578                                        \ skipwhite579 580  syn match   kconfigConfOptGExpOr      '||'581                                        \ contained582                                        \ nextgroup=@kconfigConfigOptionGExp583                                        \ skipwhite584 585  syn match   kconfigConfOptExprGrpE    ')'586                                        \ contained587                                        \ nextgroup=kconfigConfigOptionIf,588                                        \           kconfigConfOptExprAnd,589                                        \           kconfigConfOptExprOr590                                        \ skipwhite skipnl591 592  hi def link kconfigTodo                 Todo593  hi def link kconfigComment              Comment594  hi def link kconfigKeyword              Keyword595  hi def link kconfigPreProc              PreProc596  hi def link kconfigConditional          Conditional597  hi def link kconfigPrompt               String598  hi def link kconfigKeywordPrompt        kconfigPrompt599  hi def link kconfigPath                 String600  hi def link kconfigSymbol               String601  hi def link kconfigConstantSymbol       Constant602  hi def link kconfigConfigOption         Type603  hi def link kconfigTypeDefinition       kconfigConfigOption604  hi def link kconfigTypeDefPrompt        kconfigPrompt605  hi def link kconfigInputPrompt          kconfigConfigOption606  hi def link kconfigPromptPrompt         kconfigPrompt607  hi def link kconfigDefaultValue         kconfigConfigOption608  hi def link kconfigDependencies         kconfigConfigOption609  hi def link kconfigReverseDependencies  kconfigConfigOption610  hi def link kconfigRevDepCSymbol        kconfigConstantSymbol611  hi def link kconfigRevDepNCSymbol       kconfigSymbol612  hi def link kconfigNumericalRanges      kconfigConfigOption613  hi def link kconfigRangeCSymbol         kconfigConstantSymbol614  hi def link kconfigRangeNCSymbol        kconfigSymbol615  hi def link kconfigRangeCSymbol2        kconfigConstantSymbol616  hi def link kconfigRangeNCSymbol2       kconfigSymbol617  hi def link kconfigHelpText             Normal618  hi def link kconfigDefBool              kconfigConfigOption619  hi def link kconfigDefBoolCSymbol       kconfigConstantSymbol620  hi def link kconfigDefBoolNCSymbol      kconfigSymbol621  hi def link kconfigOptional             kconfigConfigOption622  hi def link kconfigConfigOptionIf       Conditional623  hi def link kconfigConfOptIfExprCSym    kconfigConstantSymbol624  hi def link kconfigConfOptIfExprNCSym   kconfigSymbol625  hi def link kconfigOperator             Operator626  hi def link kconfigConfOptIfExprEq      kconfigOperator627  hi def link kconfigConfOptIfExprNEq     kconfigOperator628  hi def link kconfigConfOptIfExprCSym2   kconfigConstantSymbol629  hi def link kconfigConfOptIfExprNCSym2  kconfigSymbol630  hi def link kconfigConfOptIfExprNeg     kconfigOperator631  hi def link kconfigConfOptIfExprAnd     kconfigOperator632  hi def link kconfigConfOptIfExprOr      kconfigOperator633  hi def link kconfigDelimiter            Delimiter634  hi def link kconfigConfOptIfExprGroup   kconfigDelimiter635  hi def link kconfigConfOptIfGExpCSym    kconfigConstantSymbol636  hi def link kconfigConfOptIfGExpNCSym   kconfigSymbol637  hi def link kconfigConfOptIfGExpEq      kconfigOperator638  hi def link kconfigConfOptIfGExpNEq     kconfigOperator639  hi def link kconfigConfOptIfGExpCSym2   kconfigConstantSymbol640  hi def link kconfigConfOptIfGExpNCSym2  kconfigSymbol641  hi def link kconfigConfOptIfGExpNeg     kconfigOperator642  hi def link kconfigConfOptIfGExpAnd     kconfigOperator643  hi def link kconfigConfOptIfGExpOr      kconfigOperator644  hi def link kconfigConfOptIfExprGrpE    kconfigDelimiter645  hi def link kconfigConfOptExprCSym      kconfigConstantSymbol646  hi def link kconfigConfOptExprNCSym     kconfigSymbol647  hi def link kconfigConfOptExprEq        kconfigOperator648  hi def link kconfigConfOptExprNEq       kconfigOperator649  hi def link kconfigConfOptExprCSym2     kconfigConstantSymbol650  hi def link kconfigConfOptExprNCSym2    kconfigSymbol651  hi def link kconfigConfOptExprNeg       kconfigOperator652  hi def link kconfigConfOptExprAnd       kconfigOperator653  hi def link kconfigConfOptExprOr        kconfigOperator654  hi def link kconfigConfOptExprGroup     kconfigDelimiter655  hi def link kconfigConfOptGExpCSym      kconfigConstantSymbol656  hi def link kconfigConfOptGExpNCSym     kconfigSymbol657  hi def link kconfigConfOptGExpEq        kconfigOperator658  hi def link kconfigConfOptGExpNEq       kconfigOperator659  hi def link kconfigConfOptGExpCSym2     kconfigConstantSymbol660  hi def link kconfigConfOptGExpNCSym2    kconfigSymbol661  hi def link kconfigConfOptGExpNeg       kconfigOperator662  hi def link kconfigConfOptGExpAnd       kconfigOperator663  hi def link kconfigConfOptGExpOr        kconfigOperator664  hi def link kconfigConfOptExprGrpE      kconfigConfOptIfExprGroup665 666else667 668  syn keyword kconfigTodo               contained TODO FIXME XXX NOTE669 670  syn match   kconfigComment            display '#.*$' contains=kconfigTodo671 672  syn keyword kconfigKeyword            config menuconfig comment mainmenu673 674  syn keyword kconfigConditional        menu endmenu choice endchoice if endif675 676  syn keyword kconfigPreProc            source677                                        \ nextgroup=kconfigPath678                                        \ skipwhite679 680  syn keyword kconfigTriState           y m n681 682  syn match   kconfigSpecialChar        contained '\\.'683  syn match   kconfigSpecialChar        '\\$'684 685  syn region  kconfigPath               matchgroup=kconfigPath686                                        \ start=+"+ skip=+\\\\\|\\\"+ end=+"+687                                        \ contains=kconfigSpecialChar688 689  syn region  kconfigPath               matchgroup=kconfigPath690                                        \ start=+'+ skip=+\\\\\|\\\'+ end=+'+691                                        \ contains=kconfigSpecialChar692 693  syn match   kconfigPath               '\S\+'694                                        \ contained695 696  syn region  kconfigString             matchgroup=kconfigString697                                        \ start=+"+ skip=+\\\\\|\\\"+ end=+"+698                                        \ contains=kconfigSpecialChar699 700  syn region  kconfigString             matchgroup=kconfigString701                                        \ start=+'+ skip=+\\\\\|\\\'+ end=+'+702                                        \ contains=kconfigSpecialChar703 704  syn keyword kconfigType               bool boolean tristate string hex int705 706  syn keyword kconfigOption             prompt default requires select range707                                        \ optional708  syn match   kconfigOption             'depends\%( on\)\='709 710  syn keyword kconfigMacro              def_bool def_tristate711 712  syn region  kconfigHelpText713        \ matchgroup=kconfigOption714        \ start='\%(help\|---help---\)\ze\s*\n\z(\s\+\)'715        \ skip='^$'716        \ end='^\z1\@!'717 718  hi def link kconfigTodo         Todo719  hi def link kconfigComment      Comment720  hi def link kconfigKeyword      Keyword721  hi def link kconfigConditional  Conditional722  hi def link kconfigPreProc      PreProc723  hi def link kconfigTriState     Boolean724  hi def link kconfigSpecialChar  SpecialChar725  hi def link kconfigPath         String726  hi def link kconfigString       String727  hi def link kconfigType         Type728  hi def link kconfigOption       Identifier729  hi def link kconfigHelpText     Normal730  hi def link kconfigmacro        Macro731 732endif733 734let b:current_syntax = "kconfig"735 736let &cpo = s:cpo_save737unlet s:cpo_save738 
codekingpro/portable-devtools · Team Ai