GeneXus Text KB Support
GeneXus language support for Visual Studio Code — syntax highlighting, region-aware embedded languages, diagnostics, region-aware editing, and a dedicated file explorer for filesystem-based GeneXus KBs.
Requirements
- Visual Studio Code
1.109.0 or newer.
Quick Start
- Install the extension from the marketplace.
- Open any
*.gx file (typically a *.main.gx object file).
- A notification confirms:
GeneXus language server connected successfully.
If the language mode is not detected automatically, run Change Language Mode and select GeneXus.
Features
Syntax Highlighting
All *.gx files are automatically associated with the GeneXus language. Syntax highlighting includes embedded language support for mixed-content files:
| Region |
Embedded Language |
#documentation |
Markdown |
#properties |
TOML |
| Main region (when detected) |
XML or YAML |
| Named regions (when detected) |
XML or YAML |
Diagnostics
When the language server is running, the extension provides:
- Diagnostics — errors and warnings shown inline as you edit.
Semantic Highlighting
The extension requests semantic token information from the language server for richer, more accurate syntax coloring.
Final colors depend on your active VS Code theme. If colors look plain, try a theme with semantic token support and confirm editor.semanticHighlighting.enabled is not disabled.
Built-In Validation
The language server detects duplicated part definitions and reports diagnostics in all affected files:
- Repeated part markers inside the same
*.main.gx file.
- Conflicts between a part declared in
*.main.gx and an external part file in the same folder.
External part files follow the naming pattern:
{ObjectName}.{ObjectType}.{PartName}.gx
Example: Client.transaction.variables.gx
Hovering over a region marker (#section / #end) shows a tooltip with:
- The region name and its detected embedded language.
- Dedicated help for XML and YAML main regions.
Region Refactoring Actions
Two code actions are available for managing regions between files:
- Extract to file — moves a
#section ... #end block to a sidecar file and removes it from the main file.
- Include this region on the main file — inserts a sidecar file's content as a region in
*.main.gx and deletes the sidecar file.
Access these via the lightbulb (💡) or Quick Fix menu while the cursor is on a region marker.
File Icons
The extension contributes a GeneXus File Icons theme with icon mappings for GeneXus object files. You can activate it from File > Preferences > File Icon Theme.
GeneXus Tree View
A dedicated Explorer view groups GeneXus object files with custom icons and virtual nesting, keeping multi-part objects tidy without affecting the native Explorer.
Part files are displayed with simplified names:
{ObjectName}.{ObjectType}.{PartType}.{Extension} → shown as {ObjectName}.{Extension}
The tree view is opt-in and does not change any global VS Code settings.
Commands
| Command |
Description |
| GeneXus: Apply GeneXus Workspace Settings |
Shows the GeneXus tree view in the Explorer pane. |
| GeneXus: Refresh GeneXus tree view |
Refreshes tree contents after file changes. |
| GeneXus: Remove GeneXus Workspace Settings |
Hides the tree view and removes its workspace settings. |
Reveal in GeneXus Tree View
Right-click any open *.gx file — in the editor tab or in the Open Editors list — and select GeneXus: Reveal in GeneXus tree view to locate and highlight that file in the GeneXus tree view.
This option is only visible when the GeneXus tree view is enabled.
Release notes
v1.0.0 BETA
This is still an extension in development