- @strudel/codemirror@1.0.1 - @strudel/core@1.0.1 - @strudel/csound@1.0.1 - @strudel/hydra@1.0.1 - @strudel/midi@1.0.1 - @strudel/mini@1.0.1 - @strudel/osc@1.0.1 - @strudel/repl@1.0.1 - @strudel/serial@1.0.1 - @strudel/soundfonts@1.0.1 - superdough@1.0.1 - @strudel/tonal@1.0.1 - @strudel/transpiler@1.0.1 - @strudel/web@1.0.1 - @strudel/webaudio@1.0.1 - @strudel/xen@1.0.1 |
||
|---|---|---|
| .. | ||
| test | ||
| index.mjs | ||
| package.json | ||
| README.md | ||
| transpiler.mjs | ||
| vite.config.js | ||
@strudel/transpiler
This package contains a JS code transpiler with the following features:
- add locations of mini notation strings (double quoted or backticked) for highlighting
- converts pseudo note variables to note strings
- adds return statement to the last expression
Install
npm i @strudel/transpiler
Use
import { transpiler } from '@strudel/core';
import { evaluate } from '@strudel/core';
transpiler('note("c3 [e3,g3]")', { wrapAsync: false, addReturn: false, simpleLocs: true });
/* mini('c3 [e3,g3]').withMiniLocation(7,17) */
evaluate(note('c3 [e3,g3]'), transpiler); // returns pattern of above code