INNER CODE UNIT · TypeScript

makeArp

scribbletune/scribbletune · src/cli.ts:411

const makeArp = (parsed: ParsedOptions): NoteObject[] => {
  const [root, mode, pattern, subdiv, progressionInput] = parsed.positionals;
  if (!root || !mode || !progressionInput || !pattern || !subdiv) {
    throw new TypeError(
      'arp requires: <root> <mode> <pattern> <subdiv> <progression|random>'
    );
  }
  const chords = parseProgression(root, mode, progressionInput);
  const arpNotes = arp({
    chords,
    count: parsed.count || 4,
    order: parsed.order ? normalizeArpOrder(parsed.order) : '0123',
  });
  const resolvedPattern = resolvePattern(
    pattern,
    arpNotes.length,
    parsed.fitPattern
  );

View source record →

📰 Research Paper
Loading…
⏳ Fetching content…