From 1337963f722cb773d99d44b5c90e793454ada4ac Mon Sep 17 00:00:00 2001 From: Nigel Barink Date: Sun, 20 Apr 2025 14:56:10 +0200 Subject: [PATCH] Added AI, cleaned up some things --- lazy-lock.json | 87 ++++++++++++++------------ lua/barink/init.lua | 6 +- lua/barink/plugins/AI.lua | 55 ++++++++++++++++ lua/barink/plugins/Oil.lua | 1 + lua/barink/plugins/harpoon.lua | 50 ++++++--------- lua/barink/plugins/neovim-context.lua | 16 +++++ lua/barink/plugins/typescriptTools.lua | 8 +++ lua/barink/plugins/wezterm.lua | 13 ++++ lua/barink/vim.lua | 10 --- 9 files changed, 162 insertions(+), 84 deletions(-) create mode 100644 lua/barink/plugins/AI.lua create mode 100644 lua/barink/plugins/neovim-context.lua create mode 100644 lua/barink/plugins/typescriptTools.lua create mode 100644 lua/barink/plugins/wezterm.lua diff --git a/lazy-lock.json b/lazy-lock.json index 51e76b0..2955296 100644 --- a/lazy-lock.json +++ b/lazy-lock.json @@ -1,49 +1,56 @@ { "Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" }, "LuaSnip": { "branch": "master", "commit": "03c8e67eb7293c404845b3982db895d59c0d1538" }, - "catppuccin": { "branch": "main", "commit": "63685e1562ef53873c9764b483d7ac5c7a608922" }, - "cmp-buffer": { "branch": "main", "commit": "3022dbc9166796b644a841a02de8dd1cc1d311fa" }, + "avante.nvim": { "branch": "main", "commit": "eb1cd44731783024621beafe4e46204cbc9a4320" }, + "catppuccin": { "branch": "main", "commit": "5b5e3aef9ad7af84f463d17b5479f06b87d5c429" }, + "cmp-buffer": { "branch": "main", "commit": "b74fab3656eea9de20a9b8116afa3cfc4ec09657" }, "cmp-cmdline": { "branch": "main", "commit": "d250c63aa13ead745e3a40f61fdd3470efde3923" }, - "cmp-nvim-lsp": { "branch": "main", "commit": "39e2eda76828d88b773cc27a3f61d2ad782c922d" }, - "cmp-path": { "branch": "main", "commit": "91ff86cd9c29299a64f968ebb45846c485725f23" }, - "conform.nvim": { "branch": "master", "commit": "1a99fdc1d3aa9ccdf3021e67982a679a8c5c740c" }, + "cmp-nvim-lsp": { "branch": "main", "commit": "a8912b88ce488f411177fc8aed358b04dc246d7b" }, + "cmp-path": { "branch": "main", "commit": "c6635aae33a50d6010bf1aa756ac2398a2d54c32" }, + "conform.nvim": { "branch": "master", "commit": "6632e7d788a85bf8405ea0c812d343fc308b7b8c" }, + "copilot.vim": { "branch": "release", "commit": "8d1e0f86d8aaa64070c080589bc2a516beb4024f" }, + "dressing.nvim": { "branch": "master", "commit": "2d7c2db2507fa3c4956142ee607431ddb2828639" }, "edgy.nvim": { "branch": "main", "commit": "7e8dedc39abebe40c289b8012cc89b11c69aa7a0" }, - "fidget.nvim": { "branch": "main", "commit": "d855eed8a06531a7e8fd0684889b2943f373c469" }, - "friendly-snippets": { "branch": "main", "commit": "00ba9dd3df89509f95437b8d595553707c46d5ea" }, + "fidget.nvim": { "branch": "main", "commit": "d9ba6b7bfe29b3119a610892af67602641da778e" }, + "friendly-snippets": { "branch": "main", "commit": "31f2a2657b6261724313281fe0d8ba6f43f4a4fa" }, "git-worktree.nvim": { "branch": "master", "commit": "f247308e68dab9f1133759b05d944569ad054546" }, - "gitsigns.nvim": { "branch": "main", "commit": "863903631e676b33e8be2acb17512fdc1b80b4fb" }, - "harpoon": { "branch": "harpoon2", "commit": "0378a6c428a0bed6a2781d459d7943843f374bce" }, - "lazy.nvim": { "branch": "main", "commit": "460e1cd8f24e364d54543a4b0e83f6f4ec1f65fb" }, - "lspkind.nvim": { "branch": "master", "commit": "59c3f419af48a2ffb2320cea85e44e5a95f71664" }, - "lualine.nvim": { "branch": "master", "commit": "b431d228b7bbcdaea818bdc3e25b8cdbe861f056" }, - "mason-lspconfig": { "branch": "main", "commit": "25c11854aa25558ee6c03432edfa0df0217324be" }, - "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, - "neo-tree.nvim": { "branch": "v3.x", "commit": "a77af2e764c5ed4038d27d1c463fa49cd4794e07" }, - "neoconf.nvim": { "branch": "main", "commit": "3b6db0a913258a91951f96b09c005522cca98f1f" }, - "nui.nvim": { "branch": "main", "commit": "b58e2bfda5cea347c9d58b7f11cf3012c7b3953f" }, - "nvim-cmp": { "branch": "main", "commit": "ae644feb7b67bf1ce4260c231d1d4300b19c6f30" }, - "nvim-dap": { "branch": "master", "commit": "7ff6936010b7222fea2caea0f67ed77f1b7c60dd" }, - "nvim-dap-ui": { "branch": "master", "commit": "1c351e4e417d4691da12948b6ecf966936a56d28" }, - "nvim-dap-virtual-text": { "branch": "master", "commit": "3497eb39bf413a57ab5b7e7e2e192683e462148c" }, - "nvim-jdtls": { "branch": "master", "commit": "efe813854432a314b472226dca813f0f2598d44a" }, - "nvim-lspconfig": { "branch": "master", "commit": "a9bc587e9ae0cbcb3e90a2e9342f86b3b78c4408" }, - "nvim-nio": { "branch": "master", "commit": "a428f309119086dc78dd4b19306d2d67be884eee" }, - "nvim-treesitter": { "branch": "master", "commit": "36b78d112bddd69a05e24679241962e29e494d9e" }, - "nvim-web-devicons": { "branch": "master", "commit": "26220156aafb198b2de6a4cf80c1b120a3768da0" }, - "oil.nvim": { "branch": "master", "commit": "1360be5fda9c67338331abfcd80de2afbb395bcd" }, + "gitsigns.nvim": { "branch": "main", "commit": "02eafb1273afec94447f66d1a43fc5e477c2ab8a" }, + "harpoon": { "branch": "harpoon2", "commit": "ed1f853847ffd04b2b61c314865665e1dadf22c7" }, + "lazy.nvim": { "branch": "main", "commit": "6c3bda4aca61a13a9c63f1c1d1b16b9d3be90d7a" }, + "lspkind.nvim": { "branch": "master", "commit": "d79a1c3299ad0ef94e255d045bed9fa26025dab6" }, + "lualine.nvim": { "branch": "master", "commit": "86fe39534b7da729a1ac56c0466e76f2c663dc42" }, + "mason-lspconfig": { "branch": "main", "commit": "1a31f824b9cd5bc6f342fc29e9a53b60d74af245" }, + "mason.nvim": { "branch": "main", "commit": "fc98833b6da5de5a9c5b1446ac541577059555be" }, + "neo-tree.nvim": { "branch": "v3.x", "commit": "9b5d67119c46e3262ffe1508fe6d8540b79ad75d" }, + "neoconf.nvim": { "branch": "main", "commit": "4625534ac67c1a6f1c1731d019a12ca121c4d3c1" }, + "nui.nvim": { "branch": "main", "commit": "8d3bce9764e627b62b07424e0df77f680d47ffdb" }, + "nvim-cmp": { "branch": "main", "commit": "b5311ab3ed9c846b585c0c15b7559be131ec4be9" }, + "nvim-dap": { "branch": "master", "commit": "7aade9e99bef5f0735cf966e715b3ce45515d786" }, + "nvim-dap-ui": { "branch": "master", "commit": "881a69e25bd6658864fab47450025490b74be878" }, + "nvim-dap-virtual-text": { "branch": "master", "commit": "df66808cd78b5a97576bbaeee95ed5ca385a9750" }, + "nvim-jdtls": { "branch": "master", "commit": "5ecf13c53c9a66ee97c200970029ab2ebe1c1112" }, + "nvim-lspconfig": { "branch": "master", "commit": "32b6a6449aaba11461fffbb596dd6310af79eea4" }, + "nvim-navigator": { "branch": "master", "commit": "3979c931a85335fed1b0755992898b49d0d54678" }, + "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, + "nvim-treesitter": { "branch": "master", "commit": "684eeac91ed8e297685a97ef70031d19ac1de25a" }, + "nvim-treesitter-context": { "branch": "master", "commit": "198720b4016af04c9590f375d714d5bf8afecc1a" }, + "nvim-web-devicons": { "branch": "master", "commit": "c90dee4e930ab9f49fa6d77f289bff335b49e972" }, + "oil.nvim": { "branch": "master", "commit": "302bbaceeafc690e6419e0c8296e804d60cb9446" }, + "ollama.nvim": { "branch": "main", "commit": "45e58779fecde7ac5b8f62800bbe7180d4b48507" }, "playground": { "branch": "master", "commit": "ba48c6a62a280eefb7c85725b0915e021a1a0749" }, - "plenary.nvim": { "branch": "master", "commit": "2d9b06177a975543726ce5c73fca176cedbffe9d" }, - "telescope-fzf-native.nvim": { "branch": "main", "commit": "cf48d4dfce44e0b9a2e19a008d6ec6ea6f01a83b" }, - "telescope.nvim": { "branch": "master", "commit": "cb3f98d935842836cc115e8c9e4b38c1380fbb6b" }, - "todo-comments.nvim": { "branch": "main", "commit": "ae0a2afb47cf7395dc400e5dc4e05274bf4fb9e0" }, - "tokyonight.nvim": { "branch": "main", "commit": "2c85fad417170d4572ead7bf9fdd706057bd73d7" }, - "trouble.nvim": { "branch": "main", "commit": "6efc446226679fda0547c0fd6a7892fd5f5b15d8" }, + "plenary.nvim": { "branch": "master", "commit": "857c5ac632080dba10aae49dba902ce3abf91b35" }, + "telescope-fzf-native.nvim": { "branch": "main", "commit": "1f08ed60cafc8f6168b72b80be2b2ea149813e55" }, + "telescope.nvim": { "branch": "master", "commit": "a4ed82509cecc56df1c7138920a1aeaf246c0ac5" }, + "todo-comments.nvim": { "branch": "main", "commit": "304a8d204ee787d2544d8bc23cd38d2f929e7cc5" }, + "tokyonight.nvim": { "branch": "main", "commit": "057ef5d260c1931f1dffd0f052c685dcd14100a3" }, + "trouble.nvim": { "branch": "main", "commit": "85bedb7eb7fa331a2ccbecb9202d8abba64d37b3" }, "twilight.nvim": { "branch": "main", "commit": "1584c0b0a979b71fd86b18d302ba84e9aba85b1b" }, - "undotree": { "branch": "master", "commit": "78b5241191852ffa9bb5da5ff2ee033160798c3b" }, - "vim-be-good": { "branch": "master", "commit": "4fa57b7957715c91326fcead58c1fa898b9b3625" }, - "vim-dadbod": { "branch": "master", "commit": "7888cb7164d69783d3dce4e0283decd26b82538b" }, - "vim-dadbod-completion": { "branch": "master", "commit": "880f7e9f2959e567c718d52550f9fae1aa07aa81" }, - "vim-dadbod-ui": { "branch": "master", "commit": "f29c85ab42861c6ef683289b0c6a51e0d436dcf6" }, - "vim-fugitive": { "branch": "master", "commit": "d4877e54cef67f5af4f950935b1ade19ed6b7370" }, - "zen-mode.nvim": { "branch": "main", "commit": "29b292bdc58b76a6c8f294c961a8bf92c5a6ebd6" } + "typescript-tools.nvim": { "branch": "master", "commit": "885f4cc150f996f5bff5804874f92ff3051c883d" }, + "undotree": { "branch": "master", "commit": "b951b87b46c34356d44aa71886aecf9dd7f5788a" }, + "vim-be-good": { "branch": "master", "commit": "0ae3de14eb8efc6effe7704b5e46495e91931cc5" }, + "vim-dadbod": { "branch": "master", "commit": "9f0ca8bcef704659820a95c3bbd2c262583a66a1" }, + "vim-dadbod-completion": { "branch": "master", "commit": "a8dac0b3cf6132c80dc9b18bef36d4cf7a9e1fe6" }, + "vim-dadbod-ui": { "branch": "master", "commit": "460432301a5cb280ea265ddfa15c9f3dcd1d26b7" }, + "vim-fugitive": { "branch": "master", "commit": "4a745ea72fa93bb15dd077109afbb3d1809383f2" }, + "zen-mode.nvim": { "branch": "main", "commit": "863f150ca321b3dd8aa1a2b69b5f411a220e144f" } } diff --git a/lua/barink/init.lua b/lua/barink/init.lua index 190a1b1..563740e 100644 --- a/lua/barink/init.lua +++ b/lua/barink/init.lua @@ -13,12 +13,10 @@ end vim.opt.rtp:prepend(lazypath) require("barink.keys") require("lazy").setup("barink.plugins" , { - root = vim.fn.stdpath("data") .. "/lazy", -- directory where plugins will be installed - -- leave nil when passing the spec as the first argument to setup() + root = vim.fn.stdpath("data") .. "/lazy", change_detection = { - -- automatically check for config file changes and reload the ui enabled = false, - notify = true, -- get a notification when changes are found + notify = true, }, }) diff --git a/lua/barink/plugins/AI.lua b/lua/barink/plugins/AI.lua new file mode 100644 index 0000000..279b302 --- /dev/null +++ b/lua/barink/plugins/AI.lua @@ -0,0 +1,55 @@ +return { + "github/copilot.vim", + { + "nomnivore/ollama.nvim", + dependencies = { + "nvim-lua/plenary.nvim", + }, + cmd = { "Ollama", "OllamaModel", "OllamaServe", "OllamaServeStop" }, + keys = { + { + "oo", + ":lua require('ollama').prompt()", + desc = "ollama prompt", + mode = { "n", "v" }, + }, + { + "oG", + ":lua require('ollama').prompt('Generate_Code')", + desc = "ollama Generate Code", + mode = { "n", "v" }, + }, + }, + + opts = { + model = "qwen2.5-coder" + }, + }, + { + "yetone/avante.nvim", + event = "VeryLazy", + version = false, -- Never set this value to "*"! Never! + opts = { + system_prompt = function() + local hub = require("mcphub").get_hub_instance() + return hub:get_active_servers_prompt() + end, + custom_tools = function() + return { + require("mcphub.extensions.avante").mcp_tool(), + } + end, + provider = "ollama", + ollama = { + model = "qwen2.5-coder" + } + }, + dependencies = { + "nvim-treesitter/nvim-treesitter", + "stevearc/dressing.nvim", + "nvim-lua/plenary.nvim", + "MunifTanjim/nui.nvim", + } + } + +} diff --git a/lua/barink/plugins/Oil.lua b/lua/barink/plugins/Oil.lua index c878914..692db51 100644 --- a/lua/barink/plugins/Oil.lua +++ b/lua/barink/plugins/Oil.lua @@ -8,6 +8,7 @@ return { 'nvim-tree/nvim-web-devicons' }, config = function() + require("oil").setup() vim.keymap.set("n", "-", "Oil", { desc = "Open parent directory" }) end } diff --git a/lua/barink/plugins/harpoon.lua b/lua/barink/plugins/harpoon.lua index fb3747e..fbf33dd 100644 --- a/lua/barink/plugins/harpoon.lua +++ b/lua/barink/plugins/harpoon.lua @@ -1,35 +1,25 @@ return { - "ThePrimeagen/harpoon", - branch= "harpoon2", - dependencies = { - {"nvim-lua/plenary.nvim"}, - {"nvim-telescope/telescope.nvim"} - }, - config = function() - local harpoon = require("harpoon") - harpoon.setup() + "ThePrimeagen/harpoon", + branch = "harpoon2", + dependencies = { + { "nvim-lua/plenary.nvim" }, + { "nvim-telescope/telescope.nvim" } + }, + config = function() + local harpoon = require("harpoon") + harpoon.setup() - vim.keymap.set("n", "ha", function() harpoon:list():add() end) - vim.keymap.set("n", "hh", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end) - - require("telescope.pickers").new({}, { - result = file_paths, - previewer = conf.file_previewer({}), - sorter = conf.generic_sorter({}), - }):find() - end - - vim.keymap.set("n", "ha", function() harpoon:list():add() end) - vim.keymap.set("n", "hh", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end) - vim.keymap.set("n", "fe", function () toggle_telescope(harpoon:list()) end, { desc = "Open harpoon window"} ) - vim.keymap.set("n", "C-1", function() harpoon:list():select(1) end) - vim.keymap.set("n", "C-2", function() harpoon:list():select(2) end) - vim.keymap.set("n", "C-3", function() harpoon:list():select(3) end) - vim.keymap.set("n", "C-4", function() harpoon:list():select(4) end) + vim.keymap.set("n", "ha", function() harpoon:list():add() end) + vim.keymap.set("n", "hh", function() harpoon.ui:toggle_quick_menu(harpoon:list()) end) + vim.keymap.set("n", "fe", function() toggle_telescope(harpoon:list()) end, + { desc = "Open harpoon window" }) + vim.keymap.set("n", "C-1", function() harpoon:list():select(1) end) + vim.keymap.set("n", "C-2", function() harpoon:list():select(2) end) + vim.keymap.set("n", "C-3", function() harpoon:list():select(3) end) + vim.keymap.set("n", "C-4", function() harpoon:list():select(4) end) - vim.keymap.set("n", "", function() harpoon:list():prev() end) - vim.keymap.set("n", "", function() harpoon:list():next() end) - - end + vim.keymap.set("n", "", function() harpoon:list():prev() end) + vim.keymap.set("n", "", function() harpoon:list():next() end) + end } diff --git a/lua/barink/plugins/neovim-context.lua b/lua/barink/plugins/neovim-context.lua new file mode 100644 index 0000000..5e54e07 --- /dev/null +++ b/lua/barink/plugins/neovim-context.lua @@ -0,0 +1,16 @@ +return { + { + "nvim-treesitter/nvim-treesitter-context", + dependencies = { + }, + config = function() + require('treesitter-context').setup({ + enable = true, + max_lines = 4, + min_window_height = 0, + line_numbers = true, + mode = 'cursor', + }) + end + } +} diff --git a/lua/barink/plugins/typescriptTools.lua b/lua/barink/plugins/typescriptTools.lua new file mode 100644 index 0000000..33e4c68 --- /dev/null +++ b/lua/barink/plugins/typescriptTools.lua @@ -0,0 +1,8 @@ +return { + "pmizio/typescript-tools.nvim", + dependencies = { + "nvim-lua/plenary.nvim", + "neovim/nvim-lspconfig", + }, + opts = {} +} diff --git a/lua/barink/plugins/wezterm.lua b/lua/barink/plugins/wezterm.lua new file mode 100644 index 0000000..090e3e2 --- /dev/null +++ b/lua/barink/plugins/wezterm.lua @@ -0,0 +1,13 @@ +return { + 'craigmac/nvim-navigator', + config = function() + require('Navigator').setup() + + vim.keymap.set({ 'n', 't' }, '', 'NavigatorLeft') + vim.keymap.set({ 'n', 't' }, '', 'NavigatorRight') + vim.keymap.set({ 'n', 't' }, '', 'NavigatorUp') + vim.keymap.set({ 'n', 't' }, '', 'NavigatorDown') + vim.keymap.set({ 'n', 't' }, '', 'NavigatorPrevious') + end + +} diff --git a/lua/barink/vim.lua b/lua/barink/vim.lua index 7d263c1..8fca0e5 100644 --- a/lua/barink/vim.lua +++ b/lua/barink/vim.lua @@ -35,13 +35,3 @@ vim.api.nvim_create_autocmd('LspAttach', { vim.g.netrw_browse_split = 0 vim.g.netrw_winsize = 25 - ---[[ --- Run zig test on save --- TODO: fix vim.cmd call --- TODO: only do this when a zig test file is open -vim.api.nvim_create_autocmd('BufWritePost' , { - callback = function () - vim.cmd{cmd = '!zig' , args= {'test', vim.fn.expand('%')} } - end -})]] --