DSLLang is a Visual Studio Code extension that provides seamless integration with the DSL (Domain Specific Language) development environment. This extension allows you to create, edit, and visualize various types of DSL files directly within VSCode, enhancing your development workflow.
Features
Embedded DSL editor via iframe integration with the DSL development platform
Support for multiple file formats:
XML
File operations:
Open existing DSL files
Create new DSL files
Save files back to your workspace
Visual editing capabilities for supported formats
Getting Started
Supported File Operations
Opening Files: Right-click on a supported file and select "Open with DSLLang" or use the command "DSLLang: Open File"
Creating New Files: Use the DSL editor interface to create new content, then save it back to your workspace
Editing Files: Make changes in the embedded editor and save back to your workspace
Format-Specific Operations:
GCL: Use "DSLLang: Load GCL" command
Solidity: Use "DSLLang: Load Solidity" command
XML: Use "DSLLang: Load XML" command
Commands
The extension provides the following commands:
dslcommand.open: Opens the DSL editor in a new webview panel
dslcommand.showInWebview: Reveals the DSL editor panel if it's already open
dslcommand.loadGCL: Opens the GCL editor for the selected file
dslcommand.loadSolidity: Opens the Solidity editor for the selected file
dslcommand.loadXML: Opens the XML editor for the selected file
dslcommand.openFile: Opens any supported file in the appropriate editor
Security Considerations
The extension creates a secure environment for the embedded DSL editor with appropriate security policies:
Content Security Policy (CSP) settings to prevent XSS attacks
Sandboxed iframe with restricted permissions
Secure message passing between VSCode and the embedded editor
Troubleshooting
Common Issues
Editor not loading: Ensure you have an active internet connection as the editor requires access to the DSL development server
File not saving: Check that you have write permissions to the workspace folder
Cross-origin errors: These may occur if there are network restrictions preventing access to the DSL server
Logs
To access logs for troubleshooting:
Open the Output panel (Ctrl+Shift+U or Cmd+Shift+U)
Select "DSLLang" from the dropdown menu
Feedback and Contributions
We welcome feedback and contributions to improve the DSLLang extension. Please submit issues and pull requests to our repository.
License
[Include appropriate license information here]
Acknowledgements
This extension integrates with the DSL development platform provided by OX Hainan.