diff --git a/tests/test-sources/plugins/lsp/language-servers/lua-ls.nix b/tests/test-sources/plugins/lsp/language-servers/lua-ls.nix new file mode 100644 index 00000000..3af04541 --- /dev/null +++ b/tests/test-sources/plugins/lsp/language-servers/lua-ls.nix @@ -0,0 +1,285 @@ +{ + defaults = { + plugins.lsp = { + enable = true; + + servers.lua-ls = { + enable = true; + + settings = { + addonManager = { + enable = true; + }; + completion = { + autoRequire = true; + callSnippet = "Disable"; + displayContext = 0; + enable = true; + keywordSnippet = "Replace"; + postfix = "@"; + requireSeparator = "."; + showParams = true; + showWord = "Fallback"; + workspaceWord = true; + }; + diagnostics = { + disable = [ ]; + disableScheme = [ "git" ]; + enable = true; + globals = [ ]; + groupFileStatus = { + ambiguity = "Fallback"; + await = "Fallback"; + codestyle = "Fallback"; + duplicate = "Fallback"; + global = "Fallback"; + luadoc = "Fallback"; + redefined = "Fallback"; + strict = "Fallback"; + strong = "Fallback"; + type-check = "Fallback"; + unbalanced = "Fallback"; + unused = "Fallback"; + }; + groupSeverity = { + ambiguity = "Fallback"; + await = "Fallback"; + codestyle = "Fallback"; + duplicate = "Fallback"; + global = "Fallback"; + luadoc = "Fallback"; + redefined = "Fallback"; + strict = "Fallback"; + strong = "Fallback"; + type-check = "Fallback"; + unbalanced = "Fallback"; + unused = "Fallback"; + }; + ignoredFiles = "Opened"; + libraryFiles = "Opened"; + neededFileStatus = { + ambiguity-1 = "Any"; + assign-type-mismatch = "Opened"; + await-in-sync = "None"; + cast-local-type = "Opened"; + cast-type-mismatch = "Any"; + circle-doc-class = "Any"; + close-non-object = "Any"; + code-after-break = "Opened"; + codestyle-check = "None"; + count-down-loop = "Any"; + deprecated = "Any"; + different-requires = "Any"; + discard-returns = "Any"; + doc-field-no-class = "Any"; + duplicate-doc-alias = "Any"; + duplicate-doc-field = "Any"; + duplicate-doc-param = "Any"; + duplicate-index = "Any"; + duplicate-set-field = "Any"; + empty-block = "Opened"; + global-in-nil-env = "Any"; + lowercase-global = "Any"; + missing-parameter = "Any"; + missing-return = "Any"; + missing-return-value = "Any"; + need-check-nil = "Opened"; + newfield-call = "Any"; + newline-call = "Any"; + no-unknown = "None"; + not-yieldable = "None"; + param-type-mismatch = "Opened"; + redefined-local = "Opened"; + redundant-parameter = "Any"; + redundant-return = "Opened"; + redundant-return-value = "Any"; + redundant-value = "Any"; + return-type-mismatch = "Opened"; + spell-check = "None"; + trailing-space = "Opened"; + unbalanced-assignments = "Any"; + undefined-doc-class = "Any"; + undefined-doc-name = "Any"; + undefined-doc-param = "Any"; + undefined-env-child = "Any"; + undefined-field = "Opened"; + undefined-global = "Any"; + unknown-cast-variable = "Any"; + unknown-diag-code = "Any"; + unknown-operator = "Any"; + unreachable-code = "Opened"; + unused-function = "Opened"; + unused-label = "Opened"; + unused-local = "Opened"; + unused-vararg = "Opened"; + }; + severity = { + ambiguity-1 = "Warning"; + assign-type-mismatch = "Warning"; + await-in-sync = "Warning"; + cast-local-type = "Warning"; + cast-type-mismatch = "Warning"; + circle-doc-class = "Warning"; + close-non-object = "Warning"; + code-after-break = "Hint"; + codestyle-check = "Warning"; + count-down-loop = "Warning"; + deprecated = "Warning"; + different-requires = "Warning"; + discard-returns = "Warning"; + doc-field-no-class = "Warning"; + duplicate-doc-alias = "Warning"; + duplicate-doc-field = "Warning"; + duplicate-doc-param = "Warning"; + duplicate-index = "Warning"; + duplicate-set-field = "Warning"; + empty-block = "Hint"; + global-in-nil-env = "Warning"; + lowercase-global = "Information"; + missing-parameter = "Warning"; + missing-return = "Warning"; + missing-return-value = "Warning"; + need-check-nil = "Warning"; + newfield-call = "Warning"; + newline-call = "Warning"; + no-unknown = "Warning"; + not-yieldable = "Warning"; + param-type-mismatch = "Warning"; + redefined-local = "Hint"; + redundant-parameter = "Warning"; + redundant-return = "Hint"; + redundant-return-value = "Warning"; + redundant-value = "Warning"; + return-type-mismatch = "Warning"; + spell-check = "Information"; + trailing-space = "Hint"; + unbalanced-assignments = "Warning"; + undefined-doc-class = "Warning"; + undefined-doc-name = "Warning"; + undefined-doc-param = "Warning"; + undefined-env-child = "Information"; + undefined-field = "Warning"; + undefined-global = "Warning"; + unknown-cast-variable = "Warning"; + unknown-diag-code = "Warning"; + unknown-operator = "Warning"; + unreachable-code = "Hint"; + unused-function = "Hint"; + unused-label = "Hint"; + unused-local = "Hint"; + unused-vararg = "Hint"; + }; + unusedLocalExclude = [ ]; + workspaceDelay = 3000; + workspaceEvent = "OnSave"; + workspaceRate = 100; + }; + doc = { + packageName = [ ]; + privateName = [ ]; + protectedName = [ ]; + }; + format = { + defaultConfig = { }; + enable = true; + }; + hint = { + arrayIndex = "Auto"; + await = true; + enable = false; + paramName = "All"; + paramType = true; + semicolon = "SameLine"; + setType = false; + }; + hover = { + enable = true; + enumsLimit = 5; + expandAlias = true; + previewFields = 50; + viewNumber = true; + viewString = true; + viewStringMax = 1000; + }; + misc = { + parameters = [ ]; + executablePath = ""; + }; + runtime = { + builtin = { + basic = "default"; + bit = "default"; + bit32 = "default"; + builtin = "default"; + coroutine = "default"; + debug = "default"; + ffi = "default"; + io = "default"; + jit = "default"; + math = "default"; + os = "default"; + package = "default"; + string = "default"; + table = "default"; + "table.clear" = "default"; + "table.new" = "default"; + utf8 = "default"; + }; + fileEncoding = "utf8"; + meta = "$\{version} $\{language} $\{encoding}"; + nonstandardSymbol = [ ]; + path = [ + "?.lua" + "?/init.lua" + ]; + pathStrict = false; + plugin = ""; + pluginArgs = [ ]; + special = { }; + unicodeName = false; + version = "Lua 5.4"; + }; + semantic = { + annotation = true; + enable = true; + keyword = false; + variable = true; + }; + signatureHelp = { + enable = true; + }; + spell = { + dict = [ ]; + }; + telemetry = { + enable = null; + }; + type = { + castNumberToInteger = false; + weakNilCheck = false; + weakUnionCheck = false; + }; + window = { + progressBar = true; + statusBar = true; + }; + workspace = { + checkThirdParty = true; + ignoreDir = [ ".vscode" ]; + ignoreSubmodules = true; + library = [ ]; + maxPreload = 5000; + preloadFileSize = 500; + supportScheme = [ + "file" + "untitled" + "git" + ]; + useGitIgnore = true; + userThirdParty = [ ]; + }; + }; + }; + }; + }; +}