diff --git a/README.md b/README.md index 0cf0487..51590f5 100644 --- a/README.md +++ b/README.md @@ -605,16 +605,18 @@ Here is an example [init_lsp_installer.lua](https://github.com/ray-x/navigator.l ### Integration with other lsp plugins (e.g. rust-tools, go.nvim, clangd extension) There are lots of plugins provides lsp support -go.nvim allow you either hook gopls from go.nvim or from navigator and it can export the lsp setup from go.nvim. - -rust-tools and clangd allow you to setup on_attach from config server +* go.nvim allow you either hook gopls from go.nvim or from navigator and it can export the lsp setup from go.nvim. +* rust-tools and clangd allow you to setup on_attach from config server +* [lua-dev](https://github.com/folke/lua-dev.nvim) Dev setup for init.lua and plugin development. Navigator can +extend lua setup with lua-dev. Here is an example to setup rust with rust-tools ```lua require'navigator'.setup({ lsp = { disable_lsp = { "rust_analyzer", "clangd" }, -- will not run rust_analyzer setup from navigator - } + ['lua-dev'] = { runtime_path=true } -- any non default lua-dev setups + }, }) require('rust-tools').setup({ diff --git a/lua/navigator.lua b/lua/navigator.lua index 8ad5de6..057325a 100755 --- a/lua/navigator.lua +++ b/lua/navigator.lua @@ -74,6 +74,10 @@ _NgConfigValues = { -- filetypes = {'typescript'} -- disable javascript etc, -- set to {} to disable the lspclient for all filetype }, + ['lua-dev'] = { -- navigator can use lua-dev settings to setup sumneko_lua + -- your setting for lua-dev here + -- navigator will setup lua-dev + }, sumneko_lua = { -- sumneko_root_path = sumneko_root_path, -- sumneko_binary = sumneko_binary, @@ -209,7 +213,7 @@ local extend_config = function(opts) info(string.format('[] extend LSP support for %s %s ', key, k)) end elseif key == 'keymaps' then - info('keymap override', v) + info('keymap override' .. vim.inspect(v)) -- skip key check and allow mapping to handle that else warn(string.format('[] Key %s %s not valid', key, k)) diff --git a/lua/navigator/lspclient/clients.lua b/lua/navigator/lspclient/clients.lua index 098a61c..ff58b15 100644 --- a/lua/navigator/lspclient/clients.lua +++ b/lua/navigator/lspclient/clients.lua @@ -63,6 +63,10 @@ local luadevcfg = { } local luadev = {} +local user_luadev = _NgConfigValues.lsp['lua-dev'] +if user_luadev then + luadev = vim.tbl_deep_extend('force', luadev, user_luadev) +end require('navigator.lazyloader').load('lua-dev.nvim', 'folke/lua-dev.nvim') if _NgConfigValues.lsp_installer then require('navigator.lazyloader').load('nvim-lsp-installer', 'williamboman/nvim-lsp-installer')