문제

내 HTML 파일에 대해 활성화된 Syntastic을 사용하고 있습니다."validator w3" 검사기가 활성화된 매우 큰 파일이 있기 때문에 파일(:w)을 저장하는 동안 GVIM 또는 VIM이 매우 느려졌습니다.

현재 세션에 대해서만 일시적으로 신타스틱을 끌 수 있습니까?

도움이 되었습니까?

해결책

:SyntasticToggleMode를 사용하여 자동 검사를 비활성화하는 수동 모드로 구문을 전환 할 수 있습니다.그런 다음 대신 :SyntasticCheck를 실행하여 파일을 확인할 수 있습니다.

자세한 내용은 :help syntastic-commands

를 참조하십시오.

다른 참고 사항 : syntastic이 느리면 ALE 를 대안으로 사용하는 것이 좋습니다.구문과 달리 비동기 적으로 실행되므로 느린 경우에도 당신을 방해해서는 안됩니다.

다른 팁

기본적으로 구문을 비활성화하고 다음 .vimrc에서 다음과 같이 오류 검사를 활성화 / 비활성화합니다.

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

오류 검사를 사용해야 할 때 나는 단순히 다음과 같이 히트 : Ctrl-W e

Jamie와 gospes 답변의 대안으로 다음을 수행할 수 있습니다. 검사기를 완전히 비활성화 다음과 같이 검사기를 지정하여:

let g:syntastic_html_checkers=['']

또한 syntastic_check_on_open 1로 설정되지 않았으므로 위 줄에 반대됩니다.

let g:syntastic_check_on_open = 0

전체 세션에 대해 구문을 끌 수 있습니다 (> Jamie Schembri 가 답변 한 바와 같이).하나의 "매우 큰 파일"을 사용하면 하나의 버퍼 만 사용 중지 할 수 있습니다.

내 직업에서 일하는 파일 중 일부는 절망적으로 비 PSR 호환됩니다.대부분은 잘 작동합니다.나는 이러한 문제 파일에 대한 구문을 비활성화하는 기능을 찾고있었습니다.''syntasticdisableToggle 솔루션은 나를 위해 작동합니다 :

"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()
.

다른 버퍼에 영향을주지 않으므로이 멋진 플러그인을 사용하여 열려있는 다른 (부분적으로) 호환되는 파일에 대해 계속 사용할 수 있습니다.

이것은 질문을 직접 해결하지는 않지만 현재 세션을 뛰어 넘는 도움이 될 수 있습니다.파일을 편집 해야하는 파일이있는 경우 항상 구문을 사용하지 않도록 설정해야한다는 것을 아는 경우 (예를 들어 수천 가지 오류가 있고 사용자가 수정하지 않고 UI 속도로 인한 결과를 남겨 두지 않아야합니다).블랙리스트는 매우 편리합니다.

이렇게하려면 syntastic_ignore_files 옵션을 사용하십시오.도움이 필요하지만이 기능으로 regexes를 블랙리스트 파일에 사용할 수 있습니다.

                                                    '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$']
.

다음 설정이 저에게 작동했습니다.

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'}
.

몇 가지가 언급 한 것과 유사하게 기본적으로 구문을 끄는 Vimrc 세그먼트가 있지만, 현재 파일을 확인하고 동일한 버튼을 사용하여 끄기 위해 버튼 (여기에 F10)을 맵핑 할 수 있습니다.수표.조금 느리지 만 작동합니다.

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>
.

파일을 끄는 또 다른 옵션 (필레 유형에 관계없이)은 :let b:syntastic_mode="passive"를 사용하는 것입니다.토글이 아니기 때문에 버퍼가 현재 수동 모드에있는 경우에도 작동합니다.

모든 버퍼에서 모든 파일 형식 검사를 일시적으로 해제하려면 :bufdo let b:syntastic_mode="passive"를 사용할 수 있습니다.모든 버퍼의 검사를 끄거나

를 끄려면 설치 매핑이 있습니다.
nnoremap <leader>sN :bufdo let b:syntastic_mode="passive"<cr>
nnoremap <leader>sY :bufdo unlet b:syntastic_mode<cr>
.

이것은 많은 오픈 버퍼로 :wqa를 할 때 특히 도움이됩니다.

Steven Lu 에 감사드립니다. ansible 역할 의 파일을 무시할 수 있습니다.

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

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top