diff --git a/nvim/.config/nvim/fnl/dots/keybinds.fnl b/nvim/.config/nvim/fnl/dots/keybinds.fnl index 58e2f3f..e470729 100644 --- a/nvim/.config/nvim/fnl/dots/keybinds.fnl +++ b/nvim/.config/nvim/fnl/dots/keybinds.fnl @@ -25,6 +25,9 @@ (utils.keymap :n :zt "zt") (utils.keymap :n :zb "zb") +; these should really not be necessary, but whatever... +(utils.keymap :n :c "call nerdcommenter#Comment(\"m\", \"Toggle\")" {}) +(utils.keymap :v :c "call nerdcommenter#Comment(\"x\", \"Toggle\")" {}) ; Fix keybinds in linewrapped mode ;(utils.keymap [:n] :j "gj") @@ -80,10 +83,10 @@ "S" (cmd "Telescope lsp_document_symbols" "Symbols in document") "s" (cmd "Telescope lsp_dynamic_workspace_symbols" "Symbols in workspace") "T" [vim.lsp.buf.signature_help "Show signature help"] - "n" (cmd "IncRename " "Rename") + "n" (cmd "IncRename " "Rename") "v" (cmd "CodeActionMenu" "Apply codeaction") - "A" [#(vim.diagnostic.open_float [cursor]) "Cursor diagnostics"] - "A" [#(vim.diagnostic.open_float {}) "Line diagnostics"] + "A" [#(vim.diagnostic.open_float {:scope :cursor}) "Cursor diagnostics"] + "a" [#(vim.diagnostic.open_float {}) "Line diagnostics"] "h" (cmd "RustToggleInlayHints" "Toggle inlay hints") "r" (cmd "Trouble lsp_references" "Show references") "E" (cmd "Trouble document_diagnostics" "List diagnostics") diff --git a/nvim/.config/nvim/fnl/dots/plugins.fnl b/nvim/.config/nvim/fnl/dots/plugins.fnl index 37d4d47..9a3c8cc 100644 --- a/nvim/.config/nvim/fnl/dots/plugins.fnl +++ b/nvim/.config/nvim/fnl/dots/plugins.fnl @@ -40,7 +40,7 @@ :lewis6991/impatient.nvim {} :nvim-lua/plenary.nvim {} :norcalli/nvim.lua {} - :lifepillar/vim-gruvbox8 {:config #(require "dots.plugins.gruvbox8")} + :lifepillar/vim-gruvbox8 {:lazy false :priority 1000 :config #(require "dots.plugins.gruvbox8")} :kyazdani42/nvim-web-devicons {} :folke/which-key.nvim {} :folke/todo-comments.nvim {:config #(require "dots.plugins.todo-comments")} @@ -63,12 +63,14 @@ :folke/twilight.nvim {:config #(require "dots.plugins.twilight")} :nvim-telescope/telescope.nvim {:config #(require "dots.plugins.telescope") :cmd ["Telescope"] - :dependencies [:nvim-lua/popup.nvim :nvim-lua/plenary.nvim]} + :dependencies [:nvim-lua/popup.nvim + :nvim-lua/plenary.nvim + :nvim-telescope/telescope-ui-select.nvim]} ; editing and movement <<< :jiangmiao/auto-pairs {} :tpope/vim-repeat {} - :preservim/nerdcommenter {} + :preservim/nerdcommenter {:lazy false :priority 1000} :godlygeek/tabular {:cmd ["Tabularize"]} :tpope/vim-surround {} :hauleth/sad.vim {} @@ -94,8 +96,10 @@ :rcarriga/nvim-dap-ui {:config #(setup :dapui) :dependencies [:mfussenegger/nvim-dap]} :mfussenegger/nvim-dap {} - :nvim-telescope/telescope-dap.nvim {:dependencies [:mfussenegger/nvim-dap - :nvim-telescope/telescope.nvim]} + :nvim-telescope/telescope-dap.nvim {:dependencies [:nvim-telescope/telescope.nvim + :mfussenegger/nvim-dap]} + + ; >>> @@ -110,7 +114,7 @@ :sindrets/diffview.nvim {:cmd ["DiffviewOpen" "DiffviewToggleFiles"] :config #(require "dots.plugins.diffview")} - :lewis6991/gitsigns.nvim {:after ["vim-gruvbox8"] + :lewis6991/gitsigns.nvim {:dependencies [:vim-gruvbox8] :config #(require "dots.plugins.gitsigns")} :ruanyl/vim-gh-line {} @@ -122,8 +126,9 @@ ; >>> ; lsp <<< - :ray-x/lsp_signature.nvim {:events [:BufEnter]} - :weilbith/nvim-code-action-menu {} + :ray-x/lsp_signature.nvim {:event :BufEnter} + :weilbith/nvim-code-action-menu {:cmd "CodeActionMenu" + :config #(set vim.g.code_action_menu_show_details false)} ;:folke/trouble.nvim {:opt false} :elkowar/trouble.nvim {:branch "fix_error_on_nil_window" @@ -135,29 +140,23 @@ :neovim/nvim-lspconfig {} :smjonas/inc-rename.nvim {:config #(setup :inc_rename)} + :dnlhc/glance.nvim {:config #(require "dots.plugins.glance")} ; >>> ; cmp <<< :hrsh7th/vim-vsnip {} :hrsh7th/vim-vsnip-integ {} :rafamadriz/friendly-snippets {} - - :hrsh7th/cmp-omni {} - ;:hrsh7th/cmp-vsnip {} - :hrsh7th/cmp-nvim-lsp {} - :hrsh7th/cmp-buffer {} - :hrsh7th/cmp-path {} - :hrsh7th/cmp-nvim-lua {} - :hrsh7th/cmp-calc {} - :hrsh7th/nvim-cmp {:commit "4c0a6512a0f8a235213959badf70031b9fa0220a" - :dependencies [:hrsh7th/cmp-nvim-lsp - :hrsh7th/cmp-buffer - :hrsh7th/cmp-vsnip - :hrsh7th/cmp-nvim-lua - :hrsh7th/cmp-calc - :hrsh7th/cmp-path - :hrsh7th/cmp-omni] + :hrsh7th/nvim-cmp {:dependencies [[:hrsh7th/cmp-nvim-lsp] + [:hrsh7th/cmp-buffer] + [:hrsh7th/cmp-vsnip] + [:hrsh7th/cmp-nvim-lua] + [:hrsh7th/cmp-calc] + [:hrsh7th/cmp-path] + [:hrsh7th/cmp-nvim-lsp-signature-help] + [:davidsierradz/cmp-conventionalcommits] + [:hrsh7th/cmp-omni]] :config #(require "dots.plugins.cmp")} ; >>> diff --git a/nvim/.config/nvim/fnl/dots/plugins/cmp.fnl b/nvim/.config/nvim/fnl/dots/plugins/cmp.fnl index 742066d..d681127 100644 --- a/nvim/.config/nvim/fnl/dots/plugins/cmp.fnl +++ b/nvim/.config/nvim/fnl/dots/plugins/cmp.fnl @@ -17,11 +17,12 @@ :completion {:autocomplete false} - :mapping {: (cmp.mapping.scroll_docs -4) - : (cmp.mapping.scroll_docs 4) - : (cmp.mapping.complete) - : #(do (cmp.mapping.close) (vim.cmd "stopinsert")) - : (cmp.mapping.confirm {:select true})} + :mapping (cmp.mapping.preset.insert + {: (cmp.mapping.scroll_docs -4) + : (cmp.mapping.scroll_docs 4) + : (cmp.mapping.complete) + : #(do (cmp.mapping.close) (vim.cmd "stopinsert")) + : (cmp.mapping.confirm {:select true})}) :experimental {:custom_menu true} @@ -31,12 +32,15 @@ {:name "nvim_lua"} {:name "calc"} {:name "path"} + {:name "nvim_lsp_signature_help"} + {:name "conventionalcommits"} {:name "crates"}] ;{:name "buffer"}] :formatting {:format item-formatter} - :sorting {:comparators [#(do (if (and (= 15 ($1:get_kind)) (= 15 ($2:get_kind))) nil + :sorting {:priority_weight 2 + :comparators [#(do (if (and (= 15 ($1:get_kind)) (= 15 ($2:get_kind))) nil (= 15 ($1:get_kind)) false (= 15 ($2:get_kind)) true nil)) ; 15 means "SNIPPET", see https://github.com/hrsh7th/nvim-cmp/blob/main/lua/cmp/types/lsp.lua diff --git a/nvim/.config/nvim/fnl/dots/plugins/glance.fnl b/nvim/.config/nvim/fnl/dots/plugins/glance.fnl new file mode 100644 index 0000000..4b14221 --- /dev/null +++ b/nvim/.config/nvim/fnl/dots/plugins/glance.fnl @@ -0,0 +1,5 @@ +(module dots.plugins.glance + {autoload {a aniseed.core + glance glance}}) + +(glance.setup) diff --git a/nvim/.config/nvim/fnl/dots/plugins/telescope.fnl b/nvim/.config/nvim/fnl/dots/plugins/telescope.fnl index c700b6b..708ca44 100644 --- a/nvim/.config/nvim/fnl/dots/plugins/telescope.fnl +++ b/nvim/.config/nvim/fnl/dots/plugins/telescope.fnl @@ -4,7 +4,15 @@ actions telescope.actions colors dots.colors}}) +(telescope.setup + {:defaults {:mappings {:i {: actions.close}} + :file_ignore_patterns ["Cargo.lock" ".*.snap" "docs/theme/.*" "node%_modules/.*" "target/.*"]} + :extensions {:ui-select [((. (require "telescope.themes") :get_dropdown))]}}) + +(telescope.load_extension "dap") +(telescope.load_extension "ui-select") +(utils.keymap :n : ":Telescope find_files") (def prompt "blacker") (if @@ -53,13 +61,3 @@ (utils.highlight-add :TelescopeResultsTitle {:bg colors.neutral_aqua :fg colors.dark1}) (utils.highlight-add :TelescopeSelection {:bg colors.neutral_aqua :fg colors.dark1}) - - -(telescope.setup - {:defaults {:mappings {:i {: actions.close}} - :file_ignore_patterns ["Cargo.lock" ".*.snap" "docs/theme/.*" "node%_modules/.*" "target/.*"]} - :extensions {:frecency {:persistent_filter false}}}) - -(telescope.load_extension "dap") - -(utils.keymap :n : ":Telescope find_files") diff --git a/nvim/.config/nvim/init.lua b/nvim/.config/nvim/init.lua index 7115f29..87ce709 100644 --- a/nvim/.config/nvim/init.lua +++ b/nvim/.config/nvim/init.lua @@ -5,8 +5,6 @@ -- not even used, but epic. stores the path to the root config directory. local vim_config_root = vim.fn.expand(":p:h") -local pack_path = vim.fn.stdpath("data") .. "/site/pack" - local lazypath = vim.fn.stdpath("data") .. "/lazy/lazy.nvim" if not vim.loop.fs_stat(lazypath) then vim.fn.system({ @@ -22,24 +20,23 @@ vim.opt.rtp:prepend(lazypath) function ensure(user, repo, branch, commit) - -- Ensures a given github.com/USER/REPO is cloned in the pack/packer/start directory. - local install_path = pack_path .. "/packer/start/" .. repo - -- local install_path = string.format("%s/packer/start/%s", pack_path, repo, repo) + -- Ensures a given github.com/USER/REPO is cloned in the lazy/packer/start directory. + local install_path = vim.fn.stdpath("data") .. "/lazy/" .. repo if vim.fn.empty(vim.fn.glob(install_path)) > 0 then vim.fn.system({"git", "clone", "--depth", "1", "--branch", branch, "https://github.com/" .. user .. "/" .. repo, install_path}) if commit ~= nil then vim.fn.system({"git", "--git-dir", install_path .. "/.git", "reset", "--hard", commit}) end - vim.api.nvim_command(string.format("packadd %s", repo)) end + vim.opt.rtp:prepend(install_path) end -- Bootstrap essential plugins required for installing and loading the rest. --ensure("wbthomason", "packer.nvim", "master") -ensure("Olical", "aniseed", "develop") -ensure("lewis6991", "impatient.nvim", "main") +ensure("Olical", "aniseed", "master") +-- ensure("lewis6991", "impatient.nvim", "main") -require("impatient") +-- require("impatient") vim.g["aniseed#env"] = { @@ -48,4 +45,4 @@ vim.g["aniseed#env"] = { --require("aniseed.env").init({compile = true}) -vim.cmd ("source "..vim_config_root.."/amulet.vim") +-- vim.cmd ("source "..vim_config_root.."/amulet.vim") diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json index 170244a..79a5684 100644 --- a/nvim/.config/nvim/lazy-lock.json +++ b/nvim/.config/nvim/lazy-lock.json @@ -1,14 +1,17 @@ { + "Comment.nvim": { "branch": "master", "commit": "e89df176e8b38e931b7e71a470f923a317976d86" }, "Ionide-vim": { "branch": "master", "commit": "a66845162ae4c2ad06d76e003c0aab235aac2ede" }, "agda-vim": { "branch": "master", "commit": "4a0f475aaef756702222bdd5b01e25f814f5691f" }, - "aniseed": { "branch": "develop", "commit": "a7445c340fb7a0529f3c413eb99d3f8d29f50ba2" }, + "aniseed": { "branch": "master", "commit": "a7445c340fb7a0529f3c413eb99d3f8d29f50ba2" }, "antifennel-nvim": { "branch": "master", "commit": "79261d02213a5093135e5d02431682f04459f0f7" }, "any-jump.vim": { "branch": "master", "commit": "9768403b6381ce3758cebac9613910c0160969e3" }, "ats-vim": { "branch": "master", "commit": "8e3e722b6d09ed81313573b4e7b108b265628ff1" }, "auto-pairs": { "branch": "master", "commit": "39f06b873a8449af8ff6a3eee716d3da14d63a76" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, "cmp-calc": { "branch": "main", "commit": "50792f34a628ea6eb31d2c90e8df174671e4e7a0" }, + "cmp-conventionalcommits": { "branch": "master", "commit": "a4dfacf0601130b7f8afa7c948d735c27802fb7f" }, "cmp-nvim-lsp": { "branch": "main", "commit": "59224771f91b86d1de12570b4070fe4ad7cd1eeb" }, + "cmp-nvim-lsp-signature-help": { "branch": "main", "commit": "d2768cb1b83de649d57d967085fe73c5e01f8fd7" }, "cmp-nvim-lua": { "branch": "main", "commit": "f3491638d123cfd2c8048aefaf66d246ff250ca6" }, "cmp-omni": { "branch": "main", "commit": "8457e4144ea2fc5efbadb7d22250d5ee8f8862ba" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, @@ -25,29 +28,29 @@ "friendly-snippets": { "branch": "main", "commit": "7ab483b355613ef4f74189c7789278d765724d12" }, "gh.nvim": { "branch": "main", "commit": "bc731bb53909481995ac2edb4bf6418c051fec1a" }, "gitsigns.nvim": { "branch": "main", "commit": "addd6e174a85fc1c4007ab0b65d77e6555b417bf" }, + "glance.nvim": { "branch": "master", "commit": "611478d2b36beb3c416c92f77e7c116d7bd25ee6" }, "haskell-vim": { "branch": "master", "commit": "f35d02204b4813d1dbe8b0e98cc39701a4b8e15e" }, "idris2-vim": { "branch": "master", "commit": "964cebee493c85f75796e4f4e6bbb4ac54e2da9e" }, "impatient.nvim": { "branch": "main", "commit": "c90e273f7b8c50a02f956c24ce4804a47f18162e" }, "inc-rename.nvim": { "branch": "main", "commit": "48c4aa2be19f79e79b465a9bb37ee9fbe6c606f5" }, "kmonad-vim": { "branch": "master", "commit": "37978445197ab00edeb5b731e9ca90c2b141723f" }, "lalrpop.vim": { "branch": "master", "commit": "7073eec8efdeff37cacd4bca378c28dad02c3c14" }, - "lazy.nvim": { "branch": "main", "commit": "8a3754717162cd453abd8da87a6020beaba17994" }, + "lazy.nvim": { "branch": "main", "commit": "0d0d5870a3265f1c92a89dccef4a592c44e70179" }, "litee.nvim": { "branch": "main", "commit": "bf366a1414fd0f9401631ac8884f2f9fa4bf18d2" }, "lsp_signature.nvim": { "branch": "master", "commit": "1979f1118e2b38084e7c148f279eed6e9300a342" }, "mercury-vim": { "branch": "master", "commit": "8749bec220c684d644202d0fef3246ad0c73d5c4" }, "neoformat": { "branch": "master", "commit": "ec601d38a2e9309109f405ce038c5a6ce774f1a9" }, "neogit": { "branch": "master", "commit": "981207efd10425fef82ca09fa8bd22c3ac3e622d" }, - "nerdcommenter": { "branch": "master", "commit": "98cc4a2d64ca67cccbf5b5cf47c682ebadaaff58" }, - "noice.nvim": { "branch": "main", "commit": "e8f0cdc08bd4e637fa8c9da2a454622c5b55beae" }, + "noice.nvim": { "branch": "main", "commit": "3d4b80d720fea1905a9df004e70a329f58b3f2b7" }, "nui.nvim": { "branch": "main", "commit": "257da38029d3859ed111804f9d4e95b0fa993a31" }, "nvim-bufferline.lua": { "branch": "main", "commit": "874f869a24e568980294b3200fc9dd842db65a36" }, - "nvim-cmp": { "branch": "main", "commit": "4c0a6512a0f8a235213959badf70031b9fa0220a" }, + "nvim-cmp": { "branch": "main", "commit": "11a95792a5be0f5a40bab5fc5b670e5b1399a939" }, "nvim-code-action-menu": { "branch": "main", "commit": "e4399dbaf6eabff998d3d5f1cbcd8d9933710027" }, "nvim-colorizer.lua": { "branch": "master", "commit": "36c610a9717cc9ec426a07c8e6bf3b3abcb139d6" }, "nvim-dap": { "branch": "master", "commit": "5a1479c5d633daa0db06988ed44663f07f10f5dd" }, "nvim-dap-ui": { "branch": "master", "commit": "b80227ea56a48177786904f6322abc8b2dc0bc36" }, "nvim-lspconfig": { "branch": "master", "commit": "8ebe6894dddaeb1459e1397c865f54fa5ecaac80" }, - "nvim-treesitter": { "branch": "master", "commit": "5e9c6b6ba079a90a2545e651e3740b655b9ff035" }, + "nvim-treesitter": { "branch": "master", "commit": "1c89f9b5bc885ff0e2b1cdb7ff40847784b1436b" }, "nvim-ts-context-commentstring": { "branch": "main", "commit": "4a42b30376c1bd625ab5016c2079631d531d797a" }, "nvim-web-devicons": { "branch": "master", "commit": "6c38926351372ea87034dec26182b62c835ff3bc" }, "nvim.lua": { "branch": "master", "commit": "5d57be0b6eea6c06977b1c5fe0752da909cf4154" }, @@ -67,6 +70,7 @@ "tabular": { "branch": "master", "commit": "339091ac4dd1f17e225fe7d57b48aff55f99b23a" }, "targets.vim": { "branch": "master", "commit": "8d6ff2984cdfaebe5b7a6eee8f226a6dd1226f2d" }, "telescope-dap.nvim": { "branch": "master", "commit": "313d2ea12ae59a1ca51b62bf01fc941a983d9c9c" }, + "telescope-ui-select.nvim": { "branch": "master", "commit": "62ea5e58c7bbe191297b983a9e7e89420f581369" }, "telescope.nvim": { "branch": "master", "commit": "b69b33eded07341253bc1f0b4ae6bbc5c411a2ab" }, "todo-comments.nvim": { "branch": "main", "commit": "077c59586d9d0726b0696dc5680eb863f4e04bc5" }, "trouble.nvim": { "branch": "fix_error_on_nil_window", "commit": "2b4fee6ff21f1649181e5b6d0ed69baa342cf615" },