diff options
Diffstat (limited to 'indent')
| -rw-r--r-- | indent/Dockerfile.vim | 27 | 
1 files changed, 27 insertions, 0 deletions
| diff --git a/indent/Dockerfile.vim b/indent/Dockerfile.vim new file mode 100644 index 00000000..a4ba894c --- /dev/null +++ b/indent/Dockerfile.vim @@ -0,0 +1,27 @@ +if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'dockerfile') == -1 +   +if exists('b:did_indent') | finish | endif +let b:did_indent = 1 + + +function! DockerfileIndent(line) +  let prev_line = getline(a:line - 1) +  if a:line > 1 && prev_line =~ '\\\s*$' +    let i = indent(a:line - 1) +    if i == 0 +      let i += &l:shiftwidth +      if &l:expandtab && prev_line =~# '^RUN\s' +        " Overindent past RUN +        let i = 4 + &l:shiftwidth +      endif +    endif +    return i +  endif + +  return -1 +endfunction + + +set indentexpr=DockerfileIndent(v:lnum) + +endif | 
