diff options
Diffstat (limited to '')
-rw-r--r-- | lua/mngr/init.lua | 2 | ||||
-rw-r--r-- | lua/mngr/menu.lua | 41 | ||||
-rw-r--r-- | lua/mngr/updates.lua | 0 |
3 files changed, 43 insertions, 0 deletions
diff --git a/lua/mngr/init.lua b/lua/mngr/init.lua new file mode 100644 index 0000000..c72f50f --- /dev/null +++ b/lua/mngr/init.lua @@ -0,0 +1,2 @@ +require('mngr.menu') +require('mngr.updates') diff --git a/lua/mngr/menu.lua b/lua/mngr/menu.lua new file mode 100644 index 0000000..9b68236 --- /dev/null +++ b/lua/mngr/menu.lua @@ -0,0 +1,41 @@ +-- custom menu for simpler neovim managment ----------------------------------- +local function genmenu() + local list = {} + local function add(name, plug) + if not plug then + table.insert(list, name) + return + end + if package.loaded[plug] then + table.insert(list, name) + end + end + + add('edit config', nil) + add('update plugins', 'dep') + add('update config', nil) + + return list +end + +local function configmenu() + local list = genmenu() + + vim.ui.select(list, { vpt = 'Config Menu' }, + function(choice) + if choice == 'edit config' then + vim.cmd('e $XDG_CONFIG_HOME/nvim/init.lua') + end + if choice == 'update plugins' then + require('dep').sync() + if package.loaded['nvim-treesitter'] then + vim.cmd('TSUpdate') + end + if package.loaded['mason'] then + require('mason.api.command').MasonUpdate() + end + end + end) +end + +vim.keymap.set('n', '<leader>m', configmenu, {}) diff --git a/lua/mngr/updates.lua b/lua/mngr/updates.lua new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/lua/mngr/updates.lua |