Domanda

Sto usando Syntastic che è abilitato per i miei file HTML.Dal momento che ho un file molto grande con "Validator W3" Checkers abilitato, GVIM o VIM sono diventati molto lenti salvando il file (: W).

È possibile attivare la sintastica temporaneamente solo per la sessione corrente?

È stato utile?

Soluzione

Usando :SyntasticToggleMode È possibile attivare la sintastica in modalità passiva, che disabiliterà il controllo automatico.È quindi possibile controllare un file eseguendo invece :SyntasticCheck.

Per ulteriori informazioni, vedere :help syntastic-commands

su un'altra nota: se Syntastic è lento per te considerare di provare Ale come alternativa.A differenza della sintastica, funziona in modo asincrono, quindi anche se è lento non dovrebbe ostacolarti.

Altri suggerimenti

Ho disabilitato sintastico per impostazione predefinita e attiva / disattiva il controllo degli errori con il seguente nel mio .VimRC:

let g:syntastic_mode_map = { 'mode': 'passive', 'active_filetypes': [],'passive_filetypes': [] }
nnoremap <C-w>E :SyntasticCheck<CR> :SyntasticToggleMode<CR>
.

Quando ho bisogno di utilizzare il controllo degli errori che ho semplicemente colpito: Ctrl-W E

Alternativa a Jamie e Gospes Answers, è possibile Disabilita il checker completamente specificando il correttore come SO:

let g:syntastic_html_checkers=['']
.

Assicurati inoltre che il syntastic_check_on_open non sia impostato su 1, il che controzzerà la riga sopra:

let g:syntastic_check_on_open = 0
.

È possibile disattivare la sintastica per l'intera sessione (come risposta da jamie schembri ), ma se è solo un problemaCon il "file molto grande", potresti voler disabilitare solo un tampone.

Alcuni dei file che lavoro sul mio lavoro sono conformi irrimediabilmente non PSR.La maggior parte del lavoro va bene.Stavo cercando funzionalità per disabilitare la sintastica per i file problematici.Una forma più semplice del " SyntasticaDisableToggle " soluzione delineata dal contributore principale funziona per me: .

"disable syntastic on a per buffer basis (some work files blow it up)
function! SyntasticDisableBuffer()
    let b:syntastic_skip_checks = 1
    SyntasticReset
    echo 'Syntastic disabled for this buffer'
endfunction

command! SyntasticDisableBuffer call SyntasticDisableBuffer()
.

Poiché questo non influisce su altri buffer, posso continuare a utilizzare questo fantastico plugin per qualsiasi altro file conforme (parzialmente) che ho aperto.

Questo non risolve direttamente la domanda, ma può aiutare oltre la sessione corrente.Se hai un file che devi modificare spesso, ma che sai che vorrai sempre disabilitare Syntastic On (ad esempio ha migliaia di errori e hai intenzione di non risolverli e lasciarlo sui risultati nel rallentamento dell'interfaccia utente), quindi in modo permanenteBlacklisting è molto conveniente.

Per fare ciò, utilizzare l'opzione syntastic_ignore_files.È nascosto nell'aiuto, ma puoi utilizzare le regexs con questa funzione di file Blacklist.

                                                    'syntastic_ignore_files'
Default: []
Use this option to specify files that syntastic should never check.  It's a
list of regular-expression patterns.  The full paths of files (see ::p) are
matched against these patterns, and the matches are case sensitive. Use \c
to specify case insensitive patterns.  Example:
    let g:syntastic_ignore_files = ['\m^/usr/include/', '\m\c\.h$']
.

Le seguenti impostazioni hanno funzionato per me.

let g:syntastic_mode_map = { 'mode': 'passive', 'active_filetypes':   [],'passive_filetypes': [] }
noremap <C-w>e :SyntasticCheck<CR>
noremap <C-w>f :SyntasticToggleMode<CR>

Ctrl-w + e shall enable checking
Ctrl-w + f shall disable checking 

To disable warnings use: 
let g:syntastic_quiet_messages={'level':'warnings'}
.

Allo stesso modo a quelli menzionati da alcuni altri, ecco un segmento VIMRC che si spegne sintastico per impostazione predefinita, ma mappa un pulsante (qui, F10) per verificare il file corrente e utilizza lo stesso pulsante come un commutatore per disattivarei controlli.È un po 'lento, ma funziona.

let g:syntastic_check_on_open = 0                                                                                 
let g:syntastic_check_on_wq = 0
let g:syntastic_mode_map = {'mode':'passive'}
nnoremap <F10> :SyntasticCheck<CR> :SyntasticToggleMode<CR> :w<CR>
.

Un'altra opzione per disattivare il controllo per un singolo buffer (indipendentemente dal tipo di fileType) è utilizzare :let b:syntastic_mode="passive".Dal momento che non è un interruttore, funzionerà anche se il buffer è attualmente in modalità passiva.

Se si desidera disattivare temporaneamente il controllo di tutti i filetypes in tutti i buffer, è possibile utilizzare :bufdo let b:syntastic_mode="passive".Ho imposta i mappature per disattivare / sul controllo di tutti i buffer:

nnoremap <leader>sN :bufdo let b:syntastic_mode="passive"<cr>
nnoremap <leader>sY :bufdo unlet b:syntastic_mode<cr>
.

Ciò è particolarmente utile quando si esegue :wqa con un sacco di buffer aperti.

Grazie per steven lu , posso ignorare i file dei ruoli ansible , ora.

" ignore files of Ansible Roles.
let g:syntastic_ignore_files = ['\m^roles/']
.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top