summaryrefslogtreecommitdiffstats
path: root/ftdetect
diff options
context:
space:
mode:
Diffstat (limited to 'ftdetect')
-rw-r--r--ftdetect/polyglot.vim31
1 files changed, 27 insertions, 4 deletions
diff --git a/ftdetect/polyglot.vim b/ftdetect/polyglot.vim
index 580946ff..20d4a1a2 100644
--- a/ftdetect/polyglot.vim
+++ b/ftdetect/polyglot.vim
@@ -209,6 +209,7 @@ endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'crystal') == -1
augroup filetypedetect
" crystal, from crystal.vim in rhysd/vim-crystal
+" vint: -ProhibitAutocmdWithNoGroup
autocmd BufNewFile,BufReadPost *.cr setlocal filetype=crystal
autocmd BufNewFile,BufReadPost Projectfile setlocal filetype=crystal
autocmd BufNewFile,BufReadPost *.ecr setlocal filetype=eruby
@@ -370,6 +371,25 @@ au BufReadPost *.s call s:gofiletype_post()
au BufRead,BufNewFile *.tmpl set filetype=gohtmltmpl
+" Set the filetype if the first non-comment and non-blank line starts with
+" 'module <path>'.
+au BufNewFile,BufRead go.mod call s:gomod()
+
+fun! s:gomod()
+ for l:i in range(1, line('$'))
+ let l:l = getline(l:i)
+ if l:l ==# '' || l:l[:1] ==# '//'
+ continue
+ endif
+
+ if l:l =~# '^module .\+'
+ set filetype=gomod
+ endif
+
+ break
+ endfor
+endfun
+
" vim: sw=2 ts=2 et
augroup end
endif
@@ -623,13 +643,14 @@ au BufRead,BufNewFile nginx*.conf set ft=nginx
au BufRead,BufNewFile *nginx.conf set ft=nginx
au BufRead,BufNewFile */etc/nginx/* set ft=nginx
au BufRead,BufNewFile */usr/local/nginx/conf/* set ft=nginx
+au BufRead,BufNewFile */nginx/*.conf set ft=nginx
augroup end
endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'nim') == -1
augroup filetypedetect
" nim, from nim.vim in zah/nim.vim:_BASIC
-au BufNewFile,BufRead *.nim,*.nims set filetype=nim
+au BufNewFile,BufRead *.nim,*.nims,*.nimble set filetype=nim
augroup end
endif
@@ -944,8 +965,10 @@ endif
if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'rust') == -1
augroup filetypedetect
" rust, from rust.vim in rust-lang/rust.vim
-au BufRead,BufNewFile *.rs set filetype=rust
-au BufRead,BufNewFile Cargo.toml if &filetype == "" | set filetype=cfg | endif
+" vint: -ProhibitAutocmdWithNoGroup
+
+autocmd BufRead,BufNewFile *.rs set filetype=rust
+autocmd BufRead,BufNewFile Cargo.toml if &filetype == "" | set filetype=cfg | endif
" vim: set et sw=4 sts=4 ts=8:
augroup end
@@ -1067,7 +1090,7 @@ if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'toml') == -1
augroup filetypedetect
" toml, from toml.vim in cespare/vim-toml
" Go dep and Rust use several TOML config files that are not named with .toml.
-autocmd BufNewFile,BufRead *.toml,Gopkg.lock,Cargo.lock,*/.cargo/config,Pipfile set filetype=toml
+autocmd BufNewFile,BufRead *.toml,Gopkg.lock,Cargo.lock,*/.cargo/config,*/.cargo/credentials,Pipfile set filetype=toml
augroup end
endif