From 63feeb9f369fc6176e85c1c2d8fcc863caad1946 Mon Sep 17 00:00:00 2001 From: Robert Günzler Date: Tue, 10 Feb 2026 12:32:48 +0100 Subject: start new MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: Robert Günzler --- .config/nvim/lua/config/lazy.lua | 63 ++++++++++++++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .config/nvim/lua/config/lazy.lua (limited to '.config/nvim/lua/config/lazy.lua') diff --git a/.config/nvim/lua/config/lazy.lua b/.config/nvim/lua/config/lazy.lua new file mode 100644 index 0000000..5f859f0 --- /dev/null +++ b/.config/nvim/lua/config/lazy.lua @@ -0,0 +1,63 @@ +local lazypath = vim.fn.stdpath('data') .. '/lazy/lazy.nvim' +if not (vim.uv or vim.loop).fs_stat(lazypath) then + local lazyrepo = 'https://github.com/folke/lazy.nvim.git' + local out = vim.fn.system({'git', 'clone', '--filter=blob:none', '--branch=stable', lazyrepo, lazypath}) + if vim.v.shell_error ~= 0 then + vim.api.nvim_echo({ + {'Failed to clone lazy.nvim:\n', 'ErrorMsg'}, + {out, 'WarningMsg'}, + {'\nPress any key to exit...'}, + }, true, {}) + vi.fn.getchar() -- let user ack + os.exit(1) + end +end + +vim.opt.rtp:prepend(lazypath) + +vim.g.mapleader = " " +vim.g.maplocalleader = "\\" + +require('lazy').setup({ + -- load plugin specs from ./plugins + spec = { { import = 'plugins' } }, + -- colorscheme for installing plugins + install = { colorscheme = { 'default' } }, + -- automatically check for plugin updates + checker = { + enabled = true, + frequency = (3600 * 24 * 3), -- 3 days + }, +}) + +vim.keymap.set({'n'}, 'l', '', { desc = 'lazy' }) +vim.keymap.set({'n'}, 'lz', 'Lazy', { desc = 'lazy: open ui' }) +vim.keymap.set({'n'}, 'ln', function() + local pname = 'TODO' + local ppath = vim.fn.stdpath('config') .. '/lua/plugins' + + vim.ui.input({ prompt = 'Plugin name: ' }, function(input) + pname = input + end) + + vim.cmd.cd(ppath) + + vim.fn.setreg('a', [[return { + { + '$name', + cmd = {'$cmd'}, + opts = {$opts}, + keys = { + { mode = {'n'}, '$lhs', '$rhs', desc = '$desc' }, + }, + } +}]]) + + local buf = vim.api.nvim_create_buf(true, false) + vim.api.nvim_buf_set_name(buf, pname .. '.lua') + vim.api.nvim_set_option_value('filetype', 'lua', { buf = buf }) + vim.api.nvim_win_set_buf(0, buf) + + require('luasnip.extras.otf').on_the_fly('a') + +end, { desc = 'lazy: new plugin' }) -- cgit 1.4.1