Vim의 quickfix 목록을 표시하는 vim-quickfixsync 플러그인을 만들었습니다.

2062 단어 Vim

소개



저는 평상시는 vim-lsp을 도입하고 있습니다만, 어떤 사정으로 Dart를 쓸 때만은 LanguageClient-neovim를 사용하고 있습니다.
그러나 버그인지, Diagnostics에서 sign으로의 반영이 종종 어긋나는 현상이 발생하고 있었기 때문에, 이것을 해결하기 위한 플러그인을 작성했습니다.
수정되었습니다.

wordijp/vim-quickfixsync

용도로는
  • quickfix 목록을 사용하는 LSP 플러그인 장소 표시 어긋남 수정
  • LSP 플러그인 지원되지 않는 장소 표시 유형 추가 1
  • QuickRun 결과 표시

  • 등을 들 수 있습니다.
    quickfix 목록을 사용하지 않는 vim-lsp에서는이 플러그인이 작동하지 않습니다.
    (원래 어긋나지 않기 때문에 필요하지 않다).

    데모



    QuickRun으로 C++의 make를 했을 때의 모습입니다, quickfix 리스트의 내용을 sign과 textprop에 반영하고 있습니다.



    textprop을 워드 단위로 설정하고 싶었습니다만, getgflist (or getloclist )의 데이터에는 행(lnum)과 열(col) 밖에 없기 때문에, 최초의 한 문자만의 설정으로 하고 있습니다.
    GCC에서는 데모처럼 대상 워드를 주석으로 돌려주고 있습니다만, 이것을 짜넣는 것은 아마 코너 케이스 대응이 되기 때문에 어떻게 해야 할지입니다.

    사용법



    기본 설정으로 움직이기 때문에 vim-plug를 사용하는 분은 다음을 vimrc에 추가하고 :PlugInstall로 설치하는 것만으로 움직입니다.
    Plug 'wordijp/vim-quickfixsync'
    

    사용자 정의 설정은 README.md를 참조하십시오.

    결론



    LSP 발전의 과도기고의 산물입니다만, 필요한 분은 사용해 주세요.



    예를 들어, LanguageClient-neovim에서는 서명하지 않지만이 플러그인에 textprop을 추가합니다

    좋은 웹페이지 즐겨찾기