This extension provides comprehensive support for the Ciaramella Audio DSP programming language, including syntax highlighting and seamless integration with the Zampogna compiler.
Features
Syntax Highlighting: Full color support for .crm files (keywords, feedback operators, DSP constants).
Command Palette Integration: Access all compiler targets directly via the Command Palette (Cmd+Shift+P).
Example Code Generator: Quickly insert boilerplate code for oscillators and filters.
Smart Block Discovery: Automatically detects available blocks in your file for easy selection during compilation.
Auto-Patching: Automatically fixes common compiler output issues (like missing #include <cmath> or Math mapping in JS).
Output Channel: Dedicated output stream to monitor compiler diagnostic messages and success status.
Prerequisites
You must have the zampogna compiler installed globally on your machine:
npm install -g zampogna
Supported Targets
The extension supports all major Zampogna targets:
C++: Generate C++ classes/code.
JavaScript: Web Audio-compatible JS code.
MATLAB: Generation for MATLAB environments.
D: Generation for the D language.
Usage
Open a .crm file.
Press Cmd+Shift+P (macOS) or Ctrl+Shift+P (Windows/Linux).
Type Ciaramella to see all available commands.
Select a command to compile or insert example code.
Credits
Ciaramella and Zampogna are developed by Orastron in collaboration with the University of Udine.
Visit ciaramella.dev for more information.