xpm.xplr
xpm.xplr copied to clipboard
Cover "implement a plugin manager"
See: https://github.com/sayanarijit/xplr/issues/443
Checklist:
- [x] The plugin manager will itself be a Lua plugin, to avoid touching the core.
- [x] An interface to manage the plugins interactively, without leaving xplr (with support for auto reload).
- [x] Pre and post install scripts.
- [ ] luarocks support.
- [x] fennel support.
- [x] Custom Lua path.
- [ ] Plugin load time benchmark.
- [x] Ignore plugins that fail to load.
- [x] Debug failures.
- [x] Dependency plugins.
- [ ] Dependency binary validation and installation support.
- [x] As declarative as possible.
- [ ] Display plugin readme.
- [ ] Plugin development utilities (watch, hot reload, inspection etc.)
- [x] Install from any git hosting platform.
the fennel support is now almost perfect(atleast for my usecase, prefered syntax )
example
;;; in my plugins.fnl
(xpm.use_plugin
{
:name "sayanarijit/fzf.xplr"
:setup
(fn []
(local fzf (require :fzf))
(fzf.setup {:mode "default" :key "ctrl-s"})
)
}
)
more examples (my full plugins file) can be found here: https://gitlab.com/Erik.Lundstedt/dotconfigfiles/blob/master/.config/xplr/plugins.fnl
this does however require some setup which allows for all of xplr to use fennel