summaryrefslogtreecommitdiffstats
path: root/bitbake
diff options
context:
space:
mode:
authorChris Larson <chris_larson@mentor.com>2011-01-10 12:00:41 -0700
committerRichard Purdie <richard.purdie@linuxfoundation.org>2011-01-10 22:10:41 +0000
commitd967f3b73138d118b48805dd5e2fbb592a07c990 (patch)
treebaaf6a233f5ea3293acdac72d6ab82e8547130da /bitbake
parentcbcd8e5296d3b74e8eac34ddb12efdfce6ed3cdb (diff)
downloadpoky-d967f3b73138d118b48805dd5e2fbb592a07c990.tar.gz
vim: properly highlight python inside of ${@}
(Bitbake rev: 4210eb0b783bf9bbdf80b6c6806f66f3e6ec1e77) Signed-off-by: Chris Larson <chris_larson@mentor.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
Diffstat (limited to 'bitbake')
-rw-r--r--bitbake/contrib/vim/syntax/bitbake.vim19
1 files changed, 9 insertions, 10 deletions
diff --git a/bitbake/contrib/vim/syntax/bitbake.vim b/bitbake/contrib/vim/syntax/bitbake.vim
index bcabf5c448..a06dd9e0ac 100644
--- a/bitbake/contrib/vim/syntax/bitbake.vim
+++ b/bitbake/contrib/vim/syntax/bitbake.vim
@@ -19,6 +19,11 @@ if exists("b:current_syntax")
19 finish 19 finish
20endif 20endif
21 21
22syn include @python syntax/python.vim
23if exists("b:current_syntax")
24 unlet b:current_syntax
25endif
26
22" BitBake syntax 27" BitBake syntax
23 28
24" Matching case 29" Matching case
@@ -39,8 +44,8 @@ syn match bbArrayBrackets "[\[\]]" contained
39 44
40" BitBake strings 45" BitBake strings
41syn match bbContinue "\\$" 46syn match bbContinue "\\$"
42syn region bbString matchgroup=bbQuote start=+"+ skip=+\\$+ excludenl end=+"+ contained keepend contains=bbTodo,bbContinue,bbVarDeref,@Spell 47syn region bbString matchgroup=bbQuote start=+"+ skip=+\\$+ excludenl end=+"+ contained keepend contains=bbTodo,bbContinue,bbVarDeref,bbVarPyValue,@Spell
43syn region bbString matchgroup=bbQuote start=+'+ skip=+\\$+ excludenl end=+'+ contained keepend contains=bbTodo,bbContinue,bbVarDeref,@Spell 48syn region bbString matchgroup=bbQuote start=+'+ skip=+\\$+ excludenl end=+'+ contained keepend contains=bbTodo,bbContinue,bbVarDeref,bbVarPyValue,@Spell
44 49
45" Vars definition 50" Vars definition
46syn match bbExport "^export" nextgroup=bbIdentifier skipwhite 51syn match bbExport "^export" nextgroup=bbIdentifier skipwhite
@@ -50,7 +55,7 @@ syn match bbVarDeref "${[a-zA-Z0-9\-_\.\/\+]\+}" contained
50syn match bbVarEq "\(:=\|+=\|=+\|\.=\|=\.\|?=\|=\)" contained nextgroup=bbVarValue 55syn match bbVarEq "\(:=\|+=\|=+\|\.=\|=\.\|?=\|=\)" contained nextgroup=bbVarValue
51syn match bbVarDef "^\(export\s*\)\?\([a-zA-Z0-9\-_\.\/\+]\+\(_[${}a-zA-Z0-9\-_\.\/\+]\+\)\?\)\s*\(:=\|+=\|=+\|\.=\|=\.\|?=\|=\)\@=" contains=bbExportFlag,bbIdentifier,bbVarDeref nextgroup=bbVarEq 56syn match bbVarDef "^\(export\s*\)\?\([a-zA-Z0-9\-_\.\/\+]\+\(_[${}a-zA-Z0-9\-_\.\/\+]\+\)\?\)\s*\(:=\|+=\|=+\|\.=\|=\.\|?=\|=\)\@=" contains=bbExportFlag,bbIdentifier,bbVarDeref nextgroup=bbVarEq
52syn match bbVarValue ".*$" contained contains=bbString,bbVarDeref,bbVarPyValue 57syn match bbVarValue ".*$" contained contains=bbString,bbVarDeref,bbVarPyValue
53syn match bbVarPyValue "${@[a-zA-Z0-9\-_\.\(\)]\+}" contained 58syn region bbVarPyValue start=+${@+ skip=+\\$+ excludenl end=+}+ contained contains=@python
54 59
55" Vars metadata flags 60" Vars metadata flags
56syn match bbVarFlagDef "^\([a-zA-Z0-9\-_\.]\+\)\(\[[a-zA-Z0-9\-_\.]\+\]\)\@=" contains=bbIdentifier nextgroup=bbVarFlagFlag 61syn match bbVarFlagDef "^\([a-zA-Z0-9\-_\.]\+\)\(\[[a-zA-Z0-9\-_\.]\+\]\)\@=" contains=bbIdentifier nextgroup=bbVarFlagFlag
@@ -78,14 +83,10 @@ if exists("b:current_syntax")
78 unlet b:current_syntax 83 unlet b:current_syntax
79endif 84endif
80syn keyword bbShFakeRootFlag fakeroot contained 85syn keyword bbShFakeRootFlag fakeroot contained
81syn match bbShFuncDef "^\(fakeroot\s*\)\?\([0-9A-Za-z_}${-]\+\)\(python\)\@<!\(\s*()\s*\)\({\)\@=" contains=bbShFakeRootFlag,bbFunction,bbDelimiter nextgroup=bbShFuncRegion skipwhite 86syn match bbShFuncDef "^\(fakeroot\s*\)\?\([0-9A-Za-z_-]\+\)\(python\)\@<!\(\s*()\s*\)\({\)\@=" contains=bbShFakeRootFlag,bbFunction,bbDelimiter nextgroup=bbShFuncRegion skipwhite
82syn region bbShFuncRegion matchgroup=bbDelimiter start="{\s*$" end="^}\s*$" keepend contained contains=@shell 87syn region bbShFuncRegion matchgroup=bbDelimiter start="{\s*$" end="^}\s*$" keepend contained contains=@shell
83 88
84" BitBake python metadata 89" BitBake python metadata
85syn include @python syntax/python.vim
86if exists("b:current_syntax")
87 unlet b:current_syntax
88endif
89syn keyword bbPyFlag python contained 90syn keyword bbPyFlag python contained
90syn match bbPyFuncDef "^\(python\s\+\)\([0-9A-Za-z_-]\+\)\?\(\s*()\s*\)\({\)\@=" contains=bbPyFlag,bbFunction,bbDelimiter nextgroup=bbPyFuncRegion skipwhite 91syn match bbPyFuncDef "^\(python\s\+\)\([0-9A-Za-z_-]\+\)\?\(\s*()\s*\)\({\)\@=" contains=bbPyFlag,bbFunction,bbDelimiter nextgroup=bbPyFuncRegion skipwhite
91syn region bbPyFuncRegion matchgroup=bbDelimiter start="{\s*$" end="^}\s*$" keepend contained contains=@python 92syn region bbPyFuncRegion matchgroup=bbDelimiter start="{\s*$" end="^}\s*$" keepend contained contains=@python
@@ -120,5 +121,3 @@ hi def link bbOEFunctions Special
120hi def link bbVarPyValue PreProc 121hi def link bbVarPyValue PreProc
121 122
122let b:current_syntax = "bb" 123let b:current_syntax = "bb"
123
124