Compare commits
5 Commits
ceeb4c53ef
...
84305d33fd
| Author | SHA1 | Date |
|---|---|---|
|
|
84305d33fd | |
|
|
24b7227e6f | |
|
|
85fa8f4d1f | |
|
|
f9afe7fa31 | |
|
|
9334d02bcc |
|
|
@ -50,18 +50,34 @@ in {
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
pkg = pkgs.wrapNeovimUnstable config.package config.neovimOptions;
|
pkg = pkgs.wrapNeovimUnstable config.package config.neovimOptions;
|
||||||
|
luaRcContent = config.init.finalContent;
|
||||||
|
inherit (config) extraLuaPackages;
|
||||||
|
neovim-unwrapped = config.package;
|
||||||
|
inherit (neovim-unwrapped.lua.pkgs.luaLib) genLuaPathAbsStr genLuaCPathAbsStr;
|
||||||
|
luaEnv = neovim-unwrapped.lua.withPackages extraLuaPackages;
|
||||||
|
|
||||||
neovimOptions = pkgs.neovimUtils.makeNeovimConfig rec {
|
neovimOptions = {
|
||||||
inherit (config) extraLuaPackages viAlias vimAlias;
|
inherit extraLuaPackages luaRcContent;
|
||||||
|
inherit (config) viAlias vimAlias;
|
||||||
|
|
||||||
customLuaRC = config.init.finalContent;
|
wrapRc = luaRcContent != null;
|
||||||
wrapRc = customLuaRC != null;
|
|
||||||
|
|
||||||
plugins = concatLists [
|
plugins = concatLists [
|
||||||
(map modules.plugin.extract config.plugins)
|
(map modules.plugin.extract config.plugins)
|
||||||
(optional (! isNull config.runtime) config.runtime.package)
|
(optional (! isNull config.runtime) config.runtime.package)
|
||||||
[config.slothPlugin]
|
[config.slothPlugin]
|
||||||
];
|
];
|
||||||
|
|
||||||
|
wrapperArgs = lib.optionals (luaEnv != null) [
|
||||||
|
"--prefix"
|
||||||
|
"LUA_PATH"
|
||||||
|
";"
|
||||||
|
(genLuaPathAbsStr luaEnv)
|
||||||
|
"--prefix"
|
||||||
|
"LUA_CPATH"
|
||||||
|
";"
|
||||||
|
(genLuaCPathAbsStr luaEnv)
|
||||||
|
];
|
||||||
};
|
};
|
||||||
|
|
||||||
neovimPackage = pkg.overrideAttrs (final: super: {
|
neovimPackage = pkg.overrideAttrs (final: super: {
|
||||||
|
|
|
||||||
|
|
@ -57,7 +57,7 @@ in
|
||||||
type = with types; nullOr (either path str);
|
type = with types; nullOr (either path str);
|
||||||
default = null;
|
default = null;
|
||||||
description = ''
|
description = ''
|
||||||
Lua code to call before plugins loaded
|
Lua code to call before loading any plugins or even any sloth-flake calls.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -65,7 +65,7 @@ in
|
||||||
type = with types; nullOr (either path str);
|
type = with types; nullOr (either path str);
|
||||||
default = null;
|
default = null;
|
||||||
description = ''
|
description = ''
|
||||||
Lua code called after init but before import
|
Lua code called after every non-lazy plugin’s init but before loading any plugin.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -73,7 +73,7 @@ in
|
||||||
type = with types; nullOr (either path str);
|
type = with types; nullOr (either path str);
|
||||||
default = null;
|
default = null;
|
||||||
description = ''
|
description = ''
|
||||||
Lua code called after all plugins are loaded
|
Lua code called after all plugins are loaded and configured.
|
||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
@ -90,7 +90,12 @@ in
|
||||||
option = mkOption {
|
option = mkOption {
|
||||||
default = null;
|
default = null;
|
||||||
description = ''
|
description = ''
|
||||||
init.lua configuration
|
init.lua configuration can be a string, a path or attribute set.
|
||||||
|
|
||||||
|
The attribute set form will call sloth-flake for you and load your
|
||||||
|
plugins. It allows you to hook at different moments in the loading
|
||||||
|
process of your plugins: before everything, after all plugins init code
|
||||||
|
is called and after everything is loaded.
|
||||||
'';
|
'';
|
||||||
type = with types; coercedTo (nullOr (oneOf [path str])) coerceToModule self.module;
|
type = with types; coercedTo (nullOr (oneOf [path str])) coerceToModule self.module;
|
||||||
example = ./init.lua;
|
example = ./init.lua;
|
||||||
|
|
|
||||||
|
|
@ -16,8 +16,8 @@ local function describe(dep)
|
||||||
utils.info('Name: %s', dep.name)
|
utils.info('Name: %s', dep.name)
|
||||||
utils.info('Is loaded: %s', yesno(dep.is_loaded))
|
utils.info('Is loaded: %s', yesno(dep.is_loaded))
|
||||||
utils.info('Is lazy: %s', yesno(dep.is_lazy))
|
utils.info('Is lazy: %s', yesno(dep.is_lazy))
|
||||||
utils.info('Has init: %s', yesno(dep.init))
|
utils.info('Has init: %s', yesno(dep.has_init))
|
||||||
utils.info('Has config: %s', yesno(dep.config))
|
utils.info('Has config: %s', yesno(dep.has_config))
|
||||||
utils.info('Dependencies: %s', list(dep.dependency_names))
|
utils.info('Dependencies: %s', list(dep.dependency_names))
|
||||||
utils.info('Filetypes: %s', list(dep.ft))
|
utils.info('Filetypes: %s', list(dep.ft))
|
||||||
utils.info('Commands: %s', list(dep.cmd))
|
utils.info('Commands: %s', list(dep.cmd))
|
||||||
|
|
|
||||||
|
|
@ -38,7 +38,7 @@ return {
|
||||||
local filter_name = args[1] or "all"
|
local filter_name = args[1] or "all"
|
||||||
local filter = filters[filter_name]
|
local filter = filters[filter_name]
|
||||||
if not filter then
|
if not filter then
|
||||||
utils.error([[No Sloth list filter "%s".]], cmd)
|
utils.error([[No Sloth list filter "%s".]], filter_name)
|
||||||
utils.error("Filters are: %s", vim.iter(vim.tbl_keys(filters)):join(', '))
|
utils.error("Filters are: %s", vim.iter(vim.tbl_keys(filters)):join(', '))
|
||||||
return
|
return
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -131,6 +131,14 @@ function M:get_is_loaded()
|
||||||
return self.state >= State.Loaded
|
return self.state >= State.Loaded
|
||||||
end
|
end
|
||||||
|
|
||||||
|
function M:get_has_init()
|
||||||
|
return not not self.values.init
|
||||||
|
end
|
||||||
|
|
||||||
|
function M:get_has_config()
|
||||||
|
return not not self.values.config
|
||||||
|
end
|
||||||
|
|
||||||
function M:get_has_events()
|
function M:get_has_events()
|
||||||
return self.ft or self.events
|
return self.ft or self.events
|
||||||
end
|
end
|
||||||
|
|
|
||||||
|
|
@ -33,7 +33,7 @@ function M.dep_names()
|
||||||
end
|
end
|
||||||
|
|
||||||
function M.dep_names_by(fn)
|
function M.dep_names_by(fn)
|
||||||
return M.deps_iter_by(fn):map(function(v) return v:name() end)
|
return M.deps_iter_by(fn):map(function(v) return v.name end)
|
||||||
end
|
end
|
||||||
|
|
||||||
function M.deps_iter_by(fn)
|
function M.deps_iter_by(fn)
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue