"description":"Enable preselect feature of LSP, only works on neovim, required for suggest.selection config.",
"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.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.minTriggerInputLength":{
"type":"integer",
"default":1,
"description":"Minimal input length for trigger completion, default 1"
},
"suggest.triggerCompletionWait":{
"type":"integer",
"default":0,
"minimum":0,
"maximum":50,
"description":"Wait time between text change and completion start, cancel completion when text changed during wait."
},
"suggest.timeout":{
"type":"integer",
"default":5000,
"minimum":500,
"maximum":15000,
"description":"Timeout for completion, in milliseconds."
},
"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":"Trigger suggest with ASCII characters only",
"default":false
},
"suggest.ignoreRegexps":{
"type":"array",
"items":{
"type":"string"
},
"description":"Regexps to ignore when trigger suggest",
"default":[]
},
"documentHighlight.priority":{
"type":"number",
"default":-1,
"description":"Match priority used by document highlight, see ':h matchadd'"
},
"documentHighlight.timeout":{
"type":"integer",
"default":300,
"minimum":200,
"maximum":5000,
"description":"Timeout for document highlight, in milliseconds."
},
"colors.filetypes":{
"type":"array",
"default":[],
"description":"Filetypes that should be enabled for colors highlight feature, use \"*\" for all filetypes.",
"items":{
"type":"string"
}
},
"colors.highlightPriority":{
"type":"number",
"description":"Priority for colors highlights, works on vim8 and neovim >= 0.6.0",
"default":1000,
"maximum":4096
},
"links.tooltip":{
"type":"boolean",
"description":"Show tooltip of link under cursor on CursorHold, neovim 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 responding",
"default":1000
},
"diagnostic.highlightPriority":{
"type":"number",
"description":"Priority for diagnostic highlights, works on vim8 and neovim >= 0.6.0",
"default":4096,
"maximum":4096,
"minimum":110
},
"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.locationlistLevel":{
"type":["string","null"],
"description":"Filter diagnostics in locationlist.",
"default":null,
"enum":["hint","information","warning","error"]
},
"diagnostic.signLevel":{
"type":["string","null"],
"description":"Filter diagnostics displayed in signcolumn.",
"default":null,
"enum":["hint","information","warning","error"]
},
"diagnostic.messageLevel":{
"type":["string","null"],
"description":"Filter diagnostic message in float window/popup.",
"default":null,
"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.virtualTextLevel":{
"type":["string","null"],
"description":"Filter diagnostic message in virtual text by level",
"default":null,
"enum":["hint","information","warning","error"]
},
"diagnostic.virtualTextWinCol":{
"type":["number","null"],
"description":"Window column number to align virtual text",
"default":null
},
"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.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 with 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",
"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.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.",