Language Features for Ungrammar filesUngrammar is a novel data format
for defining concrete syntax trees. This project aims to integrate Ungrammar
language support into VS Code, providing features to streamline the creation
and modification of FeaturesIntelliSense and ValidationWe offer up node name suggestions as you type with IntelliSense. You can also
manually see suggestions with the Trigger Suggestions command ( We also perform structural and value verification giving you red squiggles.
To disable validation, use the Quick NavigationUngrammar files can get large and we support quick navigation to properties
using the Go to Symbol command ( HoversWhen hovering over nodes within an Ungrammar data structure, detailed context-specific information is displayed, aiding in understanding the code's structure and relationships. FormattingYou can format your Ungrammar document using Before formatting: After formatting: FoldingYou can fold regions of source code using the folding icons on the gutter between line numbers and line start. Folding regions are available for all object and array elements. Before folding: After folding: AnnotationsWe provide informative annotations displayed above code elements to aid in code comprehension. These annotations offer quick access to references, implementation details, and other relevant context, enhancing code navigability and understanding. Expand and Shrink SelectionYou can extend (
Find All ReferencesYou can find all references using Go to DefinitionYou can navigate to the definition of an node using Before Go to Definition, we are at line 657: After Go to Definition, we are at line 588: Highlight RelatedYou can highlight related constructs upon hovering over a node. This feature displays all references to the selected node within the current file, enhancing code navigation and understanding. RenameYou can efficiently rename symbols across your codebase using the Code ActionsYou can enhance your code formatting with our powerful code actions. Quickly
and easily rename nodes to specific casing styles including Semantic Syntax HighlightingWe highlight the code semantically. For example, "Rule" might be colored
differently depending on whether "Rule" is an |