Skip to content
| Marketplace
Sign in
Visual Studio Code>Programming Languages>Rune-DSL (.rosetta) Language supportNew to Visual Studio Code? Get it now.
Rune-DSL (.rosetta) Language support

Rune-DSL (.rosetta) Language support

Nicholas Moger

|
27 installs
| (0) | Free
Language support and IDE features for Rune DSL models (FINOS CDM, DRR, ISO 20022)
Installation
Launch VS Code Quick Open (Ctrl+P), paste the following command, and press enter.
Copied to clipboard
More Info

Rune DSL (.rosetta) Language Support

Version Rune DSL (Up-To and Below) VS Code License

Full-featured IDE support for Rosetta domain models - FINOS CDM, DRR, ISO 20022, and custom financial models.

Rich language tooling for Rune DSL (.rosetta) files with interactive visualization, intelligent code navigation, and model exploration. Note this should not be confused with the 'Rosetta' (Regnosys Ltd) which is a fully featured SaaS Platform for working with Rune DSL files. This plugin is designed to complement use of this platform but does not require it.

To that end any mention of 'Rosetta' herein relates to the file extension, not the licensed platform.


Features at a Glance

Feature Description
Graph Explorer Interactive D3 type visualization
Rune Explorer Sidebar Browse types/enums/functions hierarchically
Go to Definition Ctrl+Click to jump to type definitions
Find References Find all usages across the model
Inline Type Diagrams ASCII hierarchy diagrams on hover
Mermaid Export Generate diagrams for documentation
Syntax Highlighting Full TextMate grammar for .rosetta files
CodeLens Reference counts and graph links
Validation Deprecated type warnings with suggestions

Screenshots

Graph Explorer

Interactive D3 visualization of type hierarchies with zoom, pan, and click-to-expand.

Rune Explorer Sidebar

Hierarchical namespace tree with color-coded type icons.

Inline Type Diagrams

Hover over any type to see parent/child relationships.


Quick Start

For Pre-built Templates (Recommended)

If you're using a pre-built template (DRR, CDM, ISO 20022):

  1. Download your template from the platform
  2. Extract to a folder
  3. Open the folder in VS Code
  4. Install this extension
  5. Start coding - all features are ready to use!

Pre-built templates include the indices/ folder required for full LSP features.

For Custom Models

  1. Install this extension
  2. Create .rosetta files in your workspace
  3. Syntax highlighting works immediately
  4. For full LSP features, add a runeplugin.json configuration

Installation

From Extension Marketplace

Available on both VS Code Marketplace and Open VSX (for VSCodium users).

  1. Open VS Code or VSCodium
  2. Go to Extensions (Ctrl+Shift+X)
  3. Search for "Rosetta Model Explorer"
  4. Click Install

Or via Quick Open (Ctrl+P):

ext install nicholas-moger.rune-dsl-language-support

From VSIX

  1. Download the .vsix file from GitHub releases
  2. In VS Code/VSCodium: Extensions > ... menu > "Install from VSIX..."
  3. Select the downloaded file

Feature Details

Rune Explorer Sidebar

Browse your entire model in a dedicated panel:

  • Namespace Tree - Hierarchical view organized by package
  • Type Icons - Color-coded: Types (blue), Enums (purple), Functions (green)
  • Click to Navigate - Jump directly to any definition
  • Search & Filter - Quickly find types across the model

Graph Explorer

Interactive D3 visualization in the sidebar or full editor window:

  • Type Hierarchy - See parent types and inheritance chains
  • Attribute Relationships - Visual connections between types
  • Zoom & Pan - Navigate large graphs easily
  • Pop-out Window - Open in full editor tab
  • Click Navigation - Click any node to explore its relationships

Inline Type Diagrams

Hover over any type name to see an ASCII hierarchy diagram:

      ┌─────────────┐
      │   Product   │
      └──────┬──────┘
             │ extends
      ┌──────┴──────┐
  ──▶ │    Trade    │ [type]
      └──────┬──────┘
       ┌─────┴─────┐
  EquityTrade   FxTrade

Code Intelligence

Feature Shortcut Description
Go to Definition Ctrl+Click / F12 Jump to type definitions
Find References Shift+F12 Find all usages of a type
Document Outline Ctrl+Shift+O Navigate file structure
Workspace Symbols Ctrl+T Search all symbols globally
Hover Information Hover View type documentation
Auto-completion Ctrl+Space Intelligent suggestions

CodeLens

Above every type definition, see:

  • Reference counts - How many times this type is used
  • Graph link - Click to visualize in Graph Explorer

Validation

Real-time feedback using pre-built indices:

  • Deprecated Types - Strikethrough with replacement suggestions
  • Unknown Types - Warnings for missing references
  • Problems Panel - All issues in one place (Ctrl+Shift+M)

Mermaid Export

Generate Mermaid diagrams for documentation:

classDiagram
    Product <|-- Trade
    Trade <|-- EquityTrade
    Trade <|-- FxTrade
    class Trade {
        +Date tradeDate
        +Party[] parties
        +Product product
    }

Syntax Highlighting

Full TextMate grammar support including:

  • Keywords (type, enum, func, rule, namespace)
  • Type references and attributes
  • Documentation blocks (<"...">)
  • Annotations and conditions

Supported Models

Model Description
FINOS CDM Common Domain Model for derivatives
DRR Digital Regulatory Reporting
ISO 20022 Financial messaging standard
Custom Models Any Rosetta-based domain model

Requirements

Minimum

  • VS Code 1.85.0 or higher

For Full Features

  • Pre-built indices from Rune toolchain or pre-built template
  • Templates (DRR, CDM, ISO 20022) include indices ready to use

Platform Support

Platform Status
Windows 10/11 (x64) Fully supported
macOS Supported
Linux Supported
WSL Supported

Configuration

Access settings via File > Preferences > Settings and search for "Rosetta".

Feature Toggles

Setting Default Description
rosetta.features.hover true Show type info on hover
rosetta.features.goToDefinition true Enable Ctrl+Click navigation
rosetta.features.findReferences true Enable Shift+F12 references
rosetta.features.documentSymbols true Enable outline and symbol search
rosetta.features.syntaxHighlighting true Enable syntax coloring

Graphical Settings

Setting Default Description
rosetta.graphical.graphExplorer true Enable Graph Explorer panel
rosetta.graphical.inlineDiagrams true Show type hierarchy on hover
rosetta.graphical.codeLensGraph true Show Graph link in CodeLens
rosetta.graphical.mermaidExport true Enable Mermaid diagram export

Validation Settings

Setting Default Description
rosetta.validation.enabled true Enable inline validation
rosetta.validation.unknownTypes true Warn about unknown type references
rosetta.validation.deprecatedTypes true Show deprecated type warnings

Commands

Command Description
Rune: Show Status Open status menu with feature info
Rune: Refresh Explorer Reload the Rune Explorer tree
Rune: Open Graph Explorer Focus the Graph Explorer panel
Rune: Show Type in Graph Display type at cursor in Graph Explorer
Rune: Copy as Mermaid Diagram Copy type hierarchy as Mermaid markdown
Rune: Restart Language Server Restart the LSP server

Status Bar

The status bar shows the current mode:

Status Meaning
Rosetta ✓ Full LSP mode - all features enabled
Rosetta ⚠ Syntax-only mode - highlighting without LSP
Rosetta ○ Inactive - no Rosetta files detected

Click the status bar item for detailed feature status.


Troubleshooting

Features Not Working

  1. Check the status bar - Click to see feature status
  2. Verify indices exist - Look for indices/_tier1/manifest.json
  3. Try refreshing - Run Rune: Refresh Explorer command
  4. Check Output - View > Output > Rosetta LSP for errors

Graph Explorer Empty

The Graph Explorer requires pre-built indices:

  • Use a pre-built template (DRR, CDM, ISO 20022)
  • Or build indices with the Rune toolchain

Performance Issues

  • Use pre-built templates for best performance
  • Large models may have slower initial index loading

Known Limitations

  • Uses offline mode with pre-built indices
  • Live Java-based validation planned for future release
  • Code generation features coming soon

Version History

6.0.1 (Current)

  • Complete rewrite from version 5
  • Initial marketplace release
  • Graph Explorer with D3 visualization
  • Inline type diagrams on hover
  • Mermaid diagram export
  • Rune Explorer sidebar
  • CodeLens with Graph links
  • Index-based validation
  • Comprehensive settings

Roadmap

  • Java LSP integration (live validation)
  • Code generation support
  • Advanced refactoring features

Attribution & Licensing

License: Apache 2.0 - See LICENSE for details.

This extension incorporates components from the open-source Rune DSL project maintained by FINOS.

Related Resources

  • FINOS CDM: finos.org/projects/common-domain-model
  • Rune DSL: github.com/finos/rune-dsl
  • Rosetta Docs: docs.rosetta-technology.io

Feedback & Issues

  • GitHub Issues: github.com/regspec/platform/issues
  • Feature Requests: Welcome!

Disclaimer

This extension is provided "as-is" without warranty of any kind. Evaluate suitability before use in production environments.

This is a community extension and is not affiliated with, endorsed by, or sponsored by Regnosys Ltd, FINOS, or Microsoft.


Built with the Rune DSL toolchain and VS Code Extension API

  • Contact us
  • Jobs
  • Privacy
  • Manage cookies
  • Terms of use
  • Trademarks
© 2026 Microsoft