aboutsummaryrefslogtreecommitdiff
path: root/autoload
diff options
context:
space:
mode:
authormattn <mattn.jp@gmail.com>2020-02-12 10:15:12 +0900
committerGitHub <noreply@github.com>2020-02-12 10:15:12 +0900
commitc3f3518b637cfb35863976e8383fde337c7d84a2 (patch)
tree32acdc20724ccc5abc7481183ea8db818809b630 /autoload
parentc69a2666210f31d52823a4a3faacaeaff732ae3f (diff)
parent1ea1f8a5c8951d7a6cec6a65d02287ae360639f5 (diff)
downloadvim-lsp-settings-c3f3518b637cfb35863976e8383fde337c7d84a2.tar.gz
vim-lsp-settings-c3f3518b637cfb35863976e8383fde337c7d84a2.tar.bz2
vim-lsp-settings-c3f3518b637cfb35863976e8383fde337c7d84a2.zip
Merge pull request #156 from mattn/delay-check
Check FileType in little later
Diffstat (limited to 'autoload')
-rw-r--r--autoload/lsp_settings.vim11
1 files changed, 9 insertions, 2 deletions
diff --git a/autoload/lsp_settings.vim b/autoload/lsp_settings.vim
index 913c798..0b53209 100644
--- a/autoload/lsp_settings.vim
+++ b/autoload/lsp_settings.vim
@@ -333,8 +333,15 @@ function! s:vim_lsp_suggest_plugin() abort
endfor
endfunction
+function! s:vim_lsp_load_or_suggest_delay(ft) abort
+ if get(g:, 'vim_lsp_settings_filetype_no_delays', 0)
+ return s:vim_lsp_load_or_suggest(a:ft)
+ endif
+ call timer_start(0, {timer -> s:vim_lsp_load_or_suggest(a:ft)})
+endfunction
+
function! s:vim_lsp_load_or_suggest(ft) abort
- if !has_key(s:settings, a:ft)
+ if (a:ft !=# '_' && &filetype !=# a:ft) || !has_key(s:settings, a:ft)
return
endif
@@ -431,7 +438,7 @@ function! lsp_settings#init() abort
endif
exe 'augroup' lsp_settings#utils#group_name(l:ft)
autocmd!
- exe 'autocmd FileType' l:ft printf("call s:vim_lsp_load_or_suggest('%s')", l:ft)
+ exe 'autocmd FileType' l:ft 'call' printf("s:vim_lsp_load_or_suggest_delay('%s')", l:ft)
augroup END
endfor
augroup vim_lsp_suggest