Browse Source

initial commit of live tidal kit

the two php scripts sync sample banks and yas snippets from selected
projects on disk. the original paths are actually all over the place,
so for consistency i symlink them on each machine in an ez path
Aneurin Barker Snook 8 years ago
commit
a838a87176
9 changed files with 154 additions and 0 deletions
  1. 3 0
      .gitignore
  2. 5 0
      README.md
  3. 12 0
      kit.scd
  4. 78 0
      samples.csv
  5. 0 0
      samples/.gitkeep
  6. 0 0
      snippets-override/haskell-mode/.gitkeep
  7. 0 0
      snippets/haskell-mode/.gitkeep
  8. 20 0
      sync-samples.php
  9. 36 0
      sync-snippets.php

+ 3 - 0
.gitignore

@@ -0,0 +1,3 @@
+/samples/
+/snippets/
+/snippets-override/

+ 5 - 0
README.md

@@ -0,0 +1,5 @@
+Emacs configuration must load snippets and optionally overrides:
+
+```
+(setq yas-snippet-dirs (append yas-snippet-dirs '("~/Documents/Music/Live/kit/snippets" "~/Documents/Music/Live/kit/snippets-override")))
+```

+ 12 - 0
kit.scd

@@ -0,0 +1,12 @@
+/*
+Anny's standard live performance kit
+*/
+
+include("SuperDirt")
+
+Server.local.options.device = "Soundflower (2ch)"
+SuperDirt.start(2, s, 4)
+
+~dirt.loadSoundFiles("samples/*".resolveRelative)
+
+~dirt.stop

+ 78 - 0
samples.csv

@@ -0,0 +1,78 @@
+"Project","Project Path","Original Bank","New Bank"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","arpy","arpy"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","bass","bass"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","bass3","bass3"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","hand","hand"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","jvbass","jvbass"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","peri","peri"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","psr","psr"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","rm","rm"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","tacscan","tacscan"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","tok","tok"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","trump","trump"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","uxay","uxay"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","warbler","warbler"
+"Battery 1,2,3","/Users/Anny/Documents/Music/ez/battery-123","wobble","wobble"
+"Cuadrillion (Demo)","/Users/Anny/Documents/Music/ez/cuadrillion-demo","acb","acb"
+"Cuadrillion (Demo)","/Users/Anny/Documents/Music/ez/cuadrillion-demo","acg","acg"
+"Cuadrillion (Demo)","/Users/Anny/Documents/Music/ez/cuadrillion-demo","arpb","arpb"
+"Cuadrillion (Demo)","/Users/Anny/Documents/Music/ez/cuadrillion-demo","bleep","bleep"
+"Cuadrillion (Demo)","/Users/Anny/Documents/Music/ez/cuadrillion-demo","drum","cudrum"
+"Cuadrillion (Demo)","/Users/Anny/Documents/Music/ez/cuadrillion-demo","drum2","cudrum2"
+"Cuadrillion (Demo)","/Users/Anny/Documents/Music/ez/cuadrillion-demo","dg","dg"
+"Cuadrillion (Demo)","/Users/Anny/Documents/Music/ez/cuadrillion-demo","drbass","drbass"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","dorr","dorr"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","duck","duck"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","duon","duon"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","bass","hbass"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","bass2","hbass2"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","drum","hdrum"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","sn","hsn"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","icarus","icarus"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","kit","kit"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","nimble","nimble"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","sine","sine"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","snoo","snoo"
+"Haddeo (Remix)","/Users/Anny/Documents/Music/ez/haddeo-remix","tubal","tubal"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","cy","cy"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","eg","eg"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","gt","gt"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","hh","jhh"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","k","jk"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","sn","jsn"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","pc","pc"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","pclow","pclow"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","udu","udu"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","vb","vb"
+"Juliese","/Users/Anny/Documents/Music/ez/juliese","wb","wb"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","armora","armora"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","baa","baa"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","bd","bd"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","casio","casio"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","ho","ho"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","house","house"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","jungbass","jungbass"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","monsterb","monsterb"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","bass","pigbass"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","hh","pighh"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","rm","pigrm"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","sn","pigsn"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","wobble","pigwobble"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","print","print"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","qlatibro","qlatibro"
+"Pig's Nose EP","/Users/Anny/Documents/Music/ez/pigs-nose-ep","qspace","qspace"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","ant","ant"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","bz","bz"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","bzl","bzl"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","cymb","cymb"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","dubb","dubb"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","ff","ff"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","fly","fly"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","gnome","gnome"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","hh","hh"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","ice","ice"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","k","k"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","plode","plode"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","sn","sn"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","wt","wt"
+"Piston LP","/Users/Anny/Documents/Music/ez/piston-lp","wtsn","wtsn"

+ 0 - 0
samples/.gitkeep


+ 0 - 0
snippets-override/haskell-mode/.gitkeep


+ 0 - 0
snippets/haskell-mode/.gitkeep


+ 20 - 0
sync-samples.php

@@ -0,0 +1,20 @@
+#!/usr/bin/env php
+<?php
+$here = __DIR__;
+
+array_map("unlink", glob("$here/samples/*"));
+
+$csv = fopen("$here/samples.csv", "r");
+$headings = fgetcsv($csv);
+
+while ($data = fgetcsv($csv)) {
+    $row = array_combine($headings, $data);
+    $from = $row["Sample Path"] . "/samples/" . $row["Original Bank"];
+    $to = "$here/samples/" . $row["New Bank"];
+    if (is_link($to)) {
+        throw new Exception("$to exists");
+    }
+    symlink($from, $to);
+}
+
+fclose($csv);

+ 36 - 0
sync-snippets.php

@@ -0,0 +1,36 @@
+#!/usr/bin/env php
+<?php
+$here = __DIR__;
+
+array_map("unlink", glob("$here/snippets/haskell-mode/*"));
+
+$csv = fopen("$here/samples.csv", "r");
+$headings = fgetcsv($csv);
+
+$projects = [];
+
+while ($data = fgetcsv($csv)) {
+    $row = array_combine($headings, $data);
+    $projects[] = $row["Project Path"];
+}
+
+fclose($csv);
+
+$projects = array_unique($projects);
+
+foreach ($projects as $project) {
+    $snippetsDir = "$project/snippets";
+    if (is_dir($snippetsDir)) {
+        $files = glob("$snippetsDir/*");
+        foreach ($files as $file) {
+            $to = "$here/snippets/haskell-mode/" . basename($file);
+            if (is_link($to)) {
+                throw new Exception("$to exists");
+            }
+            symlink($file, $to);
+        }
+    }
+    else {
+        printf("WARNING: Snippets path %s not found", $snippetsDir);
+    }
+}