Estou usando o Syntastic, que está habilitado para meus arquivos HTML. Como tenho um arquivo muito grande com verificadores "validator w3" habilitados, o GVIM ou VIM ficou muito lento ao salvar o arquivo (: w).
É possível desativar a sintaxe temporariamente apenas para a sessão atual?
let g:syntastic_disabled_filetypes=['html']
Respostas:
Usando
:SyntasticToggleMode
você pode alternar o Syntastic para o modo passivo, o que desativará a verificação automática. Em seguida, você pode verificar um arquivo executando:SyntasticCheck
.Para mais, veja
:help syntastic-commands
Por outro lado: se o Syntastic for lento para você, considere tentar cerveja como alternativa. Ao contrário do Syntastic, ele é executado de forma assíncrona, portanto, mesmo que seja lento, não deve atrapalhar você.
fonte
:error
Ou seja, ou Ctrl + Shift / Alt + e alterna entre:SyntasticCheck
e:SyntasticToggleMode
.:command Sd SyntasticToggleMode
Então, no vi, pressione: Sd e ele irá desativar a sintaxe. Mais informações sobre como fazer isso aqui: stackoverflow.com/questions/3878692/aliasing-a-command-in-vimsilent! nmap <F6> :SyntasticToggleMode<CR>
Desativei o Syntastic por padrão e ativei / desativei a verificação de erros com o seguinte em meu .vimrc:
Quando preciso usar a verificação de erros, simplesmente pressiono: ctrl-w E
fonte
.vimrc
também. No entanto, se eu pressionar Ctrl-w E o Syntastic aparecerá por um segundo e desaparecerá novamente. Alguma ideia do que está acontecendo de errado e / ou como rastrear isso?Alternativa às respostas de Jamie e Gospes, pode-se desativar o verificador completamente especificando-o da seguinte maneira:
Certifique-se também de que o
syntastic_check_on_open
não está definido como 1, o que irá contra-ordenar a linha acima:fonte
Você pode desligar o Syntastic durante toda a sessão (conforme respondido por Jamie Schembri ), mas se for apenas um problema com um "arquivo muito grande", você pode querer desativar apenas um buffer.
Alguns dos arquivos em que trabalho no meu trabalho são irremediavelmente incompatíveis com PSR. A maioria funciona bem. Eu estava procurando uma funcionalidade para desativar o Syntastic apenas para aqueles arquivos problemáticos. Uma forma mais simples da solução ' SyntasticDisableToggle ' descrita pelo contribuidor principal funciona para mim:
Como isso não afeta outros buffers, posso continuar usando este plugin incrível para quaisquer outros arquivos (parcialmente) compatíveis que abri.
fonte
Isso não aborda diretamente a questão, mas pode ajudar além da sessão atual. Se você tem um arquivo que precisa editar com frequência, mas sabe que sempre deseja desativar o Syntastic (por exemplo, ele tem milhares de erros e você não pretende corrigi-los, e deixá-lo ativado resulta na lentidão da interface do usuário), então permanentemente colocar na lista negra é muito conveniente.
Para fazer isso, use a
syntastic_ignore_files
opção. Ele está escondido na ajuda, mas você pode usar regexes com esse recurso para adicionar arquivos à lista negra.fonte
As configurações a seguir funcionaram para mim.
fonte
Outra opção para desativar a verificação de um único buffer (independentemente do tipo de arquivo) é usar
:let b:syntastic_mode="passive"
. Uma vez que não é um botão de alternância, ele funcionará mesmo se o buffer estiver no modo passivo.Se desejar desativar temporariamente a verificação de todos os tipos de arquivos em todos os buffers, você pode usar
:bufdo let b:syntastic_mode="passive"
. Configurei mapeamentos para desligar / ligar a verificação de todos os buffers:Isso é particularmente útil ao fazer
:wqa
com muitos buffers abertos.fonte
Similarmente aos mencionados por alguns outros, aqui está um segmento vimrc que desligará o Syntastic por padrão, mas mapeia um botão (aqui, F10) para verificar o arquivo atual e usa o mesmo botão como alternador para desligar as verificações. É um pouco lento, mas funciona.
fonte
Obrigado por Steven Lu , posso ignorar os arquivos de Ansible Roles , agora.
fonte
Estou usando Ale e Syntastic principalmente porque o suporte a Rust Ale ainda não é muito bom. No meu caso, estou usando o gerenciador de pacotes vim-plug, eu configurei de forma que ele não habilite nenhum deles automaticamente. Em vez disso, uso uma estratégia de alternância.
No meu caso, quero Ale por padrão e Syntastic for Rust
Na parte do plugin do vimrc eu fiz isso
Depois, eu defino um vínculo para habilitar o linter, (eu uso l como mnemoic para o linter)
Para Rust eu substituo o mesmo vínculo
Também tive que remover o statusline do meu vimrc, caso contrário, recebo erros ao carregá-lo com o Syntastic desativado
Saudações
fonte