yazi: Assert plugin/flavor structure and warn about plugin/flavor suffix

- Always append suffix `.yazi` to plugin's and flavor's attribute names.
- Warn if the attribute names already have the suffix.
- Assert that plugin's and flavor's values point to directories
  containing an `init.lua` file.
This commit is contained in:
lordkekz 2024-06-05 21:24:18 +02:00 committed by Robert Helgesson
parent 09bc5c5949
commit 16f86c94ce
No known key found for this signature in database
GPG key ID: 96E745BD17AA17ED
3 changed files with 66 additions and 43 deletions

View file

@ -71,10 +71,21 @@
};
initLua = ./init.lua;
plugins = {
"test" = ./plugin;
"another-test" = ./plugin;
testplugin = ./plugin;
## Produces warning
#"plugin-with-suffix.yazi" = ./plugin;
## Fails assertion
#single-file-plugin = ./plugin/init.lua;
#empty-dir-plugin = ./empty;
};
flavors = {
testflavor = ./flavor;
## Produces warning
#"flavor-with-suffix.yazi" = ./flavor;
## Fails assertion
#single-file-flavor = ./flavor/init.lua;
#empty-dir-flavor = ./empty;
};
flavors = { "test.yazi" = ./flavor; };
};
test.stubs.yazi = { };
@ -88,11 +99,9 @@
${./theme-expected.toml}
assertFileContent home-files/.config/yazi/init.lua \
${./init.lua}
assertFileContent home-files/.config/yazi/plugins/test.yazi/init.lua \
assertFileContent home-files/.config/yazi/plugins/testplugin.yazi/init.lua \
${./plugin/init.lua}
assertFileContent home-files/.config/yazi/plugins/anotherTest.yazi/init.lua \
${./plugin/init.lua}
assertFileContent home-files/.config/yazi/flavors/test.yazi/init.lua \
assertFileContent home-files/.config/yazi/flavors/testflavor.yazi/init.lua \
${./flavor/init.lua}
'';
}