mirror of
				https://github.com/alecthomas/chroma.git
				synced 2025-10-30 23:57:49 +02:00 
			
		
		
		
	| @@ -2,8 +2,9 @@ package d | ||||
|  | ||||
| import ( | ||||
| 	. "github.com/alecthomas/chroma" // nolint | ||||
| 	. "github.com/alecthomas/chroma/lexers/b" | ||||
| 	"github.com/alecthomas/chroma/lexers/b" | ||||
| 	"github.com/alecthomas/chroma/lexers/internal" | ||||
| 	"github.com/alecthomas/chroma/lexers/j" | ||||
| ) | ||||
|  | ||||
| // Docker lexer. | ||||
| @@ -17,11 +18,14 @@ var Docker = internal.Register(MustNewLexer( | ||||
| 	}, | ||||
| 	Rules{ | ||||
| 		"root": { | ||||
| 			{`^(ONBUILD)(\s+)((?:FROM|MAINTAINER|CMD|EXPOSE|ENV|ADD|ENTRYPOINT|VOLUME|WORKDIR))\b`, ByGroups(NameKeyword, TextWhitespace, Keyword), nil}, | ||||
| 			{`^((?:FROM|MAINTAINER|CMD|EXPOSE|ENV|ADD|ENTRYPOINT|VOLUME|WORKDIR))\b(.*)`, ByGroups(Keyword, LiteralString), nil}, | ||||
| 			{`#.*`, Comment, nil}, | ||||
| 			{`RUN`, Keyword, nil}, | ||||
| 			{`(.*\\\n)*.+`, Using(Bash), nil}, | ||||
| 			{`(ONBUILD)((?:\s*\\?\s*))`, ByGroups(Keyword, Using(b.Bash)), nil}, | ||||
| 			{`(HEALTHCHECK)(((?:\s*\\?\s*)--\w+=\w+(?:\s*\\?\s*))*)`, ByGroups(Keyword, Using(b.Bash)), nil}, | ||||
| 			{`(VOLUME|ENTRYPOINT|CMD|SHELL)((?:\s*\\?\s*))(\[.*?\])`, ByGroups(Keyword, Using(b.Bash), Using(j.JSON)), nil}, | ||||
| 			{`(LABEL|ENV|ARG)(((?:\s*\\?\s*)\w+=\w+(?:\s*\\?\s*))*)`, ByGroups(Keyword, Using(b.Bash)), nil}, | ||||
| 			{`((?:FROM|MAINTAINER|EXPOSE|WORKDIR|USER|STOPSIGNAL)|VOLUME)\b(.*)`, ByGroups(Keyword, LiteralString), nil}, | ||||
| 			{`((?:RUN|CMD|ENTRYPOINT|ENV|ARG|LABEL|ADD|COPY))`, Keyword, nil}, | ||||
| 			{`(.*\\\n)*.+`, Using(b.Bash), nil}, | ||||
| 		}, | ||||
| 	}, | ||||
| )) | ||||
|   | ||||
		Reference in New Issue
	
	Block a user