From 342e5ef441cb4d4d681e63d54e00e78daee0e5bc Mon Sep 17 00:00:00 2001 From: omagdy7 Date: Wed, 1 May 2024 02:36:05 +0300 Subject: Did a little bit of an overhaul abandoning neo-tree and whichkey and using a mix of harpoon and fuzzyfinding for buffer navigation --- nvim/.config/nvim/lazy-lock.json | 110 +++++++++--------- nvim/.config/nvim/lazyvim.json | 4 +- nvim/.config/nvim/lua/config/keymaps.lua | 53 ++++++--- nvim/.config/nvim/lua/config/options.lua | 2 +- nvim/.config/nvim/lua/plugins/disabled.lua | 16 +++ nvim/.config/nvim/lua/plugins/main.lua | 176 ++++++++++++++++++++++++----- 6 files changed, 258 insertions(+), 103 deletions(-) diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json index 0bbf1f1..805f498 100644 --- a/nvim/.config/nvim/lazy-lock.json +++ b/nvim/.config/nvim/lazy-lock.json @@ -1,63 +1,65 @@ { - "LazyVim": { "branch": "main", "commit": "879e29504d43e9f178d967ecc34d482f902e5a91" }, - "LuaSnip": { "branch": "master", "commit": "6a001360cea89df50f7c5cc8c7a75e6a21f1ef5c" }, - "SchemaStore.nvim": { "branch": "main", "commit": "3927fbff75d5777660bfc4d29ff8d5b4a0cae2af" }, - "bufferline.nvim": { "branch": "main", "commit": "e48ce1805697e4bb97bc171c081e849a65859244" }, - "catppuccin": { "branch": "main", "commit": "64dc309bc157779691be38bbfc5123584e0a4a85" }, + "LazyVim": { "branch": "main", "commit": "9b4675ddde38fdae09978bd7dbdba83ec91f4d80" }, + "LuaSnip": { "branch": "master", "commit": "8f3d3465ba5c7ade0a8adb41eca5736f291a3fa8" }, + "SchemaStore.nvim": { "branch": "main", "commit": "f8b00bba94eab372e0c29605568a7ec323e30620" }, + "catppuccin": { "branch": "main", "commit": "a1439ad7c584efb3d0ce14ccb835967f030450fe" }, "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, - "cmp-emoji": { "branch": "main", "commit": "19075c36d5820253d32e2478b6aaf3734aeaafa0" }, + "cmp-emoji": { "branch": "main", "commit": "e8398e2adf512a03bb4e1728ca017ffeac670a9f" }, "cmp-nvim-lsp": { "branch": "main", "commit": "5af77f54de1b16c34b23cba810150689a3a90312" }, "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, "cmp_luasnip": { "branch": "master", "commit": "05a9ab28b53f71d1aece421ef32fee2cb857a843" }, - "competitest.nvim": { "branch": "master", "commit": "9aaf2827b130d64da5de291d74235c77b950c44c" }, + "competitest.nvim": { "branch": "master", "commit": "c3cb0e2b0916a879c4d3dcb5737e6c046dd0afc5" }, "compiler-explorer.nvim": { "branch": "master", "commit": "ee8e7a2808bdad67cd2acb61b5c9ffa7735c7ec9" }, - "conform.nvim": { "branch": "master", "commit": "8b407bb6175846cdc4c499e2a8d28109615a2089" }, - "dashboard-nvim": { "branch": "master", "commit": "63df28409d940f9cac0a925df09d3dc369db9841" }, - "dressing.nvim": { "branch": "master", "commit": "8b7ae53d7f04f33be3439a441db8071c96092d19" }, - "flutter-tools.nvim": { "branch": "main", "commit": "7350750d46fbeb4d2bb4878157b658d435935299" }, - "friendly-snippets": { "branch": "main", "commit": "53d3df271d031c405255e99410628c26a8f0d2b0" }, - "gitsigns.nvim": { "branch": "main", "commit": "d195f0c35ced5174d3ecce1c4c8ebb3b5bc23fa9" }, - "gruvbox.nvim": { "branch": "main", "commit": "0940564208a490c173216c3b7d2188b0a5ad3491" }, - "hex.nvim": { "branch": "master", "commit": "dc51e5d67fc994380b7c7a518b6b625cde4b3062" }, - "indent-blankline.nvim": { "branch": "master", "commit": "7206c77cb931f79885fc47f88ae18f99148392eb" }, - "lazy.nvim": { "branch": "main", "commit": "96584866b9c5e998cbae300594d0ccfd0c464627" }, - "lualine.nvim": { "branch": "master", "commit": "2248ef254d0a1488a72041cfb45ca9caada6d994" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "9453e3d6cd2ca45d96e20f343e8f1b927364b630" }, - "mason.nvim": { "branch": "main", "commit": "41e75af1f578e55ba050c863587cffde3556ffa6" }, - "material.nvim": { "branch": "main", "commit": "60416124a07a3358f3b93915092db50fcb712b41" }, - "mini.bufremove": { "branch": "main", "commit": "f53c7f27e36009fe61563c11cde154b94a0e5b94" }, - "mini.comment": { "branch": "main", "commit": "3d9c8009615857e982f09bc5357fc95f2a2175f3" }, - "mini.indentscope": { "branch": "main", "commit": "dc26fa1a6c8976f42930c9f53da88d3d441bb13f" }, - "mini.move": { "branch": "main", "commit": "05f33f031887cbb5b13d3d1b59cd6988014abd6e" }, - "mini.pairs": { "branch": "main", "commit": "71f117fd57f930da6ef4126b24f594dd398bac26" }, - "mini.surround": { "branch": "main", "commit": "af8129efcabe95fc08a233e9f91569829bed031f" }, - "neo-tree.nvim": { "branch": "v3.x", "commit": "230ff118613fa07138ba579b89d13ec2201530b9" }, - "neoconf.nvim": { "branch": "main", "commit": "64437787dba70fce50dad7bfbb97d184c5bc340f" }, - "neodev.nvim": { "branch": "main", "commit": "ef351fae5df2559956398923c5d38c9b64e7d898" }, - "nui.nvim": { "branch": "main", "commit": "c9b4de623d19a85b353ff70d2ae9c77143abe69c" }, - "nvim-autopairs": { "branch": "master", "commit": "0f04d78619cce9a5af4f355968040f7d675854a1" }, - "nvim-cmp": { "branch": "main", "commit": "538e37ba87284942c1d76ed38dd497e54e65b891" }, - "nvim-lint": { "branch": "master", "commit": "849ccb610de3f6ce1a239ea1e68568ef1a53d5df" }, - "nvim-lspconfig": { "branch": "master", "commit": "84f2dd42efffa20d505ac44c78568d778ca7e0a1" }, - "nvim-notify": { "branch": "master", "commit": "e4a2022f4fec2d5ebc79afa612f96d8b11c627b3" }, - "nvim-spectre": { "branch": "master", "commit": "a18a58015b46f02b4fe537ebfffd82e46110ff24" }, - "nvim-treesitter": { "branch": "master", "commit": "ab818bf5a2ee21515ade9afcf428e98056b6197b" }, - "nvim-treesitter-textobjects": { "branch": "master", "commit": "ec1c5bdb3d87ac971749fa6c7dbc2b14884f1f6a" }, - "nvim-ts-autotag": { "branch": "main", "commit": "8515e48a277a2f4947d91004d9aa92c29fdc5e18" }, - "nvim-ts-context-commentstring": { "branch": "main", "commit": "1277b4a1f451b0f18c0790e1a7f12e1e5fdebfee" }, - "nvim-web-devicons": { "branch": "master", "commit": "a1425903ab52a0a0460622519e827f224e5b4fee" }, - "oil.nvim": { "branch": "master", "commit": "24027ed8d7f3ee5c38cfd713915e2e16d89e79b3" }, + "conform.nvim": { "branch": "master", "commit": "12b3995537f52ba2810a9857e8ca256881febbda" }, + "dashboard-nvim": { "branch": "master", "commit": "1c8b82c5b02bb890862538be2061e37ef801a99b" }, + "diffview.nvim": { "branch": "main", "commit": "3dc498c9777fe79156f3d32dddd483b8b3dbd95f" }, + "dressing.nvim": { "branch": "master", "commit": "5162edb1442a729a885c45455a07e9a89058be2f" }, + "friendly-snippets": { "branch": "main", "commit": "d5f74ce4dfdd82848f3f4eac65fe6e29ac5df4c2" }, + "fzf-lua": { "branch": "main", "commit": "2674675a7719e3fb2829748276d9a0b799fd2c7a" }, + "gitsigns.nvim": { "branch": "main", "commit": "035da036e68e509ed158414416c827d022d914bd" }, + "gruvbox.nvim": { "branch": "main", "commit": "6e4027ae957cddf7b193adfaec4a8f9e03b4555f" }, + "harpoon": { "branch": "master", "commit": "ccae1b9bec717ae284906b0bf83d720e59d12b91" }, + "hex.nvim": { "branch": "master", "commit": "cbffd2ce4b8be089360e3c95d5909cd511d8840c" }, + "indent-blankline.nvim": { "branch": "master", "commit": "3d08501caef2329aba5121b753e903904088f7e6" }, + "lazy.nvim": { "branch": "main", "commit": "bef521ac89c8d423f9d092e37b58e8af0c099309" }, + "lualine.nvim": { "branch": "master", "commit": "0a5a66803c7407767b799067986b4dc3036e1983" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "273fdde8ac5e51f3a223ba70980e52bbc09d9f6f" }, + "mason.nvim": { "branch": "main", "commit": "751b1fcbf3d3b783fcf8d48865264a9bcd8f9b10" }, + "material.nvim": { "branch": "main", "commit": "772e41a7f33743224f30799a3a887dc7dd853f8d" }, + "mini.bufremove": { "branch": "main", "commit": "931a3bb514147d9e812767275c4beba6b779b1d3" }, + "mini.comment": { "branch": "main", "commit": "f9f1a646fd3d9df7397aa1b9550a875fe8189eb0" }, + "mini.indentscope": { "branch": "main", "commit": "a8274b6ea2d868198d27bd91a31ed5ea3a6a5744" }, + "mini.move": { "branch": "main", "commit": "251d541a8ab745e81295a53c128829cb2bff18e3" }, + "mini.pairs": { "branch": "main", "commit": "04f58f2545ed80ac3b52dd4826e93f33e15b2af6" }, + "mini.surround": { "branch": "main", "commit": "a00d69be09e3fe27dfa9e5b0298410d0e148e3e2" }, + "neoconf.nvim": { "branch": "main", "commit": "ba3503e246ea687732e51f7f9878e653e2e2039b" }, + "neodev.nvim": { "branch": "main", "commit": "ce9a2e8eaba5649b553529c5498acb43a6c317cd" }, + "neogit": { "branch": "master", "commit": "0cae7abc30cb91d661f28257c331fcb5b5198e31" }, + "nui.nvim": { "branch": "main", "commit": "cbd2668414331c10039278f558630ed19b93e69b" }, + "nvim-autopairs": { "branch": "master", "commit": "4f41e5940bc0443fdbe5f995e2a596847215cd2a" }, + "nvim-cmp": { "branch": "main", "commit": "8f3c541407e691af6163e2447f3af1bd6e17f9a3" }, + "nvim-lint": { "branch": "master", "commit": "f098232d70cebe90e27404928c9bc19ca7a5a7b5" }, + "nvim-lspconfig": { "branch": "master", "commit": "aa5f4f4ee10b2688fb37fa46215672441d5cd5d9" }, + "nvim-notify": { "branch": "master", "commit": "5371f4bfc1f6d3adf4fe9d62cd3a9d44356bfd15" }, + "nvim-spectre": { "branch": "master", "commit": "4651801ba37a9407b7257287aec45b6653ffc5e9" }, + "nvim-treesitter": { "branch": "master", "commit": "160e5d52c841dc9261c0b2dc6f253bddbcf3d766" }, + "nvim-treesitter-textobjects": { "branch": "master", "commit": "23b820146956b3b681c19e10d3a8bc0cbd9a1d4c" }, + "nvim-ts-autotag": { "branch": "main", "commit": "531f48334c422222aebc888fd36e7d109cb354cd" }, + "nvim-ts-context-commentstring": { "branch": "main", "commit": "a6382f744f584bbf71d0a563af789af7190aabda" }, + "nvim-web-devicons": { "branch": "master", "commit": "794bba734ec95eaff9bb82fbd112473be2087283" }, + "oil.nvim": { "branch": "master", "commit": "f3a31eba24587bc038592103d8f7e64648292115" }, "onedark": { "branch": "master", "commit": "1230aaf2a427b2c5b73aba6e4a9a5881d3e69429" }, - "persistence.nvim": { "branch": "main", "commit": "ad538bfd5336f1335cdb6fd4e0b0eebfa6e12f32" }, - "plenary.nvim": { "branch": "master", "commit": "55d9fe89e33efd26f532ef20223e5f9430c8b0c0" }, - "rose-pine": { "branch": "main", "commit": "92762f4fa2144c05db760ea254f4c399a56a7ef5" }, - "symbols-outline.nvim": { "branch": "master", "commit": "512791925d57a61c545bc303356e8a8f7869763c" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "6c921ca12321edaa773e324ef64ea301a1d0da62" }, - "telescope.nvim": { "branch": "master", "commit": "6213322ab56eb27356fdc09a5078e41e3ea7f3bc" }, - "todo-comments.nvim": { "branch": "main", "commit": "4a6737a8d70fe1ac55c64dfa47fcb189ca431872" }, - "tokyonight.nvim": { "branch": "main", "commit": "f247ee700b569ed43f39320413a13ba9b0aef0db" }, + "persistence.nvim": { "branch": "main", "commit": "4982499c1636eac254b72923ab826ee7827b3084" }, + "plenary.nvim": { "branch": "master", "commit": "08e301982b9a057110ede7a735dd1b5285eb341f" }, + "rose-pine": { "branch": "main", "commit": "17b466e79479758b332a3cac12544a3ad2be6241" }, + "symbols-outline.nvim": { "branch": "master", "commit": "564ee65dfc9024bdde73a6621820866987cbb256" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "9ef21b2e6bb6ebeaf349a0781745549bbb870d27" }, + "telescope.nvim": { "branch": "master", "commit": "35f94f0ef32d70e3664a703cefbe71bd1456d899" }, + "todo-comments.nvim": { "branch": "main", "commit": "a7e39ae9e74f2c8c6dc4eea6d40c3971ae84752d" }, + "tokyonight.nvim": { "branch": "main", "commit": "67afeaf7fd6ebba000633e89f63c31694057edde" }, + "trouble.nvim": { "branch": "main", "commit": "b9cf677f20bb2faa2dacfa870b084e568dca9572" }, "typescript.nvim": { "branch": "main", "commit": "4de85ef699d7e6010528dcfbddc2ed4c2c421467" }, - "vim-illuminate": { "branch": "master", "commit": "3bd2ab64b5d63b29e05691e624927e5ebbf0fb86" }, - "vim-startuptime": { "branch": "master", "commit": "454b3de856b7bd298700de33d79774ca9b9e3875" }, - "which-key.nvim": { "branch": "main", "commit": "4433e5ec9a507e5097571ed55c02ea9658fb268a" } + "vim-startuptime": { "branch": "master", "commit": "ac2cccb5be617672add1f4f3c0a55ce99ba34e01" }, + "vim-tmux-navigator": { "branch": "master", "commit": "a26954a585b02a2ac02f87145e204f8798a7cbc2" }, + "vimtex": { "branch": "master", "commit": "23cf7649231bcd5c1f9a0c7cb3f7e7b8839f19d6" } } \ No newline at end of file diff --git a/nvim/.config/nvim/lazyvim.json b/nvim/.config/nvim/lazyvim.json index ff6a139..f03853f 100644 --- a/nvim/.config/nvim/lazyvim.json +++ b/nvim/.config/nvim/lazyvim.json @@ -3,7 +3,7 @@ ], "news": { - "NEWS.md": "2123" + "NEWS.md": "3314" }, - "version": 2 + "version": 3 } \ No newline at end of file diff --git a/nvim/.config/nvim/lua/config/keymaps.lua b/nvim/.config/nvim/lua/config/keymaps.lua index 9833f1e..f8dad17 100644 --- a/nvim/.config/nvim/lua/config/keymaps.lua +++ b/nvim/.config/nvim/lua/config/keymaps.lua @@ -16,12 +16,16 @@ local function map(mode, lhs, rhs, opts) end end --- map("v", "", ":m '>+1gv=gv", { desc = "Move down" }) --- map("v", "", ":m '<-2gv=gv", { desc = "Move up" }) +map("n", "t", ":lua require('dbgstmt').select()", { desc = "dbgstmt" }) -map("n", "t", ":lua require('dbgstmt').select()", { desc = "Move up" }) +-- Better navigation +map("n", "", "zz", { desc = "better half page down scroll", remap = true }) +map("n", "", "zz", { desc = "better half page up scroll", remap = true }) +map("n", "n", "nzz", { desc = "better jump for searched word", remap = true }) +map("n", "", "zz", { desc = "better next jump", remap = true }) +map("n", "", "zz", { desc = "better prev jump", remap = true }) --- fix annoying typs when saving or quitting +-- fix annoying typos when saving or quitting vim.cmd([[ cnoreabbrev W! w! cnoreabbrev W1 w! @@ -47,23 +51,38 @@ vim.cmd([[ cnoreabbrev Qall qall ]]) +-- vimtex keymaps +map("n", "i", "VimtexCompile", { desc = "Compile latex document", remap = true }) + +-- harpoon keymaps +map("n", "mm", function() + require("harpoon.ui").toggle_quick_menu() +end, { desc = "toggle harpoon menu", remap = true }) + +map("n", "ma", function() + require("harpoon.mark").add_file() +end, { desc = "Add file to harpoon", remap = true }) + +map("n", "mq", function() + require("harpoon.ui").nav_file(1) +end, { desc = "navigate to first harpoon mark", remap = true }) + +map("n", "mw", function() + require("harpoon.ui").nav_file(2) +end, { desc = "navigate to second harpoon mark", remap = true }) + +map("n", "me", function() + require("harpoon.ui").nav_file(3) +end, { desc = "navigate to third harpoon mark", remap = true }) + map("n", "h", "noh", { desc = "remove highlights", remap = true }) -map("n", "j", "/<()>ciwO", { desc = "jump to <()>", remap = true }) -map("n", "C", "bd", { desc = "Close current buffer", remap = true }) -map("n", "l", "", { desc = "unset lazy shortcut", remap = true }) -map("n", "la", "lua vim.lsp.buf.code_action()", { desc = "code actions", remap = true }) -map("n", "y", "Telescop flutter commands", { desc = "Flutter commands", remap = true }) +map("n", "j", "/<++>ciwO", { desc = "jump to <++>", remap = true }) +map("n", "", "bprevious", { desc = "Jump to recently used buffer" }) map("n", "gl", "lua vim.diagnostic.open_float()", { desc = "Line diagnostics", remap = true }) --- oil.nvim +-- oil.nvim keymaps map("n", "o", "Oil", { desc = "Open Oil.nvim", remap = true }) - --- Better navigation -map("n", "", "zz", { desc = "better half page down scroll", remap = true }) -map("n", "", "zz", { desc = "better half page up scroll", remap = true }) -map("n", "n", "nzz", { desc = "better jump for searched word", remap = true }) -map("n", "", "zz", { desc = "better next jump", remap = true }) -map("n", "", "zz", { desc = "better prev jump", remap = true }) +map("n", "-", "Oil", { desc = "Open Oil.nvim", remap = true }) -- competitest keymaps map("n", "", " CompetiTest receive problem ", { desc = "Receive test", remap = true }) diff --git a/nvim/.config/nvim/lua/config/options.lua b/nvim/.config/nvim/lua/config/options.lua index 4ae3b36..95b371e 100644 --- a/nvim/.config/nvim/lua/config/options.lua +++ b/nvim/.config/nvim/lua/config/options.lua @@ -5,7 +5,7 @@ vim.opt.ch = 0 vim.opt.list = false vim.opt.confirm = false -vim.o.guifont = "Monaspace xenon:h12:bold" -- text below applies for VimScript +vim.o.guifont = "Monaspace argon:h12:bold" -- text below applies for VimScript -- Helper function for transparency formatting local alpha = function() diff --git a/nvim/.config/nvim/lua/plugins/disabled.lua b/nvim/.config/nvim/lua/plugins/disabled.lua index 9b3390c..e8e520a 100644 --- a/nvim/.config/nvim/lua/plugins/disabled.lua +++ b/nvim/.config/nvim/lua/plugins/disabled.lua @@ -3,6 +3,22 @@ return { "folke/noice.nvim", enabled = false, }, + { + "RRethy/vim-illuminate", + enabled = false, + }, + { + "folke/which-key.nvim", + enabled = false, + }, + { + "akinsho/bufferline.nvim", + enabled = false, + }, + { + "nvim-neo-tree/neo-tree.nvim", + enabled = false, + }, { "folke/flash.nvim", enabled = false, diff --git a/nvim/.config/nvim/lua/plugins/main.lua b/nvim/.config/nvim/lua/plugins/main.lua index c3a62ed..c19c486 100644 --- a/nvim/.config/nvim/lua/plugins/main.lua +++ b/nvim/.config/nvim/lua/plugins/main.lua @@ -35,6 +35,46 @@ return { "windwp/nvim-ts-autotag", }, + -- tmux navigator +{ + "christoomey/vim-tmux-navigator", + cmd = { + "TmuxNavigateLeft", + "TmuxNavigateDown", + "TmuxNavigateUp", + "TmuxNavigateRight", + "TmuxNavigatePrevious", + }, + keys = { + { "", "TmuxNavigateLeft" }, + { "", "TmuxNavigateDown" }, + { "", "TmuxNavigateUp" }, + { "", "TmuxNavigateRight" }, + { "", "TmuxNavigatePrevious" }, + }, + }, + + + { + "NeogitOrg/neogit", + dependencies = { + "nvim-lua/plenary.nvim", -- required + "sindrets/diffview.nvim", -- optional - Diff integration + + -- Only one of these is needed, not both. + "nvim-telescope/telescope.nvim", -- optional + "ibhagwan/fzf-lua", -- optional + }, + config = true, + keys = { + { + "g;", + "Neogit" + } + } + + }, + { 'stevearc/oil.nvim', opts = {}, @@ -43,21 +83,19 @@ return { dependencies = { "nvim-tree/nvim-web-devicons" }, }, - { - 'RaafatTurki/hex.nvim' , - config = true, + "lervag/vimtex", lazy = false, + init = function() + -- VimTeX configuration goes here + vim.g.vimtex_view_method = 'zathura' + end }, { - 'akinsho/flutter-tools.nvim', - lazy = false, - dependencies = { - 'nvim-lua/plenary.nvim', - 'stevearc/dressing.nvim', -- optional for vim.ui.select - }, + 'RaafatTurki/hex.nvim' , config = true, + lazy = false, }, -- If you are using Packer @@ -69,7 +107,6 @@ return { }, - { 'krady21/compiler-explorer.nvim', lazy = false, @@ -79,26 +116,49 @@ return { "LazyVim/LazyVim", opts = { -- colorscheme = "onedark", - colorscheme = "material-deep-ocean", + colorscheme = "catppuccin-mocha", + -- colorscheme = "material-deep-ocean", -- colorscheme = "tokyonight-night", }, }, + + { + "ThePrimeagen/harpoon", + }, + + -- change trouble config { "folke/trouble.nvim", -- opts will be merged with the parent spec opts = { use_diagnostic_signs = true }, + keys = { + { + "xx", function() require("trouble").toggle() end + }, + { + "xw", function() require("trouble").toggle("workspace_diagnostics") end + }, + { + "xd", function() require("trouble").toggle("document_diagnostics") end + }, + { + "xq", function() require("trouble").toggle("quickfix") end + }, + { + "xl", function() require("trouble").toggle("loclist") end + }, + { + "gR", function() require("trouble").toggle("lsp_references") end + }, + }, }, - -- disable trouble - { "folke/trouble.nvim", enabled = false }, - -- add symbols-outline { "simrat39/symbols-outline.nvim", cmd = "SymbolsOutline", - keys = { { "cs", "SymbolsOutline", desc = "Symbols Outline" } }, config = true, }, @@ -119,25 +179,38 @@ return { keys = { -- add a keymap to browse plugin files -- stylua: ignore + { + "f", + false + }, + { + "fe", + false + }, + { + "f", + false + }, { "fp", function() require("telescope.builtin").find_files({ cwd = require("lazy.core.config").options.root }) end, desc = "Find Plugin File", }, + { + "fw", + function() require("telescope.builtin").live_grep() end, + desc = "Find words in project", + }, { "f/", function() require("telescope.builtin").live_grep() end, - desc = "Find words File", + desc = "Find words in project", }, { - "fw", - function() - require("telescope.builtin").live_grep { - additional_args = function(args) return vim.list_extend(args, { "--hidden", "--no-ignore" }) end, - } - end, - desc = "Find words in all files", - } + "fm", + "Telescope harpoon marks", + desc = "harpoon marks", + }, }, -- change some options opts = { @@ -159,6 +232,18 @@ return { }, }, + -- add harpoon support for telescope + { + "telescope.nvim", + dependencies = { + "ThePrimeagen/harpoon", + build = "make", + config = function() + require("telescope").load_extension("harpoon") + end, + }, + }, + -- add telescope-fzf-native { "telescope.nvim", @@ -171,17 +256,47 @@ return { }, }, + { + 'stevearc/conform.nvim', + keys = { + { + "c", false + }, + } + }, + -- add tsserver and setup with typescript.nvim instead of lspconfig { "neovim/nvim-lspconfig", + init = function() + local keys = require("lazyvim.plugins.lsp.keymaps").get() + -- disable default lazy keymaps for lsp + keys[#keys + 1] = { "ca", false} + keys[#keys + 1] = { "c", false} + keys[#keys + 1] = { "cc", false} + keys[#keys + 1] = { "c", false} + keys[#keys + 1] = { "cd", false} + keys[#keys + 1] = { "cf", false} + keys[#keys + 1] = { "c", false} + keys[#keys + 1] = { "cl", false} + keys[#keys + 1] = { "cm", false} + keys[#keys + 1] = { "co", false} + keys[#keys + 1] = { "cr", false} + keys[#keys + 1] = { "c", false} + keys[#keys + 1] = { "cs", false} + + keys[#keys + 1] = { "lr", "lua vim.lsp.buf.rename()", desc = "Rename variable",} + keys[#keys + 1] = { "la", "lua vim.lsp.buf.code_action()", desc = "code actions",} + end, + dependencies = { "jose-elias-alvarez/typescript.nvim", init = function() require("lazyvim.util").lsp.on_attach(function(_, buffer) -- stylua: ignore - vim.keymap.set( "n", "co", "TypescriptOrganizeImports", { buffer = buffer, desc = "Organize Imports" }) - vim.keymap.set("n", "cR", "TypescriptRenameFile", { desc = "Rename File", buffer = buffer }) + -- vim.keymap.set( "n", "co", "TypescriptOrganizeImports", { buffer = buffer, desc = "Organize Imports" }) + -- vim.keymap.set("n", "cR", "TypescriptRenameFile", { desc = "Rename File", buffer = buffer }) end) end, }, @@ -283,7 +398,7 @@ return { lualine_style = "default", disable = { background = true, - } + }, } }, @@ -302,6 +417,9 @@ return { -- add any tools you want to have installed below { "williamboman/mason.nvim", + keys = { + { "cm", false } + }, opts = { ensure_installed = { "stylua", @@ -338,7 +456,7 @@ return { local cmp = require("cmp") opts.mapping = vim.tbl_extend("force", opts.mapping, { - [""] = cmp.mapping(function(fallback) + [""] = cmp.mapping(function(fallback) if cmp.visible() then cmp.select_next_item() -- You could replace the expand_or_jumpable() calls with expand_or_locally_jumpable() @@ -351,7 +469,7 @@ return { fallback() end end, { "i", "s" }), - [""] = cmp.mapping(function(fallback) + [""] = cmp.mapping(function(fallback) if cmp.visible() then cmp.select_prev_item() elseif luasnip.jumpable(-1) then -- cgit v1.2.3