NoesisGUI XAML Tools for Visual Studio Code
This extension provides a rich editing experience for NoesisGUI and the XAML markup language, using the NoesisGUI language server. The latest release of XAML Tools can be installed from the Visual Studio Code Marketplace.
NoesisGUI is a lightweight cross-platform user interface library optimized for games and real-time applications. It brings the power of XAML and WPF to Unity, Unreal and proprietary engines.
Visit our Documentation for more details and our Forums for feedback and suggestions.
Completion support for nodes and properties
Start typing a XAML tag or attribute and XAML Tools will show you a list of available symbols (controls, properties, etc.) at that location.
Syntax and semantic error reporting
XAML Tools shows you syntax and semantic errors as you type.
Open the XAML Preview panel and see a rendered preview of the active XAML document. This render is generated by NoesisGUI each time you make a change to the active document.
Note: XAML Preview is not available when connected to the Unity or Unreal language servers.
Color decorators and pickers
Color decorators allow you to see the current color of all Brush attribute properties in your document. Clicking a decorator will allow you to select a new value using the color picker.
XAML Tools connects to a NoesisGUI language server, which is built on the NoesisGUI library, to provide language capabilities for XAML. The language server also provides information on supported types, which includes controls, extensions, converters, and view models.
Our Unreal and Unity plugins contain language servers, which are active while the Unreal/Unity editor is running. An editor language server will support all of the types available in the current Unreal/Unity project. XAML Tools will prioritise connecting to an editor language server, this process is automatic.
If no active language server is found, XAML Tools will connect to an embedded language server. This embedded language server is limited to native NoesisGUI types, custom classes are not supported.
You can verify which language server you are currently connected to by checking the status bar on the bottom right of the VSCode window.