Fix detecting of some filetypes, closes #579

This commit is contained in:
Adam Stankiewicz
2020-10-09 22:57:13 +02:00
parent 1993b9f68f
commit 0d48ba9245
8 changed files with 69 additions and 29 deletions

View File

@@ -6,13 +6,20 @@ if !exists('g:polyglot_disabled') || index(g:polyglot_disabled, 'cpp-modern') ==
" Original Author: Jon Haggblad <https://github.com/octol> " Original Author: Jon Haggblad <https://github.com/octol>
" Maintainer: bfrg <https://github.com/bfrg> " Maintainer: bfrg <https://github.com/bfrg>
" Website: https://github.com/bfrg/vim-cpp-modern " Website: https://github.com/bfrg/vim-cpp-modern
" Last Change: Oct 4, 2020 " Last Change: Oct 8, 2020
" "
" This syntax file is based on: " This syntax file is based on:
" https://github.com/octol/vim-cpp-enhanced-highlight " https://github.com/octol/vim-cpp-enhanced-highlight
" http://www.vim.org/scripts/script.php?script_id=4293
" ============================================================================== " ==============================================================================
" C++ attributes {{{1
if get(g:, 'cpp_attributes_highlight', 0)
syntax region cppAttribute matchgroup=cppAttributeBrackets start='\[\[' end=']]' contains=cString
hi def link cppAttribute Macro
hi def link cppAttributeBrackets Identifier
endif
" Standard library {{{1 " Standard library {{{1
syntax keyword cppSTLdefine syntax keyword cppSTLdefine
\ MB_CUR_MAX MB_LEN_MAX WCHAR_MAX WCHAR_MIN WEOF __STDC_UTF_16__ __STDC_UTF_32__ \ MB_CUR_MAX MB_LEN_MAX WCHAR_MAX WCHAR_MIN WEOF __STDC_UTF_16__ __STDC_UTF_32__

View File

@@ -266,15 +266,25 @@ function! go#config#SetTemplateAutocreate(value) abort
endfunction endfunction
function! go#config#MetalinterCommand() abort function! go#config#MetalinterCommand() abort
return get(g:, "go_metalinter_command", "golangci-lint") return get(g:, 'go_metalinter_command', 'golangci-lint')
endfunction endfunction
function! go#config#MetalinterAutosaveEnabled() abort function! go#config#MetalinterAutosaveEnabled() abort
return get(g:, "go_metalinter_autosave_enabled", ["govet", "golint"]) let l:default = []
if get(g:, 'go_metalinter_command', 'golangci-lint') == 'golangci-lint'
let l:default = ['govet', 'golint']
endif
return get(g:, 'go_metalinter_autosave_enabled', l:default)
endfunction endfunction
function! go#config#MetalinterEnabled() abort function! go#config#MetalinterEnabled() abort
return get(g:, "go_metalinter_enabled", ["vet", "golint", "errcheck"]) let l:default = []
if get(g:, 'go_metalinter_command', 'golangci-lint') == 'golangci-lint'
let l:default = ['vet', 'golint', 'errcheck']
endif
return get(g:, 'go_metalinter_enabled', l:default)
endfunction endfunction
function! go#config#GolintBin() abort function! go#config#GolintBin() abort

View File

@@ -1625,27 +1625,45 @@ window. The list to use can be set using |'g:go_list_type_commands'|.
< <
*'g:go_metalinter_autosave_enabled'* *'g:go_metalinter_autosave_enabled'*
Specifies the enabled linters for auto |:GoMetaLinter| on save. By Specifies the enabled linters for auto |:GoMetaLinter| on save. When the
default it's using `vet` and `golint`. If any are enabled, `--disable-all` metalinter is `golangci-lint`, if any are enabled, `--disable-all` will be
will be sent to the metalinter. sent to the metalinter.
When `g:go_metalinter_command` is set to `staticcheck`, the default value is
an empty list; `staticcheck`'s `-checks` flag will not be used.
>
let g:go_metalinter_autosave_enabled = ['all']
<
When `g:go_metalinter_command is set to `golangci-lint'`, the default value is
> >
let g:go_metalinter_autosave_enabled = ['vet', 'golint'] let g:go_metalinter_autosave_enabled = ['vet', 'golint']
< <
*'g:go_metalinter_enabled'* *'g:go_metalinter_enabled'*
Specifies the linters to enable for the |:GoMetaLinter| command. By default Specifies the linters to enable for the |:GoMetaLinter| command. For
it's using `vet`, `golint` and `errcheck`. If any are enabled, `--disable-all` `golangci-lint`, if any are enabled, `--disable-all` will be passed to the
will be sent to the metalinter. metalinter.
When `g:go_metalinter_command` is set to `staticcheck`, the default value is
an empty list; `staticcheck`'s `-checks` flag will not be used.
>
let g:go_metalinter_autosave_enabled = ['all']
<
When `g:go_metalinter_command is set to `golangci-lint'`, the default value is
> >
let g:go_metalinter_enabled = ['vet', 'golint', 'errcheck'] let g:go_metalinter_enabled = ['vet', 'golint', 'errcheck']
< <
*'g:go_metalinter_command'* *'g:go_metalinter_command'*
Overrides the command to be executed when |:GoMetaLinter| is called. By Overrides the command to be executed when |:GoMetaLinter| is called. By
default it's `golangci-lint`. Valid options are `golangci-lint` and `gopls`. default it's `golangci-lint`. Valid options are `golangci-lint, `gopls`, and
`staticcheck`..
When the value is `gopls`, users may want to consider setting When the value is `gopls`, users may want to consider setting
`g:go_gopls_staticcheck`. It can also be used as an advanced setting for `g:go_gopls_staticcheck`. It can also be used as an advanced setting for users
users who want to have more control over the metalinter. who want to have more control over the metalinter.
> >
let g:go_metalinter_command = "golangci-lint" let g:go_metalinter_command = "golangci-lint"
< <
@@ -1653,6 +1671,8 @@ users who want to have more control over the metalinter.
Overrides the maximum time the linters have to complete. By default it's 5 Overrides the maximum time the linters have to complete. By default it's 5
seconds. seconds.
Only applies when the metalinter is `golangci-lint`.
> >
let g:go_metalinter_deadline = "5s" let g:go_metalinter_deadline = "5s"
< <
@@ -2286,7 +2306,7 @@ The program will halt on the breakpoint, at which point you can inspect the
program state. You can go to the next line with |:GoDebugNext| (<F10>) or step program state. You can go to the next line with |:GoDebugNext| (<F10>) or step
in with |:GoDebugStep| (<F11>). in with |:GoDebugStep| (<F11>).
The program can also be halted with `:GoDebugHalt` (<F6>). The program can also be halted with `:GoDebugHalt` (<F8>).
The variable window in the bottom left (`GODEBUG_VARIABLES`) will display all The variable window in the bottom left (`GODEBUG_VARIABLES`) will display all
local variables. Struct values are displayed as `{...}`, array/slices as local variables. Struct values are displayed as `{...}`, array/slices as
@@ -2362,7 +2382,7 @@ The rest of the commands and mappings become available after executing
Halt the program. Halt the program.
Mapped to <F6> by default. Mapped to <F8> by default.
*:GoDebugStop* *:GoDebugStop*
*(go-debug-stop)* *(go-debug-stop)*

View File

@@ -629,7 +629,7 @@ endif
if !has_key(s:disabled_packages, 'remind') if !has_key(s:disabled_packages, 'remind')
au BufNewFile,BufRead *.rem,*.remind,{.,}reminders setf remind au BufNewFile,BufRead *.rem,*.remind,{.,}reminders setf remind
au BufNewFile,BufRead {.,}reminders* call s:StarSetf('remind') au BufNewFile,BufRead .reminders* call s:StarSetf('remind')
endif endif
if !has_key(s:disabled_packages, 'rrst') if !has_key(s:disabled_packages, 'rrst')
@@ -854,7 +854,7 @@ if !has_key(s:disabled_packages, 'neomuttrc')
au BufNewFile,BufRead Neomuttrc setf neomuttrc au BufNewFile,BufRead Neomuttrc setf neomuttrc
au BufNewFile,BufRead neomuttrc* call s:StarSetf('neomuttrc') au BufNewFile,BufRead neomuttrc* call s:StarSetf('neomuttrc')
au BufNewFile,BufRead Neomuttrc* call s:StarSetf('neomuttrc') au BufNewFile,BufRead Neomuttrc* call s:StarSetf('neomuttrc')
au BufNewFile,BufRead {.,}neomuttrc* call s:StarSetf('neomuttrc') au BufNewFile,BufRead .neomuttrc* call s:StarSetf('neomuttrc')
au BufNewFile,BufRead */.neomutt/neomuttrc* call s:StarSetf('neomuttrc') au BufNewFile,BufRead */.neomutt/neomuttrc* call s:StarSetf('neomuttrc')
endif endif
@@ -882,7 +882,7 @@ if !has_key(s:disabled_packages, 'muttrc')
au BufNewFile,BufRead Mutt{ng,}rc setf muttrc au BufNewFile,BufRead Mutt{ng,}rc setf muttrc
au BufNewFile,BufRead mutt{ng,}rc* call s:StarSetf('muttrc') au BufNewFile,BufRead mutt{ng,}rc* call s:StarSetf('muttrc')
au BufNewFile,BufRead Mutt{ng,}rc* call s:StarSetf('muttrc') au BufNewFile,BufRead Mutt{ng,}rc* call s:StarSetf('muttrc')
au BufNewFile,BufRead {.,}mutt{ng,}rc* call s:StarSetf('muttrc') au BufNewFile,BufRead .mutt{ng,}rc* call s:StarSetf('muttrc')
au BufNewFile,BufRead */etc/Muttrc.d/* call s:StarSetf('muttrc') au BufNewFile,BufRead */etc/Muttrc.d/* call s:StarSetf('muttrc')
au BufNewFile,BufRead */.mutt{ng,}/mutt{ng,}rc* call s:StarSetf('muttrc') au BufNewFile,BufRead */.mutt{ng,}/mutt{ng,}rc* call s:StarSetf('muttrc')
endif endif
@@ -1273,7 +1273,7 @@ endif
if !has_key(s:disabled_packages, 'gtkrc') if !has_key(s:disabled_packages, 'gtkrc')
au BufNewFile,BufRead {.,}gtkrc,gtkrc setf gtkrc au BufNewFile,BufRead {.,}gtkrc,gtkrc setf gtkrc
au BufNewFile,BufRead gtkrc* call s:StarSetf('gtkrc') au BufNewFile,BufRead gtkrc* call s:StarSetf('gtkrc')
au BufNewFile,BufRead {.,}gtkrc* call s:StarSetf('gtkrc') au BufNewFile,BufRead .gtkrc* call s:StarSetf('gtkrc')
endif endif
if !has_key(s:disabled_packages, 'group') if !has_key(s:disabled_packages, 'group')
@@ -1820,7 +1820,7 @@ if !has_key(s:disabled_packages, 'toml')
endif endif
if !has_key(s:disabled_packages, 'tmux') if !has_key(s:disabled_packages, 'tmux')
au BufNewFile,BufRead {.,}tmux*.conf setf tmux au BufNewFile,BufRead .tmux*.conf setf tmux
endif endif
if !has_key(s:disabled_packages, 'thrift') if !has_key(s:disabled_packages, 'thrift')
@@ -1883,9 +1883,9 @@ endif
if !has_key(s:disabled_packages, 'sh') if !has_key(s:disabled_packages, 'sh')
au BufNewFile,BufRead *.bash,*.bats,*.cgi,*.command,*.env,*.fcgi,*.ksh,*.sh,*.sh.in,*.tmux,*.tool,*/etc/udev/cdsymlinks.conf,{.,}bash_aliases,{.,}bash_history,{.,}bash_logout,{.,}bash_profile,{.,}bashrc,{.,}cshrc,{.,}env,{.,}env.example,{.,}flaskenv,{.,}login,{.,}profile,9fs,PKGBUILD,bash_aliases,bash_logout,bash_profile,bashrc,cshrc,gradlew,login,man,profile,zlogin,zlogout,zprofile,zshenv,zshrc setf sh au BufNewFile,BufRead *.bash,*.bats,*.cgi,*.command,*.env,*.fcgi,*.ksh,*.sh,*.sh.in,*.tmux,*.tool,*/etc/udev/cdsymlinks.conf,{.,}bash_aliases,{.,}bash_history,{.,}bash_logout,{.,}bash_profile,{.,}bashrc,{.,}cshrc,{.,}env,{.,}env.example,{.,}flaskenv,{.,}login,{.,}profile,9fs,PKGBUILD,bash_aliases,bash_logout,bash_profile,bashrc,cshrc,gradlew,login,man,profile,zlogin,zlogout,zprofile,zshenv,zshrc setf sh
au BufNewFile,BufRead *.zsh,{.,}zfbfmarks,{.,}zlogin,{.,}zlogout,{.,}zprofile,{.,}zshenv,{.,}zshrc setf zsh au BufNewFile,BufRead *.zsh,{.,}zfbfmarks,{.,}zlogin,{.,}zlogout,{.,}zprofile,{.,}zshenv,{.,}zshrc setf zsh
au BufNewFile,BufRead {.,}zsh* call s:StarSetf('zsh') au BufNewFile,BufRead .zsh* call s:StarSetf('zsh')
au BufNewFile,BufRead {.,}zlog* call s:StarSetf('zsh') au BufNewFile,BufRead .zlog* call s:StarSetf('zsh')
au BufNewFile,BufRead {.,}zcompdump* call s:StarSetf('zsh') au BufNewFile,BufRead .zcompdump* call s:StarSetf('zsh')
endif endif
if !has_key(s:disabled_packages, 'scss') if !has_key(s:disabled_packages, 'scss')
@@ -2166,7 +2166,7 @@ endif
if !has_key(s:disabled_packages, 'jq') if !has_key(s:disabled_packages, 'jq')
au BufNewFile,BufRead *.jq,{.,}jqrc setf jq au BufNewFile,BufRead *.jq,{.,}jqrc setf jq
au BufNewFile,BufRead {.,}jqrc* call s:StarSetf('jq') au BufNewFile,BufRead .jqrc* call s:StarSetf('jq')
endif endif
if !has_key(s:disabled_packages, 'htmldjango') if !has_key(s:disabled_packages, 'htmldjango')
@@ -2271,7 +2271,7 @@ if !has_key(s:disabled_packages, 'git')
au BufNewFile,BufRead *.gitconfig,*.git/config,*.git/modules/*/config,*/.config/git/config,*/git/config,{.,}gitconfig,{.,}gitmodules setf gitconfig au BufNewFile,BufRead *.gitconfig,*.git/config,*.git/modules/*/config,*/.config/git/config,*/git/config,{.,}gitconfig,{.,}gitmodules setf gitconfig
au BufNewFile,BufRead */{.,}gitconfig.d/* call s:StarSetf('gitconfig') au BufNewFile,BufRead */{.,}gitconfig.d/* call s:StarSetf('gitconfig')
au BufNewFile,BufRead git-rebase-todo setf gitrebase au BufNewFile,BufRead git-rebase-todo setf gitrebase
au BufNewFile,BufRead {.,}gitsendemail.* call s:StarSetf('gitsendemail') au BufNewFile,BufRead .gitsendemail.* call s:StarSetf('gitsendemail')
au BufNewFile,BufRead COMMIT_EDITMSG,MERGE_MSG,TAG_EDITMSG setf gitcommit au BufNewFile,BufRead COMMIT_EDITMSG,MERGE_MSG,TAG_EDITMSG setf gitcommit
endif endif

View File

@@ -579,7 +579,7 @@ def generate_ftdetect(packages, heuristics)
end end
for filename in filenames.sort for filename in filenames.sort
if filename[0] == "." if filename.match?(/^\.[^\*\/]+$/)
filename = "{.,}" + filename[1..-1] filename = "{.,}" + filename[1..-1]
end end
if filename[-1] == "*" if filename[-1] == "*"

View File

@@ -46,7 +46,7 @@ test_helptags = <<~EOF
EOF EOF
run_vimscript('source tests/filetypes.vim') run_vimscript('source tests/filetypes.vim')
# run_vimscript('source tests/extensions.vim') run_vimscript('source tests/extensions.vim')
run_script(test_helptags) run_script(test_helptags)
# run_vimscript(" # run_vimscript("

View File

@@ -11,7 +11,7 @@ endif
let b:current_syntax = "zig" let b:current_syntax = "zig"
syn keyword zigStorage const var extern packed export pub noalias inline noinline comptime callconv volatile allowzero align linksection threadlocal anytype syn keyword zigStorage const var extern packed export pub noalias inline noinline comptime callconv volatile allowzero align linksection threadlocal anytype
syn keyword zigStructure struct enum union error syn keyword zigStructure struct enum union error opaque
syn keyword zigStatement break return continue asm defer errdefer unreachable try catch async nosuspend await suspend resume syn keyword zigStatement break return continue asm defer errdefer unreachable try catch async nosuspend await suspend resume
syn keyword zigConditional if else switch and or orelse syn keyword zigConditional if else switch and or orelse
syn keyword zigRepeat while for syn keyword zigRepeat while for

View File

@@ -385,3 +385,6 @@ call TestExtension("xml", "fglrxrc", "")
call TestExtension("conf", "foo.conf", "") call TestExtension("conf", "foo.conf", "")
call TestExtension("conf", "config", "") call TestExtension("conf", "config", "")
call TestExtension("conf", "auto.master", "") call TestExtension("conf", "auto.master", "")
" https://github.com/sheerun/vim-polyglot/issues/579
call TestExtension("dart", "reminders.dart", "")