using neovim 0.7.0 api for autocmd

fix-keymap-buffer
ray-x 2 years ago
parent bbdf86a66e
commit 89dd02c927

@ -215,17 +215,26 @@ local nav_doc_hl = function()
end)
end
local function documentHighlight()
api.nvim_exec(
[[
augroup lsp_document_highlight
autocmd! * <buffer>
autocmd CursorHold,CursorHoldI <buffer> lua require('navigator.dochighlight').nav_doc_hl()
autocmd CursorMoved <buffer> lua vim.lsp.buf.clear_references()
augroup END
]],
false
)
local function documentHighlight(bufnr)
bufnr = bufnr or api.nvim_get_current_buf()
local cmd_group = api.nvim_create_augroup('NGHiGroup', {})
api.nvim_create_autocmd({ 'CursorHold', 'CursorHoldI' }, {
group = cmd_group,
buffer = bufnr,
callback = function()
require('navigator.dochighlight').nav_doc_hl()
end,
})
api.nvim_create_autocmd({ 'CursorMoved' }, {
group = cmd_group,
buffer = bufnr,
callback = function()
vim.lsp.buf.clear_references()
end,
})
vim.lsp.handlers['textDocument/documentHighlight'] = function(err, result, ctx)
local bufnr = ctx.bufnr or api.nvim_get_current_buf()
if err then

@ -36,7 +36,7 @@ M.on_attach = function(client, bufnr)
})
if client.server_capabilities.documentHighlightProvider == true then
require('navigator.dochighlight').documentHighlight()
require('navigator.dochighlight').documentHighlight(bufnr)
end
require('navigator.lspclient.lspkind').init()

@ -3,6 +3,7 @@ local M = {}
-- local log = require('navigator.util').log
local api = vim.api
local cmd_group = api.nvim_create_augroup('NGHiGroup', {})
-- lsp sign          ﮻         ﯭ        ﳀ  
function M.diagnositc_config_sign()
if M.configed then
@ -48,17 +49,28 @@ function M.add_highlight()
api.nvim_set_hl(0, 'DiagnosticUnderlineInformation', { link = 'SpellRare', default = true })
api.nvim_set_hl(0, 'DiagnosticUnderlineHint', { link = 'SpellRare', default = true })
api.nvim_set_hl(0, 'NGPreviewTitle', { link = 'Title', default = true })
api.nvim_set_hl(0, 'LspReferenceRead', {default = true, bold = true, fg = 'yellow', bg = 'purple4'})
api.nvim_set_hl(0, 'LspReferenceText', {default = true, bold = true, fg = 'blue', bg = 'MidnightBlue'})
api.nvim_set_hl(0, 'LspReferenceWrite', {default = true, bold = true, italic = true, fg = 'red', bg = 'DarkSlateBlue'})
api.nvim_set_hl(0, 'LspReferenceRead', { default = true, bold = true, ctermfg = 'Yellow', underline = true })
api.nvim_set_hl(0, 'LspReferenceText', { default = true, bold = true, ctermfg = 'White', underline = true })
api.nvim_set_hl(
0,
'LspReferenceWrite',
{ default = true, bold = true, italic = true, ctermfg = 'Magenta', underdouble = true }
)
for i = 1, #colors do
for j = 1, 3 do
local hlg = string.format('NGHiReference_%i_%i', i, j) -- , colors[i][j], colors[i][4]
api.nvim_set_hl(0, hlg, {fg = colors[i][j], bg = colors[i][4], default = true})
local hlg = string.format('NGHiReference_%i_%i', i, j) -- , colors[i][j], colors[i][4]
api.nvim_set_hl(0, hlg, { fg = colors[i][j], bg = colors[i][4], default = true })
end
end
end
api.nvim_create_autocmd('ColorScheme', {
group = cmd_group,
pattern = '*',
callback = function()
M.add_highlight()
end,
})
return M

Loading…
Cancel
Save