1 | Prism.languages.makefile = {
|
2 | 'comment': {
|
3 | pattern: /(^|[^\\])#(?:\\[\s\S]|.)*/,
|
4 | lookbehind: true
|
5 | },
|
6 | 'string': /(["'])(?:\\[\s\S]|(?!\1)[^\\\r\n])*\1/,
|
7 |
|
8 |
|
9 | 'builtin': /\.[A-Z][^:#=\s]+(?=\s*:(?!=))/,
|
10 |
|
11 |
|
12 | 'symbol': {
|
13 | pattern: /^[^:=\r\n]+(?=\s*:(?!=))/m,
|
14 | inside: {
|
15 | 'variable': /\$+(?:[^(){}:#=\s]+|(?=[({]))/
|
16 | }
|
17 | },
|
18 | 'variable': /\$+(?:[^(){}:#=\s]+|\([@*%<^+?][DF]\)|(?=[({]))/,
|
19 |
|
20 | 'keyword': [
|
21 |
|
22 | /\b(?:define|else|endef|endif|export|ifn?def|ifn?eq|-?include|override|private|sinclude|undefine|unexport|vpath)\b/,
|
23 |
|
24 | {
|
25 | pattern: /(\()(?:addsuffix|abspath|and|basename|call|dir|error|eval|file|filter(?:-out)?|findstring|firstword|flavor|foreach|guile|if|info|join|lastword|load|notdir|or|origin|patsubst|realpath|shell|sort|strip|subst|suffix|value|warning|wildcard|word(?:s|list)?)(?=[ \t])/,
|
26 | lookbehind: true
|
27 | }
|
28 | ],
|
29 | 'operator': /(?:::|[?:+!])?=|[|@]/,
|
30 | 'punctuation': /[:;(){}]/
|
31 | }; |
\ | No newline at end of file |