{ "$schema": "http://json-schema.org/schema", "title": "ZLS Config", "description": "Configuration file for the zig language server (ZLS)", "type": "object", "properties": { "enable_snippets": { "description": "Enables snippet completions when the client also supports them", "type": "boolean", "default": "false" }, "enable_ast_check_diagnostics": { "description": "Whether to enable ast-check diagnostics", "type": "boolean", "default": "true" }, "enable_autofix": { "description": "Whether to automatically fix errors on save. Currently supports adding and removing discards.", "type": "boolean", "default": "false" }, "enable_import_embedfile_argument_completions": { "description": "Whether to enable import/embedFile argument completions", "type": "boolean", "default": "false" }, "zig_lib_path": { "description": "Zig library path, e.g. `/path/to/zig/lib/zig`, used to analyze std library imports", "type": "string" }, "zig_exe_path": { "description": "Zig executable path, e.g. `/path/to/zig/zig`, used to run the custom build runner. If `null`, zig is looked up in `PATH`. Will be used to infer the zig standard library path if none is provided", "type": "string" }, "warn_style": { "description": "Enables warnings for style guideline mismatches", "type": "boolean", "default": "false" }, "build_runner_path": { "description": "Path to the `build_runner.zig` file provided by zls. null is equivalent to `${executable_directory}/build_runner.zig`", "type": "string" }, "global_cache_path": { "description": "Path to a directroy that will be used as zig's cache. null is equivalent to `${KnownFloders.Cache}/zls`", "type": "string" }, "enable_semantic_tokens": { "description": "Enables semantic token support when the client also supports it", "type": "boolean", "default": "true" }, "enable_inlay_hints": { "description": "Enables inlay hint support when the client also supports it", "type": "boolean", "default": "false" }, "inlay_hints_show_builtin": { "description": "Enable inlay hints for builtin functions", "type": "boolean", "default": "true" }, "inlay_hints_exclude_single_argument": { "description": "Don't show inlay hints for single argument calls", "type": "boolean", "default": "true" }, "inlay_hints_hide_redundant_param_names": { "description": "Hides inlay hints when parameter name matches the identifier (e.g. foo: foo)", "type": "boolean", "default": "false" }, "inlay_hints_hide_redundant_param_names_last_token": { "description": "Hides inlay hints when parameter name matches the last token of a parameter node (e.g. foo: bar.foo, foo: &foo)", "type": "boolean", "default": "false" }, "operator_completions": { "description": "Enables `*` and `?` operators in completion lists", "type": "boolean", "default": "true" }, "include_at_in_builtins": { "description": "Whether the @ sign should be part of the completion of builtins", "type": "boolean", "default": "false" }, "max_detail_length": { "description": "The detail field of completions is truncated to be no longer than this (in bytes)", "type": "integer", "default": "1048576" }, "skip_std_references": { "description": "When true, skips searching for references in std. Improves lookup speed for functions in user's code. Renaming and go-to-definition will continue to work as is", "type": "boolean", "default": "false" }, "highlight_global_var_declarations": { "description": "Whether to highlight global var declarations", "type": "boolean", "default": "false" }, "use_comptime_interpreter": { "description": "Whether to use the comptime interpreter", "type": "boolean", "default": "false" } } }