IntelliJ IDEA Plugin for RIDDL¶
The RIDDL4IDEA plugin provides comprehensive support for the RIDDL language in IntelliJ IDEA, including syntax highlighting, real-time validation, and integrated error navigation.
Installation¶
Beta Program¶
The plugin is currently in beta.
To install:
- Download the latest
.ziprelease from the GitHub Release Assets page - In IntelliJ IDEA, go to Settings > Plugins
- Click the gear icon and select Install Plugin from Disk...
- Select the downloaded
.zipfile - Restart IntelliJ IDEA
Marketplace (Coming Soon)¶
When version 1.0 is released, the plugin will be available from the JetBrains Marketplace:
- Go to Settings > Plugins > Marketplace
- Search for "RIDDL"
- Click Install
Requirements¶
| IntelliJ IDEA | 2025.3 or later (build 253+) |
| JDK | 21 or later (Temurin recommended) |
| RIDDL | 2.0 |
From 2025.3 JetBrains ships a unified IntelliJ IDEA distribution, so there is no longer a Community/Ultimate choice to make: the plugin targets that one distribution. There is no upper bound in the descriptor, so it stays installable on later releases.
Features¶
Syntax Highlighting¶
The plugin provides rich syntax highlighting for RIDDL files:
| Element | Color (Dark Theme) |
|---|---|
| Keywords | Purple (#c77dbb) |
| Punctuation | Teal (#0da19e) |
| Readability words | Yellow (#b3ae60) |
| Identifiers | Default text |
| Comments | Gray |
| Strings | Green |
| Numbers | Blue |
Customizing Colors¶
To customize the RIDDL color scheme:
- Go to Settings > Editor > Color Scheme > RIDDL
- Adjust colors for each token type
- Click Apply
The plugin includes a dark theme based on Darcula. Light themes use IDE defaults but are fully customizable.
Real-Time Validation¶
As you type, the plugin validates your RIDDL source and displays errors inline:
- Syntax errors appear immediately as you type
- Semantic errors (undefined references, type mismatches) show after parsing
- Errors appear as squiggly underlines in the editor
- Click errors in the console to jump to the source location
RIDDL Tool Window¶
The plugin adds a RIDDL tool window to the left sidebar with:
Toolbar Actions¶
| Action | Icon | Description |
|---|---|---|
| New Window | + | Create additional analysis tabs |
| Compile | Build | Run RIDDL validation |
| Settings | Gear | Open project configuration |
Console Output¶
The console displays:
- Validation results with severity (Error, Warning, Info)
- File locations with line and column numbers
- Clickable links to navigate directly to problems
Multiple Tabs¶
Create multiple tabs to work with different RIDDL configurations:
- Click the + button to create a new tab
- Configure each tab with different settings
- Right-click a tab to rename it
- Close tabs you no longer need (first tab cannot be closed)
Configuration¶
Access settings via Settings > Tools > RIDDL Project Settings or click the gear icon in the RIDDL tool window.
Path Configuration¶
| Setting | Description |
|---|---|
| Top-level .riddl file | Your project's main RIDDL file (entry point for validation) |
| Configuration file | Optional .conf file for advanced commands |
Validation Command¶
Choose which RIDDL command to run:
| Command | Purpose |
|---|---|
| about | Display RIDDL version information |
| info | Show system information |
| from | Load configuration from file (requires config file) |
Validation Options¶
Fine-tune validation behavior with these options:
Message Display¶
| Option | Description |
|---|---|
| Show warnings | Display warning messages |
| Show missing warnings | Warn about undefined references |
| Show style warnings | Warn about style violations |
| Show usage warnings | Warn about unused definitions |
| Show info messages | Display informational messages |
Output Control¶
| Option | Description |
|---|---|
| Verbose | Enable detailed output |
| Quiet | Suppress normal output |
| Debug | Enable debug information |
| Show times | Display parsing duration |
Error Handling¶
| Option | Description |
|---|---|
| Warnings are fatal | Treat warnings as errors |
| Sort by location | Group messages by file location |
Performance¶
| Option | Range | Description |
|---|---|---|
| Max parallel parsing | 1 - 2x CPUs | Threads for parallel file parsing |
| Max include wait | < 60000 ms | Timeout for include file processing |
Auto-Parse on Save¶
When enabled (default), the plugin automatically re-validates your RIDDL files whenever you save. Disable this for large projects where validation takes significant time.
Tool Window Actions¶
The RIDDL tool window provides these actions:
Compile/Validate¶
Click the Build icon or use the keyboard:
- Parses your top-level RIDDL file
- Validates all included files
- Displays results in the console
- Updates editor annotations
Navigate to Error¶
Click any error message in the console to:
- Open the containing file (if not already open)
- Jump to the exact line and column
- Position cursor at the error location
Clear Output¶
Right-click in the console and select Clear to reset the output.
File Types¶
The plugin recognizes files with the .riddl extension:
- Automatic syntax highlighting when opened
- Icon displayed in project tree
- Full validation support
Usage Tips¶
Setting Up a New Project¶
- Create your main
.riddlfile (e.g.,myproject.riddl) - Open RIDDL Project Settings
- Set the Top-level .riddl file to your main file
- Enable desired validation options
- Click Compile to validate
Working with Include Files¶
The plugin follows all include directives from your top-level file:
// myproject.riddl
domain MyProject is {
include "contexts/orders.riddl"
include "types/common.riddl"
}
All included files are validated together, ensuring cross-file references resolve correctly.
Understanding Validation Messages¶
Messages include severity and location:
Error: [orders.riddl:42:15] Undefined reference to type 'CustomerID'
Warning: [types.riddl:10:1] Missing brief description for type 'Address'
Click the message to navigate to orders.riddl, line 42, column 15.
Performance Tips¶
For large projects:
- Disable Auto-parse on save and validate manually
- Increase Max parallel parsing on multi-core systems
- Use separate tool window tabs for different subsystems
Keyboard Shortcuts¶
The plugin does not register global keyboard shortcuts. All actions are accessible through:
- The RIDDL tool window toolbar
- Right-click context menus
- Settings dialogs
Standard IntelliJ shortcuts work in RIDDL files:
| Shortcut | Action |
|---|---|
| Ctrl+S (Cmd+S on Mac) | Save (triggers auto-validation if enabled) |
| Ctrl+Shift+F | Reformat code |
| Ctrl+/ | Toggle line comment |
| Ctrl+Shift+/ | Toggle block comment |
Troubleshooting¶
Plugin Not Loading¶
- Verify IntelliJ IDEA version is 2025.3 or later (build 253+)
- Check Settings > Plugins > Installed for RIDDL4IDEA
- Try disabling and re-enabling the plugin
No Syntax Highlighting¶
- Verify file has
.riddlextension - Check Settings > Editor > File Types for RIDDL registration
- Restart IntelliJ IDEA
Validation Not Running¶
- Ensure Top-level .riddl file is configured in settings
- Check the file path is correct and file exists
- Look for error messages in the RIDDL console
Slow Validation¶
- Reduce Max parallel parsing if memory is limited
- Disable Show style warnings and Show usage warnings for faster runs
- Consider splitting large models into smaller include files
Authoring RIDDL¶
For tips on writing effective RIDDL source files, see the Authoring RIDDL Sources guide.
Support¶
- Bug Reports: GitHub Issues
- Questions: support@ossuminc.com
- Contributing: GitHub Repository
License¶
Apache License 2.0
Copyright 2024 Ossum Inc.