diff --git a/nvim/.config/nvim/lazy-lock.json b/nvim/.config/nvim/lazy-lock.json index cbe05a3..680bfb4 100644 --- a/nvim/.config/nvim/lazy-lock.json +++ b/nvim/.config/nvim/lazy-lock.json @@ -1,40 +1,32 @@ { - "FixCursorHold.nvim": { "branch": "master", "commit": "1900f89dc17c603eec29960f57c00bd9ae696495" }, "LuaSnip": { "branch": "master", "commit": "5a1e39223db9a0498024a77b8441169d260c8c25" }, - "alpha-nvim": { "branch": "main", "commit": "3979b01cb05734331c7873049001d3f2bb8477f4" }, "blink-copilot": { "branch": "main", "commit": "7ad8209b2f880a2840c94cdcd80ab4dc511d4f39" }, - "blink.cmp": { "branch": "main", "commit": "b19413d214068f316c78978b08264ed1c41830ec" }, - "conform.nvim": { "branch": "master", "commit": "8314f4c9e205e7f30b62147069729f9a1227d8bf" }, - "copilot.lua": { "branch": "master", "commit": "e78d1ffebdf6ccb6fd8be4e6898030c1cf5f9b64" }, + "blink.cmp": { "branch": "main", "commit": "451168851e8e2466bc97ee3e026c3dcb9141ce07" }, + "conform.nvim": { "branch": "master", "commit": "086a40dc7ed8242c03be9f47fbcee68699cc2395" }, + "copilot.lua": { "branch": "master", "commit": "8e2a91828210d6043744468f6d7027d256a41f42" }, "diffview.nvim": { "branch": "main", "commit": "4516612fe98ff56ae0415a259ff6361a89419b0a" }, - "fidget.nvim": { "branch": "main", "commit": "64463022a1f2ff1318ab22a2ea4125ed9313a483" }, - "gitsigns.nvim": { "branch": "main", "commit": "dfac404ac94b0eb1461bd7da32279e16950dfd67" }, - "guess-indent.nvim": { "branch": "main", "commit": "84a4987ff36798c2fc1169cbaff67960aed9776f" }, - "kulala.nvim": { "branch": "main", "commit": "cd3eaa83b8d60533837202dede73238334d71832" }, + "fidget.nvim": { "branch": "main", "commit": "7fa433a83118a70fe24c1ce88d5f0bd3453c0970" }, + "gitsigns.nvim": { "branch": "main", "commit": "7c4faa3540d0781a28588cafbd4dd187a28ac6e3" }, "lazy.nvim": { "branch": "main", "commit": "306a05526ada86a7b30af95c5cc81ffba93fef97" }, - "lazydev.nvim": { "branch": "main", "commit": "5231c62aa83c2f8dc8e7ba957aa77098cda1257d" }, - "mason-lspconfig.nvim": { "branch": "main", "commit": "4cfe411526a7a99c18281135e8b4765ae6330d15" }, - "mason-tool-installer.nvim": { "branch": "main", "commit": "517ef5994ef9d6b738322664d5fdd948f0fdeb46" }, - "mason.nvim": { "branch": "main", "commit": "57e5a8addb8c71fb063ee4acda466c7cf6ad2800" }, - "mini.nvim": { "branch": "main", "commit": "fb4ccfed03c1f0d9db702f93a65cb4c0c6c2832b" }, - "neogit": { "branch": "master", "commit": "d8bf9102692250193b855acd9025a826f1af2729" }, - "neotest": { "branch": "master", "commit": "deadfb1af5ce458742671ad3a013acb9a6b41178" }, - "neotest-vitest": { "branch": "main", "commit": "f01addc6f07b79ef1be5f4297eafbee9e0959018" }, - "nvim-lspconfig": { "branch": "master", "commit": "0b38bc74487e73489624d61396af7805af9cc75f" }, - "nvim-nio": { "branch": "master", "commit": "21f5324bfac14e22ba26553caf69ec76ae8a7662" }, - "nvim-treesitter": { "branch": "main", "commit": "b033ab331ca0bccbd93c3c2b4f886fdfc09abec0" }, - "nvim-ufo": { "branch": "main", "commit": "72d54c31079d38d8dfc5456131b1d0fb5c0264b0" }, - "nvim-web-devicons": { "branch": "master", "commit": "6788013bb9cb784e606ada44206b0e755e4323d7" }, - "oil.nvim": { "branch": "master", "commit": "81b8a91735ad5cd24a6b3137f14a89f19176364f" }, - "opencode.nvim": { "branch": "main", "commit": "364c7336562329f6c901629710070ea6ae256e3b" }, + "lazydev.nvim": { "branch": "main", "commit": "ff2cbcba459b637ec3fd165a2be59b7bbaeedf0d" }, + "mason-lspconfig.nvim": { "branch": "main", "commit": "a676ab7282da8d651e175118bcf54483ca11e46d" }, + "mason-tool-installer.nvim": { "branch": "main", "commit": "443f1ef8b5e6bf47045cb2217b6f748a223cf7dc" }, + "mason.nvim": { "branch": "main", "commit": "44d1e90e1f66e077268191e3ee9d2ac97cc18e65" }, + "mini.nvim": { "branch": "main", "commit": "9990c41f10f54f29a888d13024c9f765037bde23" }, + "neogit": { "branch": "master", "commit": "d3890fc3cdf0859845a86b2be306bba01458df1a" }, + "nvim-lspconfig": { "branch": "master", "commit": "dc2f86d2b66a6e01a98c37cdadd3be3e90f8ab9a" }, + "nvim-treesitter": { "branch": "main", "commit": "2cc172c28e5550e00e6beead4599b1469469c1c7" }, + "nvim-ufo": { "branch": "main", "commit": "ab3eb124062422d276fae49e0dd63b3ad1062cfc" }, + "nvim-web-devicons": { "branch": "master", "commit": "d7462543c9e366c0d196c7f67a945eaaf5d99414" }, + "oil.nvim": { "branch": "master", "commit": "0fcc83805ad11cf714a949c98c605ed717e0b83e" }, + "opencode.nvim": { "branch": "main", "commit": "8804ffb81f9784dcd0e9af43a2068fb55282c4dd" }, "orng.nvim": { "branch": "main", "commit": "bbe4c260ffebe4f80968273c9fab6fcb672bffb3" }, - "overseer.nvim": { "branch": "master", "commit": "5828bdbd86677497613033c142f0a8624489216f" }, "plenary.nvim": { "branch": "master", "commit": "b9fd5226c2f76c951fc8ed5923d85e4de065e509" }, "promise-async": { "branch": "main", "commit": "119e8961014c9bfaf1487bf3c2a393d254f337e2" }, - "snacks.nvim": { "branch": "main", "commit": "fe7cfe9800a182274d0f868a74b7263b8c0c020b" }, + "snacks.nvim": { "branch": "main", "commit": "a049339328e2599ad6e85a69fa034ac501e921b2" }, "telescope-fzf-native.nvim": { "branch": "main", "commit": "6fea601bd2b694c6f2ae08a6c6fab14930c60e2c" }, "telescope-ui-select.nvim": { "branch": "master", "commit": "6e51d7da30bd139a6950adf2a47fda6df9fa06d2" }, - "telescope.nvim": { "branch": "master", "commit": "3333a52ff548ba0a68af6d8da1e54f9cd96e9179" }, + "telescope.nvim": { "branch": "master", "commit": "5255aa27c422de944791318024167ad5d40aad20" }, "todo-comments.nvim": { "branch": "main", "commit": "31e3c38ce9b29781e4422fc0322eb0a21f4e8668" }, "trouble.nvim": { "branch": "main", "commit": "bd67efe408d4816e25e8491cc5ad4088e708a69a" }, "which-key.nvim": { "branch": "main", "commit": "3aab2147e74890957785941f0c1ad87d0a44c15a" } diff --git a/nvim/.config/nvim/lua/custom/plugins/alpha.lua b/nvim/.config/nvim/lua/custom/plugins/alpha.lua deleted file mode 100644 index 6681fc1..0000000 --- a/nvim/.config/nvim/lua/custom/plugins/alpha.lua +++ /dev/null @@ -1,11 +0,0 @@ -return { - { - 'goolord/alpha-nvim', - dependencies = { 'nvim-tree/nvim-web-devicons' }, - config = function() - local startify = require 'alpha.themes.startify' - startify.file_icons.provider = 'devicons' - require('alpha').setup(startify.config) - end, - }, -} diff --git a/nvim/.config/nvim/lua/custom/plugins/guess-indent.lua b/nvim/.config/nvim/lua/custom/plugins/guess-indent.lua deleted file mode 100644 index 2d22328..0000000 --- a/nvim/.config/nvim/lua/custom/plugins/guess-indent.lua +++ /dev/null @@ -1,4 +0,0 @@ -return { - -- NOTE: Plugins can be added with a link (or for a github repo: 'owner/repo' link). - 'NMAC427/guess-indent.nvim', -- Detect tabstop and shiftwidth automatically -} diff --git a/nvim/.config/nvim/lua/custom/plugins/kulala.lua b/nvim/.config/nvim/lua/custom/plugins/kulala.lua deleted file mode 100644 index 4ea3b12..0000000 --- a/nvim/.config/nvim/lua/custom/plugins/kulala.lua +++ /dev/null @@ -1,21 +0,0 @@ -return { - 'mistweaverco/kulala.nvim', - keys = { - { 'Rs', desc = 'Send request' }, - { 'Ra', desc = 'Send all requests' }, - { 'Rb', desc = 'Open scratchpad' }, - }, - ft = { 'http', 'rest' }, - config = function(_, opts) - require('kulala').setup { - -- Global headers applied to every request - global_headers = { - ['Authorization'] = 'Bearer {{login.response.body.access_token}}', - ['Content-Type'] = 'application/json', - }, - global_keymaps = true, - global_keymaps_prefix = 'R', - kulala_keymaps_prefix = '', - } - end, -} diff --git a/nvim/.config/nvim/lua/custom/plugins/neotest.lua b/nvim/.config/nvim/lua/custom/plugins/neotest.lua deleted file mode 100644 index db28c77..0000000 --- a/nvim/.config/nvim/lua/custom/plugins/neotest.lua +++ /dev/null @@ -1,20 +0,0 @@ -return { - -- Neotest - { - 'nvim-neotest/neotest', - dependencies = { - 'nvim-neotest/nvim-nio', - 'nvim-lua/plenary.nvim', - 'antoinemadec/FixCursorHold.nvim', - 'nvim-treesitter/nvim-treesitter', - 'marilari88/neotest-vitest', - }, - config = function() - require('neotest').setup { - adapters = { - require 'neotest-vitest', - }, - } - end, - }, -} diff --git a/nvim/.config/nvim/lua/custom/plugins/opencode.lua b/nvim/.config/nvim/lua/custom/plugins/opencode.lua index d55cf2c..f7e80da 100644 --- a/nvim/.config/nvim/lua/custom/plugins/opencode.lua +++ b/nvim/.config/nvim/lua/custom/plugins/opencode.lua @@ -15,33 +15,45 @@ return { -- Required for `opts.events.reload`. vim.o.autoread = true - -- Recommended/example keymaps. - vim.keymap.set({ 'n', 'x' }, '', function() + -- Primary keymaps + vim.keymap.set({ 'n', 'x' }, 'aa', function() require('opencode').ask('@this: ', { submit = true }) - end, { desc = 'Ask opencode…' }) - vim.keymap.set({ 'n', 'x' }, '', function() + end, { desc = '[A]sk opencode' }) + + vim.keymap.set({ 'n', 'x' }, 'ae', function() require('opencode').select() - end, { desc = 'Execute opencode action…' }) - vim.keymap.set({ 'n', 't' }, '', function() + end, { desc = '[E]xecute opencode action' }) + + vim.keymap.set({ 'n', 't' }, 'at', function() require('opencode').toggle() - end, { desc = 'Toggle opencode' }) + end, { desc = '[T]oggle opencode' }) - vim.keymap.set({ 'n', 'x' }, 'go', function() + -- Add range/selection to opencode context + vim.keymap.set({ 'n', 'x' }, 'ac', function() return require('opencode').operator '@this ' - end, { desc = 'Add range to opencode', expr = true }) - vim.keymap.set('n', 'goo', function() + end, { desc = 'Add to opencode [C]ontext', expr = true }) + + vim.keymap.set('n', 'acc', function() return require('opencode').operator '@this ' .. '_' - end, { desc = 'Add line to opencode', expr = true }) + end, { desc = 'Add line to opencode context', expr = true }) - vim.keymap.set('n', '', function() + -- Scroll opencode window + vim.keymap.set('n', 'au', function() require('opencode').command 'session.half.page.up' - end, { desc = 'Scroll opencode up' }) - vim.keymap.set('n', '', function() - require('opencode').command 'session.half.page.down' - end, { desc = 'Scroll opencode down' }) + end, { desc = 'Scroll opencode [U]p' }) - -- You may want these if you stick with the opinionated "" and "" above — otherwise consider "o…". - vim.keymap.set('n', '+', '', { desc = 'Increment under cursor', noremap = true }) - vim.keymap.set('n', '-', '', { desc = 'Decrement under cursor', noremap = true }) + vim.keymap.set('n', 'ad', function() + require('opencode').command 'session.half.page.down' + end, { desc = 'Scroll opencode [D]own' }) + + -- Focus opencode window + vim.keymap.set('n', 'af', function() + require('opencode').command 'session.focus' + end, { desc = '[F]ocus opencode window' }) + + -- Clear/reset opencode session + vim.keymap.set('n', 'ar', function() + require('opencode').command 'session.clear' + end, { desc = '[R]eset opencode session' }) end, } diff --git a/nvim/.config/nvim/lua/custom/plugins/overseer.lua b/nvim/.config/nvim/lua/custom/plugins/overseer.lua deleted file mode 100644 index faa88d3..0000000 --- a/nvim/.config/nvim/lua/custom/plugins/overseer.lua +++ /dev/null @@ -1,6 +0,0 @@ -return { - 'stevearc/overseer.nvim', - ---@module 'overseer' - ---@type overseer.SetupOpts - opts = {}, -} diff --git a/nvim/.config/nvim/lua/custom/plugins/which-key.lua b/nvim/.config/nvim/lua/custom/plugins/which-key.lua index c149af9..c104372 100644 --- a/nvim/.config/nvim/lua/custom/plugins/which-key.lua +++ b/nvim/.config/nvim/lua/custom/plugins/which-key.lua @@ -45,7 +45,7 @@ return { -- Document existing key chains spec = { - { 'a', group = '[A]ppointedd' }, + { 'a', group = '[A]I (opencode)' }, { 's', group = '[S]earch' }, { 't', group = '[T]oggle' }, { 'h', group = 'Git [H]unk', mode = { 'n', 'v' } }, diff --git a/nvim/.config/nvim/lua/kickstart/plugins/autopairs.lua b/nvim/.config/nvim/lua/kickstart/plugins/autopairs.lua deleted file mode 100644 index 386d392..0000000 --- a/nvim/.config/nvim/lua/kickstart/plugins/autopairs.lua +++ /dev/null @@ -1,8 +0,0 @@ --- autopairs --- https://github.com/windwp/nvim-autopairs - -return { - 'windwp/nvim-autopairs', - event = 'InsertEnter', - opts = {}, -} diff --git a/nvim/.config/nvim/lua/kickstart/plugins/debug.lua b/nvim/.config/nvim/lua/kickstart/plugins/debug.lua deleted file mode 100644 index 8e332bf..0000000 --- a/nvim/.config/nvim/lua/kickstart/plugins/debug.lua +++ /dev/null @@ -1,148 +0,0 @@ --- debug.lua --- --- Shows how to use the DAP plugin to debug your code. --- --- Primarily focused on configuring the debugger for Go, but can --- be extended to other languages as well. That's why it's called --- kickstart.nvim and not kitchen-sink.nvim ;) - -return { - -- NOTE: Yes, you can install new plugins here! - 'mfussenegger/nvim-dap', - -- NOTE: And you can specify dependencies as well - dependencies = { - -- Creates a beautiful debugger UI - 'rcarriga/nvim-dap-ui', - - -- Required dependency for nvim-dap-ui - 'nvim-neotest/nvim-nio', - - -- Installs the debug adapters for you - 'mason-org/mason.nvim', - 'jay-babu/mason-nvim-dap.nvim', - - -- Add your own debuggers here - 'leoluz/nvim-dap-go', - }, - keys = { - -- Basic debugging keymaps, feel free to change to your liking! - { - '', - function() - require('dap').continue() - end, - desc = 'Debug: Start/Continue', - }, - { - '', - function() - require('dap').step_into() - end, - desc = 'Debug: Step Into', - }, - { - '', - function() - require('dap').step_over() - end, - desc = 'Debug: Step Over', - }, - { - '', - function() - require('dap').step_out() - end, - desc = 'Debug: Step Out', - }, - { - 'b', - function() - require('dap').toggle_breakpoint() - end, - desc = 'Debug: Toggle Breakpoint', - }, - { - 'B', - function() - require('dap').set_breakpoint(vim.fn.input 'Breakpoint condition: ') - end, - desc = 'Debug: Set Breakpoint', - }, - -- Toggle to see last session result. Without this, you can't see session output in case of unhandled exception. - { - '', - function() - require('dapui').toggle() - end, - desc = 'Debug: See last session result.', - }, - }, - config = function() - local dap = require 'dap' - local dapui = require 'dapui' - - require('mason-nvim-dap').setup { - -- Makes a best effort to setup the various debuggers with - -- reasonable debug configurations - automatic_installation = true, - - -- You can provide additional configuration to the handlers, - -- see mason-nvim-dap README for more information - handlers = {}, - - -- You'll need to check that you have the required things installed - -- online, please don't ask me how to install them :) - ensure_installed = { - -- Update this to ensure that you have the debuggers for the langs you want - 'delve', - }, - } - - -- Dap UI setup - -- For more information, see |:help nvim-dap-ui| - dapui.setup { - -- Set icons to characters that are more likely to work in every terminal. - -- Feel free to remove or use ones that you like more! :) - -- Don't feel like these are good choices. - icons = { expanded = '▾', collapsed = '▸', current_frame = '*' }, - controls = { - icons = { - pause = '⏸', - play = '▶', - step_into = '⏎', - step_over = '⏭', - step_out = '⏮', - step_back = 'b', - run_last = '▶▶', - terminate = '⏹', - disconnect = '⏏', - }, - }, - } - - -- Change breakpoint icons - -- vim.api.nvim_set_hl(0, 'DapBreak', { fg = '#e51400' }) - -- vim.api.nvim_set_hl(0, 'DapStop', { fg = '#ffcc00' }) - -- local breakpoint_icons = vim.g.have_nerd_font - -- and { Breakpoint = '', BreakpointCondition = '', BreakpointRejected = '', LogPoint = '', Stopped = '' } - -- or { Breakpoint = '●', BreakpointCondition = '⊜', BreakpointRejected = '⊘', LogPoint = '◆', Stopped = '⭔' } - -- for type, icon in pairs(breakpoint_icons) do - -- local tp = 'Dap' .. type - -- local hl = (type == 'Stopped') and 'DapStop' or 'DapBreak' - -- vim.fn.sign_define(tp, { text = icon, texthl = hl, numhl = hl }) - -- end - - dap.listeners.after.event_initialized['dapui_config'] = dapui.open - dap.listeners.before.event_terminated['dapui_config'] = dapui.close - dap.listeners.before.event_exited['dapui_config'] = dapui.close - - -- Install golang specific config - require('dap-go').setup { - delve = { - -- On Windows delve must be run attached or it crashes. - -- See https://github.com/leoluz/nvim-dap-go/blob/main/README.md#configuring - detached = vim.fn.has 'win32' == 0, - }, - } - end, -} diff --git a/nvim/.config/nvim/lua/kickstart/plugins/indent_line.lua b/nvim/.config/nvim/lua/kickstart/plugins/indent_line.lua deleted file mode 100644 index ed7f269..0000000 --- a/nvim/.config/nvim/lua/kickstart/plugins/indent_line.lua +++ /dev/null @@ -1,9 +0,0 @@ -return { - { -- Add indentation guides even on blank lines - 'lukas-reineke/indent-blankline.nvim', - -- Enable `lukas-reineke/indent-blankline.nvim` - -- See `:help ibl` - main = 'ibl', - opts = {}, - }, -} diff --git a/nvim/.config/nvim/lua/kickstart/plugins/lint.lua b/nvim/.config/nvim/lua/kickstart/plugins/lint.lua deleted file mode 100644 index dec42f0..0000000 --- a/nvim/.config/nvim/lua/kickstart/plugins/lint.lua +++ /dev/null @@ -1,60 +0,0 @@ -return { - - { -- Linting - 'mfussenegger/nvim-lint', - event = { 'BufReadPre', 'BufNewFile' }, - config = function() - local lint = require 'lint' - lint.linters_by_ft = { - markdown = { 'markdownlint' }, - } - - -- To allow other plugins to add linters to require('lint').linters_by_ft, - -- instead set linters_by_ft like this: - -- lint.linters_by_ft = lint.linters_by_ft or {} - -- lint.linters_by_ft['markdown'] = { 'markdownlint' } - -- - -- However, note that this will enable a set of default linters, - -- which will cause errors unless these tools are available: - -- { - -- clojure = { "clj-kondo" }, - -- dockerfile = { "hadolint" }, - -- inko = { "inko" }, - -- janet = { "janet" }, - -- json = { "jsonlint" }, - -- markdown = { "vale" }, - -- rst = { "vale" }, - -- ruby = { "ruby" }, - -- terraform = { "tflint" }, - -- text = { "vale" } - -- } - -- - -- You can disable the default linters by setting their filetypes to nil: - -- lint.linters_by_ft['clojure'] = nil - -- lint.linters_by_ft['dockerfile'] = nil - -- lint.linters_by_ft['inko'] = nil - -- lint.linters_by_ft['janet'] = nil - -- lint.linters_by_ft['json'] = nil - -- lint.linters_by_ft['markdown'] = nil - -- lint.linters_by_ft['rst'] = nil - -- lint.linters_by_ft['ruby'] = nil - -- lint.linters_by_ft['terraform'] = nil - -- lint.linters_by_ft['text'] = nil - - -- Create autocommand which carries out the actual linting - -- on the specified events. - local lint_augroup = vim.api.nvim_create_augroup('lint', { clear = true }) - vim.api.nvim_create_autocmd({ 'BufEnter', 'BufWritePost', 'InsertLeave' }, { - group = lint_augroup, - callback = function() - -- Only run the linter in buffers that you can modify in order to - -- avoid superfluous noise, notably within the handy LSP pop-ups that - -- describe the hovered symbol using Markdown. - if vim.bo.modifiable then - lint.try_lint() - end - end, - }) - end, - }, -} diff --git a/nvim/.config/nvim/lua/kickstart/plugins/neo-tree.lua b/nvim/.config/nvim/lua/kickstart/plugins/neo-tree.lua deleted file mode 100644 index c706789..0000000 --- a/nvim/.config/nvim/lua/kickstart/plugins/neo-tree.lua +++ /dev/null @@ -1,25 +0,0 @@ --- Neo-tree is a Neovim plugin to browse the file system --- https://github.com/nvim-neo-tree/neo-tree.nvim - -return { - 'nvim-neo-tree/neo-tree.nvim', - version = '*', - dependencies = { - 'nvim-lua/plenary.nvim', - 'nvim-tree/nvim-web-devicons', -- not strictly required, but recommended - 'MunifTanjim/nui.nvim', - }, - lazy = false, - keys = { - { '\\', ':Neotree reveal', desc = 'NeoTree reveal', silent = true }, - }, - opts = { - filesystem = { - window = { - mappings = { - ['\\'] = 'close_window', - }, - }, - }, - }, -}