dotfiles/private_dot_config/nvim/plugged/coc.nvim/data/schema.json
array-in-a-matrix a7aa42621c added
2022-01-08 17:30:13 -05:00

1472 lines
47 KiB
JSON

{
"$schema": "http://json-schema.org/draft-07/schema#",
"description": "Configuration file for coc.nvim",
"additionalProperties": false,
"definitions": {
"float": {
"type": "object",
"properties": {
"border": {
"type": "boolean",
"default": false,
"description": "Set to true to use borders."
},
"highlight": {
"type": "string",
"default": "CocFloating",
"description": "Background highlight group of float window."
},
"title": {
"type": "string",
"default": "",
"description": "Title used by float window."
},
"borderhighlight": {
"type": "string",
"default": "CocFloating",
"description": "Border highlight group of float window."
},
"close": {
"type": "boolean",
"default": false,
"description": "Set to true to draw close icon"
},
"maxWidth": {
"type": "integer",
"description": "Maximum width of float window, include border."
},
"maxHeight": {
"type": "integer",
"minimum": 2,
"description": "Maximum height of float window, include border."
},
"focusable": {
"type": "boolean",
"default": true,
"description": "Enable focus by user actions (wincmds, mouse events), neovim only."
},
"shadow": {
"type": "boolean",
"default": false,
"description": "Drop shadow effect by blending with the background, neovim only."
},
"winblend": {
"type": "integer",
"default": 0,
"minimum": 0,
"maximum": 100,
"description": "Enables pseudo-transparency by set 'winblend' option of window, neovim only."
}
}
},
"languageServerBase": {
"type": "object",
"properties": {
"enable": {
"type": "boolean",
"default": true
},
"cwd": {
"type": "string",
"default": "",
"description": "Working directory of languageserver, absolute path or relative to workspace folder, use workspace root by default"
},
"disableDynamicRegister": {
"type": "boolean",
"default": false,
"description": "Disable dynamic registerCapability feature for this languageserver to avoid duplicated feature regstration."
},
"disableWorkspaceFolders": {
"type": "boolean",
"default": false,
"description": "Disable workspaceFolders feature for this languageserver."
},
"disableSnippetCompletion": {
"type": "boolean",
"default": false,
"description": "Disable completion snippet feature for this languageserver, the languageserver may not respect it."
},
"disableDiagnostics": {
"type": "boolean",
"default": false,
"description": "Disable handle diagnostics for this languageserver."
},
"disableCompletion": {
"type": "boolean",
"default": false,
"description": "Disable completion feature for this languageserver."
},
"formatterPriority": {
"type": "number",
"default": 0,
"description": "Priority of this languageserver's fomatter."
},
"env": {
"type": "object",
"default": null,
"description": "Environment variables for child process."
},
"stdioEncoding": {
"type": "string",
"default": "utf8",
"description": "Encoding used for stdio of child process."
},
"rootPatterns": {
"type": "array",
"default": [],
"description": "Root patterns used to resolve rootPath from current file, default to workspace root",
"items": {
"type": "string"
}
},
"requireRootPattern": {
"type": "boolean",
"default": false,
"description": "If true, doesn't start server when root pattern not found."
},
"ignoredRootPaths": {
"type": "array",
"default": [],
"description": "Absolute root paths that language server should not use as rootPath, higher priority than rootPatterns.",
"items": {
"type": "string"
}
},
"filetypes": {
"type": "array",
"default": [],
"description": "Supported filetypes, add * in array for all filetypes.",
"items": {
"type": "string"
}
},
"additionalSchemes": {
"type": "array",
"default": [],
"description": "Additional uri schemes, default schemes including file & untitled.",
"items": {
"type": "string"
}
},
"revealOutputChannelOn": {
"type": "string",
"default": "never",
"description": "Configure message level to show the output channel buffer",
"enum": ["info", "warn", "error", "never"]
},
"progressOnInitialization": {
"type": "boolean",
"default": true,
"description": "Enable progress report on languageserver initialize."
},
"initializationOptions": {
"type": "object",
"default": {},
"description": "initializationOptions passed to languageserver"
},
"settings": {
"type": "object",
"default": {},
"description": "Settings of languageserver"
},
"trace.server": {
"type": "string",
"default": "off",
"enum": ["off", "messages", "verbose"],
"description": "Trace level of communication between server and client"
}
}
},
"languageServerSocket": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/languageServerBase" }],
"required": ["port", "filetypes"],
"additionalProperties": false,
"properties": {
"port": {
"type": "integer",
"description": "Port number of socket server"
},
"host": {
"type": "string",
"default": "127.0.0.1",
"description": "Host of server"
},
"disableWorkspaceFolders": {},
"disableSnippetCompletion": {},
"disableDynamicRegister": {},
"disableDiagnostics": {},
"disableCompletion": {},
"formatterPriority": {},
"enable": {},
"rootPatterns": {},
"requireRootPattern": {},
"ignoredRootPaths": {},
"filetypes": {},
"additionalSchemes": {},
"revealOutputChannelOn": {},
"progressOnInitialization": {},
"initializationOptions": {},
"settings": {},
"stdioEncoding": {},
"trace.server": {}
}
},
"languageServerModule": {
"type": "object",
"allOf": [{ "$ref": "#/definitions/languageServerBase" }],
"required": ["module", "filetypes"],
"additionalProperties": false,
"properties": {
"module": {
"type": "string",
"default": "",
"description": "Absolute path of javascript file, should works in IPC mode"
},
"args": {
"type": "array",
"default": [],
"description": "Extra arguments of module",
"items": {
"type": "string"
}
},
"runtime": {
"type": "string",
"default": "",
"description": "Absolute path of node runtime."
},
"execArgv": {
"type": "array",
"default": [],
"description": "Argv passed to node when using module, normally used for debugging, ex: [\"--nolazy\", \"--inspect-brk=6045\"]",
"items": {
"type": "string"
}
},
"transport": {
"type": "string",
"default": "ipc",
"description": "Transport kind used by server, could be 'ipc', 'stdio', 'socket' and 'pipe'",
"enum": ["ipc", "stdio", "socket", "pipe"]
},
"transportPort": {
"type": "integer",
"description": "Port number used when transport is 'socket'"
},
"cwd": {},
"env": {},
"enable": {},
"disableDynamicRegister": {},
"disableWorkspaceFolders": {},
"disableSnippetCompletion": {},
"disableDiagnostics": {},
"disableCompletion": {},
"formatterPriority": {},
"rootPatterns": {},
"requireRootPattern": {},
"ignoredRootPaths": {},
"filetypes": {},
"additionalSchemes": {},
"revealOutputChannelOn": {},
"progressOnInitialization": {},
"initializationOptions": {},
"stdioEncoding": {},
"settings": {},
"trace.server": {}
}
},
"languageServerCommand": {
"type": "object",
"required": ["command", "filetypes"],
"allOf": [{ "$ref": "#/definitions/languageServerBase" }],
"additionalProperties": false,
"properties": {
"command": {
"type": "string",
"default": "",
"description": "Executable in $PATH to start languageserver, should not used with module"
},
"args": {
"type": "array",
"default": [],
"description": "Arguments of command",
"items": {
"type": "string"
}
},
"detached": {
"type": "boolean",
"default": false,
"description": "Detach the languageserver process"
},
"shell": {
"type": "boolean",
"default": false,
"description": "Use shell for process"
},
"cwd": {},
"env": {},
"enable": {},
"disableDynamicRegister": {},
"disableWorkspaceFolders": {},
"disableSnippetCompletion": {},
"disableDiagnostics": {},
"disableCompletion": {},
"formatterPriority": {},
"rootPatterns": {},
"requireRootPattern": {},
"ignoredRootPaths": {},
"filetypes": {},
"additionalSchemes": {},
"revealOutputChannelOn": {},
"progressOnInitialization": {},
"initializationOptions": {},
"stdioEncoding": {},
"settings": {},
"trace.server": {}
}
}
},
"properties": {
"http.proxy": {
"type": "string",
"default": "",
"pattern": "^https?://([^:]*(:[^@]*)?@)?([^:]+|\\[[:0-9a-fA-F]+\\])(:\\d+)?/?$|^$",
"description": "The proxy setting to use. If not set, will be inherited from the `http_proxy` and `https_proxy` environment variables."
},
"http.proxyStrictSSL": {
"type": "boolean",
"description": "Controls whether the proxy server certificate should be verified against the list of supplied CAs",
"default": true
},
"http.proxyAuthorization": {
"type": ["null", "string"],
"description": "The value to send as the `Proxy-Authorization` header for every network request.",
"default": null
},
"http.proxyCA": {
"type": "string",
"description": "CA (file) to use as Certificate Authority",
"default": null
},
"npm.binPath": {
"type": "string",
"default": "npm",
"description": "Command or absolute path to npm or yarn."
},
"suggest.enablePreselect": {
"type": "boolean",
"description": "Enable preselect feature of LSP, only works on neovim",
"default": false
},
"suggest.enablePreview": {
"type": "boolean",
"description": "Add preview option to completeopt, default: false.",
"default": false
},
"suggest.floatEnable": {
"type": "boolean",
"description": "Enable floating window for documentation when possible.",
"default": true
},
"suggest.floatConfig": {
"type": "object",
"description": "Configure style of documentation window for complete item.",
"allOf": [{ "$ref": "#/definitions/float" }],
"additionalProperties": false,
"properties": {
"border": {},
"highlight": {},
"borderhighlight": {},
"maxWidth": {},
"winblend": {},
"focusable": {},
"shadow": {}
}
},
"suggest.labelMaxLength": {
"type": "number",
"description": "Max length of abbr that shown as label of complete item.",
"default": 200
},
"suggest.detailMaxLength": {
"type": "number",
"description": "Max length of detail that should be shown in popup menu.",
"default": 100
},
"suggest.detailField": {
"type": "string",
"default": "preview",
"description": "Where to show the detail text of CompleteItem from LS.",
"enum": ["abbr", "menu", "preview"]
},
"suggest.autoTrigger": {
"type": "string",
"default": "always",
"description": "How should completion be triggered",
"enum": ["always", "trigger", "none"]
},
"suggest.languageSourcePriority": {
"type": "number",
"default": 99,
"description": "Priority of language sources."
},
"suggest.numberSelect": {
"type": "boolean",
"description": "Input number to select complete item, works on neovim >= 0.4.0 only.",
"default": false
},
"suggest.disableKind": {
"type": "boolean",
"description": "Remove kind field from vim complete item.",
"default": false
},
"suggest.disableMenu": {
"type": "boolean",
"description": "Remove menu field from vim complete item.",
"default": false
},
"suggest.disableMenuShortcut": {
"type": "boolean",
"description": "Disable shortcut of completion source in menu.",
"default": false
},
"suggest.snippetIndicator": {
"type": "string",
"default": "~",
"description": "The character used in abbr of complete item to indicate the item could be expand as snippet."
},
"suggest.maxCompleteItemCount": {
"type": "number",
"default": 50,
"description": "Maximum number of complete items shown in vim"
},
"suggest.preferCompleteThanJumpPlaceholder": {
"type": "boolean",
"description": "Confirm completion instead of jump to next placeholder when completion is activated.",
"default": false
},
"suggest.fixInsertedWord": {
"type": "boolean",
"description": "Make inserted word replace word characters after cursor position.",
"default": true
},
"suggest.localityBonus": {
"type": "boolean",
"description": "Boost suggestions that appear closer to the cursor position.",
"default": true
},
"suggest.triggerAfterInsertEnter": {
"type": "boolean",
"description": "Trigger completion after InsertEnter, auto trigger should be 'always' to enable this option",
"default": false
},
"suggest.timeout": {
"type": "integer",
"default": 5000,
"minimum": 500,
"maximum": 15000,
"description": "Timeout for completion, in miliseconds."
},
"suggest.minTriggerInputLength": {
"type": "integer",
"default": 1,
"description": "Mininal input length for trigger completion, default 1"
},
"suggest.triggerCompletionWait": {
"type": "integer",
"default": 100,
"minimum": 30,
"maximum": 500,
"description": "Wait time between text change and completion start, cancel completion when text changed during wait."
},
"suggest.echodocSupport": {
"type": "boolean",
"default": false,
"description": "When enabled, add function signature to user_data.signature to support echodoc.vim"
},
"suggest.acceptSuggestionOnCommitCharacter": {
"type": "boolean",
"default": false,
"description": "Controls whether suggestions should be accepted on commit characters. For example, in JavaScript, the semi-colon (`;`) can be a commit character that accepts a suggestion and types that character. Requires CompleteChanged event to work."
},
"suggest.noselect": {
"type": "boolean",
"description": "Not make vim select first item on completion start",
"default": true
},
"suggest.keepCompleteopt": {
"type": "boolean",
"description": "When enabled, completeopt is not overridden, auto completion will be disabled if completeopt doesn't have noinsert and noselect.",
"default": false
},
"suggest.lowPrioritySourceLimit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Max items count for source priority lower than 90."
},
"suggest.highPrioritySourceLimit": {
"type": "integer",
"minimum": 1,
"maximum": 100,
"description": "Max items count for source priority bigger than or equal to 90."
},
"suggest.removeDuplicateItems": {
"type": "boolean",
"description": "Remove completion items with duplicated word for all sources, snippet items are excluded.",
"default": false
},
"suggest.defaultSortMethod": {
"type": "string",
"description": "Default sorting behavior for suggested completion items.",
"default": "length",
"enum": ["length", "alphabetical", "none"]
},
"suggest.snippetsSupport": {
"type": "boolean",
"description": "Set to false to disable snippets support of completion.",
"default": true
},
"suggest.completionItemKindLabels": {
"type": "object",
"default": {},
"description": "Set custom labels to completion items' kinds.",
"properties": {
"text": { "type": "string" },
"method": { "type": "string" },
"function": { "type": "string" },
"constructor": { "type": "string" },
"field": { "type": "string" },
"variable": { "type": "string" },
"class": { "type": "string" },
"interface": { "type": "string" },
"module": { "type": "string" },
"property": { "type": "string" },
"unit": { "type": "string" },
"value": { "type": "string" },
"enum": { "type": "string" },
"keyword": { "type": "string" },
"snippet": { "type": "string" },
"color": { "type": "string" },
"file": { "type": "string" },
"reference": { "type": "string" },
"folder": { "type": "string" },
"enumMember": { "type": "string" },
"constant": { "type": "string" },
"struct": { "type": "string" },
"event": { "type": "string" },
"operator": { "type": "string" },
"typeParameter": { "type": "string" },
"default": { "type": "string" }
},
"additionalProperties": false
},
"suggest.invalidInsertCharacters": {
"type": "array",
"items": {
"type": "string"
},
"description": "Invalid character for strip valid word when inserting text of complete item.",
"default": [" ", "(", "<", "{", "[", "\r", "\n"]
},
"suggest.asciiCharactersOnly": {
"type": "boolean",
"description": "Suggest ASCII characters only",
"default": false
},
"diagnostic.enable": {
"type": "boolean",
"description": "Set to false to disable diagnostic display",
"default": true
},
"diagnostic.highlighLimit": {
"type": "number",
"description": "Limit count for highlighted diagnostics, too many diagnostic highlights could make vim stop responsing",
"default": 1000
},
"diagnostic.autoRefresh": {
"type": "boolean",
"description": "Enable automatically refresh diagnostics, use diagnosticRefresh action when it's disabled.",
"default": true
},
"diagnostic.level": {
"type": "string",
"description": "Used for filter diagnostics by diagnostic severity.",
"default": "hint",
"enum": ["hint", "information", "warning", "error"]
},
"diagnostic.locationlistUpdate": {
"type": "boolean",
"description": "Update locationlist on diagnostics change, only works with locationlist opened by :CocDiagnostics command and first window of associated buffer.",
"default": true
},
"diagnostic.checkCurrentLine": {
"type": "boolean",
"description": "When enabled, show all diagnostics of current line if there are none at the current position.",
"default": false
},
"diagnostic.messageTarget": {
"type": "string",
"description": "Diagnostic message target.",
"default": "float",
"enum": ["echo", "float"]
},
"diagnostic.messageDelay": {
"type": "number",
"description": "How long to wait (in milliseconds) before displaying the diagnostic message with echo or float",
"default": 200
},
"diagnostic.refreshOnInsertMode": {
"type": "boolean",
"description": "Enable diagnostic refresh on insert mode, default false.",
"default": false
},
"diagnostic.displayByAle": {
"type": "boolean",
"description": "Use Ale for display diagnostics in vim, will disable coc for display diagnostics, restart required on change.",
"default": false
},
"diagnostic.virtualText": {
"type": "boolean",
"description": "Use NeoVim virtual text to display diagnostics",
"default": false
},
"diagnostic.virtualTextCurrentLineOnly": {
"type": "boolean",
"description": "Only show virtualText diagnostic on current cursor line",
"default": true
},
"diagnostic.virtualTextPrefix": {
"type": "string",
"description": "The prefix added virtual text diagnostics",
"default": " "
},
"diagnostic.virtualTextLines": {
"type": "number",
"description": "The number of non empty lines from a diagnostic to display",
"default": 3
},
"diagnostic.virtualTextLineSeparator": {
"type": "string",
"description": "The text that will mark a line end from the diagnostic message",
"default": " \\ "
},
"diagnostic.enableSign": {
"type": "boolean",
"default": true,
"description": "Enable signs for diagnostics."
},
"diagnostic.enableHighlightLineNumber": {
"type": "boolean",
"default": true,
"description": "Enable highlighting line numbers for diagnostics, only works with neovim and diagnostic.enableSign is true."
},
"diagnostic.enableMessage": {
"type": "string",
"default": "always",
"description": "When to enable show messages of diagnostics.",
"enum": ["always", "jump", "never"]
},
"diagnostic.highlightOffset": {
"type": "number",
"description": "Offset number of buffer.addHighlight, neovim only.",
"default": 1000
},
"diagnostic.signPriority": {
"type": "number",
"description": "Priority of diagnostic signs, default to 10",
"default": 10
},
"diagnostic.errorSign": {
"type": "string",
"description": "Text of error sign",
"default": ">>"
},
"diagnostic.warningSign": {
"type": "string",
"description": "Text of warning sign",
"default": "⚠"
},
"diagnostic.infoSign": {
"type": "string",
"description": "Text of info sign",
"default": ">>"
},
"diagnostic.hintSign": {
"type": "string",
"description": "Text of hint sign",
"default": ">>"
},
"diagnostic.floatConfig": {
"type": "object",
"description": "Configure float window style of diagnostic message.",
"allOf": [{ "$ref": "#/definitions/float" }],
"additionalProperties": false,
"properties": {
"border": {},
"highlight": {},
"borderhighlight": {},
"title": {},
"close": {},
"maxHeight": {},
"maxWidth": {},
"winblend": {},
"focusable": {},
"shadow": {}
}
},
"diagnostic.filetypeMap": {
"type": "object",
"description": "A map between buffer filetype and the filetype assigned to diagnostics. To syntax highlight diagnostics withs their parent buffer type use `\"default\": \"bufferType\"`",
"default": {}
},
"diagnostic.format": {
"type": "string",
"description": "Define the diagnostic format that shown in float window or echoed, available parts: source, code, severity, message",
"default": "[%source%code] [%severity] %message"
},
"diagnostic.separateRelatedInformationAsDiagnostics": {
"type": "boolean",
"default": false,
"description": "Separate related information as diagnostics."
},
"diagnostic.showUnused": {
"type": "boolean",
"default": true,
"description": "Show diagnostics with unused tag."
},
"diagnostic.showDeprecated": {
"type": "boolean",
"default": true,
"description": "Show diagnostics with deprecated tag."
},
"signature.enable": {
"type": "boolean",
"description": "Enable signature help when trigger character typed, require restart service on change.",
"default": true
},
"signature.triggerSignatureWait": {
"type": "integer",
"default": 500,
"minimum": 200,
"maximum": 1000,
"description": "Timeout for trigger signature help, in miliseconds."
},
"signature.target": {
"type": "string",
"description": "Target of signature help, use float when possible by default.",
"default": "float",
"enum": ["float", "echo"]
},
"signature.floatConfig": {
"type": "object",
"description": "Configure float window style of signature documents.",
"allOf": [{ "$ref": "#/definitions/float" }],
"additionalProperties": false,
"properties": {
"border": {},
"highlight": {},
"borderhighlight": {},
"title": {},
"close": {},
"maxHeight": {},
"maxWidth": {},
"winblend": {},
"focusable": {},
"shadow": {}
}
},
"signature.preferShownAbove": {
"type": "boolean",
"description": "Show signature help float window above cursor when possible, require restart service on change.",
"default": true
},
"signature.hideOnTextChange": {
"type": "boolean",
"description": "Hide signature float window when text changed on insert mode.",
"default": false
},
"codeLens.enable": {
"type": "boolean",
"description": "Enable codeLens feature, require neovim with set virtual text feature.",
"default": false
},
"codeLens.separator": {
"type": "string",
"description": "Separator text for codeLens in virtual text",
"default": "‣"
},
"codeLens.subseparator": {
"type": "string",
"description": "Subseparator between codeLenses in virtual text",
"default": " "
},
"refactor.openCommand": {
"type": "string",
"description": "Open command for refactor window.",
"default": "vsplit"
},
"refactor.saveToFile": {
"type": "boolean",
"description": "Save to file when write refactor buffer with ':noa wa' command, set to false if you want save buffer by yourself.",
"default": true
},
"refactor.beforeContext": {
"type": "number",
"default": 3,
"description": "Print num lines of leading context before each match."
},
"refactor.afterContext": {
"type": "number",
"default": 3,
"description": "Print num lines of trailing context after each match."
},
"hover.target": {
"type": "string",
"description": "Target to show hover information, default is floating window when possible.",
"enum": ["preview", "echo", "float"]
},
"hover.previewMaxHeight": {
"type": "number",
"default": 12,
"description": "Max height of preview window for hover."
},
"hover.floatConfig": {
"type": "object",
"description": "Configure float window style of hover documents.",
"allOf": [{ "$ref": "#/definitions/float" }],
"additionalProperties": false,
"properties": {
"border": {},
"highlight": {},
"borderhighlight": {},
"title": {},
"close": {},
"maxHeight": {},
"maxWidth": {},
"winblend": {},
"focusable": {},
"shadow": {}
}
},
"hover.autoHide": {
"type": "boolean",
"default": true,
"description": "Automatically hide hover float window on CursorMove or InsertEnter."
},
"dialog.maxHeight": {
"type": "number",
"default": 20,
"description": "Maximum height of dialog window."
},
"dialog.maxWidth": {
"type": "number",
"default": 80,
"description": "Maximum width of dialog window."
},
"dialog.confirmKey": {
"type": "string",
"default": "<cr>",
"description": "Confirm key for confirm selection used by menu and picker, you can always use <esc> to cancel."
},
"dialog.pickerButtons": {
"type": "boolean",
"default": true,
"description": "Show buttons for picker dialog window/popup."
},
"dialog.pickerButtonShortcut": {
"type": "boolean",
"default": true,
"description": "Show shortcut in buttons of picker dialog window/popup, used when dialog.pickerButtons is true."
},
"dialog.floatHighlight": {
"type": ["string", "null"],
"default": null,
"description": "Highlight group for dialog window/popup, default to 'CocFloating'"
},
"dialog.floatBorderHighlight": {
"type": ["string", "null"],
"default": null,
"description": "Highlight group for border of dialog window/popup, default to 'CocFloating'"
},
"notification.marginTop": {
"type": "number",
"default": 1,
"description": "Margin top for notification dialog."
},
"notification.marginRight": {
"type": "number",
"default": 1,
"description": "Margin right for notification dialog."
},
"notification.maxWidth": {
"type": "number",
"default": 60,
"description": "Maximum content width of notification dialog."
},
"notification.maxHeight": {
"type": "number",
"default": 10,
"description": "Maximum content height of notification dialog."
},
"notification.highlightGroup": {
"type": "string",
"default": "CocFloating",
"description": "Highlight group of notification dialog."
},
"notification.minProgressWidth": {
"type": "number",
"default": 30,
"description": "Minimum width of progress notification."
},
"workspace.ignoredFiletypes": {
"type": "array",
"default": ["markdown", "log", "txt", "help"],
"description": "Filetypes that should be ignored for resolve workspace folder.",
"items": {
"type": "string"
}
},
"workspace.bottomUpFiletypes": {
"type": "array",
"default": [],
"description": "Filetypes that should have workspace folder should resolved from base directory of file.",
"items": {
"type": "string"
}
},
"workspace.workspaceFolderCheckCwd": {
"type": "boolean",
"default": true,
"description": "Whether the cwd directory should be checked first when resolving workspace folder."
},
"list.indicator": {
"type": "string",
"default": ">",
"description": "The character used as first character in prompt line"
},
"list.alignColumns": {
"type": "boolean",
"default": false,
"description": "Whether to align lists in columns, default: `false`"
},
"list.interactiveDebounceTime": {
"type": "number",
"default": 100,
"description": "Debouce time for input change on interactive mode."
},
"list.height": {
"type": "number",
"default": 10,
"description": "Height of split list window."
},
"list.statusLineSegments": {
"type": ["array", "null"],
"default": [
"%#CocListMode#-- %{get(b:list_status, \"mode\", \"\")} --%*",
"%{get(b:list_status, \"loading\", \"\")}",
"%{get(b:list_status, \"args\", \"\")}",
"(%L/%{get(b:list_status, \"total\", \"\")})",
"%=",
"%#CocListPath# %{get(b:list_status, \"cwd\", \"\")} %l/%L%*"
],
"items": {
"types": "string"
},
"description": "An array of statusline segments that will be used to draw the status line for list windows."
},
"list.signOffset": {
"type": "number",
"default": 900,
"description": "Sign offset of list, should be different from other plugins."
},
"list.selectedSignText": {
"type": "string",
"default": "*",
"description": "Sign text for selected lines."
},
"list.extendedSearchMode": {
"type": "boolean",
"default": true,
"description": "Enable extended search mode which allows multiple search patterns delimited by spaces."
},
"list.limitLines": {
"type": "number",
"default": 30000,
"description": "Limit lines for list buffer."
},
"list.maxPreviewHeight": {
"type": "number",
"default": 12,
"description": "Max height for preview window of list."
},
"list.previewSplitRight": {
"type": "boolean",
"default": false,
"description": "Use vsplit for preview window."
},
"list.matchHighlightGroup": {
"type": "string",
"default": "Search",
"description": "Highlight group used for matched texts in list window."
},
"list.previewHighlightGroup": {
"type": "string",
"default": "Search",
"description": "Highlight group used for highlight the range in preview window."
},
"list.nextKeymap": {
"type": "string",
"default": "<C-j>",
"description": "Key used for select next line on insert mode."
},
"list.previousKeymap": {
"type": "string",
"default": "<C-k>",
"description": "Key used for select previous line on insert mode."
},
"list.normalMappings": {
"type": "object",
"default": {},
"description": "Custom keymappings on normal mode."
},
"list.insertMappings": {
"type": "object",
"default": {},
"description": "Custom keymappings on insert mode."
},
"list.source.diagnostics.includeCode": {
"type": "boolean",
"description": "Whether to show the diagnostic code in the list.",
"default": true
},
"list.source.diagnostics.pathFormat": {
"type": "string",
"description": "Decide how the filepath is shown in the list.",
"enum": ["full", "short", "filename", "hidden"],
"default": "full"
},
"list.source.symbols.excludes": {
"type": "array",
"default": [],
"description": "Patterns of minimatch for filepath to execlude from symbols list.",
"items": {
"type": "string"
}
},
"list.source.outline.ctagsFilestypes": {
"type": "array",
"default": [],
"description": "Filetypes that should use ctags for outline instead of language server.",
"items": {
"type": "string"
}
},
"cursors.cancelKey": {
"type": "string",
"default": "<esc>",
"description": "Key used for cancel cursors session."
},
"cursors.nextKey": {
"type": "string",
"default": "<C-n>",
"description": "Key used for jump to next cursors position. "
},
"cursors.previousKey": {
"type": "string",
"default": "<C-p>",
"description": "Key used for jump to previous cursors position."
},
"tree.closedIcon": {
"type": "string",
"default": "+",
"description": "Closed icon of tree view."
},
"tree.openedIcon": {
"type": "string",
"default": "-",
"description": "Opend icon of tree view."
},
"tree.key.toggleSelection": {
"type": "string",
"default": "<space>",
"description": "Trigger key to select/unselect item"
},
"tree.key.toggle": {
"type": "string",
"default": "t",
"description": "Trigger key to toggle expand state of tree node, does nothing with leaf node."
},
"tree.key.actions": {
"type": "string",
"default": "<tab>",
"description": "Trigger key to invoke actions."
},
"tree.key.collapseAll": {
"type": "string",
"default": "M",
"description": "Trigger key to collapse all tree node."
},
"tree.key.invoke": {
"type": "string",
"default": "<cr>",
"description": "Trigger key to invoke default command of current node or selection."
},
"tree.key.close": {
"type": "string",
"default": "<esc>",
"description": "Trigger key to dispose the tree and close tree window."
},
"tree.key.activeFilter": {
"type": "string",
"default": "f",
"description": "Trigger key active filter."
},
"tree.key.selectNext": {
"type": "string",
"default": "<C-j>",
"description": "Trigger key to select next item during filter."
},
"tree.key.selectPrevious": {
"type": "string",
"default": "<C-k>",
"description": "Trigger key to select previous item during filter."
},
"outline.showLineNumber": {
"type": "boolean",
"default": true,
"description": "Show line number of symbols."
},
"outline.splitCommand": {
"type": "string",
"default": "botright 30vs",
"description": "Window split command used by outline."
},
"outline.followCursor": {
"type": "boolean",
"default": true,
"description": "Reveal item in outline tree on cursor hold."
},
"outline.keepWindow": {
"type": "boolean",
"default": false,
"description": "Jump back to original window after outline is shown."
},
"outline.sortBy": {
"type": "string",
"default": "category",
"description": "Sort method for symbols.",
"enum": ["position", "name", "category"]
},
"outline.expandLevel": {
"type": "number",
"default": 1,
"description": "Expand level of tree nodes."
},
"outline.checkBufferSwitch": {
"type": "boolean",
"default": true,
"description": "Recreate outline view after user changed to another buffer on current tab."
},
"outline.codeActionKinds": {
"type": "array",
"default": ["", "quickfix", "refactor"],
"description": "Filter code actions in actions menu by kinds.",
"items": {
"type": "string",
"enum": ["", "quickfix", "refactor", "source"]
}
},
"callHierarchy.openCommand": {
"type": "string",
"default": "edit",
"description": "Open command for callHierarchy tree view."
},
"callHierarchy.splitCommand": {
"type": "string",
"default": "botright 30vs",
"description": "Window split command used by callHierarchy tree view."
},
"callHierarchy.enableTooltip": {
"type": "boolean",
"default": true,
"description": "Enable tooltip to show relative filepath of call hierarchy."
},
"coc.preferences.enableMessageDialog": {
"type": "boolean",
"default": false,
"description": "Enable messages shown in notification dialog."
},
"coc.preferences.maxFileSize": {
"type": "string",
"default": "10MB",
"description": "Maximum file size in bytes that coc.nvim should handle, default '10MB'"
},
"coc.preferences.promptWorkspaceEdit": {
"type": "boolean",
"description": "Prompt confirm from user when apply workspace edit for unloaded files.",
"default": true
},
"coc.preferences.listOfWorkspaceEdit": {
"type": "string",
"default": "quickfix",
"description": "List should contains changed locations after workspace edit, default to vim's quickfix",
"enum": ["quickfix", "location", "none"]
},
"coc.preferences.useQuickfixForLocations": {
"type": "boolean",
"description": "Use vim's quickfix list for jump locations,\n need restart on change.",
"default": false
},
"coc.preferences.extensionUpdateCheck": {
"type": "string",
"default": "never",
"description": "Interval for check extension update, could be daily, weekly, never",
"enum": ["daily", "weekly", "never"]
},
"coc.preferences.snippetStatusText": {
"type": "string",
"default": "SNIP",
"description": "Text shown in statusline to indicate snippet session is activated."
},
"coc.preferences.colorSupport": {
"type": "boolean",
"description": "Enable color highlight if language server support it.",
"default": true
},
"coc.preferences.semanticTokensHighlights": {
"type": "boolean",
"description": "Enable semanticTokens highlight if language server support it.",
"default": true
},
"coc.preferences.currentFunctionSymbolAutoUpdate": {
"type": "boolean",
"description": "Automatically update the value of b:coc_current_function on CursorHold event",
"default": false
},
"coc.preferences.formatOnSaveFiletypes": {
"type": "array",
"default": [],
"description": "Filetypes that should run format on save.",
"items": {
"type": "string"
}
},
"coc.preferences.enableFloatHighlight": {
"type": "boolean",
"description": "Enable highlight for floating window.",
"default": true
},
"coc.preferences.rootPatterns": {
"type": "array",
"default": [".git", ".hg", ".projections.json"],
"description": "Root patterns to resolve workspaceFolder from parent folders of opened files, resolved from up to down.",
"items": {
"type": "string"
}
},
"coc.preferences.watchmanPath": {
"type": "string",
"description": "executable path for https://facebook.github.io/watchman/, detected from $PATH by default",
"default": null
},
"coc.preferences.jumpCommand": {
"anyOf": [
{
"type": "string",
"enum": [
"edit",
"split",
"vsplit",
"tabe",
"drop",
"tab drop",
"pedit"
]
},
{ "type": "string", "minimum": 1 }
],
"description": "Command used for location jump, like goto definition, goto references etc. Can be also a custom command that gives file as an argument.",
"default": "edit"
},
"coc.preferences.messageLevel": {
"type": "string",
"description": "Message level for filter echoed messages, could be 'more', 'warning' and 'error'",
"default": "more",
"enum": ["more", "warning", "error"]
},
"coc.preferences.bracketEnterImprove": {
"type": "boolean",
"description": "Improve enter inside bracket `<> {} [] ()` by add new empty line below and place cursor to it. Works with `coc#on_enter()`",
"default": true
},
"coc.preferences.formatOnType": {
"type": "boolean",
"description": "Set to true to enable formatting on typing",
"default": false
},
"coc.preferences.formatOnTypeFiletypes": {
"type": "array",
"default": [],
"description": "Filetypes that should run format on typing. Only take effect when `coc.preferences.formatOnType` set `true`",
"items": {
"type": "string"
}
},
"coc.preferences.floatActions": {
"type": "boolean",
"description": "Set to false to disable float/popup support for actions menu, won't work on vim without float or popup window support.",
"default": true
},
"coc.preferences.promptInput": {
"type": "boolean",
"description": "Use prompt buffer in float window for user input.",
"default": true
},
"coc.preferences.enableMarkdown": {
"type": "boolean",
"description": "Tell the language server that markdown text format is supported, note that markdown text may not rendered as expected.",
"default": true
},
"coc.preferences.excludeImageLinksInMarkdownDocument": {
"type": "boolean",
"description": "Exclude image links from markdown text in float window.",
"default": true
},
"coc.preferences.silentAutoupdate": {
"type": "boolean",
"description": "Not open split window with update status when performing auto update.",
"default": true
},
"coc.preferences.willSaveHandlerTimeout": {
"type": "integer",
"default": 500,
"minimum": 200,
"maximum": 5000,
"description": "Will save handler timeout"
},
"coc.source.around.enable": {
"type": "boolean",
"default": true
},
"coc.source.around.firstMatch": {
"type": "boolean",
"description": "Filter complete items by first letter strict match.",
"default": true
},
"coc.source.around.shortcut": {
"type": "string",
"default": "A"
},
"coc.source.around.priority": {
"type": "integer",
"default": 1
},
"coc.source.around.disableSyntaxes": {
"type": "array",
"default": [],
"items": {
"type": "string"
}
},
"coc.source.buffer.enable": {
"type": "boolean",
"default": true
},
"coc.source.buffer.shortcut": {
"type": "string",
"default": "B"
},
"coc.source.buffer.priority": {
"type": "integer",
"default": 1
},
"coc.source.buffer.firstMatch": {
"type": "boolean",
"description": "Filter complete items by first letter strict match.",
"default": true
},
"coc.source.buffer.ignoreGitignore": {
"type": "boolean",
"default": true,
"description": "Ignore git ignored files for buffer words"
},
"coc.source.buffer.disableSyntaxes": {
"type": "array",
"default": [],
"items": {
"type": "string"
}
},
"coc.source.file.enable": {
"type": "boolean",
"default": true
},
"coc.source.file.shortcut": {
"type": "string",
"default": "F"
},
"coc.source.file.priority": {
"type": "integer",
"default": 10
},
"coc.source.file.disableSyntaxes": {
"type": "array",
"default": [],
"items": {
"type": "string"
}
},
"coc.source.file.triggerCharacters": {
"type": "array",
"default": ["/", "\\"],
"items": {
"type": "string"
}
},
"coc.source.file.trimSameExts": {
"type": "array",
"default": [".ts", ".js"],
"description": "Trim same extension on file completion",
"items": {
"type": "string"
}
},
"coc.source.file.ignoreHidden": {
"type": "boolean",
"default": true,
"description": "Ignore completion for hidden files"
},
"coc.source.file.ignorePatterns": {
"type": "array",
"default": [],
"description": "Ignore patterns of matcher",
"items": {
"type": "string"
}
},
"languageserver": {
"type": "object",
"default": {},
"description": "Dictionary of languageservers, key is used as id of languageserver.",
"patternProperties": {
"^[_a-zA-Z]+$": {
"oneOf": [
{
"$ref": "#/definitions/languageServerModule"
},
{
"$ref": "#/definitions/languageServerCommand"
},
{
"$ref": "#/definitions/languageServerSocket"
}
]
}
}
}
}
}