mirror of
https://github.com/eliasstepanik/strudel-docker.git
synced 2026-01-11 13:48:34 +00:00
* polish, rename, and document stepwise functions: `pace`, `take`, `drop`, `expand`, `contract`, `repeat`, `zip`, `grow`, `shrink`, and `tour`
@strudel/mini
This package contains the mini notation parser and pattern generator.
Install
npm i @strudel/mini --save
Example
import { mini } from '@strudel/mini';
const pattern = mini('a [b c*2]');
const events = pattern.firstCycle().map((e) => e.show());
console.log(events);
yields:
(0/1 -> 1/2, 0/1 -> 1/2, a)
(1/2 -> 3/4, 1/2 -> 3/4, b)
(3/4 -> 7/8, 3/4 -> 7/8, c)
(7/8 -> 1/1, 7/8 -> 1/1, c)
Play with @strudel/mini codesandbox
Mini Notation API
See "Mini Notation" in the Strudel Tutorial
Building the Parser
The parser [krill-parser.js] is generated from krill.pegjs using peggy. To generate the parser, run
npm run build:parser