TMDL Extension for Visual Studio CodeOverviewA Visual Studio Code extension that adds language support for the Tabular Model Definition Language TMDL, enabling developers to work directly with the code behind semantic model
Getting Started
🐞Feedback is welcome and appreciated! If you come across an issue/bug with the extension or have a feature request, please file an issue. 💡 VSCode Theme SupportTMDL syntax highlighting works best in the Default Light and Dark Modern themes in Visual Studio Code.
Features
🚧 Coming soon
Semantic HighlightingSemantic highlighting enhances readability by providing consistent and context-aware styling—for enums, errors, integers and strings in property values, as well as strings and comments in Power Query (PQ) and many more! DAX expressions support highlighting of functions, reserved words, variables, strings and comments. VS Code uses TextMate grammars for basic syntax highlighting via regex-based tokenization. Semantic tokenization adds context-aware highlights from language servers, enhancing the base highlighting improving the overall readability of TMDL documents.
Code FormattingAutomatically organizes TMDL code for enhanced readability and consistency along with enhanced formatting for embedded Power Query within TMDL with soon integration of DAX query formatting. Error DiagnosticsIdentifies and highlights errors in TMDL code directly within the editor. Also detects syntax issues in embedded Power Query and DAX expressions. Error messages are shown in the user's language based on locale settings for TMDL and Power Query. Support for localized errors in DAX expressions will arrive soon.
AutocompleteProvides smart, context-aware suggestions while editing TMDL documents. Autocomplete support also includes embedded Power Query and DAX queries. Hover InformationDisplays helpful contextual information when hovering over elements in TMDL documents. Supports both TMDL and embedded Power Query, with future plans to support DAX as well. Code Actions
BreadcrumbsAllows easy navigation within a TMDL document showing the hierarchical structure of TMDL code. Limitations
TrademarksThis project may contain trademarks or logos for projects, products, or services. Authorized use of Microsoft trademarks or logos is subject to and must follow Microsoft's Trademark & Brand Guidelines. Use of Microsoft trademarks or logos in modified versions of this project must not cause confusion or imply Microsoft sponsorship. Any use of third-party trademarks or logos are subject to those third-party's policies. |