Mercurial > vim
comparison runtime/syntax/make.vim @ 19646:847a300aa244
Update runtime files
Commit: https://github.com/vim/vim/commit/b17893aa940dc7d45421f875f5d90855880aad27
Author: Bram Moolenaar <Bram@vim.org>
Date: Sat Mar 14 08:19:51 2020 +0100
Update runtime files
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sat, 14 Mar 2020 08:30:08 +0100 |
parents | 63beef1ca62c |
children | 2334bf788e8a |
comparison
equal
deleted
inserted
replaced
19645:c4e27eead327 | 19646:847a300aa244 |
---|---|
1 " Vim syntax file | 1 " Vim syntax file |
2 " Language: Makefile | 2 " Language: Makefile |
3 " Maintainer: Roland Hieber <rohieb+vim-iR0jGdkV@rohieb.name>, <https://github.com/rohieb> | 3 " Maintainer: Roland Hieber <rohieb+vim-iR0jGdkV@rohieb.name>, <https://github.com/rohieb> |
4 " Previous Maintainer: Claudio Fleiner <claudio@fleiner.com> | 4 " Previous Maintainer: Claudio Fleiner <claudio@fleiner.com> |
5 " URL: https://github.com/vim/vim/blob/master/runtime/syntax/make.vim | 5 " URL: https://github.com/vim/vim/blob/master/runtime/syntax/make.vim |
6 " Last Change: 2020 Jan 15 | 6 " Last Change: 2020 Mar 04 |
7 | 7 |
8 " quit when a syntax file was already loaded | 8 " quit when a syntax file was already loaded |
9 if exists("b:current_syntax") | 9 if exists("b:current_syntax") |
10 finish | 10 finish |
11 endif | 11 endif |
12 | 12 |
13 let s:cpo_save = &cpo | 13 let s:cpo_save = &cpo |
14 set cpo&vim | 14 set cpo&vim |
15 | 15 |
16 | |
17 " some special characters | 16 " some special characters |
18 syn match makeSpecial "^\s*[@+-]\+" | 17 syn match makeSpecial "^\s*[@+-]\+" |
19 syn match makeNextLine "\\\n\s*" | 18 syn match makeNextLine "\\\n\s*" |
20 | 19 |
21 " some directives | |
22 syn match makePreCondit "^ *\(ifn\=\(eq\|def\)\>\|else\(\s\+ifn\=\(eq\|def\)\)\=\>\|endif\>\)" | |
23 syn match makeInclude "^ *[-s]\=include\s.*$" | |
24 syn match makeStatement "^ *vpath" | |
25 syn match makeExport "^ *\(export\|unexport\)\>" | |
26 syn match makeOverride "^ *override" | |
27 hi link makeOverride makeStatement | |
28 hi link makeExport makeStatement | |
29 | |
30 " catch unmatched define/endef keywords. endef only matches it is by itself on a line, possibly followed by a commend | 20 " catch unmatched define/endef keywords. endef only matches it is by itself on a line, possibly followed by a commend |
31 syn region makeDefine start="^\s*define\s" end="^\s*endef\s*\(#.*\)\?$" contains=makeStatement,makeIdent,makePreCondit,makeDefine | 21 syn region makeDefine start="^\s*define\s" end="^\s*endef\s*\(#.*\)\?$" |
22 \ contains=makeStatement,makeIdent,makePreCondit,makeDefine | |
32 | 23 |
33 " Microsoft Makefile specials | 24 " Microsoft Makefile specials |
34 syn case ignore | 25 syn case ignore |
35 syn match makeInclude "^!\s*include\s.*$" | 26 syn match makeInclude "^!\s*include\s.*$" |
36 syn match makePreCondit "^!\s*\(cmdswitches\|error\|message\|include\|if\|ifdef\|ifndef\|else\|else\s*if\|else\s*ifdef\|else\s*ifndef\|endif\|undef\)\>" | 27 syn match makePreCondit "^!\s*\(cmdswitches\|error\|message\|include\|if\|ifdef\|ifndef\|else\|else\s*if\|else\s*ifdef\|else\s*ifndef\|endif\|undef\)\>" |
51 | 42 |
52 " make targets | 43 " make targets |
53 syn match makeImplicit "^\.[A-Za-z0-9_./\t -]\+\s*:$"me=e-1 | 44 syn match makeImplicit "^\.[A-Za-z0-9_./\t -]\+\s*:$"me=e-1 |
54 syn match makeImplicit "^\.[A-Za-z0-9_./\t -]\+\s*:[^=]"me=e-2 | 45 syn match makeImplicit "^\.[A-Za-z0-9_./\t -]\+\s*:[^=]"me=e-2 |
55 | 46 |
56 syn region makeTarget transparent matchgroup=makeTarget start="^[~A-Za-z0-9_./$()%-][A-Za-z0-9_./\t $()%-]*:\{1,2}[^:=]"rs=e-1 end=";"re=e-1,me=e-1 end="[^\\]$" keepend contains=makeIdent,makeSpecTarget,makeNextLine,makeComment,makeDString skipnl nextGroup=makeCommands | 47 syn region makeTarget transparent matchgroup=makeTarget |
57 syn match makeTarget "^[~A-Za-z0-9_./$()%*@-][A-Za-z0-9_./\t $()%*@-]*::\=\s*$" contains=makeIdent,makeSpecTarget,makeComment skipnl nextgroup=makeCommands,makeCommandError | 48 \ start="^[~A-Za-z0-9_./$()%-][A-Za-z0-9_./\t $()%-]*:\{1,2}[^:=]"rs=e-1 |
49 \ end=";"re=e-1,me=e-1 end="[^\\]$" | |
50 \ keepend contains=makeIdent,makeSpecTarget,makeNextLine,makeComment,makeDString | |
51 \ skipnl nextGroup=makeCommands | |
52 syn match makeTarget "^[~A-Za-z0-9_./$()%*@-][A-Za-z0-9_./\t $()%*@-]*::\=\s*$" | |
53 \ contains=makeIdent,makeSpecTarget,makeComment | |
54 \ skipnl nextgroup=makeCommands,makeCommandError | |
58 | 55 |
59 syn region makeSpecTarget transparent matchgroup=makeSpecTarget start="^\.\(SUFFIXES\|PHONY\|DEFAULT\|PRECIOUS\|IGNORE\|SILENT\|EXPORT_ALL_VARIABLES\|KEEP_STATE\|LIBPATTERNS\|NOTPARALLEL\|DELETE_ON_ERROR\|INTERMEDIATE\|POSIX\|SECONDARY\)\>\s*:\{1,2}[^:=]"rs=e-1 end="[^\\]$" keepend contains=makeIdent,makeSpecTarget,makeNextLine,makeComment skipnl nextGroup=makeCommands | 56 syn region makeSpecTarget transparent matchgroup=makeSpecTarget |
60 syn match makeSpecTarget "^\.\(SUFFIXES\|PHONY\|DEFAULT\|PRECIOUS\|IGNORE\|SILENT\|EXPORT_ALL_VARIABLES\|KEEP_STATE\|LIBPATTERNS\|NOTPARALLEL\|DELETE_ON_ERROR\|INTERMEDIATE\|POSIX\|SECONDARY\)\>\s*::\=\s*$" contains=makeIdent,makeComment skipnl nextgroup=makeCommands,makeCommandError | 57 \ start="^\.\(SUFFIXES\|PHONY\|DEFAULT\|PRECIOUS\|IGNORE\|SILENT\|EXPORT_ALL_VARIABLES\|KEEP_STATE\|LIBPATTERNS\|NOTPARALLEL\|DELETE_ON_ERROR\|INTERMEDIATE\|POSIX\|SECONDARY\)\>\s*:\{1,2}[^:=]"rs=e-1 |
58 \ end="[^\\]$" keepend | |
59 \ contains=makeIdent,makeSpecTarget,makeNextLine,makeComment skipnl nextGroup=makeCommands | |
60 syn match makeSpecTarget "^\.\(SUFFIXES\|PHONY\|DEFAULT\|PRECIOUS\|IGNORE\|SILENT\|EXPORT_ALL_VARIABLES\|KEEP_STATE\|LIBPATTERNS\|NOTPARALLEL\|DELETE_ON_ERROR\|INTERMEDIATE\|POSIX\|SECONDARY\)\>\s*::\=\s*$" | |
61 \ contains=makeIdent,makeComment | |
62 \ skipnl nextgroup=makeCommands,makeCommandError | |
61 | 63 |
62 syn match makeCommandError "^\s\+\S.*" contained | 64 syn match makeCommandError "^\s\+\S.*" contained |
63 syn region makeCommands start=";"hs=s+1 start="^\t" end="^[^\t#]"me=e-1,re=e-1 end="^$" contained contains=makeCmdNextLine,makeSpecial,makeComment,makeIdent,makePreCondit,makeDefine,makeDString,makeSString nextgroup=makeCommandError | 65 syn region makeCommands contained start=";"hs=s+1 start="^\t" |
66 \ end="^[^\t#]"me=e-1,re=e-1 end="^$" | |
67 \ contains=makeCmdNextLine,makeSpecial,makeComment,makeIdent,makePreCondit,makeDefine,makeDString,makeSString | |
68 \ nextgroup=makeCommandError | |
64 syn match makeCmdNextLine "\\\n."he=e-1 contained | 69 syn match makeCmdNextLine "\\\n."he=e-1 contained |
65 | 70 |
66 | 71 " some directives |
72 syn match makePreCondit "^ *\(ifn\=\(eq\|def\)\>\|else\(\s\+ifn\=\(eq\|def\)\)\=\>\|endif\>\)" | |
73 syn match makeInclude "^ *[-s]\=include\s.*$" | |
74 syn match makeStatement "^ *vpath" | |
75 syn match makeExport "^ *\(export\|unexport\)\>" | |
76 syn match makeOverride "^ *override" | |
67 " Statements / Functions (GNU make) | 77 " Statements / Functions (GNU make) |
68 syn match makeStatement contained "(\(abspath\|addprefix\|addsuffix\|and\|basename\|call\|dir\|error\|eval\|file\|filter-out\|filter\|findstring\|firstword\|flavor\|foreach\|guile\|if\|info\|join\|lastword\|notdir\|or\|origin\|patsubst\|realpath\|shell\|sort\|strip\|subst\|suffix\|value\|warning\|wildcard\|word\|wordlist\|words\)\>"ms=s+1 | 78 syn match makeStatement contained "(\(abspath\|addprefix\|addsuffix\|and\|basename\|call\|dir\|error\|eval\|file\|filter-out\|filter\|findstring\|firstword\|flavor\|foreach\|guile\|if\|info\|join\|lastword\|notdir\|or\|origin\|patsubst\|realpath\|shell\|sort\|strip\|subst\|suffix\|value\|warning\|wildcard\|word\|wordlist\|words\)\>"ms=s+1 |
69 | 79 |
70 " Comment | 80 " Comment |
71 if exists("make_microsoft") | 81 if exists("make_microsoft") |
101 " Define the default highlighting. | 111 " Define the default highlighting. |
102 " Only when an item doesn't have highlighting yet | 112 " Only when an item doesn't have highlighting yet |
103 | 113 |
104 hi def link makeNextLine makeSpecial | 114 hi def link makeNextLine makeSpecial |
105 hi def link makeCmdNextLine makeSpecial | 115 hi def link makeCmdNextLine makeSpecial |
116 hi link makeOverride makeStatement | |
117 hi link makeExport makeStatement | |
118 | |
106 hi def link makeSpecTarget Statement | 119 hi def link makeSpecTarget Statement |
107 if !exists("make_no_commands") | 120 if !exists("make_no_commands") |
108 hi def link makeCommands Number | 121 hi def link makeCommands Number |
109 endif | 122 endif |
110 hi def link makeImplicit Function | 123 hi def link makeImplicit Function |