diff --git a/lua/plugins/telescope-project.lua b/lua/plugins/telescope-project.lua deleted file mode 100644 index e86623e..0000000 --- a/lua/plugins/telescope-project.lua +++ /dev/null @@ -1,17 +0,0 @@ -return { - 'nvim-telescope/telescope-project.nvim', - dependencies = { - 'nvim-telescope/telescope.nvim' - }, - config = function() - require 'telescope'.load_extension('project') - end, - keys = { - { - 'p', - function() - require 'telescope'.extensions.project.project {} - end - } - } -} diff --git a/lua/plugins/workspaces.lua b/lua/plugins/workspaces.lua new file mode 100644 index 0000000..adce631 --- /dev/null +++ b/lua/plugins/workspaces.lua @@ -0,0 +1,45 @@ +return { + 'natecraddock/workspaces.nvim', + config = function() + require('workspaces').setup() + end, + branch = 'master', + keys = { + { + 'p', + function() + local workspaces = require('workspaces') + local fzf_lua = require('fzf-lua') + fzf_lua.fzf_exec(function(cb) + local results = workspaces.get() + for _, e in ipairs(results) do + cb(e['name']) + end + cb() + end, + { + actions = { + ['default'] = { + function(selected) + workspaces.open(selected[1]) + fzf_lua.git_files() + end, + }, + ['ctrl-d'] = { + function(selected) + workspaces.remove(selected[1]) + end, + fzf_lua.actions.resume + }, + ['ctrl-a'] = { + function() + workspaces.add() + end, + fzf_lua.actions.resume + } + } + }) + end + } + } +}