nix-community.nixvim/modules
Stanislav Asunkin 44849233e0 modules/performance: add ability to byte compile lua configuration files
This commit adds support for byte compiling lua configuration files.
It's enabled by default (if byte compiling is enabled at all) and can be
disabled with `performance.byteCompileLua.configs` toggle.

To implement this feature `extraFiles.<name>.finalSource` internal
read-only option is introduced. `source` option cannot be used because
it's user configurable. In order to access the values of the
`performance.byteCompileLua` options, parent config is added to
specialArgs of extraFiles submodule. Then the usages of `source` option
changed to `finalSource` in all relevant places (filesPlugin and
wrappers).

Added more helpers for various cases of byte compiling:

* `byteCompileLuaFile` byte compiles lua file
* `byteCompileLuaHook` is a setup hook that byte compiles all lua files
* `byteCompileLuaDrv` overrides derivation by adding byteCompileLuaHook
  to it

Added tests to validate that extraFiles specified by various methods are
handled correctly. Added a separate home-manager test, that is intended
to validate that extraFiles propagated to wrapper modules are correctly
byte compiled.
2024-07-31 11:31:40 +00:00
..
misc modules/context: init with isDocs 2024-07-06 11:47:41 +01:00
top-level modules/performance: add ability to byte compile lua configuration files 2024-07-31 11:31:40 +00:00
autocmd.nix modules: avoid setting empty strings to extraConfig* options 2024-07-22 23:18:53 +02:00
clipboard.nix modules/clipboard: use md link in description 2024-06-05 08:04:33 +01:00
colorscheme.nix treewide: Reformat with nixfmt 2024-05-05 22:00:40 +02:00
commands.nix modules/commands: allow commands to be raw lua 2024-05-21 14:27:49 +02:00
default.nix modules/performance: add an option to combine plugins to a single plugin pack 2024-07-24 16:50:50 +02:00
diagnostics.nix modules: avoid setting empty strings to extraConfig* options 2024-07-22 23:18:53 +02:00
doc.nix treewide: Reformat with nixfmt 2024-05-05 22:00:40 +02:00
editorconfig.nix treewide: Reformat with nixfmt 2024-05-05 22:00:40 +02:00
files.nix modules/performance: add ability to byte compile lua configuration files 2024-07-31 11:31:40 +00:00
filetype.nix modules/filetype: ensure that the module does not set empty settings 2024-07-22 11:33:52 +03:00
highlights.nix modules: avoid setting empty strings to extraConfig* options 2024-07-22 23:18:53 +02:00
keymaps.nix modules: avoid setting empty strings to extraConfig* options 2024-07-22 23:18:53 +02:00
lua-loader.nix modules/lua-loader: make enable option nullable 2024-07-21 17:11:50 +03:00
opts.nix modules: avoid setting empty strings to extraConfig* options 2024-07-22 23:18:53 +02:00
output.nix modules/output: refactor config generation 2024-07-22 23:18:53 +02:00
performance.nix modules/performance: add ability to byte compile lua configuration files 2024-07-31 11:31:40 +00:00
plugins.nix treewide: Reformat with nixfmt 2024-05-05 22:00:40 +02:00