vscode/extensions/make/syntaxes/Makefile.plist
2015-11-13 14:39:38 +01:00

721 lines
17 KiB
Makefile

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>fileTypes</key>
<array>
<string>Makefile</string>
<string>makefile</string>
<string>GNUmakefile</string>
<string>OCamlMakefile</string>
</array>
<key>name</key>
<string>Makefile</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
<dict>
<key>include</key>
<string>#variable-assignment</string>
</dict>
<dict>
<key>include</key>
<string>#recipe</string>
</dict>
<dict>
<key>include</key>
<string>#directives</string>
</dict>
</array>
<key>repository</key>
<dict>
<key>comment</key>
<dict>
<key>begin</key>
<string>(^[ \t]+)?(?=#)</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.whitespace.comment.leading.makefile</string>
</dict>
</dict>
<key>end</key>
<string>(?!\G)</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>#</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.comment.makefile</string>
</dict>
</dict>
<key>end</key>
<string>\n</string>
<key>name</key>
<string>comment.line.number-sign.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\\n</string>
<key>name</key>
<string>constant.character.escape.continuation.makefile</string>
</dict>
</array>
</dict>
</array>
</dict>
<key>directives</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>^[ ]*([s\-]?include)\b</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.include.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
<dict>
<key>match</key>
<string>%</string>
<key>name</key>
<string>constant.other.placeholder.makefile</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^[ ]*(vpath)\b</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.vpath.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
<dict>
<key>match</key>
<string>%</string>
<key>name</key>
<string>constant.other.placeholder.makefile</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^(?:(override)\s*)?(define)\s*([^\s]+)\s*(=|\?=|:=|\+=)?(?=\s)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.override.makefile</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>keyword.control.define.makefile</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>variable.other.makefile</string>
</dict>
<key>4</key>
<dict>
<key>name</key>
<string>punctuation.separator.key-value.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^(endef)\b</string>
<key>name</key>
<string>meta.scope.conditional.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>\G(?!\n)</string>
<key>end</key>
<string>^</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
</array>
</dict>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^[ ]*(export)\b</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.$1.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
<dict>
<key>include</key>
<string>#variable-assignment</string>
</dict>
<dict>
<key>match</key>
<string>[^\s]+</string>
<key>name</key>
<string>variable.other.makefile</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^[ ]*(override|private)\b</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.$1.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
<dict>
<key>include</key>
<string>#variable-assignment</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^[ ]*(unexport|undefine)\b</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.$1.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
<dict>
<key>match</key>
<string>[^\s]+</string>
<key>name</key>
<string>variable.other.makefile</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^(ifdef|ifndef)\s*([^\s]+)(?=\s)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.$1.makefile</string>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>variable.other.makefile</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.separator.key-value.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^(endif)\b</string>
<key>name</key>
<string>meta.scope.conditional.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>\G(?!\n)</string>
<key>end</key>
<string>^</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
</array>
</dict>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^(ifeq|ifneq)(?=\s)</string>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>keyword.control.$1.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^(endif)\b</string>
<key>name</key>
<string>meta.scope.conditional.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>\G</string>
<key>end</key>
<string>^</string>
<key>name</key>
<string>meta.scope.condition.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^else(?=\s)</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>keyword.control.else.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^</string>
</dict>
<dict>
<key>include</key>
<string>$self</string>
</dict>
</array>
</dict>
</array>
</dict>
<key>interpolation</key>
<dict>
<key>begin</key>
<string>(?=`)</string>
<key>end</key>
<string>(?!\G)</string>
<key>name</key>
<string>meta.embedded.line.shell</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>`</string>
<key>beginCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.makefile</string>
</dict>
</dict>
<key>contentName</key>
<string>source.shell</string>
<key>end</key>
<string>(`)</string>
<key>endCaptures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.string.makefile</string>
</dict>
<key>1</key>
<dict>
<key>name</key>
<string>source.shell</string>
</dict>
</dict>
<key>name</key>
<string>string.interpolated.backtick.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>source.shell</string>
</dict>
</array>
</dict>
</array>
</dict>
<key>recipe</key>
<dict>
<key>begin</key>
<string>^(?!\t)([^:]*)(:)(?!\=)</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.target.$1.makefile</string>
</dict>
</dict>
<key>match</key>
<string>^\s*(\.(PHONY|SUFFIXES|DEFAULT|PRECIOUS|INTERMEDIATE|SECONDARY|SECONDEXPANSION|DELETE_ON_ERROR|IGNORE|LOW_RESOLUTION_TIME|SILENT|EXPORT_ALL_VARIABLES|NOTPARALLEL|ONESHELL|POSIX))\s*$</string>
</dict>
<dict>
<key>begin</key>
<string>(?=\S)</string>
<key>end</key>
<string>(?=\s|$)</string>
<key>name</key>
<string>entity.name.function.target.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
<dict>
<key>match</key>
<string>%</string>
<key>name</key>
<string>constant.other.placeholder.makefile</string>
</dict>
</array>
</dict>
</array>
</dict>
<key>2</key>
<dict>
<key>name</key>
<string>punctuation.separator.key-value.makefile</string>
</dict>
</dict>
<key>end</key>
<string>^(?!\t)</string>
<key>name</key>
<string>meta.scope.target.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>begin</key>
<string>\G</string>
<key>end</key>
<string>^</string>
<key>name</key>
<string>meta.scope.prerequisites.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\\n</string>
<key>name</key>
<string>constant.character.escape.continuation.makefile</string>
</dict>
<dict>
<key>match</key>
<string>%|\*</string>
<key>name</key>
<string>constant.other.placeholder.makefile</string>
</dict>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>^\t</string>
<key>name</key>
<string>meta.scope.recipe.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\\n</string>
<key>name</key>
<string>constant.character.escape.continuation.makefile</string>
</dict>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
<dict>
<key>include</key>
<string>source.shell</string>
</dict>
</array>
</dict>
</dict>
<key>match</key>
<string>.+\n?</string>
</dict>
</array>
<key>while</key>
<string>^\t</string>
</dict>
</array>
</dict>
<key>variable-assignment</key>
<dict>
<key>begin</key>
<string>(^[ ]*|\G\s*)([^\s]+)\s*(=|\?=|:=|\+=)</string>
<key>beginCaptures</key>
<dict>
<key>2</key>
<dict>
<key>name</key>
<string>variable.other.makefile</string>
</dict>
<key>3</key>
<dict>
<key>name</key>
<string>punctuation.separator.key-value.makefile</string>
</dict>
</dict>
<key>end</key>
<string>\n</string>
<key>patterns</key>
<array>
<dict>
<key>match</key>
<string>\\\n</string>
<key>name</key>
<string>constant.character.escape.continuation.makefile</string>
</dict>
<dict>
<key>include</key>
<string>#comment</string>
</dict>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
<dict>
<key>include</key>
<string>#interpolation</string>
</dict>
</array>
</dict>
<key>variables</key>
<dict>
<key>patterns</key>
<array>
<dict>
<key>captures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.makefile</string>
</dict>
</dict>
<key>match</key>
<string>(\$?\$)[@%&lt;?^+*]</string>
<key>name</key>
<string>variable.language.makefile</string>
</dict>
<dict>
<key>begin</key>
<string>\$?\$\(</string>
<key>captures</key>
<dict>
<key>0</key>
<dict>
<key>name</key>
<string>punctuation.definition.variable.makefile</string>
</dict>
</dict>
<key>end</key>
<string>\)</string>
<key>name</key>
<string>string.interpolated.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
<dict>
<key>match</key>
<string>\G(MAKEFILES|VPATH|SHELL|MAKESHELL|MAKE|MAKELEVEL|MAKEFLAGS|MAKECMDGOALS|CURDIR|SUFFIXES|\.LIBPATTERNS)(?=\s*\))</string>
<key>name</key>
<string>variable.language.makefile</string>
</dict>
<dict>
<key>begin</key>
<string>\G(subst|patsubst|strip|findstring|filter(-out)?|sort|word(list)?|firstword|lastword|dir|notdir|suffix|basename|addprefix|join|wildcard|realpath|abspath|info|error|warning|shell|foreach|if|or|and|call|eval|value)\s</string>
<key>beginCaptures</key>
<dict>
<key>1</key>
<dict>
<key>name</key>
<string>support.function.$1.makefile</string>
</dict>
</dict>
<key>end</key>
<string>(?=\))</string>
<key>name</key>
<string>meta.scope.function-call.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
<dict>
<key>match</key>
<string>%|\*</string>
<key>name</key>
<string>constant.other.placeholder.makefile</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>\G(origin|flavor)\s(?=[^\s)]+\s*\))</string>
<key>contentName</key>
<string>variable.other.makefile</string>
<key>end</key>
<string>\)</string>
<key>name</key>
<string>meta.scope.function-call.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
</array>
</dict>
<dict>
<key>begin</key>
<string>\G(?!\))</string>
<key>end</key>
<string>(?=\))</string>
<key>name</key>
<string>variable.other.makefile</string>
<key>patterns</key>
<array>
<dict>
<key>include</key>
<string>#variables</string>
</dict>
</array>
</dict>
</array>
</dict>
</array>
</dict>
</dict>
<key>scopeName</key>
<string>source.makefile</string>
<key>uuid</key>
<string>FF1825E8-6B1C-11D9-B883-000D93589AF6</string>
</dict>
</plist>