diff --git a/.config/nvim/lazy-lock.json b/.config/nvim/lazy-lock.json index e7c5699..84108c9 100644 --- a/.config/nvim/lazy-lock.json +++ b/.config/nvim/lazy-lock.json @@ -2,6 +2,7 @@ "Comment.nvim": { "branch": "master", "commit": "e30b7f2008e52442154b66f7c519bfd2f1e32acb" }, "LuaSnip": { "branch": "master", "commit": "ce0a05ab4e2839e1c48d072c5236cce846a387bc" }, "alpha-nvim": { "branch": "main", "commit": "41283fb402713fc8b327e60907f74e46166f4cfd" }, + "auto-save.nvim": { "branch": "main", "commit": "5fe9ab0c42f0457f2a973e814a6352b8eeb04730" }, "auto-session": { "branch": "main", "commit": "08c279882d4117a3e6ade1a014f7cf4af7c34fec" }, "awesome-vim-colorschemes": { "branch": "master", "commit": "ae5e02298c8de6a5aa98fe4d29a21874cfcc3619" }, "bluloco.nvim": { "branch": "main", "commit": "07f4b5cca8cfe31aad69ab5c1be0f6a0715a8d2e" }, @@ -33,6 +34,7 @@ "mason.nvim": { "branch": "main", "commit": "e2f7f9044ec30067bc11800a9e266664b88cda22" }, "material.nvim": { "branch": "main", "commit": "b5d0ff3ad37ba00cea3dc3dce0b0f555b481c6f4" }, "min-theme.nvim": { "branch": "main", "commit": "23ea3e1dd9e281973b4732cea0968f6d2ab72c47" }, + "mini.nvim": { "branch": "main", "commit": "db52ea9a1fd5183bb15f557db3fd6e504099bf06" }, "neo-tree.nvim": { "branch": "v3.x", "commit": "29f7c215332ba95e470811c380ddbce2cebe2af4" }, "neogit": { "branch": "master", "commit": "af1d8d88f426a4da63c913f3b81a37350dbe8d02" }, "neovim": { "branch": "main", "commit": "9e4320d0bab7f261921d6af7d1c1bbc1a1e3dc67" }, @@ -67,4 +69,4 @@ "vim-repeat": { "branch": "master", "commit": "65846025c15494983dafe5e3b46c8f88ab2e9635" }, "vim-tmux-navigator": { "branch": "master", "commit": "5b3c701686fb4e6629c100ed32e827edf8dad01e" }, "vim-wakatime": { "branch": "master", "commit": "3cb40867cb5a3120f9bef76eff88edc7f1dc1a23" } -} \ No newline at end of file +} diff --git a/.config/nvim/lua/custom/plugins/utility.lua b/.config/nvim/lua/custom/plugins/utility.lua index 4951f05..79982b4 100644 --- a/.config/nvim/lua/custom/plugins/utility.lua +++ b/.config/nvim/lua/custom/plugins/utility.lua @@ -1,4 +1,28 @@ return { + { + 'okuuva/auto-save.nvim', + cmd = 'ASToggle', -- optional for lazy loading on command + event = { 'InsertLeave', 'TextChanged' }, + opts = { + execution_message = { enabled = false }, + condition = function(buf) + local excluded_ft = {} + + if vim.fn.getbufvar(buf, '&buftype') ~= '' then + return false + end + + local filetype = vim.fn.getbufvar(buf, '&filetype') + for _, ft in ipairs(excluded_ft) do + if ft == filetype then + return false + end + end + + return true + end, + }, + }, { 'rmagatti/auto-session', config = function() @@ -52,4 +76,16 @@ return { -- Spectre has no undo, so it should be rarely used, -- which is why no keybindings are defined { 'nvim-pack/nvim-spectre' }, + { + 'echasnovski/mini.nvim', + version = false, + config = function() + vim.keymap.set('n', 'Q', function() + if vim.bo.modified then + vim.cmd.write() + end + require('mini.bufremove').delete(0) + end, { desc = '[Q]uit Buffer' }) + end, + }, }