Skip to content

WebAssembly#

Server#

For more information about the LSP server, check wat_server.

Installation#

For more instructions on how to install manually, check here.

Debugger: Not available#

Available configurations#

lsp-wat-format-format-comments#

Type: boolean

Default: nil

Control whether whitespace should be inserted at the beginning and end of comments.


lsp-wat-format-ignore-comment-directive#

Type: string

Default: fmt-ignore

Text directive for ignoring formatting specific module or module field.


lsp-wat-format-multi-line-fields#

Type: (choice (const never) (const overflow) (const smart) (const wrap) (const always))

Default: smart

Control how to insert whitespace between multiple fields in a struct.


lsp-wat-format-multi-line-locals#

Type: (choice (const never) (const overflow) (const smart) (const wrap) (const always))

Default: smart

Control how to insert whitespace between multiple locals in a function.


lsp-wat-format-split-closing-parens#

Type: boolean

Default: nil

Control whether closing parentheses should be splitted into different lines.


lsp-wat-format-wrap-before-const-expr#

Type: (choice (const never) (const overflow) (const multiOnly) (const always))

Default: always

Control whether to insert line break before constant expression.


lsp-wat-format-wrap-before-fields#

Type: (choice (const never) (const overflow) (const multiOnly) (const always))

Default: multiOnly

Control whether to insert line break before struct fields.


lsp-wat-format-wrap-before-locals#

Type: (choice (const never) (const overflow) (const multiOnly) (const always))

Default: always

Control whether to insert line break before function locals.


lsp-wat-inlay-hint-ending#

Type: boolean

Default: t

Inlay hints that show at the end of blocks and functions.


lsp-wat-inlay-hint-index#

Type: boolean

Default: t

Inlay hints for showing idx.


lsp-wat-inlay-hint-types#

Type: boolean

Default: t

Inlay hints for indicating types.


lsp-wat-lint-deprecated#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: warn

Lint for deprecated usage.


lsp-wat-lint-implicit-module#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: allow

Lint for top-level module fields without declaring a module.


lsp-wat-lint-multi-modules#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: deny

Lint for detecting multiple modules in a single file.


lsp-wat-lint-needless-mut#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: warn

Lint for detecting mutable globals that are never mutated.


lsp-wat-lint-needless-try-table#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: warn

Lint for detecting try_table block without catch clauses.


lsp-wat-lint-shadow#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: warn

Lint for detecting shadowing.


lsp-wat-lint-unreachable#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: hint

Lint for detecting unreachable code.


lsp-wat-lint-unread#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: warn

Lint for detecting unread locals.


lsp-wat-lint-unused#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: warn

Lint for detecting unused items.


lsp-wat-lint-useless-catch#

Type: (choice (const allow) (const hint) (const warn) (const deny))

Default: warn

Lint for detecting useless catch clauses.


lsp-wat-server-command#

Type: string

Default: (wat_server)

The wat_server command.



Last update: January 13, 2026