From 721e48df991c1a912628567b4a37beadd404d293 Mon Sep 17 00:00:00 2001 From: sudacode Date: Fri, 17 Feb 2023 09:37:30 -0800 Subject: [PATCH 1/3] replace hover.nvim with lsp_signature --- init.vim | 2 +- lua/plugins.lua | 72 +++++++++++++++++----------------- plugin-confs/lsp-signature.lua | 6 +-- 3 files changed, 40 insertions(+), 40 deletions(-) diff --git a/init.vim b/init.vim index 62fa87b..e5a007b 100644 --- a/init.vim +++ b/init.vim @@ -36,7 +36,7 @@ source ~/.config/nvim/plugin-confs/nvim-cmp.lua source ~/.config/nvim/plugin-confs/fidget.lua source ~/.config/nvim/plugin-confs/symbols-outline.lua " source ~/.config/nvim/plugin-confs/copilot.lua -" source ~/.config/nvim/plugin-confs/lsp-signature.lua +source ~/.config/nvim/plugin-confs/lsp-signature.lua " source ~/.config/nvim/plugin-confs/nvim-docs-view.lua " nvim and vim plugins diff --git a/lua/plugins.lua b/lua/plugins.lua index 04a34b5..15b8f76 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -79,42 +79,42 @@ require('packer').startup(function(use) run = function() vim.fn['fzf#install']() end } - use { - "lewis6991/hover.nvim", - config = function() - require("hover").setup { - init = function() - -- Require providers - require("hover.providers.lsp") - -- require('hover.providers.gh') - -- require('hover.providers.jira') - require('hover.providers.man') - require('hover.providers.dictionary') - end, - preview_opts = { - border = "rounded" - -- border = { - -- { "╭", "FloatBorder" }, - -- { "─", "FloatBorder" }, - -- { "╮", "FloatBorder" }, - -- { "│", "FloatBorder" }, - -- { "╯", "FloatBorder" }, - -- { "─", "FloatBorder" }, - -- { "╰", "FloatBorder" }, - -- { "│", "FloatBorder" }, - -- } - }, - -- Whether the contents of a currently open hover window should be moved - -- to a :h preview-window when pressing the hover keymap. - preview_window = false, - title = true - } + -- use { + -- "lewis6991/hover.nvim", + -- config = function() + -- require("hover").setup { + -- init = function() + -- -- Require providers + -- require("hover.providers.lsp") + -- -- require('hover.providers.gh') + -- -- require('hover.providers.jira') + -- require('hover.providers.man') + -- require('hover.providers.dictionary') + -- end, + -- preview_opts = { + -- border = "rounded" + -- -- border = { + -- -- { "╭", "FloatBorder" }, + -- -- { "─", "FloatBorder" }, + -- -- { "╮", "FloatBorder" }, + -- -- { "│", "FloatBorder" }, + -- -- { "╯", "FloatBorder" }, + -- -- { "─", "FloatBorder" }, + -- -- { "╰", "FloatBorder" }, + -- -- { "│", "FloatBorder" }, + -- -- } + -- }, + -- -- Whether the contents of a currently open hover window should be moved + -- -- to a :h preview-window when pressing the hover keymap. + -- preview_window = false, + -- title = true + -- } - -- Setup keymaps - vim.keymap.set("n", "K", require("hover").hover, {desc = "hover.nvim"}) - vim.keymap.set("n", "gK", require("hover").hover_select, {desc = "hover.nvim (select)"}) - end - } + -- -- Setup keymaps + -- vim.keymap.set("n", "K", require("hover").hover, {desc = "hover.nvim"}) + -- vim.keymap.set("n", "gK", require("hover").hover_select, {desc = "hover.nvim (select)"}) + -- end + -- } use 'ap/vim-css-color' use 'jiangmiao/auto-pairs' @@ -190,7 +190,7 @@ require('packer').startup(function(use) use { 'onsails/lspkind-nvim' } - -- use 'ray-x/lsp_signature.nvim' + use 'ray-x/lsp_signature.nvim' use { 'rmagatti/goto-preview' } diff --git a/plugin-confs/lsp-signature.lua b/plugin-confs/lsp-signature.lua index 899f9e7..d68e692 100644 --- a/plugin-confs/lsp-signature.lua +++ b/plugin-confs/lsp-signature.lua @@ -6,20 +6,20 @@ cfg = { bind = true, -- This is mandatory, otherwise border config won't get registered. -- If you want to hook lspsaga or other signature handler, pls set to false - doc_lines = 12, -- will show two lines of comment/doc(if there are more than two lines in doc, will be truncated); + doc_lines = 15, -- will show two lines of comment/doc(if there are more than two lines in doc, will be truncated); -- set to 0 if you DO NOT want any API comments be shown -- This setting only take effect in insert mode, it does not affect signature help in normal -- mode, 10 by default floating_window = true, -- show hint in a floating window, set to false for virtual text only mode - floating_window_above_cur_line = true, -- try to place the floating above the current line when possible Note: + floating_window_above_cur_line = false, -- try to place the floating above the current line when possible Note: -- will set to true when fully tested, set to false will use whichever side has more space -- this setting will be helpful if you do not want the PUM and floating win overlap floating_window_off_x = 1, -- adjust float windows x position. floating_window_off_y = -1, -- adjust float windows y position. - fix_pos = false, -- set to true, the floating window will not auto-close until finish all parameters + fix_pos = true, -- set to true, the floating window will not auto-close until finish all parameters hint_enable = true, -- virtual hint enable hint_prefix = " ", -- Panda for parameter hint_scheme = "String", From dda7fdaf675f4b21d6d8bfb8c2049f70868c87ca Mon Sep 17 00:00:00 2001 From: sudacode Date: Tue, 28 Feb 2023 14:58:53 -0800 Subject: [PATCH 2/3] updates --- init.vim | 2 +- lua/plugins.lua | 2 +- plugin-confs/lsp-signature.lua | 15 ++++----------- plugin-confs/null-ls.lua | 4 +++- plugin-confs/nvim-cmp.lua | 2 +- plugin-confs/telescope.lua | 1 + 6 files changed, 11 insertions(+), 15 deletions(-) diff --git a/init.vim b/init.vim index e5a007b..62fa87b 100644 --- a/init.vim +++ b/init.vim @@ -36,7 +36,7 @@ source ~/.config/nvim/plugin-confs/nvim-cmp.lua source ~/.config/nvim/plugin-confs/fidget.lua source ~/.config/nvim/plugin-confs/symbols-outline.lua " source ~/.config/nvim/plugin-confs/copilot.lua -source ~/.config/nvim/plugin-confs/lsp-signature.lua +" source ~/.config/nvim/plugin-confs/lsp-signature.lua " source ~/.config/nvim/plugin-confs/nvim-docs-view.lua " nvim and vim plugins diff --git a/lua/plugins.lua b/lua/plugins.lua index 15b8f76..a150932 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -190,7 +190,7 @@ require('packer').startup(function(use) use { 'onsails/lspkind-nvim' } - use 'ray-x/lsp_signature.nvim' + -- use 'ray-x/lsp_signature.nvim' use { 'rmagatti/goto-preview' } diff --git a/plugin-confs/lsp-signature.lua b/plugin-confs/lsp-signature.lua index d68e692..a544d18 100644 --- a/plugin-confs/lsp-signature.lua +++ b/plugin-confs/lsp-signature.lua @@ -12,33 +12,26 @@ cfg = { -- mode, 10 by default floating_window = true, -- show hint in a floating window, set to false for virtual text only mode - floating_window_above_cur_line = false, -- try to place the floating above the current line when possible Note: + floating_window_above_cur_line = true, -- try to place the floating above the current line when possible Note: -- will set to true when fully tested, set to false will use whichever side has more space -- this setting will be helpful if you do not want the PUM and floating win overlap - - floating_window_off_x = 1, -- adjust float windows x position. + floating_window_off_x = 0, -- adjust float windows x position. floating_window_off_y = -1, -- adjust float windows y position. - - fix_pos = true, -- set to true, the floating window will not auto-close until finish all parameters - hint_enable = true, -- virtual hint enable + fix_pos = true, -- trueset to true, the floating window will not auto-close until finish all parameters + hint_enable = false, -- virtual hint enable hint_prefix = " ", -- Panda for parameter hint_scheme = "String", hi_parameter = "LspSignatureActiveParameter", -- how your parameter will be highlight max_height = 15, -- max height of signature floating_window, if content is more than max_height, you can scroll down - -- to view the hiding contents max_width = 85, -- max_width of signature floating_window, line will be wrapped if exceed max_width handler_opts = { border = "rounded" -- double, rounded, single, shadow, none }, - always_trigger = false, -- sometime show signature on new line or in middle of parameter can be confusing, set it to false for #58 - auto_close_after = nil, -- autoclose signature float win after x sec, disabled if nil. extra_trigger_chars = {}, -- Array of extra characters that will trigger signature completion, e.g., {"(", ","} zindex = 200, -- by default it will be on top of all floating windows, set to <= 50 send it to bottom - padding = '', -- character to pad on left and right of signature can be ' ', or '|' etc - transparency = nil, -- disabled by default, allow floating win transparent value 1~100 shadow_blend = 36, -- if you using shadow as border use this set the opacity shadow_guibg = 'Black', -- if you using shadow as border use this set the color e.g. 'Green' or '#121315' diff --git a/plugin-confs/null-ls.lua b/plugin-confs/null-ls.lua index 2dbd489..1386272 100644 --- a/plugin-confs/null-ls.lua +++ b/plugin-confs/null-ls.lua @@ -13,7 +13,7 @@ require("null-ls").setup({ end end, sources = { - null_ls.builtins.completion.spell, + -- null_ls.builtins.completion.spell, null_ls.builtins.completion.luasnip, null_ls.builtins.code_actions.gitsigns, null_ls.builtins.code_actions.shellcheck, @@ -49,6 +49,8 @@ require("null-ls").setup({ }), null_ls.builtins.formatting.black, null_ls.builtins.formatting.isort, + null_ls.builtins.formatting.djlint, + null_ls.builtins.hover.printenv -- null_ls.builtins.formatting.tidy }, }) diff --git a/plugin-confs/nvim-cmp.lua b/plugin-confs/nvim-cmp.lua index 184eb65..2224c94 100644 --- a/plugin-confs/nvim-cmp.lua +++ b/plugin-confs/nvim-cmp.lua @@ -175,7 +175,7 @@ cmp.setup({ }) -local servers = { 'bashls', 'jedi_language_server', 'sqlls', 'jsonls', 'yamlls', 'vimls', 'dotls', 'dockerls' } +local servers = { 'bashls', 'jedi_language_server', 'sqlls', 'jsonls', 'yamlls', 'vimls', 'dotls', 'dockerls', 'html', 'cssls' } for _, lsp in ipairs(servers) do lspconfig[lsp].setup { -- on_attach = my_custom_on_attach, diff --git a/plugin-confs/telescope.lua b/plugin-confs/telescope.lua index 5f06ed9..72d82e1 100644 --- a/plugin-confs/telescope.lua +++ b/plugin-confs/telescope.lua @@ -20,6 +20,7 @@ require('telescope').setup{ [""] = "which_key" } } + file_ignore_patterns = { "node_modules", "env", "__pycache__" } }, pickers = { -- Default configuration for builtin pickers goes here: From 82dca24ece4286cf82932156cbddd0c3f0d682d2 Mon Sep 17 00:00:00 2001 From: sudacode Date: Wed, 1 Mar 2023 16:54:47 -0800 Subject: [PATCH 3/3] update config --- lua/plugins.lua | 40 +++++++++++++++++++++++++++++++++++--- plugin-confs/nvim-cmp.lua | 16 ++++++++------- plugin-confs/telescope.lua | 2 +- 3 files changed, 47 insertions(+), 11 deletions(-) diff --git a/lua/plugins.lua b/lua/plugins.lua index a150932..53749ff 100644 --- a/lua/plugins.lua +++ b/lua/plugins.lua @@ -29,13 +29,18 @@ require('packer').startup(function(use) refresh = "gr", open = "" }, + layout = { + position = "right", -- | top | left | right + ratio = 0.4 + }, }, suggestion = { enabled = true, auto_trigger = true, debounce = 75, keymap = { - accept = "", + -- accept = "", + accept = "", next = "", prev = "", dismiss = "", @@ -54,7 +59,15 @@ require('packer').startup(function(use) -- }, copilot_node_command = 'node', -- Node version must be < 18 plugin_manager_path = vim.fn.stdpath("data") .. "/site/pack/packer", - server_opts_overrides = {}, + server_opts_overrides = { + trace = "verbose", + settings = { + advanced = { + listCount = 10, -- #completions for panel + inlineSuggestCount = 4, -- #completions for getCompletions + } + }, + } }) require("copilot.suggestion").toggle_auto_trigger() end, 100) @@ -172,6 +185,9 @@ require('packer').startup(function(use) use { 'hrsh7th/cmp-path' } + use { + 'hrsh7th/cmp-cmdline' + } use { 'hrsh7th/cmp-buffer' } @@ -269,6 +285,14 @@ require('packer').startup(function(use) }, }, }, + settings_window = { + border = { + style = "rounded", + text = { + top = " Settings ", + }, + }, + }, chat_input = { prompt = "  ", border = { @@ -292,11 +316,21 @@ require('packer').startup(function(use) top_p = 1, n = 1, }, + openai_edit_params = { + -- model = "code-davinci-edit-001", + model = "gpt-3.5-turbo", + temperature = 0, + top_p = 1, + n = 1, + }, keymaps = { - close = "", + close = { "", "" }, yank_last = "", scroll_up = "", scroll_down = "", + toggle_settings = "", + new_session = "", + cycle_windows = "", } } )end, diff --git a/plugin-confs/nvim-cmp.lua b/plugin-confs/nvim-cmp.lua index 2224c94..089abd5 100644 --- a/plugin-confs/nvim-cmp.lua +++ b/plugin-confs/nvim-cmp.lua @@ -1,7 +1,6 @@ -- Setup nvim-cmp. local cmp = require 'cmp' local lspkind = require('lspkind') -local capabilities = require('cmp_nvim_lsp').default_capabilities() local lspconfig = require('lspconfig') -- luasnip setup local luasnip = require 'luasnip' @@ -74,6 +73,8 @@ cmp.setup({ [""] = vim.schedule_wrap(function(fallback) if cmp.visible() and has_words_before() then cmp.select_next_item({ behavior = cmp.SelectBehavior.Select }) + elseif luasnip.expand_or_jumpable() then + luasnip.expand_or_jump() else fallback() end @@ -174,6 +175,7 @@ cmp.setup({ } }) +local capabilities = require('cmp_nvim_lsp').default_capabilities() local servers = { 'bashls', 'jedi_language_server', 'sqlls', 'jsonls', 'yamlls', 'vimls', 'dotls', 'dockerls', 'html', 'cssls' } for _, lsp in ipairs(servers) do @@ -183,9 +185,9 @@ for _, lsp in ipairs(servers) do } end --- cmp.event:on("menu_opened", function() --- vim.b.copilot_suggestion_hidden = true --- end) --- cmp.event:on("menu_closed", function() --- vim.b.copilot_suggestion_hidden = false --- end) +cmp.event:on("menu_opened", function() + vim.b.copilot_suggestion_hidden = true +end) +cmp.event:on("menu_closed", function() + vim.b.copilot_suggestion_hidden = false +end) diff --git a/plugin-confs/telescope.lua b/plugin-confs/telescope.lua index 72d82e1..89ff7ee 100644 --- a/plugin-confs/telescope.lua +++ b/plugin-confs/telescope.lua @@ -19,7 +19,7 @@ require('telescope').setup{ -- e.g. git_{create, delete, ...}_branch for the git_branches picker [""] = "which_key" } - } + }, file_ignore_patterns = { "node_modules", "env", "__pycache__" } }, pickers = {