svelte-language-server icon indicating copy to clipboard operation
svelte-language-server copied to clipboard

A WIP language server for Svelte

Work is being continued in the official svelte language-tools repo

Svelte Language Server

A language server (implementing the language server protocol) for Svelte.

What is a language server?

From https://microsoft.github.io/language-server-protocol/overview

The idea behind a Language Server is to provide the language-specific smarts inside a server that can communicate with development tooling over a protocol that enables inter-process communication.

In simpler terms, this allows editor and addon devs to add support for svelte specific 'smarts' (e.g. diagnostics, autocomplete, etc) to any editor without reinventing the wheel.

Features

Svelte language server is under development and the list of features will surely grow over time.

Currently Supported:

  • Svelte
  • HTML (via vscode-html-languageservice)
    • Hover info
    • Autocompletions
    • Emmet
    • Symbols in Outline panel
  • CSS / SCSS / LESS (via vscode-css-languageservice)
    • Diagnostic messages for syntax and lint errors
    • Hover info
    • Autocompletions
    • Formatting (via prettier)
    • Emmet
    • Color highlighting and color picker
    • Symbols in Outline panel
  • TypeScript / JavaScript (via TypeScript)
    • Diagnostics messages for syntax errors, semantic errors, and suggestions
    • Hover info
    • Formatting (via prettier)
    • Symbols in Outline panel
    • Autocompletions
    • Go to definition
    • Code Actions

How can I use it?

Install a plugin for your editor: