J'utilise Ale et Syntastic principalement parce que le support de Rust Ale n'est pas encore très bon. Dans mon cas, j'utilise le gestionnaire de paquets vim-plug, je l'ai configuré de manière à ce qu'il n'active aucun d'entre eux automatiquement. J'utilise plutôt une stratégie de bascule.
Dans mon cas, je veux Ale par défaut et Syntastic pour Rust
Dans la partie plugin de vimrc, j'ai fait ceci
Plug 'w0rp/ale', { 'on': 'ALEToggle' }
Plug 'vim-syntastic/syntastic', { 'on': 'SyntasticToggleMode' }
Ensuite, j'ai défini une liaison pour activer linter, (j'utilise l comme mnémonique pour linter)
nnoremap <leader>l :ALEToggle<CR>
Pour Rust, je remplace la même liaison
au FileType rust noremap <buffer> <leader>l :SyntasticToggleMode<CR>
De plus, j'ai dû supprimer les éléments de la ligne d'état de mon vimrc, sinon j'obtiens des erreurs lors du chargement avec Syntastic désactivé
" Syntastic stuff
"set statusline+=%#warningmsg#
"set statusline+=%{SyntasticStatuslineFlag()}
"set statusline+=%*
let g:rustfmt_autosave = 1
let g:syntastic_always_populate_loc_list = 1
let g:syntastic_auto_loc_list = 1
let g:syntastic_check_on_open = 1
let g:syntastic_check_on_wq = 0
" Syntastic stuff
Cordialement
let g:syntastic_disabled_filetypes=['html']