LoginSignup
3
2

More than 3 years have passed since last update.

lightlineでvim-lspのdiagnosticを表示させる

Posted at

ちょっと前にこの記事を見つけて、タイトルの内容を実現していました。
https://kitagry.github.io/blog/programmings/2020/08/lightline-vim-lsp/

でもなんか気づいたら表示されなくなってて、なんでかなぁってヘルプを漁ってもそもそも lsp#ui#vim#get_buffer_diagnostics_counts() なんて関数が見当たらないんですよね。困った。

それでもにらめっこして、ようやくそれっぽい関数見つけて、なんやかんやちゃんと出たので困ってる人向けに役立てばいいなぁと思い下にコード載せときます。
なんか関数が lsp#get_buffer_diagnostics_counts() に変わってただけだった。いつの間にか。

let g:lightline = {
              \ 'active': {
              \   'right': [ ['lsp_errors', 'lsp_warnings'],
              \   },
              \ 'component_expand': {
              \   'lsp_errors': 'LightlineLSPErrors',
              \   'lsp_warnings': 'LightlineLSPWarnings',
              \   },
              \ 'component_type': {
              \   'lsp_errors': 'error',
              \   'lsp_warnings': 'warning',
              \   },
              \ }

  function! LightlineLSPWarnings() abort
      let l:counts = lsp#get_buffer_diagnostics_counts()
      return l:counts.warning == 0 ? '' : printf('W:%d', l:counts.warning)
  endfunction

  function! LightlineLSPErrors() abort
      let l:counts = lsp#get_buffer_diagnostics_counts()
      return l:counts.error == 0 ? '' : printf('E:%d', l:counts.error)
  endfunction

  augroup lightlineAutocmd
      autocmd!
      autocmd User lsp_diagnostics_updated call lightline#update()
  augroup END

image.png

細かいことは参考元を見てください。
でもいつから変わったんだろう?それすら気づいてないからそもそもいらないんじゃねぇかと思い始めてきた。

3
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
2