annotate vendor/github.com/alecthomas/chroma/v2/lexers/docker.go @ 66:787b5ee0289d draft

Use vendored modules Signed-off-by: Izuru Yakumo <yakumo.izuru@chaotic.ninja>
author yakumo.izuru
date Sun, 23 Jul 2023 13:18:53 +0000
parents
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
66
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
1 package lexers
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
2
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
3 import (
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
4 . "github.com/alecthomas/chroma/v2" // nolint
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
5 )
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
6
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
7 // Docker lexer.
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
8 var Docker = Register(MustNewLexer(
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
9 &Config{
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
10 Name: "Docker",
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
11 Aliases: []string{"docker", "dockerfile"},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
12 Filenames: []string{"Dockerfile", "Dockerfile.*", "*.docker"},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
13 MimeTypes: []string{"text/x-dockerfile-config"},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
14 CaseInsensitive: true,
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
15 },
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
16 dockerRules,
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
17 ))
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
18
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
19 func dockerRules() Rules {
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
20 return Rules{
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
21 "root": {
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
22 {`#.*`, Comment, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
23 {`(ONBUILD)((?:\s*\\?\s*))`, ByGroups(Keyword, Using("Bash")), nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
24 {`(HEALTHCHECK)(((?:\s*\\?\s*)--\w+=\w+(?:\s*\\?\s*))*)`, ByGroups(Keyword, Using("Bash")), nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
25 {`(VOLUME|ENTRYPOINT|CMD|SHELL)((?:\s*\\?\s*))(\[.*?\])`, ByGroups(Keyword, Using("Bash"), Using("JSON")), nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
26 {`(LABEL|ENV|ARG)((?:(?:\s*\\?\s*)\w+=\w+(?:\s*\\?\s*))*)`, ByGroups(Keyword, Using("Bash")), nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
27 {`((?:FROM|MAINTAINER|EXPOSE|WORKDIR|USER|STOPSIGNAL)|VOLUME)\b(.*)`, ByGroups(Keyword, LiteralString), nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
28 {`((?:RUN|CMD|ENTRYPOINT|ENV|ARG|LABEL|ADD|COPY))`, Keyword, nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
29 {`(.*\\\n)*.+`, Using("Bash"), nil},
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
30 },
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
31 }
787b5ee0289d Use vendored modules
yakumo.izuru
parents:
diff changeset
32 }