plugins.fidget.progress.display.doneIcon

Icon shown when all LSP progress tasks are complete.

  • When a string literal is given (e.g., "✔"), it is used as a static icon.
  • When a list or attrs (e.g., ["dots"] or {pattern = "clock"; period = 2;}) is given, it is used to generate an animation function.
  • When a function is specified (e.g., {__raw = "function(now) return now % 2 < 1 and '+' or '-' end";}), it is used as the animation function.

Type: null or string or raw lua code or list of string or attribute set of (string or (unsigned integer, meaning >=0))

Default: null

Plugin default: "✔"

Declared by:

plugins.fidget.progress.display.doneStyle

Highlight group for completed LSP tasks.

Type: null or string or raw lua code

Default: null

Plugin default: "Constant"

Declared by:

plugins.fidget.progress.display.doneTtl

How long a message should persist after completion.

Set to 0 to use notification group config default, and math.huge to show notification indefinitely (until overwritten).

Measured in seconds.

Type: null or lua code string or (unsigned integer, meaning >=0)

Default: null

Plugin default: "3"

Declared by:

plugins.fidget.progress.display.formatAnnote

How to format a progress annotation.

Type: null or lua function string

Default: null

Plugin default: "function(msg) return msg.title end"

Declared by:

plugins.fidget.progress.display.formatGroupName

How to format a progress notification group’s name.

Type: null or lua function string

Default: null

Plugin default: "function(group) return tostring(group) end"

Declared by:

plugins.fidget.progress.display.formatMessage

How to format a progress message.

  format_message = function(msg)
    if string.find(msg.title, "Indexing") then
      return nil -- Ignore "Indexing..." progress messages
    end
    if msg.message then
      return msg.message
    else
      return msg.done and "Completed" or "In progress..."
    end
  end

Type: null or lua code string

Default: null

Plugin default: "require('fidget.progress.display').default_format_message"

Declared by:

plugins.fidget.progress.display.groupStyle

Highlight group for group name (LSP server name).

Type: null or string or raw lua code

Default: null

Plugin default: "Title"

Declared by:

plugins.fidget.progress.display.iconStyle

Highlight group for group icons.

Type: null or string or raw lua code

Default: null

Plugin default: "Question"

Declared by:

plugins.fidget.progress.display.overrides

Override options from the default notification config. Keys of the table are each notification group’s key.

Type: null or (attribute set of ((submodule) or raw lua code))

Default: null

Plugin default:

{
  rust_analyzer = {
    name = "rust-analyzer";
  };
}

Declared by:

plugins.fidget.progress.display.priority

Ordering priority for LSP notification group.

Type: null or unsigned integer, meaning >=0, or raw lua code

Default: null

Plugin default: 30

Declared by:

plugins.fidget.progress.display.progressIcon

Icon shown when LSP progress tasks are in progress

  • When a string literal is given (e.g., "✔"), it is used as a static icon.
  • When a list or attrs (e.g., ["dots"] or {pattern = "clock"; period = 2;}) is given, it is used to generate an animation function.
  • When a function is specified (e.g., {__raw = "function(now) return now % 2 < 1 and '+' or '-' end";}), it is used as the animation function.

Type: null or string or raw lua code or list of string or attribute set of (string or (unsigned integer, meaning >=0))

Default: null

Plugin default:

''
  {
    pattern = "dots";
  }
''

Declared by:

plugins.fidget.progress.display.progressStyle

Highlight group for in-progress LSP tasks.

Type: null or string or raw lua code

Default: null

Plugin default: "WarningMsg"

Declared by:

plugins.fidget.progress.display.progressTtl

How long a message should persist when in progress.

Type: null or lua function string or (unsigned integer, meaning >=0)

Default: null

Plugin default: "math.huge"

Declared by:

plugins.fidget.progress.display.renderLimit

How many LSP messages to show at once.

If false, no limit.

This is used to configure each LSP notification group, so by default, this is a per-server limit.

Type: null or value false (singular enum) or signed integer or floating point number

Default: null

Plugin default: 16

Declared by:

plugins.fidget.progress.display.skipHistory

Whether progress notifications should be omitted from history.

Type: null or boolean or raw lua code

Default: null

Plugin default: true

Declared by: