FAQs
Troubleshooting
Section titled “Troubleshooting”I can't see any interface when I compile an instrument from my .csd file in VS Code?
When the VS Code extension compiles an instrument for the first time, it attempts to create a new settings.json file. This file is read by the Cabbage service application running in the background. It includes a path to several .js files required for parsing the Cabbage section of the .csd file. If this path is empty, the UI will not appear. The easiest fix is to use the 'Reset CabbageApp settings file' command to clear the file. The next time you compile an instrument, the UI should load correctly.
My plugin loads fine, but my custom UI is unresponsive?
The most common cause of this issue is an error in your JavaScript code. If the plugin's UI is unresponsive, you won't be able to open the developer tools, making debugging more challenging. The simplest solution is to comment out portions of your code incrementally. Start by commenting out widgets in the Cabbage section of your .csd file to identify the widget causing the issue. Once identified, review the corresponding .js file. Comment out larger chunks of code initially. If the UI becomes responsive, albeit without full functionality, start uncommenting sections gradually until you pinpoint the error in your code.
Something is wrong but I don't know what?
If something is not working as expected, you should enable the verbose logging setting in the extension settings. This will generate an extension log of messages in the Cabbage output console, which may help diagnose the issue. Additionally, you can launch the developer web tools panel via the command palette. The Cabbage UI in VS Code is a web panel—essentially an embedded web page. The developer console allows you to inspect elements and review the console log for errors. Both of these features should help you identify the problem. Once you’ve pinpointed the issue, you can post the logs and relevant information to the Cabbage user forum for further assistance.
About Cabbage
Section titled “About Cabbage”Who makes Cabbage?
Cabbage is developed by Rory Walsh. You can reach him, and other Cabbage users, on the forum.
Can I sell plugins made with Cabbage?
Yes, you can sell instruments built with Cabbage. Two things to know first: the Cabbage framework inside every exported plugin is GPLv3, and in a standard export end users can read your Csound code. For protected exports and commercial terms, message rorywalsh on the forum about Cabbage Pro.
Do I need to know Csound?
Yes, if you want to write your own instruments. A Cabbage instrument is written in Csound, and its interface talks to that code through named channels. Lessons 3 to 6 of the videos cover the basics of Csound 7, and Csound 7 lists what is new in the language.
Why Csound?
Csound is one of the oldest and most extensive audio programming languages, and it is still actively developed. Cabbage 3 is built on Csound 7, its latest major release.
Where is the source code?
The Cabbage extension for VS Code is developed in the open on GitHub. Cabbage 3 is open source. The extension is MIT, the framework is GPLv3.