# :w 를 여러 번 시도했을때 어쩌다 한번은 시간이 오래 걸린다.
# 원인 파악을 위해 다음 프로파일링
nnoremap <leader>ps :profile start vim-profile.log<enter>:profile func *<enter>:profile file *<enter>
nnoremap <leader>pt :profile stop<enter>
# vim-profile.log 결과 vim-go 플러그인의 에서 시간이 오래걸린다.
# vim-go 다양한 기능을 위해 go#promise#New timeout(디폴트 10초)을 두고 사용하는데
# 위 프로파일 결과는 formatting, imports 부분에서 사용됐다.
let l:handleFormat = go#promise#New(function('s:handleFormat', [], l:state), 10000, '')
let l:handler = go#promise#New(function('s:handleCodeAction', ['source.organizeImports', ''], l:state), 10000, '')
# 포맷팅은 오래 걸리지 않을것 같고, imports 부분이 의심이 된다.
# 그래서 vim 을 처음 열고 .go > import {} 에서 패키지를 삭제하고 저장해보니 느려지는게 100% 재현 된다.
# 그뒤 부터는 수정 저장을 해도 빠르게 저장된다.
# argocd dependency 이슈를 해결하니 최초 저장시에도 1~2초로 빨라졌다.
comments:
댓글 쓰기