Neovim의 Builtin을 사용하는 LSP 클라이언트
>>> nvim --version
NVIM v0.5.0-dev+nightly
플러그인 관리 사용vim-plug.구성 세트 설치
nvim-lspconfig
LS의 설정 세트입니다.
설치된 LS를 자동으로 시작합니다.
Plug 'neovim/nvim-lspconfig'
자동 완성
omnifunc를 사용하거나 플러그인을 가져와야 합니다.
Builtin의 LSP 클라이언트를 자동으로 보충하는 Lua 플러그인을 사용합니다.
completion-nvim
Plug 'nvim-lua/completion-nvim'
이렇게 하면 위에 버퍼 메모리가 나와서 좀 귀찮아서 추천 설정을 직접 씁니다.set completeopt=menuone,noinsert,noselect
set shortmess+=c
설정
키 맵 및 자동 완성 구성 예
루아로 쓴 것 같은데.
나는 예에 따라hia 문서에 쓸 것이다. 그러나 이렇게 하면 색칠을 하지 않기 때문에 문법이 밝게 설정해야 한다.
let g:vimsyn_embed='lPr'
개인 최소 설정.lua << EOF
local on_attach = function (client, bufnr)
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'K', '<cmd>lua vim.lsp.buf.hover()<CR>', {noremap = true, silent = true})
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gd', '<cmd>lua vim.lsp.buf.definition()<CR>', {noremap = true, silent = true})
vim.api.nvim_buf_set_keymap(bufnr, 'n', 'gi', '<cmd>lua vim.lsp.buf.implementation()<CR>', {noremap = true, silent = true})
require('completion').on_attach(client)
end
require('lspconfig').vimls.setup({on_attach = on_attach})
require('lspconfig').tsserver.setup({on_attach = on_attach})
require('lspconfig').intelephense.setup({on_attach = on_attach})
EOF
오류 표시가 걱정됨
오류와 프롬프트가 행 끝에 virtual text로 표시됩니다.
가상 텍스트에 표시되지 않는 설정
vim.lsp.handlers["textDocument/publishDiagnostics"] = vim.lsp.with(
vim.lsp.diagnostic.on_publish_diagnostics, { virtual_text = false }
)
오류 정보는 vim.lsp.diagnostic.show_line_diagnostics()
에서 볼 수 있습니다.색칠하다
:help lsp-highlight
사용한 주제가 대응하지 않기 때문에 오류와 힌트의 기호만 색칠합니다.highlight LspDiagnosticsSignError ctermbg=9 ctermfg=15
highlight LspDiagnosticsSignHint ctermbg=142 ctermfg=15
사용
LSP 관련 물건을 제대로 사용하지 못했기 때문인지 평범하게 느껴진다.
예전에 코크롬을 사용해 왔습니다.
Reference
이 문제에 관하여(Neovim의 Builtin을 사용하는 LSP 클라이언트), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://zenn.dev/garypippi/articles/fe72e26c25563e4c44a9텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)