From a48fd10c8699c4ae3cd6b4565cf1ebf1d9b38333 Mon Sep 17 00:00:00 2001 From: Mykola Orliuk Date: Sun, 23 Apr 2023 19:33:11 +0200 Subject: [PATCH] lib.generators.toLua: tune comment for noogle use See https://github.com/nix-community/noogle --- lib/generators.nix | 58 ++++++++++++++++++++++++++++------------------ 1 file changed, 36 insertions(+), 22 deletions(-) diff --git a/lib/generators.nix b/lib/generators.nix index 41c2862973f1..9e663abbd57b 100644 --- a/lib/generators.nix +++ b/lib/generators.nix @@ -428,26 +428,37 @@ ${expr "" v} builtins.toJSON v; /* - * Translate a simple Nix expression to Lua representation with occasional - * Lua-inlines that can be construted by mkLuaInline function. - * - * generators.toLua {} { - * cmd = [ "typescript-language-server" "--stdio" ]; - * settings.workspace.library = mkLuaInline ''vim.api.nvim_get_runtime_file("", true)''; - * } - * - *> { - *> ["cmd"] = { - *> "typescript-language-server", - *> "--stdio" - *> }, - *> ["settings"] = { - *> ["workspace"] = { - *> ["library"] = (vim.api.nvim_get_runtime_file("", true)) - *> } - *> } - *> } - */ + Translate a simple Nix expression to Lua representation with occasional + Lua-inlines that can be construted by mkLuaInline function. + + Configuration: + * indent - initial indent. + + Attention: + Regardless of multiline parameter there is no trailing newline. + + Example: + generators.toLua {} + { + cmd = [ "typescript-language-server" "--stdio" ]; + settings.workspace.library = mkLuaInline ''vim.api.nvim_get_runtime_file("", true)''; + } + -> + { + ["cmd"] = { + "typescript-language-server", + "--stdio" + }, + ["settings"] = { + ["workspace"] = { + ["library"] = (vim.api.nvim_get_runtime_file("", true)) + } + } + } + + Type: + toLua :: AttrSet -> Any -> String + */ toLua = { indent ? "" }@args: v: with builtins; let @@ -478,7 +489,10 @@ ${expr "" v} abort "generators.toLua: type ${typeOf v} is unsupported"; /* - * Mark string as Lua expression to be inlined when processed by toLua. - */ + Mark string as Lua expression to be inlined when processed by toLua. + + Type: + mkLuaInline :: String -> AttrSet + */ mkLuaInline = expr: { _type = "lua-inline"; inherit expr; }; }