strudel/packages/transpiler
2023-12-30 23:08:15 +01:00
..
test fix tests 2023-11-16 07:25:20 +01:00
index.mjs transpiler package to replace eval package 2022-11-06 23:15:01 +01:00
package.json update vite + astro 2023-12-30 23:08:15 +01:00
README.md overhaul the remaining readmes 2023-02-01 16:29:18 +01:00
transpiler.mjs remove pseudo note variables 2023-11-16 06:51:51 +01:00
vite.config.js transpiler build 2023-01-28 23:12:00 +01:00

@strudel.cycles/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.cycles/transpiler

Use

import { transpiler } from '@strudel.cycles/core';
import { evaluate } from '@strudel.cycles/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