## Syntax highlighting for Dockerfiles
syntax "Dockerfile" "Dockerfile[^/]*$" "\.dockerfile$"

## Keywords
icolor red "^(FROM|RUN|CMD|LABEL|MAINTAINER|EXPOSE|ENV|ADD|COPY|ENTRYPOINT|VOLUME|USER|WORKDIR|ARG|ONBUILD|STOPSIGNAL|HEALTHCHECK|SHELL)[[:space:]]"

## Brackets & parenthesis
color brightgreen "(\(|\)|\[|\])"

## Double ampersand
color brightmagenta "&&"

## Comments
icolor cyan "^[[:space:]]*#.*$"

## Blank space at EOL
color ,green "[[:space:]]+$"

## Strings, single-quoted
color brightwhite "'([^']|(\\'))*'" "%[qw]\{[^}]*\}" "%[qw]\([^)]*\)" "%[qw]<[^>]*>" "%[qw]\[[^]]*\]" "%[qw]\$[^$]*\$" "%[qw]\^[^^]*\^" "%[qw]![^!]*!"

## Strings, double-quoted
color brightwhite ""([^"]|(\\"))*"" "%[QW]?\{[^}]*\}" "%[QW]?\([^)]*\)" "%[QW]?<[^>]*>" "%[QW]?\[[^]]*\]" "%[QW]?\$[^$]*\$" "%[QW]?\^[^^]*\^" "%[QW]?![^!]*!"

## Single and double quotes
color brightyellow "('|\")"