2015-07-18 22:58:24 +02:00
|
|
|
# http://docker.com
|
|
|
|
# ‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾‾
|
|
|
|
|
|
|
|
# See https://docs.docker.com/reference/builder
|
|
|
|
|
|
|
|
# Detection
|
|
|
|
# ‾‾‾‾‾‾‾‾‾
|
|
|
|
|
|
|
|
hook global BufCreate .*Dockerfile %{
|
|
|
|
set buffer filetype dockerfile
|
|
|
|
}
|
|
|
|
|
|
|
|
# Highlighters
|
|
|
|
# ‾‾‾‾‾‾‾‾‾‾‾‾
|
|
|
|
|
2017-10-28 05:00:51 +02:00
|
|
|
add-highlighter shared/ regions dockerfile \
|
2015-07-18 22:58:24 +02:00
|
|
|
instruction '^(?i)(ONBUILD\h+)?(FROM|MAINTAINER|RUN|CMD|LABEL|EXPOSE|ENV|ADD|COPY|ENTRYPOINT|VOLUME|USER|WORKDIR)' '$' '' \
|
|
|
|
comment '#' '$' ''
|
|
|
|
|
2017-10-28 05:00:51 +02:00
|
|
|
add-highlighter shared/dockerfile/instruction regex '^(?i)(ONBUILD\h+)?(FROM|MAINTAINER|RUN|CMD|LABEL|EXPOSE|ENV|ADD|COPY|ENTRYPOINT|VOLUME|USER|WORKDIR)' 0:keyword
|
2015-07-18 22:58:24 +02:00
|
|
|
|
2017-10-28 05:00:51 +02:00
|
|
|
add-highlighter shared/dockerfile/instruction regions regions \
|
2015-07-18 22:58:24 +02:00
|
|
|
plain '^(?i)(ONBUILD\h+)?(LABEL|ENV)' '$' '' \
|
|
|
|
json '^(?i)(ONBUILD\h+)?(RUN|CMD|ADD|COPY|ENTRYPOINT|VOLUME)\h+\[' \] \[ \
|
|
|
|
sh '^(?i)(ONBUILD\h+)?(RUN|CMD|ENTRYPOINT)\h+([A-Z/a-z])+' '$' ''
|
|
|
|
|
2017-10-28 05:00:51 +02:00
|
|
|
add-highlighter shared/dockerfile/instruction/regions/plain regions regions \
|
2015-07-18 22:58:24 +02:00
|
|
|
string '"' '(?<!\\)(\\\\)*"' '' \
|
|
|
|
string "'" "'" ''
|
|
|
|
|
2017-10-28 05:00:51 +02:00
|
|
|
add-highlighter shared/dockerfile/instruction/regions/plain/regions/string fill string
|
2015-07-18 22:58:24 +02:00
|
|
|
|
2017-10-28 05:00:51 +02:00
|
|
|
add-highlighter shared/dockerfile/instruction/regions/json ref json
|
|
|
|
add-highlighter shared/dockerfile/instruction/regions/sh ref sh
|
2015-07-18 22:58:24 +02:00
|
|
|
|
2017-10-28 05:00:51 +02:00
|
|
|
add-highlighter shared/dockerfile/comment fill comment
|
2015-07-18 22:58:24 +02:00
|
|
|
|
|
|
|
# Initialization
|
|
|
|
# ‾‾‾‾‾‾‾‾‾‾‾‾‾‾
|
|
|
|
|
2017-10-28 05:00:51 +02:00
|
|
|
hook -group dockerfile-highlight global WinSetOption filetype=dockerfile %{ add-highlighter window ref dockerfile }
|
|
|
|
hook -group dockerfile-highlight global WinSetOption filetype=(?!dockerfile).* %{ remove-highlighter window/dockerfile }
|