diff --git a/CHANGELOG.md b/CHANGELOG.md index 8264fc1..69a71df 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,34 @@ # Change Log +## [1.9.0] 2024.06.14. + +### Added + +- Code completion (for HLSL functions) +- Document highlights (for HLSL functions) +- Hover (for HLSL functions) +- Document symbols (for HLSL functions) +- Inlay hints (for HLSL functions) +- Signature help (for HLSL functions) +- Go to definition (for user HLSL functions) +- Go to declaration (for user HLSL functions) +- Go to implementation (for user HLSL functions) +- Rename (for all language constructs) +- Find all references (for all language constructs) +- Color picker (for HLSL variable initialization) + +### Improved + +- Adding descriptions to several DSHL keywords, modifiers, types, channels, functions, and properties in code completion +- Adding shader stages and compile targets to code completion, syntax highlight and snippets +- Updated packages + +### Fixed + +- Fixing an error where the function name range wasn't contained by the whole function range +- Removing backticks from DSHL code completion descriptions, because Visual Studio can't handle markdown +- Making loop, if, and switch scopes more accurate + ## [1.8.0] 2024.05.14. ### Added diff --git a/Dagor-Shader-Language-Server b/Dagor-Shader-Language-Server index 42e6ea1..9451c55 160000 --- a/Dagor-Shader-Language-Server +++ b/Dagor-Shader-Language-Server @@ -1 +1 @@ -Subproject commit 42e6ea187b1a1f5997f28aecf586ba51c0a1442c +Subproject commit 9451c55a2290e99d273339a41b42a544f026dc8e diff --git a/README.md b/README.md index 13eebfa..278f7a9 100644 --- a/README.md +++ b/README.md @@ -29,25 +29,25 @@ The extension provides types, variables, functions, constructors, keywords, modi ### Signature help -The extension can display a signature helper for DSHL functions, and macros. +The extension can display a signature helper for functions, and macros. ![signature help](res/screenshots/signature-help.gif) ### Document highlights -The extension can highlight all the occurrences of the selected DSHL variable, function, shader, block statement, macro, HLSL variable, struct, class, interface, enum, or define in the file. +The extension can highlight all the occurrences of the selected DSHL variable, function, shader, block statement, macro, HLSL variable, function, struct, class, interface, enum, or define in the file. ![highlights](res/screenshots/highlights.gif) ### Hover -The extension can provide useful information if you hover over DSHL variables, functions, shaders, block statements, macros, HLSL variables, structs, classes, interfaces, enums, or defines. +The extension can provide useful information if you hover over DSHL variables, functions, shaders, block statements, macros, HLSL variables, functions, structs, classes, interfaces, enums, or defines. ![hover](res/screenshots/hover.gif) ### Document symbols -The extension can provide outline information and breadcrumbs about DSHL variables, shaders, block statements, macros, HLSL variables, structs, classes, interfaces, enums, and defines. You can also easily find them by typing a @ into the Command Palette. +The extension can provide outline information and breadcrumbs about DSHL variables, shaders, block statements, macros, HLSL variables, functions, structs, classes, interfaces, enums, and defines. You can also easily find them by typing a @ into the Command Palette. ![symbols](res/screenshots/symbols.gif) @@ -59,25 +59,25 @@ The extension can format the whole document, the selected region, or regions. ### Inlay hints -The extension can show DSHL function, macro, and HLSL define parameters in the source code. +The extension can show DSHL function, macro, and HLSL function, define parameters in the source code. ![inlay hints](res/screenshots/inlay-hints.png) ### Go to / Peek definitions -You can find (go to / peek) the definition of a DSHL variable, function, shader, block statement, macro, HLSL variable, struct, class, interface, enum, define, or to the included file. +You can find (go to / peek) the definition of a DSHL variable, function, shader, block statement, macro, HLSL variable, function, struct, class, interface, enum, define, or to the included file. ![definitions](res/screenshots/definition.gif) ### Go to / Peek declarations -You can find (go to / peek) the declaration of a DSHL variable, function, shader, block statement, macro, HLSL variable, struct, class, interface, enum, define, or to the included file. +You can find (go to / peek) the declaration of a DSHL variable, function, shader, block statement, macro, HLSL variable, function, struct, class, interface, enum, define, or to the included file. ![declarations](res/screenshots/declaration.gif) ### Go to / Peek implementations -You can find (go to / peek) the implementation of a DSHL function, shader, block statement, macro, HLSL struct, class, interface, enum, define, or to the included file. +You can find (go to / peek) the implementation of a DSHL function, shader, block statement, macro, HLSL function, struct, class, interface, enum, define, or to the included file. ![implementations](res/screenshots/implementation.gif) @@ -91,6 +91,18 @@ You can find (go to / peek) the type definition of an HLSL variable. The extension can show the inheritance-tree of HLSL structs, classes, and interfaces. +### Rename + +The extension can rename DSHL variables, macros, macro parameters, HLSL types, enums, enum members, variables, functions, shaders, blocks, and defines. + +### Find all references + +The extension can find all references of DSHL variables, macros, macro parameters, HLSL types, enums, enum members, variables, functions, shaders, blocks, and defines. + +### Color picker + +The extension can show a color picker for HLSL `float3` or `float4` variable initializations. + ### Comment toggling ![comment toggling](res/screenshots/comment-toggle.gif) @@ -135,6 +147,22 @@ If you have any problems or feature request for the extension, feel free to crea For more information, see the [changelog](CHANGELOG.md). +### 1.9.0 + +- Code completion (for HLSL functions) +- Document highlights (for HLSL functions) +- Hover (for HLSL functions) +- Document symbols (for HLSL functions) +- Inlay hints (for HLSL functions) +- Signature help (for HLSL functions) +- Go to definition (for user HLSL functions) +- Go to declaration (for user HLSL functions) +- Go to implementation (for user HLSL functions) +- Rename (for all language constructs) +- Find all references (for all language constructs) +- Color picker (for HLSL variable initialization) +- Several improvements, and bugfixes + ### 1.8.0 - Code completion (for HLSL struct, class, and enum members) diff --git a/package.json b/package.json index 5e19042..683e3e3 100644 --- a/package.json +++ b/package.json @@ -3,7 +3,7 @@ "displayName": "Dagor Shader Language Support", "description": "Language support extension for the Dagor Shader Language.", "publisher": "gaijin", - "version": "1.8.0", + "version": "1.9.0", "license": "BSD-3-Clause", "repository": { "type": "git",