Support for the TidalCycles in vscode. You can learn more about TidalCycles at TidalCycles.
This VSCode extension for TidalCycles is inspired by the commands from the popular Atom package:
Shift+Enterto evalulate a single lineCtrl+Enterto evaluate multiple linesCtrl+Alt+Hto hush
In order to get syntax highlighting in .tidal files you must do
two things:
- Install the Haskell Syntax Highlighting extension
- Associate
.tidalfiles to the Haskell language by adding the following settings insettings.json:
"files.associations": {
"*.tidal": "haskell"
}
You will need to have TidalCycles (a Haskell package) installed before using this extension. If you want to produce sound, you'll also need to have SuperDirt running. You can find instructions to install TidalCycles and SuperDirt at TidalCycles.
Take a look in the Contributions tab on the extension page to see what config setting options are available. Here is a more verbose explanation of a few of them:
Probably the most important setting. This is the path to ghci.exe on your machine.
If it's on your OS PATH, then just setting this value to ghci will probably do fine.
Examples:
"tidalcycles.ghciPath" : "ghci"
"tidalcycles.ghciPath" : "c:\\path\\to\\ghci.exe"
"tidalcycles.ghciPath" : "/path/to/ghci"
If you are using Stack, you can enable the useStackGhci option and the extension will use stack ghci to launch GHCi.
This extension has a default internal bootup process to load the Tidal libraries into GHCI.
If instead you wish you run your own bootup process, you can configure this extension to point
to a Tidal bootup file on your machine, or use a BootTidal.hs file located in the first directory
of your VS Code IDE.
tidalcycles.bootTidalPath- path to a file that contains line-by-line commands to boot the TidalCycles Haskell package.tidalcycles.useBootFileInCurrentDirectory- when equal totrue, the extension will boot from a file namedBootTidal.hsin the first workspace folder
Examples:
"tidalcycles.bootTidalPath" : "c:\\path\\to\\file\\boot.tidal",
"tidalcycles.useBootFileInCurrentDirectory" : false
"tidalcycles.useBootFileInCurrentDirectory" : true
{
"tidalcycles.ghciPath" : "ghci",
"tidalcycles.evalCountPrefix": "Evals: ",
"tidalcycles.feedbackColor": "rgba(100,250,100,0.5)",
"tidalcycles.useStackGhci": false,
"tidalcycles.showEvalCount": true,
"tidalcycles.showGhciOutput": false,
"tidalcycles.showOutputInConsoleChannel": true,
"tidalcycles.useBootFileInCurrentDirectory": false,
"tidalcycles.bootTidalPath" : "c:\\path\\to\\file\\boot.tidal"
}
- The
Eval and CopyandEval Multi Line and Copycommands from the Atom package are not supported.