12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250 |
- *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: `<esc>`
- "cursors.nextKey" *coc-config-cursors-nextKey*
- Key used for jump to next cursors position. , default: `<C-n>`
- "cursors.previousKey" *coc-config-cursors-previousKey*
- Key used for jump to previous cursors position, default: `<C-p>`
- "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: `<Tab>`
- ------------------------------------------------------------------------------
- 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 <esc> to cancel, default to `<cr>`.
- "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: `"<C-j>"`
- "list.previousKeymap" *coc-config-list-previousKeymap*
- Key for selecting previous line in the insert mode, default: `"<C-k>"`
- "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: <space>
- "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: <tab>
- "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: <cr>
- "tree.key.close" *coc-config-tree-key-close*
- Trigger key to dispose the tree and close tree window, default: <esc>
- "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 <C-j>
- "tree.key.selectPrevious" *coc-config-tree-key-selectPrevious*
- Trigger key to select previous item during filter, default <C-k>
- ------------------------------------------------------------------------------
- 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 <C-s>
- "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:
|