Comments (3)
I've added highlight_symbol()
function to lsp-zero now.
from lsp-zero.nvim.
Sounds good. I can add that to lsp-zero.
Here is a snippet you can test before I update lsp-zero.
vim.opt.updatetime = 350
vim.cmd([[
hi! LspReferenceRead cterm=bold ctermbg=red guibg=LightYellow
hi! LspReferenceText cterm=bold ctermbg=red guibg=LightYellow
hi! LspReferenceWrite cterm=bold ctermbg=red guibg=LightYellow
]])
local function highlight_symbol(client, bufnr)
if not client.supports_method('textDocument/documentHighlight') then
return
end
local autocmd = vim.api.nvim_create_autocmd
local augroup = vim.api.nvim_create_augroup('lsp_zero_highlight_symbol', {clear = false})
vim.api.nvim_clear_autocmds({buffer = bufnr, group = augroup})
autocmd({'CursorHold', 'CursorHoldI'}, {
group = augroup,
buffer = bufnr,
callback = vim.lsp.buf.document_highlight,
})
autocmd({'CursorMoved', 'CursorMovedI'}, {
group = augroup,
buffer = bufnr,
callback = vim.lsp.buf.clear_references,
})
end
local lsp_zero = require('lsp-zero')
lsp_zero.on_attach(function(client, bufnr)
lsp_zero.default_keymaps({ buffer = bufnr })
highlight_symbol(client, bufnr)
end)
The function highlight_symbol
can be added to lsp-zero, but there is still some things the user should do. To control the time the user would have to update the option updatetime
. I don't want to manipulate the updatetime
inside lsp-zero because it's a global option with side effects, which the user should consider. And the color of the highlights should be handled by the colorscheme.
from lsp-zero.nvim.
Here is a snippet you can test before I update lsp-zero.
Looks good! Thank you very much 👍 Works exactly as it should 🙂
I don't want to manipulate the updatetime inside lsp-zero because it's a global option with side effects
Sounds reasonable.
from lsp-zero.nvim.
Related Issues (20)
- lsp_zero.cmp_format() hides important information for rust_analyzer HOT 2
- error installing gopls(same thing happend with hls) HOT 2
- error installing hls(haskell server) HOT 1
- Allow setting max width on vim.diagnostics
- Add docs or possible fix for Volar 2? HOT 4
- method textDocument/definition is not supported by any of the servers registered for the current buffer HOT 6
- Hi @VonHeikemen, came here after an year coz it was unmaintained, i grew up a lot in this time period, help me get back to `lsp-zero` HOT 3
- Undercurls to display errors HOT 2
- How do I turn off inlay hints? HOT 2
- Cannot get auto complete to work HOT 5
- How to configure efm? HOT 1
- Duplicate prefixes HOT 1
- lsp-zero conflict with noice shipped in LazyVim HOT 2
- Function signature helper HOT 1
- lsp server seem to be configured before .extend_lspconfig() HOT 4
- Question: Doc site HOT 2
- Error: failed to run 'config' for nvim-lspconfig HOT 3
- default keymaps not working correctly HOT 3
- lua-lsp is not working HOT 1
- No autocompletion HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from lsp-zero.nvim.