Language Server for the Dagor Shader Language. At the moment it's work in progress. There is a Visual Studio Code client, and a Visual Studio client. In order to use the language server, you have to install Node.js if you're not on x64 architecture.
- Diagnostics (at the moment, the compiler only runs when the user saves the document)
- Formatting (whole document, range, ranges)
- Folding ranges (for blocks and DSHL macros)
types | variables | functions | shaders | block statements | macros | includes | keywords, modifiers | |
---|---|---|---|---|---|---|---|---|
Code completion | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Go to definition | ✓ | ✓ | ✓ | ✓ | ✓ | |||
Go to declaration | ✓ | ✓ | ✓ | ✓ | ✓ | |||
Go to implementation | ✓ | ✓ | ✓ | ✓ | ||||
Hover | ✓ | ✓ | ✓ | ✓ | ✓ | |||
Document highlights | ✓ | ✓ | ✓ | ✓ | ✓ | |||
Signature help | ✓ | ✓ | ||||||
Inlay hints | ✓ | ✓ | ||||||
Document symbols | ✓ | ✓ | ✓ | ✓ | ||||
Semantic highlight | ✓ | |||||||
References | ✓ | ✓ | ✓ | ✓ | ✓ | |||
Rename | ✓ | ✓ | ✓ | ✓ | ✓ |
types | variables | functions | defines | includes | keywords, modifiers, semantics, attributes, preprocessor directives | |
---|---|---|---|---|---|---|
Code completion | ✓ | ✓ | ✓ | ✓ | ✓ | ✓ |
Go to definition | ✓ | ✓ | ✓ | ✓ | ✓ | |
Go to declaration | ✓ | ✓ | ✓ | ✓ | ✓ | |
Go to implementation | ✓ | ✓ | ✓ | ✓ | ||
Go to type definition | ✓ | |||||
Hover | ✓ | ✓ | ✓ | ✓ | ||
Document highlights | ✓ | ✓ | ✓ | ✓ | ||
Signature help | ✓ | |||||
Inlay hints | ✓ | ✓ | ||||
Document symbols | ✓ | ✓ | ✓ | ✓ | ||
Type hierarchy | ✓ | |||||
Semantic highlight | ✓ | ✓ | ||||
Rename | ✓ | ✓ | ✓ | ✓ | ||
Color picker | ✓ |
- Syntax highlight
- Code snippets
- Comment toggling
- Bracket matching
- Auto closing pairs
- Surrounding pairs
- Folding regions
- Indentation
If you have any problems or feature request for the language server, feel free to create an issue.