| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  | " Vim syntax file | 
					
						
							| 
									
										
										
										
											2015-06-09 19:44:55 +02:00
										 |  |  |  | " Maintainer:           Christian Brabandt <cb@256bit.org> | 
					
						
							|  |  |  |  | " Previous Maintainer:  Nikolai Weibull <now@bitwi.se> | 
					
						
							| 
									
										
										
										
											2024-07-20 12:20:51 +02:00
										 |  |  |  | " Latest Revision:      2024-07-19 | 
					
						
							| 
									
										
										
										
											2015-06-09 19:44:55 +02:00
										 |  |  |  | " License:              Vim (see :h license) | 
					
						
							|  |  |  |  | " Repository:		https://github.com/chrisbra/vim-kconfig | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | if exists("b:current_syntax") | 
					
						
							|  |  |  |  |   finish | 
					
						
							|  |  |  |  | endif | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | let s:cpo_save = &cpo | 
					
						
							|  |  |  |  | set cpo&vim | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | if exists("g:kconfig_syntax_heavy") | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigBegin              '^' nextgroup=kconfigKeyword | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigTodo               contained TODO FIXME XXX NOTE | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigComment            display '#.*$' contains=kconfigTodo | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigKeyword            config nextgroup=kconfigSymbol | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigKeyword            menuconfig nextgroup=kconfigSymbol | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigKeyword            comment menu mainmenu | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigKeywordPrompt | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigKeyword            choice | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigKeyword            endmenu endchoice | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigPreProc            source | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigPath | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " TODO: This is a hack.  The who .*Expr stuff should really be generated so | 
					
						
							|  |  |  |  | " that we can reuse it for various nextgroups. | 
					
						
							|  |  |  |  | syn keyword kconfigConditional        if endif | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigKeywordPrompt      '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigPath               '"[^"\\]*\%(\\.[^"\\]*\)*"\|\S\+' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigSymbol             '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " FIXME: There is – probably – no reason to cluster these instead of just | 
					
						
							|  |  |  |  | " defining them in the same group. | 
					
						
							|  |  |  |  | syn cluster kconfigConfigOptions      contains=kconfigTypeDefinition, | 
					
						
							|  |  |  |  |                                       \        kconfigInputPrompt, | 
					
						
							|  |  |  |  |                                       \        kconfigDefaultValue, | 
					
						
							|  |  |  |  |                                       \        kconfigDependencies, | 
					
						
							|  |  |  |  |                                       \        kconfigReverseDependencies, | 
					
						
							|  |  |  |  |                                       \        kconfigNumericalRanges, | 
					
						
							|  |  |  |  |                                       \        kconfigHelpText, | 
					
						
							|  |  |  |  |                                       \        kconfigDefBool, | 
					
						
							|  |  |  |  |                                       \        kconfigOptional | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigTypeDefinition     bool boolean tristate string hex int | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigTypeDefPrompt, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigTypeDefPrompt      '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigTypeDefPrompt      "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigInputPrompt        prompt | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigPromptPrompt | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigPromptPrompt       '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigPromptPrompt       "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword   kconfigDefaultValue     default | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigDependencies       'depends on\|requires' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigReverseDependencies select | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigRevDepSymbol | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigRevDepSymbol       contains=kconfigRevDepCSymbol, | 
					
						
							|  |  |  |  |                                       \        kconfigRevDepNCSymbol | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigRevDepCSymbol      '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigRevDepCSymbol      "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigRevDepNCSymbol     '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigNumericalRanges    range | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigRangeSymbol | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigRangeSymbol        contains=kconfigRangeCSymbol, | 
					
						
							|  |  |  |  |                                       \        kconfigRangeNCSymbol | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigRangeCSymbol       '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigRangeSymbol2 | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigRangeCSymbol       "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigRangeSymbol2 | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigRangeNCSymbol      '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigRangeSymbol2 | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigRangeSymbol2       contains=kconfigRangeCSymbol2, | 
					
						
							|  |  |  |  |                                       \        kconfigRangeNCSymbol2 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigRangeCSymbol2      "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigRangeNCSymbol2     '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn region  kconfigHelpText           contained | 
					
						
							|  |  |  |  |       \ matchgroup=kconfigConfigOption | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  |  |       \ start='\%(help\|---help---\)\ze\s*\n\z(\s\+\)' | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  |       \ skip='^$' | 
					
						
							|  |  |  |  |       \ end='^\z1\@!' | 
					
						
							|  |  |  |  |       \ nextgroup=@kconfigConfigOptions | 
					
						
							|  |  |  |  |       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " XXX: Undocumented | 
					
						
							|  |  |  |  | syn keyword kconfigDefBool            def_bool | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigDefBoolSymbol | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigDefBoolSymbol      contains=kconfigDefBoolCSymbol, | 
					
						
							|  |  |  |  |                                       \        kconfigDefBoolNCSymbol | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigDefBoolCSymbol     '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigDefBoolCSymbol     "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigDefBoolNCSymbol    '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " XXX: This is actually only a valid option for “choice”, but treating it | 
					
						
							|  |  |  |  | " specially would require a lot of extra groups. | 
					
						
							|  |  |  |  | syn keyword kconfigOptional           optional | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigConfigOptionIf     if | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfigOptionIfExpr contains=@kconfigConfOptIfExprSym, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptIfExprNeg, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptIfExprGroup | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfOptIfExprSym   contains=kconfigConfOptIfExprCSym, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptIfExprNCSym | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprCSym  '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprNEq | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprCSym  "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprNEq | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprNCSym '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprNEq | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfOptIfExprSym2  contains=kconfigConfOptIfExprCSym2, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptIfExprNCSym2 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprEq    '=' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfOptIfExprSym2 | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprNEq   '!=' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfOptIfExprSym2 | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprCSym2 "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprNCSym2 '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprNeg   '!' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprAnd   '&&' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprOr    '||' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprGroup '(' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfGExp | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | " TODO: hm, this kind of recursion doesn't work right.  We need another set of | 
					
						
							|  |  |  |  | " expressions that have kconfigConfigOPtionIfGExp as nextgroup and a matcher | 
					
						
							|  |  |  |  | " for '(' that sets it all off. | 
					
						
							|  |  |  |  | syn cluster kconfigConfigOptionIfGExp contains=@kconfigConfOptIfGExpSym, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptIfGExpNeg, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptIfExprGroup | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfOptIfGExpSym   contains=kconfigConfOptIfGExpCSym, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptIfGExpNCSym | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpCSym  '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigIf, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpNEq | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpCSym  "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigIf, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpNEq | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpNCSym '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptIfExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpNEq | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfOptIfGExpSym2  contains=kconfigConfOptIfGExpCSym2, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptIfGExpNCSym2 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpEq    '=' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfOptIfGExpSym2 | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpNEq   '!=' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfOptIfGExpSym2 | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpCSym2 '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptIfExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpCSym2 "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptIfExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpNCSym2 '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptIfExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfGExpOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpNeg   '!' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfGExp | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpAnd   '&&' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfGExp | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfGExpOr    '||' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionIfGExp | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptIfExprGrpE  ')' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptions, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptIfExprOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfigOptionExpr   contains=@kconfigConfOptExprSym, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptExprNeg, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptExprGroup | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfOptExprSym     contains=kconfigConfOptExprCSym, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptExprNCSym | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprCSym    '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprNEq, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprCSym    "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprNEq, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprNCSym   '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprNEq, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfOptExprSym2    contains=kconfigConfOptExprCSym2, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptExprNCSym2 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprEq      '=' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfOptExprSym2 | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprNEq     '!=' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfOptExprSym2 | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprCSym2   '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprOr, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprCSym2   "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprOr, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprNCSym2  '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprOr, | 
					
						
							|  |  |  |  |                                       \           @kconfigConfigOptions | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprNeg     '!' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprAnd     '&&' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprOr      '||' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionExpr | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprGroup   '(' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionGExp | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfigOptionGExp   contains=@kconfigConfOptGExpSym, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptGExpNeg, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptGExpGroup | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfOptGExpSym     contains=kconfigConfOptGExpCSym, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptGExpNCSym | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpCSym    '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpNEq | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpCSym    "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpNEq | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpNCSym   '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpOr, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpEq, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpNEq | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn cluster kconfigConfOptGExpSym2    contains=kconfigConfOptGExpCSym2, | 
					
						
							|  |  |  |  |                                       \        kconfigConfOptGExpNCSym2 | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpEq      '=' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfOptGExpSym2 | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpNEq     '!=' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfOptGExpSym2 | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpCSym2   '"[^"\\]*\%(\\.[^"\\]*\)*"' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpCSym2   "'[^'\\]*\%(\\.[^'\\]*\)*'" | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpNCSym2  '\<\k\+\>' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfOptExprGrpE, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptGExpOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpNeg     '!' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionGExp | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpAnd     '&&' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionGExp | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptGExpOr      '||' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=@kconfigConfigOptionGExp | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigConfOptExprGrpE    ')' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigConfigOptionIf, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprAnd, | 
					
						
							|  |  |  |  |                                       \           kconfigConfOptExprOr | 
					
						
							|  |  |  |  |                                       \ skipwhite skipnl | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  |  | syn sync minlines=50 | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  | hi def link kconfigTodo                 Todo | 
					
						
							|  |  |  |  | hi def link kconfigComment              Comment | 
					
						
							|  |  |  |  | hi def link kconfigKeyword              Keyword | 
					
						
							|  |  |  |  | hi def link kconfigPreProc              PreProc | 
					
						
							|  |  |  |  | hi def link kconfigConditional          Conditional | 
					
						
							|  |  |  |  | hi def link kconfigPrompt               String | 
					
						
							|  |  |  |  | hi def link kconfigKeywordPrompt        kconfigPrompt | 
					
						
							|  |  |  |  | hi def link kconfigPath                 String | 
					
						
							|  |  |  |  | hi def link kconfigSymbol               String | 
					
						
							|  |  |  |  | hi def link kconfigConstantSymbol       Constant | 
					
						
							|  |  |  |  | hi def link kconfigConfigOption         Type | 
					
						
							|  |  |  |  | hi def link kconfigTypeDefinition       kconfigConfigOption | 
					
						
							|  |  |  |  | hi def link kconfigTypeDefPrompt        kconfigPrompt | 
					
						
							|  |  |  |  | hi def link kconfigInputPrompt          kconfigConfigOption | 
					
						
							|  |  |  |  | hi def link kconfigPromptPrompt         kconfigPrompt | 
					
						
							|  |  |  |  | hi def link kconfigDefaultValue         kconfigConfigOption | 
					
						
							|  |  |  |  | hi def link kconfigDependencies         kconfigConfigOption | 
					
						
							|  |  |  |  | hi def link kconfigReverseDependencies  kconfigConfigOption | 
					
						
							|  |  |  |  | hi def link kconfigRevDepCSymbol        kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigRevDepNCSymbol       kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigNumericalRanges      kconfigConfigOption | 
					
						
							|  |  |  |  | hi def link kconfigRangeCSymbol         kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigRangeNCSymbol        kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigRangeCSymbol2        kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigRangeNCSymbol2       kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigHelpText             Normal | 
					
						
							|  |  |  |  | hi def link kconfigDefBool              kconfigConfigOption | 
					
						
							|  |  |  |  | hi def link kconfigDefBoolCSymbol       kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigDefBoolNCSymbol      kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigOptional             kconfigConfigOption | 
					
						
							|  |  |  |  | hi def link kconfigConfigOptionIf       Conditional | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprCSym    kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprNCSym   kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigOperator             Operator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprEq      kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprNEq     kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprCSym2   kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprNCSym2  kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprNeg     kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprAnd     kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprOr      kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigDelimiter            Delimiter | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprGroup   kconfigDelimiter | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfGExpCSym    kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfGExpNCSym   kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfGExpEq      kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfGExpNEq     kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfGExpCSym2   kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfGExpNCSym2  kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfGExpNeg     kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfGExpAnd     kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfGExpOr      kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptIfExprGrpE    kconfigDelimiter | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprCSym      kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprNCSym     kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprEq        kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprNEq       kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprCSym2     kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprNCSym2    kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprNeg       kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprAnd       kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprOr        kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprGroup     kconfigDelimiter | 
					
						
							|  |  |  |  | hi def link kconfigConfOptGExpCSym      kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptGExpNCSym     kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptGExpEq        kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptGExpNEq       kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptGExpCSym2     kconfigConstantSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptGExpNCSym2    kconfigSymbol | 
					
						
							|  |  |  |  | hi def link kconfigConfOptGExpNeg       kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptGExpAnd       kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptGExpOr        kconfigOperator | 
					
						
							|  |  |  |  | hi def link kconfigConfOptExprGrpE      kconfigConfOptIfExprGroup | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | else | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigTodo               contained TODO FIXME XXX NOTE | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigComment            display '#.*$' contains=kconfigTodo | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:54:52 +01:00
										 |  |  |  | syn keyword kconfigKeyword            config menuconfig comment mainmenu | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2010-01-06 20:54:52 +01:00
										 |  |  |  | syn keyword kconfigConditional        menu endmenu choice endchoice if endif | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigPreProc            source | 
					
						
							|  |  |  |  |                                       \ nextgroup=kconfigPath | 
					
						
							|  |  |  |  |                                       \ skipwhite | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  |  | syn keyword kconfigTriState           y m n | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  | syn match   kconfigSpecialChar        contained '\\.' | 
					
						
							| 
									
										
										
										
											2006-04-19 21:23:36 +00:00
										 |  |  |  | syn match   kconfigSpecialChar        '\\$' | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | syn region  kconfigPath               matchgroup=kconfigPath | 
					
						
							|  |  |  |  |                                       \ start=+"+ skip=+\\\\\|\\\"+ end=+"+ | 
					
						
							|  |  |  |  |                                       \ contains=kconfigSpecialChar | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn region  kconfigPath               matchgroup=kconfigPath | 
					
						
							|  |  |  |  |                                       \ start=+'+ skip=+\\\\\|\\\'+ end=+'+ | 
					
						
							|  |  |  |  |                                       \ contains=kconfigSpecialChar | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn match   kconfigPath               '\S\+' | 
					
						
							|  |  |  |  |                                       \ contained | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn region  kconfigString             matchgroup=kconfigString | 
					
						
							|  |  |  |  |                                       \ start=+"+ skip=+\\\\\|\\\"+ end=+"+ | 
					
						
							|  |  |  |  |                                       \ contains=kconfigSpecialChar | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn region  kconfigString             matchgroup=kconfigString | 
					
						
							|  |  |  |  |                                       \ start=+'+ skip=+\\\\\|\\\'+ end=+'+ | 
					
						
							|  |  |  |  |                                       \ contains=kconfigSpecialChar | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigType               bool boolean tristate string hex int | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigOption             prompt default requires select range | 
					
						
							|  |  |  |  |                                       \ optional | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  |  | syn match   kconfigOption             'depends\%( on\)\=' | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  | 
 | 
					
						
							|  |  |  |  | syn keyword kconfigMacro              def_bool def_tristate | 
					
						
							|  |  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  |  | syn region  kconfigHelpText | 
					
						
							|  |  |  |  |       \ matchgroup=kconfigOption | 
					
						
							|  |  |  |  |       \ start='\%(help\|---help---\)\ze\s*\n\z(\s\+\)' | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  |       \ skip='^$' | 
					
						
							|  |  |  |  |       \ end='^\z1\@!' | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | hi def link kconfigTodo         Todo | 
					
						
							|  |  |  |  | hi def link kconfigComment      Comment | 
					
						
							|  |  |  |  | hi def link kconfigKeyword      Keyword | 
					
						
							|  |  |  |  | hi def link kconfigConditional  Conditional | 
					
						
							|  |  |  |  | hi def link kconfigPreProc      PreProc | 
					
						
							| 
									
										
										
										
											2006-04-12 21:52:12 +00:00
										 |  |  |  | hi def link kconfigTriState     Boolean | 
					
						
							| 
									
										
										
										
											2006-04-11 21:38:50 +00:00
										 |  |  |  | hi def link kconfigSpecialChar  SpecialChar | 
					
						
							|  |  |  |  | hi def link kconfigPath         String | 
					
						
							|  |  |  |  | hi def link kconfigString       String | 
					
						
							|  |  |  |  | hi def link kconfigType         Type | 
					
						
							|  |  |  |  | hi def link kconfigOption       Identifier | 
					
						
							|  |  |  |  | hi def link kconfigHelpText     Normal | 
					
						
							|  |  |  |  | hi def link kconfigmacro        Macro | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | endif | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | let b:current_syntax = "kconfig" | 
					
						
							|  |  |  |  | 
 | 
					
						
							|  |  |  |  | let &cpo = s:cpo_save | 
					
						
							|  |  |  |  | unlet s:cpo_save |