diff --git a/.config/nvim/TODO.md b/.config/nvim/TODO.md index 534e5b2..d73eb4e 100644 --- a/.config/nvim/TODO.md +++ b/.config/nvim/TODO.md @@ -1,26 +1,13 @@ # TODO nix +noice popupmenu background ## Plugins -- :checkhealth - ```bash - which-key: require("which-key.health").check() - - WhichKey: checking conflicting keymaps ~ - - WARNING conflicting keymap exists for mode **"n"**, lhs: **"gc"** - - rhs: ` ` - - WARNING conflicting keymap exists for mode **"n"**, lhs: **"yS"** - - rhs: `YSurround` - - WARNING conflicting keymap exists for mode **"n"**, lhs: **"ys"** - - rhs: `Ysurround` - ``` -- https://github.com/echasnovski/mini.surround -- inc_rename x noice (https://github.com/folke/noice.nvim) -- direnv verbosity https://github.com/direnv/direnv/issues/68#issuecomment-1734782205 - -- toggle copilot +- copilot when trying to add parens/brackets +- https://github.com/neovim/nvim-lspconfig/#suggested-configuration + - https://github.com/folke/persistence.nvim - https://github.com/goolord/alpha-nvim - https://github.com/andymass/vim-matchup diff --git a/.config/nvim/init.lua b/.config/nvim/init.lua index aa58346..d13fd24 100644 --- a/.config/nvim/init.lua +++ b/.config/nvim/init.lua @@ -29,7 +29,7 @@ vim.opt.relativenumber = true -- Line numbers relative to cursor vim.opt.scrolloff = 4 -- Always show at least four lines above/below cursor vim.opt.shiftround = true -- Round indent vim.opt.shiftwidth = indent -- Size of an indent -vim.opt.shortmess = "Iac" -- Disable start up message and abbreviate items +vim.opt.shortmess:append("IWs") -- Disable start up message and abbreviate items vim.opt.showbreak = "↪" vim.opt.showmode = false -- Hide redundant mode vim.opt.sidescrolloff = 4 -- Always show at least four columns left/right cursor @@ -230,9 +230,7 @@ function lsp.setup_keymaps(client, buffer) }, r = { function() - require("inc_rename").setup({ - input_buffer_type = "dressing", - }) + require("inc_rename").setup() return ":IncRename " .. vim.fn.expand("") end, "Rename", @@ -589,12 +587,16 @@ require("lazy").setup({ lualine_a = {}, lualine_b = {}, lualine_c = { - "filename", - color = "MsgArea", + { + "filename", + color = "MsgArea", + }, }, lualine_x = { - "location", - color = "MsgArea", + { + "location", + color = "MsgArea", + }, }, lualine_y = {}, lualine_z = {}, @@ -694,7 +696,6 @@ require("lazy").setup({ folder_open = "▼", folder_empty = "▽", }, - -- indent = { with_markers = false }, modified = { symbol = "●", }, @@ -718,6 +719,14 @@ require("lazy").setup({ group_empty_dirs = true, }, filesystem = { + components = { + icon = function(config, node, state) + if node.type == "file" then + return {} + end + return require("neo-tree.sources.common.components").icon(config, node, state) + end, + }, filtered_items = { hide_dotfiles = false, }, @@ -731,6 +740,60 @@ require("lazy").setup({ }, }, + -- noice.nvim (https://github.com/folke/noice.nvim) + { + "folke/noice.nvim", + event = "VeryLazy", + opts = { + cmdline = { + format = { + cmdline = { icon = "❯" }, + search_down = { icon = " " }, + search_up = { icon = " " }, + }, + }, + lsp = { + -- override markdown rendering so that **cmp** and other plugins use **Treesitter** + override = { + ["vim.lsp.util.convert_input_to_markdown_lines"] = true, + ["vim.lsp.util.stylize_markdown"] = true, + ["cmp.entry.get_documentation"] = true, + }, + progress = { enabled = false }, + }, + presets = { + bottom_search = true, + command_palette = true, + long_message_to_split = true, + inc_rename = true, + lsp_doc_border = false, + }, + routes = { + { + filter = { + event = "msg_show", + any = { + { find = "%d+L, %d+B" }, + { find = "; after #%d+" }, + { find = "; before #%d+" }, + { find = "%d fewer lines" }, + { find = "%d more lines" }, + }, + }, + opts = { skip = true }, + }, + }, + }, + dependencies = { + -- if you lazy-load any plugin below, make sure to add proper `module="..."` entries + "MunifTanjim/nui.nvim", + -- OPTIONAL: + -- `nvim-notify` is only needed, if you want to use the notification view. + -- If not available, we use `mini` as the fallback + -- "rcarriga/nvim-notify", + }, + }, + -- nvim-cmp (https://github.com/hrsh7th/nvim-cmp) { "hrsh7th/nvim-cmp", @@ -1034,6 +1097,7 @@ require("lazy").setup({ }, ensure_installed = { "bash", + "c", "css", "elixir", "fish", @@ -1051,6 +1115,8 @@ require("lazy").setup({ "toml", "tsx", "typescript", + "vim", + "vimdoc", "vue", }, highlight = { @@ -1216,6 +1282,7 @@ require("lazy").setup({ }, pickers = { find_files = { + disable_devicons = true, find_command = { "rg", "--files", "--hidden", "-g", "!.git" }, -- find_command = { "fd", "-t", "f", "-H" }, }, @@ -1327,6 +1394,7 @@ require("lazy").setup({ plugins = { spelling = true }, key_labels = { [""] = "SPC" }, show_help = false, + show_keys = false, triggers = "auto", }) wk.register({ diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json index 60918ed..04c4176 100644 --- a/.config/nvim/lazy-lock.json +++ b/.config/nvim/lazy-lock.json @@ -21,10 +21,12 @@ "mini.bufremove": { "branch": "main", "commit": "020243bfed8c8b941f2c20626faf3ea39c0c0e1b" }, "mini.nvim": { "branch": "main", "commit": "910e49d2d45e9d32c815d16cce6cea7c3b43cecf" }, "neo-tree.nvim": { "branch": "v2.x", "commit": "80dc74d081823649809f78370fa5b204aa9a853a" }, + "noice.nvim": { "branch": "main", "commit": "92433164e2f7118d4122c7674c3834d9511722ba" }, "none-ls.nvim": { "branch": "main", "commit": "e64f03f3f77bd6854c3b3c5cfffcc806a0c0f66a" }, "nui.nvim": { "branch": "main", "commit": "35da9ca1de0fc4dda96c2e214d93d363c145f418" }, "nvim-cmp": { "branch": "main", "commit": "538e37ba87284942c1d76ed38dd497e54e65b891" }, "nvim-lastplace": { "branch": "main", "commit": "0bb6103c506315044872e0f84b1f736c4172bb20" }, + "nvim-notify": { "branch": "master", "commit": "80b67b265530632505193553d05127ae7fe09ddd" }, "nvim-treesitter": { "branch": "master", "commit": "4a4dbe1cb1da34d87fc42a40aaf8e218af4cfe0f" }, "nvim-ts-autotag": { "branch": "main", "commit": "8515e48a277a2f4947d91004d9aa92c29fdc5e18" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "1277b4a1f451b0f18c0790e1a7f12e1e5fdebfee" }, @@ -35,7 +37,6 @@ "promise-async": { "branch": "main", "commit": "94f6f03c6c1e2aab551aacdf0c1e597a7269abb6" }, "rust-tools.nvim": { "branch": "master", "commit": "676187908a1ce35ffcd727c654ed68d851299d3e" }, "telescope.nvim": { "branch": "master", "commit": "9cf58f438f95f04cf1709b734bbcb9243c262d70" }, - "toggleterm.nvim": { "branch": "main", "commit": "e3805fed94d487b81e9c21548535cc820f62f840" }, "trouble.nvim": { "branch": "main", "commit": "f1168feada93c0154ede4d1fe9183bf69bac54ea" }, "twoslash-queries.nvim": { "branch": "main", "commit": "ea2dd86618d3aa4e176bfafc31cab2b1d1feb157" }, "vim-illuminate": { "branch": "master", "commit": "3bd2ab64b5d63b29e05691e624927e5ebbf0fb86" },