1[
2 "FROM"
3 "AS"
4 "RUN"
5 "CMD"
6 "LABEL"
7 "EXPOSE"
8 "ENV"
9 "ADD"
10 "COPY"
11 "ENTRYPOINT"
12 "VOLUME"
13 "USER"
14 "WORKDIR"
15 "ARG"
16 "ONBUILD"
17 "STOPSIGNAL"
18 "HEALTHCHECK"
19 "SHELL"
20 "MAINTAINER"
21 "CROSS_BUILD"
22 (heredoc_marker)
23 (heredoc_end)
24] @keyword
25
26[
27 ":"
28 "@"
29] @operator
30
31(comment) @comment
32
33
34(image_spec
35 (image_tag
36 ":" @punctuation.special)
37 (image_digest
38 "@" @punctuation.special))
39
40[
41 (double_quoted_string)
42 (single_quoted_string)
43 (json_string)
44 (heredoc_line)
45] @string
46
47(expansion
48 [
49 "$"
50 "{"
51 "}"
52 ] @punctuation.special
53) @none
54
55((variable) @constant
56 (#match? @constant "^[A-Z][A-Z_0-9]*$"))