some-sass-language-server

1.2.1 • Public • Published

Some Sass Language Server

This is the SCSS language server that powers the Some Sass extension for Visual Studio Code, available as an independent and reusable language server.

The language server provides:

  • Full support for @use and @forward, including aliases, prefixes and hiding.
  • Workspace-wide code navigation and refactoring, such as Rename Symbol.
  • Rich documentation through SassDoc.
  • Language features for %placeholder-selectors, both when using them and writing them.
  • Suggestions and hover info for built-in Sass modules, when used with @use.

This language server is designed to run alongside the VS Code CSS language server.

Usage

See Editors with clients. If your editor is not listed, refer to your editor's documentation for integrating with a language server using LSP.

You can install the language server with npm:

npm install --global some-sass-language-server

Then start the language server like so:

some-sass-language-server --stdio

Options

--debug – runs the development build of the language server, helpful to get more context if the server crashes

Workspace configuration

The language server requests configuration via workspace/configuration on the somesass key. All fields are optional.

  • suggestAllFromOpenDocument – VS Code has built-in code suggestions for symbols declared in the open document, so the default behavior for this server is to not include them. For other editors, you may want to turn this on (default: false).
  • suggestFromUseOnly – If your project uses the new module system with @use and @forward, you may want to only include suggestions from your used modules (default: false).
  • suggestionStyle - controls the style of suggestions for mixins and placeholders, either nobracket, bracket or all (includes both, if applicable) (default: all).
  • scannerExclude – array of minimatch/glob patterns that the scanner ignores (default: ["**/.git/**", "**/node_modules/**", "**/bower_components/**"]).
  • scannerDepth – limit the directory depth of the initial scan for .scss files (default: 30).
  • suggestFunctionsInStringContextAfterSymbols – customize when to suggest functions inside strings (default: (+-*%).

The options can also be passed as initialization options, on the settings key.

Capabilities

This language server is designed to run alongside the VS Code CSS language server.

Comparison of vscode-css-languageservice and some-sass-language-service
Request Capability vscode-css some-sass
textDocument/codeAction CSS code actions
SCSS code actions
textDocument/colorPresentation Color picker for CSS colors
textDocument/completion CSS completions
SCSS same-document completions
SCSS workspace completions
SassDoc completions
textDocument/definition Same-document definition
Workspace definition
textDocument/documentColor CSS colors
SCSS variable colors
textDocument/documentHighlight Highlight references in document
textDocument/documentLink Navigate to linked document
textDocument/documentSymbol Go to symbol in document
textDocument/foldingRange Code block folding
textDocument/formatting Format document
textDocument/hover CSS hover info
SCSS hover info
SassDoc hover info
textDocument/rangeFormatting Format selection
textDocument/references CSS references
SCSS references
textDocument/rename Same-document rename
Workspace rename
textDocument/selectionRange Ranges for expand/shrink selection
textDocument/signatureHelp SCSS function/mixin signature help
workspace/symbol Go to symbol in workspace

Editors with clients

See this list.

Contributing

See CONTRIBUTING.md.

Package Sidebar

Install

npm i some-sass-language-server

Weekly Downloads

275

Version

1.2.1

License

MIT

Unpacked Size

20.8 MB

Total Files

14

Last publish

Collaborators

  • wllm