This month we addressed some older issues, as well as adding juicy new features. Our spotlight this time is about new vscode features.
We also want to say thanks to the community for the avid support and contributions in the last few months, helping Wurst to become better than ever!
@inline
and @noinline
annotations to allow more fine grained control over inlining behavior.blizzard.j
that are used during map initialization no longer get inlined, preventing map script bloat, in particular with more than 12 players.DamageType
(PR #95, PR #97), and OnUnitEnterLeave
(PR #96) received more fixes for edge cases.trigger
API received fixes by (PR #102, PR #104)Matrices
and Quaternion
math packages which can also be used to manipulate effects (PR #111, PR #112).initlater
import from the stdlib which improves code quality.One of the more noticable improvements these last months have been on making the wurst vscode development experience more feature rich and integrated. We implemented several more features of the language protocol, which we will preset here. Additionally, the wurst file icon is now an offical part of the vscode-icons extension.
Breadcrumbs show the model hiearachy from your cursor positon. You can turn them on via View->Toggle Breadcrumbs
.
The Focus Breadcrumbs command (shortcut Ctrl
+Shift
+.
) lets you navigate your code quickly. You can also search for symbols using the Goto symbol in workspace command (Ctrl
+ t
) or using Goto symbol in file (Ctrl
+Shift
+o
).
The outline gives you a searchable overview over all elements in that file. Turn it on by rightclicking on the Explorer headline.
VSCode recognizes Wurst’s symbols, allowing for consistent renaming.
Wurst color tuples and wc3 color strings are now previewed and you can use the vscode color picker to adjust them.
When using types which are not imported into a given package yet, Wurst will suggest importing a package which will fulfill that type. If applied, the quickfix will add the import statement automatically.
While not a Wurst feature, it should be noted that everything style related you see here can be customized in some way. There are default and user created themes, take a look:
The theme used for the screenshots above, is called “Atom One Dark”
Cheers!
-Frotty