*coc-config.txt* NodeJS client for Vim & Neovim. CONTENTS Http |coc-config-http| Completion |coc-config-suggest| Document highlight |coc-config-documentHighlight| Colors |coc-config-colors| Links |coc-config-links| Diagnostics |coc-config-diagnostic| Signature |coc-config-signature| Cursors |coc-config-cursors| Refactor |coc-config-refactor| Hover |coc-config-hvoer| Dialog |coc-config-dialog| Notification |coc-config-notification| CodeLens |coc-config-codelens| Workspace |coc-config-workspace| List |coc-config-list| Preferences |coc-config-preferences| Semantic tokens |coc-config-semanticTokens| Tree |coc-config-tree| Outline |coc-config-outline| Call Hierarchy |coc-config-callHierarchy| Npm |coc-config-npm| Float |coc-config-float| Language server |coc-config-languageserver| ============================================================================== BUILTIN CONFIGURATIONS *coc-config* Builtin configurations of coc.nvim, it's recommended to use `coc-json` extension for completion and validation support. ------------------------------------------------------------------------------ Http request~ *coc-config-http* "http.proxy" *coc-config-http-proxy* HTTP proxy URI, used for extensions that send request, default: `""` "http.proxyStrictSSL" *coc-config-http-proxyStrictSSL* Controls whether the proxy server certificate should be verified against the list of supplied CAs, default: `true` "http.proxyAuthorization" *coc-config-http-proxyAuthorization* The value to send as the `Proxy-Authorization` header for every network request. "http.proxyCA" *coc-config-http-proxyCA* CA (file) to use as Certificate Authority. ------------------------------------------------------------------------------ Completion related~ *coc-config-suggest* "suggest.noselect" *coc-config-suggest-noselect* Avoid select complete item on completion start, default: `false`. Note: default changed to `false` on coc.nvim 0.0.82 to provide preselect item. "suggest.selection" *coc-config-suggest-selection* Controls how suggestions are pre-selected when showing the suggest list. Default: "recentlyUsed". Could be "none", "recentlyUsed" and "recentlyUsedByPrefix". "suggest.formatItems" *coc-config-suggest-formatItems* Items shown in popup menu in order. Default to : `["abbr", "menu", "kind", "shortcut"]` "suggest.enablePreselect" *coc-config-suggest-enablePreselect* Enable preselect feature of LSP, works when "suggest.noselect" is false. Default: `true`. "suggest.labelMaxLength" *coc-config-suggest-labelMaxLength* Maximum length of label shown in popup menu, default: `200` "suggest.floatConfig" *coc-config-suggest-floatConfig* Configure style of popup menu and documentation window for completion, see |coc-config-float|. Note: some properties not work, including: "title", "focusable", "close" and "maxHeight" (use 'pumheight' option for maximum height of popup menu). Note: "maxWidth" not works for popup menu, use |coc-config-suggest-detailMaxLength| instead. "suggest.detailMaxLength" *coc-config-suggest-detailMaxLength* Max length of detail that will be shown in popup menu, default: `100` "suggest.detailField" *coc-config-suggest-detailField* Where to add the detail in complete item when it's less than max length, default: `"preview"` when floating documentation is enabled. Valid options: ["abbr", "menu", "preview"] "suggest.autoTrigger" *coc-config-suggest-autoTrigger* How should completion be triggered, default: `"always"` Valid options: ["always", "trigger", "none"] - `always`: trigger suggest on word characters and trigger characters. - `trigger`: trigger suggest on trigger characters only. - `none`: no auto trigger at all. "suggest.languageSourcePriority" *coc-config-suggest-languageSourcePriority* Priority of language sources, default: `99` "suggest.snippetIndicator" *coc-config-suggest-snippetIndicator* The character used in completion item abbreviation to indicate it expands as code snippet, default: `~`. "suggest.maxCompleteItemCount" *coc-config-suggest-maxCompleteItemCount* Maximum number of complete items shown in Vim, default: `50` "suggest.preferCompleteThanJumpPlaceholder" *coc-config-suggest-preferCompleteThanJumpPlaceholder* Confirm completion instead of jump to next placeholder when completion activates, default: `false` "suggest.snippetsSupport" *coc-config-suggest-snippetsSupport* Enable snippets expands expand on confirm completion. When set to `false` coc.nvim would set language client option: `CompletionClientCapabilities.completionItem.snippetSupport` to `false` as well. Note: the language server may still send completion items with snippets when falsy. "suggest.fixInsertedWord" *coc-config-suggest-fixInsertedWord* Inserted word replaces the next one, default: `true` "suggest.localityBonus" *coc-config-suggest-localityBonus* Boost suggestions that appear closer to the cursor position, default: `true` "suggest.triggerAfterInsertEnter" *coc-config-suggest-triggerAfterInsertEnter* Trigger completion after |InsertEnter|. Requires "suggest.autoTrigger" to be set, default: `false` "suggest.timeout" *coc-config-suggest-timeout* Timeout for completion (unit: milliseconds), default: `5000` "suggest.minTriggerInputLength" *coc-config-suggest-minTriggerInputLength* Number of characters in the current word after which the completion triggers, default: `1` "suggest.triggerCompletionWait" *coc-config-suggest-triggerCompletionWait* Delay between typing the trigger character and completion start which initiates server synchronization, default: `0` "suggest.acceptSuggestionOnCommitCharacter" *coc-config-suggest-acceptSuggestionOnCommitCharacter* The server provides a set of commit characters: these characters can trigger completion item acceptance. This also inserts commit character after the completion item text. Requires `CompleteChanged` event to work, default: `false` "suggest.lowPrioritySourceLimit" *coc-config-suggest-lowPrioritySourceLimit* Max items count for source priority lower than `90`. "suggest.highPrioritySourceLimit" *coc-config-suggest-highPrioritySourceLimit* Max items count for source priority bigger than or equal to `90`. "suggest.removeDuplicateItems" *coc-config-suggest-removeDuplicateItems* Remove completion items with duplicated word for all sources, snippet items are excluded, default: `false` "suggest.defaultSortMethod" *coc-config-suggest-defaultSortMethod* Default sorting behavior for suggested completion items, default: `length` "suggest.invalidInsertCharacters" *coc-config-suggest-invalidInsertCharacters* Invalid character for strip valid word when inserting text of complete item, default: ` ,(,<,{,[,\r,\n` "suggest.asciiCharactersOnly" *coc-config-suggest-asciiCharactersOnly* Trigger suggest with ASCII characters only, default: `false` "suggest.ignoreRegexps" *coc-config-suggest-ignoreRegexps* Array of regexps, when input matched one of them, not trigger completion, default: `[]` "suggest.virtualText" *coc-config-suggest-virtualText* Show virtual text for insert word of selected item, works on neovim >= 0.5.0, default: `false` "suggest.completionItemKindLabels" *coc-config-suggest-completionItemKindLabels* Set custom labels to completion item kinds, default: `{}`. Example configuration: with https://nerdfonts.com: > "suggest.completionItemKindLabels": { "keyword": "\uf1de", "variable": "\ue79b", "value": "\uf89f", "operator": "\u03a8", "constructor": "\uf0ad", "function": "\u0192", "reference": "\ufa46", "constant": "\uf8fe", "method": "\uf09a", "struct": "\ufb44", "class": "\uf0e8", "interface": "\uf417", "text": "\ue612", "enum": "\uf435", "enumMember": "\uf02b", "module": "\uf40d", "color": "\ue22b", "property": "\ue624", "field": "\uf9be", "unit": "\uf475", "event": "\ufacd", "file": "\uf723", "folder": "\uf114", "snippet": "\ue60b", "typeParameter": "\uf728", "default": "\uf29c" } < ------------------------------------------------------------------------------ Document highlight~ *coc-config-documentHighlight* "documentHighlight.priority" *coc-config-documentHighlight-priority* Match priority used by document highlight, see ':h matchadd'. Default `-1` "documentHighlight.timeout" *coc-config-documentHighlight-timeout* Timeout for document highlight, in milliseconds. Default `500` ------------------------------------------------------------------------------ Colors highlight~ *coc-config-colors* "colors.filetypes" *coc-config-colors-filetypes* Filetypes that should enable colors highlight feature. Use `*` for all filetypes. Default: `[]` ------------------------------------------------------------------------------ Links~ *coc-config-links* "links.tooltip" *coc-config-links-tooltip* Show tooltip of link under cursor on CursorHold, neovim only. Default: `false` ------------------------------------------------------------------------------ Diagnostics~ *coc-config-diagnostic* "diagnostic.enable" *coc-config-diagnostic-enable* Display diagnostics, default: `true` "diagnostic.autoRefresh" *coc-config-diagnostic-autoRefresh* Enable automatically refresh diagnostics, use |CocAction('diagnosticRefresh')| action to refresh diagnostics when it's disabled, default: `true` "diagnostic.refreshOnInsertMode" *coc-config-diagnostic-refreshOnInsertMode* Refresh diagnostics when in insert mode, default: `false` "diagnostic.displayByAle" *coc-config-diagnostic-displayByAle* Use ALE for displaying diagnostics. This will disable coc.nvim for displaying diagnostics. Restart to make changes take the effect, default: `false` "diagnostic.level" *coc-config-diagnostic-level* Filter diagnostics by severity level (affect both UI and diagnostic list), default: `"hint"` Valid options: ["hint", "information", "warning", "error"] "diagnostic.highlighLimit" *coc-config-diagnostic-highlighLimit* Limit count for highlighted diagnostics, too many diagnostic highlights could make vim stop responding. Default: `1000` "diagnostic.highlightPriority" *coc-config-diagnostic-highlightPriority* Priority for diagnostic highlights, works on vim8 and neovim >= 0.6.0 Default: `4096` "diagnostic.enableSign" *coc-config-diagnostic-enableSign* Enable signs for diagnostics, default: `true` "diagnostic.signLevel" *coc-config-diagnostic-signLevel* Filter diagnostics in sign column, default: `null`. "diagnostic.signPriority" *coc-config-diagnostic-signPriority* Priority of diagnostic sign, default to `10`, check |sign-priority|. "diagnostic.errorSign" *coc-config-diagnostic-errorSign* Sign of error diagnostics shown in the 'signcolumn', default: `">>"` "diagnostic.warningSign" *coc-config-diagnostic-warningSign* Sign of warning diagnostics shown in the 'signcolumn', default: `"⚠"` "diagnostic.infoSign" *coc-config-diagnostic-infoSign* Sign of info diagnostics shown in the 'signcolumn', default: `">>"` "diagnostic.hintSign" *coc-config-diagnostic-hintSign* Sign of hint diagnostics shown in the 'signcolumn', default: `">>"` "diagnostic.enableHighlightLineNumber" *coc-config-diagnostic-enableHighlightLineNumber* Enable highlighting line numbers for diagnostics, only works with neovim and `diagnostic.enableSign` is true. default: `true` "diagnostic.locationlistUpdate" *coc-config-diagnostic-locationlistUpdate* Update locationlist on diagnostics change, only works with locationlist opened by :CocDiagnostics command and first window of associated buffer. default: `true` "diagnostic.locationlistLevel" *coc-config-diagnostic-locationlistLevel* Filter diagnostics in locationlist, default: `null`. "diagnostic.enableMessage" *coc-config-diagnostic-enableMessage* When to enable show messages of diagnostics. Valid options: ["always","jump","never"], always means including cursor hold and after jump to another diagnostic. default: `"always"` "diagnostic.messageLevel" *coc-config-diagnostic-messageLevel* Filter diagnostic message in float window/popup, default: `null`. "diagnostic.checkCurrentLine" *coc-config-diagnostic-checkCurrentLine* Show all diagnostics of the current line if none of them are at the current position, default: `false` "diagnostic.messageDelay" *coc-config-diagnostic-messageDelay* How long to wait (in milliseconds) before displaying the diagnostic message with echo or float. Default: `200` "diagnostic.messageTarget" *coc-config-diagnostic-messageTarget* Diagnostic message target, default: `"float"` Valid options: ["echo", "float"] "diagnostic.format" *coc-config-diagnostic-format* Define the diagnostic message format. Available parts: source, code, severity, message Default: `[%source%code] [%severity] %message` "diagnostic.floatConfig" *coc-config-diagnostic-floatConfig* Configuration of floating window/popup, see |coc-config-float|. "diagnostic.filetypeMap" *coc-config-diagnostic-filetypeMap* A map between buffer filetype and the filetype assigned to diagnostics in float window. To syntax highlight diagnostics with their parent buffer type use `"default": "bufferType"`, default: `{}` "diagnostic.virtualText" *coc-config-diagnostic-virtualText* Use Neovim virtual text to display diagnostics, default: `false` "diagnostic.virtualTextLevel" *coc-config-diagnostic-virtualTextLevel* Filter diagnostic message in virtual text by level, default: `null` "diagnostic.virtualTextWinCol" *coc-config-diagnostic-virtualTextWinCol* Window column number to align virtual text, default: `null` "diagnostic.virtualTextCurrentLineOnly" *coc-config-diagnostic-virtualTextCurrentLineOnly* Only show virtualText diagnostic on current cursor line, default: `true` "diagnostic.virtualTextPrefix" *coc-config-diagnostic-virtualTextPrefix* The prefix added for virtual text diagnostics, default: `" "` "diagnostic.virtualTextLines" *coc-config-diagnostic-virtualTextLines* The number of non-empty lines from a diagnostic to display, default: `3` "diagnostic.virtualTextLineSeparator" *coc-config-diagnostic-virtualTextLineSeparator* The text that will mark a line end from the diagnostic message, default: `" \\ "` "diagnostic.separateRelatedInformationAsDiagnostics" *coc-config-diagnostic-separateRelatedInformationAsDiagnostics* Separate related information as diagnostics, default: `false` ------------------------------------------------------------------------------ Signature~ *coc-config-signature* "signature.enable" *coc-config-signature-enable* Enable signature help when trigger character typed. Requires service restart on change, default: `true` "signature.floatConfig" *coc-config-signature-floatConfig* Configuration of floating window/popup for signature documents, see |coc-config-float|. "signature.triggerSignatureWait" *coc-config-signature-triggerSignatureWait* Timeout for signature request trigger (milliseconds), default: `500`. Change to higher value for slow Language Servers. "signature.target" *coc-config-signature-target* Target of signature help, use `"float"` when possible by default. Valid options: ["float", "echo"] "signature.preferShownAbove" *coc-config-signature-preferShownAbove* Show signature help's floating window above cursor when possible. Requires restart on change, default: `true` "signature.hideOnTextChange" *coc-config-signature-hideOnTextChange* Hide signature help's floating window when text changed. Requires restart on change, default: `false` ------------------------------------------------------------------------------ Multiple cursors~ *coc-config-cursors* "cursors.cancelKey" *coc-config-cursors-cancelKey* Key used for cancel cursors session, default: `` "cursors.nextKey" *coc-config-cursors-nextKey* Key used for jump to next cursors position. , default: `` "cursors.previousKey" *coc-config-cursors-previousKey* Key used for jump to previous cursors position, default: `` "cursors.wrapscan" *coc-config-cursors-wrapscan* Searches wrap around the first or last cursors range, default: `true` ------------------------------------------------------------------------------ Refactor buffer~ *coc-config-refactor* "refactor.saveToFile" *coc-config-refactor-saveToFile* Save changed buffer to file when write refactor buffer with ':noa wa' command. set to false if you want save buffer by yourself. "refactor.openCommand" *coc-config-refactor-openCommand* Open command for refactor window, default: `vsplit` "refactor.beforeContext" *coc-config-refactor-beforeContext* Print num lines of leading context before each match, default: `3` "refactor.afterContext" *coc-config-refactor-afterContext* Print num lines of trailing context after each match, default: `3` "refactor.showMenu" *coc-config-refactor-showMenu* Refactor buffer local mapping to bring up menu for this chunk, default: `` ------------------------------------------------------------------------------ Hover~ *coc-config-hover* "hover.target" *coc-config-hover-target* Target to show hover information, default is floating window when possible. Valid options: ["preview", "echo", "float"] "hover.previewMaxHeight" *coc-config-hover-previewMaxHeight* Max height of preview window for hover, default: `12` "hover.floatConfig" *coc-config-hover-floatConfig* Configuration of floating window/popup for hover documents, see |coc-config-float|. "hover.autoHide" *coc-config-hover-autoHide* Automatically hide hover float window on CursorMove or InsertEnter, default `true`. ------------------------------------------------------------------------------ Dialog~ *coc-config-dialog* "dialog.maxWidth" *coc-config-dialog-maxWidth* Maximum width of dialog window. "dialog.maxHeight" *coc-config-dialog-maxHeight* Maximum height of dialog window. "dialog.rounded" *coc-config-dialog-rounded* Use rounded border for dialog window, default `true`. "dialog.confirmKey" *coc-config-dialog-confirmKey* Confirm key for confirm selection used by menu and picker, you can always use to cancel, default to ``. "dialog.pickerButtons" *coc-config-dialog-pickerButtons* Show buttons for picker dialog window/popup, default `true`. "dialog.pickerButtonShortcut" *coc-config-dialog-pickerButtonShortcut* Show shortcut in buttons of picker dialog window/popup, used when dialog.pickerButtons is true, default `true`. "dialog.floatHighlight" *coc-config-dialog-floatHighlight* Highlight group for dialog window/popup, default to 'CocFloating'. "dialog.floatBorderHighlight" *coc-config-dialog-floatBorderHighlight* Highlight group for border of dialog window/popup, default to 'CocFloating'. "dialog.shortcutHighlight" *coc-config-dialog-shortcutHighlight* Highlight group for shortcut character in menu dialog, default to 'MoreMsg' ------------------------------------------------------------------------------ Notification~ *coc-config-notification* "notification.maxWidth" *coc-config-notification-maxWidth* Maximum content width of notification dialog, default to `60`. "notification.maxHeight" *coc-config-notification-maxHeight* Maximum content height of notification dialog, default to `10`. "notification.disabledProgressSources" *coc-config-notification-disabledProgressSources* Sources that should be disabled for message progress, use "*" to disable all message only progress notifications, default to `[]` Source name could be extension id or `language-client-{id}`. "notification.minProgressWidth" *coc-config-notification-minProgressWidth* Minimal with of progress notification. "notification.highlightGroup" *coc-config-notification-highlightGroup* Highlight group of notification dialog, default to `CocFloating`. "notification.winblend" *coc-config-notification-winblend* Winblend option of notification window, neovim only, default `30`. "notification.border" *coc-config-notification-border* Enable rounded border for notification windows, default `true`. "notification.timeout" *coc-config-notification-timeout* Timeout for auto close notifications, in miniseconds, default `10000`. "notification.marginRight" *coc-config-notification-marginRight* Margin right to the right of editor window, default `10`. "notification.focusable" *coc-config-notification-focusable* Enable focus by user actions (wincmds, mouse events), neovim only, default `true`. ------------------------------------------------------------------------------ CodeLens~ *coc-config-codelens* "codeLens.enable" *coc-config-codeLens-enable* Enable `codeLens` feature. Requires Neovim with virtual text feature, default: `false`. "codeLens.position" *coc-config-codeLens-position* Position of codeLens, works on nvim >= 0.6.0, valid options ["top", "eol", "right_align"], default: `top`. "codeLens.separator" *coc-config-codeLens-separator* Separator text for `codeLens` in virtual text, default: `""`. "codeLens.subseparator" *coc-config-codeLens-subseparator* Subseparator text for multiple codelens in virtual text, default: `" "` ------------------------------------------------------------------------------ Workspace related~ *coc-config-workspace* "workspace.openOutputCommand" *coc-config-workspace-openOutputCommand* Command used to open output channel, default: `vs` "workspace.openResourceCommand" *coc-config-workspace-openResourceCommand* Command to open files that not loaded, default: `tab drop` "workspace.ignoredFiletypes *coc-config-workspace-ignoredFiletypes* Filetypes to ignore for workspace folder resolution, default: `[]` Note: This is the filetype after mapping by `g:coc_filetype_map`. "workspace.ignoredFolders" *coc-config-workspace-ignoredFolders* List of folders that should not be resolved as workspace folder. Environment variables and minimatch patterns can be used. Default: ["$HOME"] "workspace.bottomUpFiletypes" *coc-config-workspace-bottomUpFiletypes* Filetypes that should have workspace folder resolved from base directory of file, or `["*"]` for any filetype. Default: [] "workspace.workspaceFolderCheckCwd" *coc-config-workspace-workspaceFolderCheckCwd* Whether the cwd directory should be checked first when resolving workspace folder of current buffer. Default: `true` "workspace.workspaceFolderFallbackCwd" *coc-config-workspace-workspaceFolderFallbackCwd* Use current working directory as workspace folder when no root patterns resolved. Default: `true` ------------------------------------------------------------------------------ List~ *coc-config-list* "list.indicator" *coc-config-list-indicator* The character used as first character in prompt line, default: `">"` "list.alignColumns" *coc-config-list-alignColumns* Whether to align lists in columns, default: `false` "list.menuAction" *coc-config-list-menuAction* Use menu picker instead of confirm() for choose action. Default: `false` "list.height" *coc-config-list-height* Height of list window (when splited), default: `10` "list.signOffset" *coc-config-list-signOffset* Sign offset of list, should be different from other plugins, default: `900` "list.selectedSignText" *coc-config-list-selectedSignText* Sign text for selected lines, default: `"*"` "list.limitLines" *coc-config-list-limitLines* Limit lines shown in the list buffer, no limit by default, default: `null` "list.maxPreviewHeight" *coc-config-list-maxPreviewHeight* Max height for preview window of list, default: `12` "list.previewHighlightGroup" *coc-config-list-previewHighlightGroup* Highlight group used for highlighting the range in preview window, default: `"Search"` "list.previewToplineStyle" *coc-config-list-previewToplineStyle* Topline style for list previews default: `"offset"` Valid options: ["offset","middle"] "list.previewToplineOffset" *coc-config-list-previewToplineOffset* Topline offset for list previews default: `3` "list.nextKeymap" *coc-config-list-nextKeymap* Key for selecting next line in the insert mode, default: `""` "list.previousKeymap" *coc-config-list-previousKeymap* Key for selecting previous line in the insert mode, default: `""` "list.extendedSearchMode" *coc-config-list-extendedSearchMode* Enable extended search mode which allows multiple search patterns delimited by whitespace, default: `true` "list.normalMappings" *coc-config-list-normalMappings* Custom key mappings in the normal mode, default: `{}` "list.insertMappings" *coc-config-list-insertMappings* Custom key mappings in the insert mode, default: `{}` "list.interactiveDebounceTime" *coc-config-list-interactiveDebounceTime* Debounce time for input change on interactive mode, default: `100` "list.previewSplitRight" *coc-config-list-previewSplitRight* Use vsplit for preview window, default: `false` "list.source.symbols.excludes" *coc-config-list-source-symbols-excludes* Patterns of minimatch for filepath to exclude from symbols list, default: `[]` "list.source.outline.ctagsFilestypes" *coc-config-list-source-outline-ctagsFilestypes* Filetypes that should use `ctags` for outline instead of language server, default: `[]` "list.source.diagnostics.pathFormat" *coc-config-list-source-diagnostics-pathFormat* Decide how the filepath is shown in the list. Valid options: ["full", "short", "filename", "hidden"]. default: `"full"` "list.source.diagnostics.includeCode" *coc-config-list-source-diagnostics-includeCode* Whether to show the diagnostic code in the list. default: `true` ------------------------------------------------------------------------------ Preferences~ *coc-config-preferences* "coc.preferences.enableLinkedEditing" *coc-preferences-enableLinkedEditing* Enable linked editing support, default: `false` "coc.preferences.enableMessageDialog" *coc-preferences-enableMessageDialog* Enable messages shown in notification dialog, default: `false` "coc.preferences.maxFileSize" *coc-preferences-maxFileSize* Maximum file size in bytes that coc.nvim should handle, default: `'10MB'` "coc.preferences.useQuickfixForLocations" *coc-preferences-useQuickfixForLocations* Use Vim's quickfix list for jump locations. Requires restart on change, default: `false` "coc.preferences.extensionUpdateCheck" *coc-preferences-extensionUpdateCheck* Interval for checking extension updates, default: `"never"` Valid options: ["daily","weekly","never"] "coc.preferences.snippetHighlight" *coc-preferences-snippetHighlight* Use highlight group 'CocSnippetVisual' to highlight placeholders with same index of current one. default: `false` "coc.preferences.snippetStatusText" *coc-preferences-snippetStatusText* Text shown in 'statusline' to indicate snippet session is activate. Check |coc-status| for statusline integration. Default: `"SNIP"` "coc.preferences.currentFunctionSymbolAutoUpdate" *coc-preferences-currentFunctionSymbolAutoUpdate* Automatically update the value of `b:coc_current_function` on `CursorHold` event, default: `false` "coc.preferences.formatOnSaveFiletypes" *coc-preferences-formatOnSaveFiletypes* Filetypes for which formatting triggers when saving, default: `[]` The operation only format the document by one format provider that have highest priority, timeout is 500ms to avoid vim blocked for too long time. Note: This is the filetype after mapping by `g:coc_filetype_map`. Note since vim's autocmd not nested by default, coc.nvim may not receive latest code when you're using other vim plugin to format document at the same time. "coc.preferences.rootPatterns" *coc-preferences-rootPatterns* Root patterns to resolve `workspaceFolder` from parent folders of opened files, resolved from up to down, default: `[".git",".hg",".projections.json"]` "coc.preferences.watchmanPath" *coc-preferences-watchmanPath* Executable path for https://facebook.github.io/watchman/, detected from $PATH by default, default: `null` "coc.preferences.jumpCommand" *coc-preferences-jumpCommand* Command used for location jump performed for goto definition, goto references etc, default: `"edit"` Valid options: ["edit", "split", "vsplit", "tabe", "drop", "tab drop"] "coc.preferences.messageLevel" *coc-preferences-messageLevel* Message level for filter echoed messages default: `"more"` Valid options: ["more", "warning", "error"] "coc.preferences.bracketEnterImprove" *coc-preferences-bracketEnterImprove* Improve handling of pressing enter inside brackets (`<> {} [] ()`) by create a new empty line in the middle, the indent is calculated by vim, checkout |indentexpr| for details. Works with |coc#on_enter()|, default: `true` "coc.preferences.formatOnType" *coc-preferences-formatOnType* Set to true to enable format on type, default: `false` "coc.preferences.formatOnTypeFiletypes" *coc-preferences-formatOnTypeFiletypes* Filetypes that should run format on typing specific characters, default: `[]`, requires `onTypeEdit` provider |CocHasProvider|. Note: takes effect when `coc.preferences.formatOnType` set `true`. Note: Use filetypes after mapped by `g:coc_filetype_map`. "coc.preferences.floatActions" *coc-preferences-floatActions* Set to false to disable float/popup support for actions menu. Default: `true` "coc.preferences.promptInput" *coc-preferences-promptInput* Use prompt buffer in float window for user input. Default: `true` "coc.preferences.enableMarkdown" *coc-preferences-enableMarkdown* Tell the language server that markdown text format is supported, note that you may have additional escaped characters for markdown text. "coc.preferences.silentAutoupdate" *coc-preferences-silentAutoupdate* Not open split window with update status when performing auto update. "coc.preferences.willSaveHandlerTimeout" *coc-preferences-willSaveHandlerTimeout* Will save handler timeout, default: `500` "coc.preferences.renameFillCurrent" *coc-preferences-renameFillCurrent* Disable to stop Refactor-Rename float/popup window from populating with old name in the New Name field. Default: `true` ------------------------------------------------------------------------------ Semantic tokens~ *coc-config-semanticTokens* "semanticTokens.filetypes" *coc-config-semanticTokens-filetypes* Filetypes that should enable semantic tokens highlight feature. Use `["*"]` for all filetypes, default: `[]` Note: semantic tokens highlight requires nvim >= 0.5.0 and vim >= 8.1.0579 to work. "semanticTokens.highlightPriority" *coc-config-semanticTokens-highlightPriority* Priority for semantic tokens highlight, default `2048` "semanticTokens.incrementTypes" *coc-config-semanticTokens-incrementTypes* Semantic token types that should increase highlight when insert at the start and end position of token. Default: `['variable', 'string']` "semanticTokens.combinedModifiers" *coc-config-semanticTokens-combinedModifiers* Semantic token modifiers that should combine with syntax highlights. Default: `['deprecated']` ------------------------------------------------------------------------------ Tree~ *coc-config-tree* "tree.closedIcon" *coc-config-tree-closedIcon* Closed icon of tree view, use '' to make it look better when you have patched font, default: '+'. "tree.openedIcon" *coc-config-tree-openedIcon* Opened icon of tree view, use '' to make it look better when you have patched font, default: '-' "tree.key.toggleSelection" *coc-config-tree-key-toggleSelection* Trigger key to select/unselect item, default: "tree.key.toggle" *coc-config-tree-key-toggle* Trigger key to toggle expand state of tree node, default: 't' "tree.key.actions" *coc-config-tree-key-actions* Trigger key to invoke actions, default: "tree.key.collapseAll" *coc-config-tree-key-collapseAll* Trigger key to collapse all tree node, default: 'M' "tree.key.invoke" *coc-config-tree-key-invoke* Trigger key to invoke default command of current node or selection, default: "tree.key.close" *coc-config-tree-key-close* Trigger key to dispose the tree and close tree window, default: "tree.key.activeFilter" *coc-config-tree-key-activeFilter* Trigger key active filter, only works when tree view support filter, default: 'f' "tree.key.selectNext" *coc-config-tree-key-selectNext* Trigger key to select next item during filter, default "tree.key.selectPrevious" *coc-config-tree-key-selectPrevious* Trigger key to select previous item during filter, default ------------------------------------------------------------------------------ Outline~ *coc-config-outline* "outline.splitCommand" *coc-config-outline-splitCommand* Window split command used by outline, default 'botright 30vs' "outline.followCursor" *coc-config-outline-followCursor* Reveal item in outline tree on cursor hold, default `true` "outline.keepWindow" *coc-config-outline-keepWindow* Jump back to original window after outline is shown, default `false` "outline.autoWidth" *coc-config-outline-autoWidth* Automatically increase window width to avoid wrapped lines, default `true`, use |g:coc_max_treeview_width| to change maximum width. "outline.sortBy" *coc-config-outline-sortBy* Sort method for symbols, available options: 'position', 'name' and 'category'. Default: 'category'. "outline.switchSortKey" *coc-config-outline-switchSortKey* The key used to switch sort method for symbols provider of current tree view. Default "outline.expandLevel" *coc-config-outline-expandLevel* Default expand level of tree nodes, default `1` "outline.checkBufferSwitch" *coc-config-outline-checkBufferSwitch* Recreate outline view after changed to another buffer on current tab. Default `true` "outline.showLineNumber" *coc-config-outline-showLineNumber* Show line number of document symbols. Default `true` "outline.detailAsDescription" *coc-config-outline-detailAsDescription* Show detail as description aside with label. Default: `true` "outline.codeActionKinds" *coc-config-outline-codeActionKinds* Filter code actions in actions menu by kinds. Default: ['', 'quickfix', 'refactor', 'source'] ------------------------------------------------------------------------------ Call hierarchy~ *coc-config-callHierarchy* "callHierarchy.openCommand" *coc-config-callHierarchy-openCommand* Open command for callHierarchy tree view, default to 'edit'. "callHierarchy.splitCommand" *coc-config-callHierarchy-splitCommand* Window split command used by callHierarchy tree view. "callHierarchy.enableTooltip" *coc-config-callHierarchy-enableTooltip* Enable tooltip to show relative filepath of call hierarchy. Default: `true` ------------------------------------------------------------------------------ Npm~ *coc-config-npm* "npm.binPath" *coc-config-npm-binPath* Command or full path of npm or yarn executable for install/update extensions, default: `npm` ------------------------------------------------------------------------------ Float configuration~ *coc-config-float* Used by `suggest.floatConfig`, `diagnostic.floatConfig`, `signature.floatConfig` and `hover.floatConfig`, following properties are supported: - "border": Change to `true` to enable border. - "rounded": Use rounded borders when border is `true`. - "highlight": Background highlight group of float window. - "title": Title used by float window. - "borderhighlight": Border highlight group of float window. - "close": Set to true to draw close icon. - "maxWidth": Maximum width of float window, contains border. - "maxHeight": Maximum height of float window, contains border. - "winblend": Set 'winblend' option of window, neovim only. - "focusable": Set to false to make window not focusable, neovim only. - "shadow": Set to true to enable shadow, neovim only. ------------------------------------------------------------------------------ Languageserver~ *coc-config-languageserver* Dictionary of Language Servers, key is the ID of corresponding server, and value is configuration of languageserver. Default: `{}` Properties of languageserver configuration: - "enable": Change to `false` to disable that languageserver. - "filetypes": Supported filetypes, add * in array for all filetypes. Note: it's required for start the languageserver, please make sure your filetype is expected by `:CocCommand document.echoFiletype` command - "additionalSchemes": Additional uri schemes, default schemes including file & untitled. Note: you have to setup vim provide content for custom uri as well. - "cwd": Working directory used to start languageserver, vim's cwd is used by default. - "env": Environment variables for child process. - "settings": Settings for languageserver, received on server initialization. - "trace.server": Trace level of communication between server and client that showed with output channel, open output channel by command `:CocCommand workspace.showOutput` - "stdioEncoding": Encoding used for stdio of child process. - "initializationOptions": Initialization options passed to languageserver (it's deprecated) - "rootPatterns": Root patterns used to resolve rootPath from current file. - "requireRootPattern": If true, doesn't start server when root pattern not found. - "ignoredRootPaths": Absolute root paths that language server should not use as rootPath, higher priority than rootPatterns. - "disableDynamicRegister": Disable dynamic registerCapability feature for this languageserver to avoid duplicated feature regstration. - "disableSnippetCompletion": Disable snippet completion feature for this languageserver. - "disabledFeatures": Disable features for this languageserver, valid keys: > ["completion", "configuration", "workspaceFolders", "diagnostics", "willSave", "willSaveUntil", "didSaveTextDocument", "fileSystemWatcher", "hover", "signatureHelp", "definition", "references", "documentHighlight", "documentSymbol", "workspaceSymbol", "codeAction", "codeLens", "formatting", "documentFormatting", "documentRangeFormatting", "documentOnTypeFormatting", "rename", "documentLink", "executeCommand", "pullConfiguration", "typeDefinition", "implementation", "declaration", "color", "foldingRange", "selectionRange", "progress", "callHierarchy", "linkedEditing", "fileEvents", "semanticTokens"] < - "formatterPriority": Priority of this languageserver's formatter. - "revealOutputChannelOn": Configure message level to show the output channel buffer. - "progressOnInitialization": Enable progress report on languageserver initialize. Language server start with command:~ Additional fields can be used for a command languageserver: - "command": Executable program name in $PATH or absolute path of executable used for start languageserver. - "args": Command line arguments of command. - "detached": Detach language server when is true. - "shell": Use shell for server process, default: `false` Language server start with module:~ Additional fields can be used for a languageserver started by node module: - "module": Absolute filepath of javascript file. - "args": Extra arguments used on fork javascript module. - "runtime": Absolute path of node runtime, node runtime of coc.nvim is used by default. - "execArgv": Argv passed to node on fork, normally used for debugging, example: `["--nolazy", "--inspect-brk=6045"]` - "transport": Transport kind used by server, could be 'ipc', 'stdio', 'socket' and 'pipe'. 'ipc' is used by default (recommended). - "transportPort": Port number used when transport is 'socket'. Language server use initialized socket server:~ - "port": Port number of socket server. - "host": Host of socket server, default to `127.0.0.1`. ============================================================================== vim:tw=78:nosta:noet:ts=8:sts=0:ft=help:noet:fen: