plugins.lsp.servers.ccls.initOptions.completion.detailedLabel

When this option is enabled, label and detailed are re-purposed:

  • label: detailed function signature, e.g. foo(int a, int b) -> bool
  • detailed: the name of the parent context, e.g. in S s; s.<complete>, the parent context is S.

Plugin default: true

Type: null or boolean or raw lua code

Default: null

Declared by:

plugins.lsp.servers.ccls.initOptions.completion.filterAndSort

ccls filters and sorts completions to try to be nicer to clients that can’t handle big numbers of completion candidates. This behaviour can be disabled by specifying false for the option.

This option is useful for LSP clients that implement their own filtering and sorting logic.

Plugin default: true

Type: null or boolean or raw lua code

Default: null

Declared by:

plugins.lsp.servers.ccls.initOptions.completion.placeholder

client.snippetSupport and completion.placeholder (default: true) decide the completion style.

  • client.snippetSupport: false => foo

  • client.snippetSupport: true

    • completion.placeholder: false => foo($1)$0 bar<$1>()$0
    • completion.placeholder: true => foo($\{1:int a}, ${2:int b})$0 bar<${1:typename T}>()$0`

If the client announces that it does not support snippets, client.snippetSupport will be forced to false.

Plugin default: false

Type: null or boolean or raw lua code

Default: null

Declared by: