Skip to content
This repository has been archived by the owner on Jul 10, 2019. It is now read-only.

Commit

Permalink
[add] new documentation
Browse files Browse the repository at this point in the history
  • Loading branch information
Lennart Melzer committed Nov 23, 2014
1 parent 4248cc7 commit 848b8a1
Show file tree
Hide file tree
Showing 185 changed files with 46,148 additions and 338 deletions.
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
_site
dist
.sass-cache
4 changes: 4 additions & 0 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
source 'https://rubygems.org'

gem 'github-pages'
gem 'sass', '3.4.5'
118 changes: 118 additions & 0 deletions Gemfile.lock
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
GEM
remote: https://rubygems.org/
specs:
RedCloth (4.2.9)
activesupport (4.1.6)
i18n (~> 0.6, >= 0.6.9)
json (~> 1.7, >= 1.7.7)
minitest (~> 5.1)
thread_safe (~> 0.1)
tzinfo (~> 1.1)
blankslate (2.1.2.4)
celluloid (0.16.0)
timers (~> 4.0.0)
classifier-reborn (2.0.1)
fast-stemmer (~> 1.0)
coffee-script (2.3.0)
coffee-script-source
execjs
coffee-script-source (1.8.0)
colorator (0.1)
execjs (2.2.2)
fast-stemmer (1.0.2)
ffi (1.9.6)
gemoji (2.1.0)
github-pages (28)
RedCloth (= 4.2.9)
jekyll (= 2.4.0)
jekyll-coffeescript (= 1.0.0)
jekyll-mentions (= 0.1.3)
jekyll-redirect-from (= 0.6.2)
jekyll-sass-converter (= 1.2.0)
jekyll-sitemap (= 0.6.0)
jemoji (= 0.3.0)
kramdown (= 1.3.1)
liquid (= 2.6.1)
maruku (= 0.7.0)
pygments.rb (= 0.6.0)
rdiscount (= 2.1.7)
redcarpet (= 3.1.2)
hitimes (1.2.2)
html-pipeline (1.9.0)
activesupport (>= 2)
nokogiri (~> 1.4)
i18n (0.6.11)
jekyll (2.4.0)
classifier-reborn (~> 2.0)
colorator (~> 0.1)
jekyll-coffeescript (~> 1.0)
jekyll-gist (~> 1.0)
jekyll-paginate (~> 1.0)
jekyll-sass-converter (~> 1.0)
jekyll-watch (~> 1.1)
kramdown (~> 1.3)
liquid (~> 2.6.1)
mercenary (~> 0.3.3)
pygments.rb (~> 0.6.0)
redcarpet (~> 3.1)
safe_yaml (~> 1.0)
toml (~> 0.1.0)
jekyll-coffeescript (1.0.0)
coffee-script (~> 2.2)
jekyll-gist (1.1.0)
jekyll-mentions (0.1.3)
html-pipeline (~> 1.9.0)
jekyll (~> 2.0)
jekyll-paginate (1.1.0)
jekyll-redirect-from (0.6.2)
jekyll (~> 2.0)
jekyll-sass-converter (1.2.0)
sass (~> 3.2)
jekyll-sitemap (0.6.0)
jekyll-watch (1.1.1)
listen (~> 2.7)
jemoji (0.3.0)
gemoji (~> 2.0)
html-pipeline (~> 1.9)
jekyll (~> 2.0)
json (1.8.1)
kramdown (1.3.1)
liquid (2.6.1)
listen (2.7.11)
celluloid (>= 0.15.2)
rb-fsevent (>= 0.9.3)
rb-inotify (>= 0.9)
maruku (0.7.0)
mercenary (0.3.4)
mini_portile (0.6.0)
minitest (5.4.2)
nokogiri (1.6.3.1)
mini_portile (= 0.6.0)
parslet (1.5.0)
blankslate (~> 2.0)
posix-spawn (0.3.9)
pygments.rb (0.6.0)
posix-spawn (~> 0.3.6)
yajl-ruby (~> 1.1.0)
rb-fsevent (0.9.4)
rb-inotify (0.9.5)
ffi (>= 0.5.0)
rdiscount (2.1.7)
redcarpet (3.1.2)
safe_yaml (1.0.4)
sass (3.4.5)
thread_safe (0.3.4)
timers (4.0.1)
hitimes
toml (0.1.2)
parslet (~> 1.5.0)
tzinfo (1.2.2)
thread_safe (~> 0.1)
yajl-ruby (1.1.0)

PLATFORMS
ruby

DEPENDENCIES
github-pages
sass (= 3.4.5)
48 changes: 48 additions & 0 deletions _config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,48 @@
name: Tidal
permalink: /:categories/:title.html
baseurl: "/Tidal"
markdown: redcarpet
redcarpet:
smart: true
collections:
getting_started:
patterns:
functions:
howtos:
publications:

defaults:
-
scope:
path: "getting_started"
values:
layout: default
-
scope:
path: "patterns"
values:
layout: default
-
scope:
path: "functions"
values:
layout: default
-
scope:
path: "compositions"
values:
layout: default
-
scope:
path: "concepts"
values:
layout: default
-
scope:
path: "publications"
values:
layout: default
theme: bibliography



41 changes: 41 additions & 0 deletions _data/chapters.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
- name: getting_started
title: Getting started
sections:
- name: installation
title: Installation
- name: integration
title: Editor integration
- name: patterns
title: Patterns
sections:
- name: sequences
title: Sequences
- name: continuous
title: Continuous Patterns
- name: functions
title: Reference
sections:
- name: pattern_transformers
title: Pattern Transformers
- name: sample
title: Sample Transformers
- name: conditional
title: Conditional Transformers
- name: compositions
title: Compositions
- name: howtos
title: HowTos
sections:
- name: multi_channel
title: "Multi-channel"
- name: multi_laptop
title: "Multi-laptop"
- name: live
title: Playing live
- name: publications
title: Publications
sections:
- name: recent
title: Recent
- name: historic
title: Archive
6 changes: 6 additions & 0 deletions _functions/compositions/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
---
category: compositions
weight: -9
---

Some functions work with multiple sets of patterns, interlace them or play them successively.
20 changes: 20 additions & 0 deletions _functions/compositions/interlace.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
title: interlace
category: compositions
---

~~~~ {haskell}
interlace :: OscPattern -> OscPattern -> OscPattern
~~~~

(A function that takes two OscPatterns, and blends them together into
a new OscPattern. An OscPattern is basically a pattern of messages to
a synthesiser.)

Shifts between the two given patterns, using distortion.

Example:

~~~~ {haskell}
d1 $ interlace (sound "bd sn kurt") (every 3 rev $ sound "bd sn:2")
~~~~
21 changes: 21 additions & 0 deletions _functions/compositions/jux.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
---
title: jux
category: compositions
---

The `jux` function creates strange stereo effects, by applying a
function to a pattern, but only in the right-hand channel. For
example, the following reverses the pattern on the righthand side:

~~~~ {haskell}
d1 $ slow 32 $ jux (rev) $ striate' 32 (1/16) $ sound "bev"
~~~~

When passing pattern transforms to functions like `jux` and `every`,
it's possible to chain multiple transforms together with `.`, for
example this both reverses and halves the playback speed of the
pattern in the righthand channel:

~~~~ {haskell}
d1 $ slow 32 $ jux ((|+| speed "0.5") . rev) $ striate' 32 (1/16) $ sound "bev"
~~~~
18 changes: 18 additions & 0 deletions _functions/compositions/seqP.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
---
title: seqP
category: compositions
---

There is a similar function named `seqP` which allows you to define when
a sound within a list starts and ends. The code below contains three
separate patterns in a "stack", but each has different start times
(zero cycles, eight cycles, and sixteen cycles, respectively). All
patterns stop after 128 cycles:

~~~~ {haskell}
d1 $ seqP [
(0, 128, sound "bd bd*2"),
(8, 128, sound "hh*2 [sn cp] cp future*4"),
(16, 128, sound (samples "arpy*8", (run 16)))
]
~~~~
30 changes: 30 additions & 0 deletions _functions/compositions/stack.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
---
title: stack
category: compositions
---

~~~~ {haskell}
stack :: [Pattern a] -> Pattern a
~~~~

`stack` takes a list of patterns and combines them into a new pattern by
playing all of the patterns in the list simultaneously.

~~~~ {haskell}
d1 $ stack [
sound "bd bd*2",
sound "hh*2 [sn cp] cp future*4",
sound (samples "arpy*8", (run 16))
]
~~~~

This is useful if you want to use a transform or synth parameter on the entire
stack:

~~~~ {haskell}
d1 $ whenmod 5 3 (striate 3) $ stack [
sound "bd bd*2",
sound "hh*2 [sn cp] cp future*4",
sound (samples "arpy*8", (run 16))
] |+| speed "[[1 0.8], [1.5 2]*2]/3"
~~~~
17 changes: 17 additions & 0 deletions _functions/compositions/wedge.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
---
title: wedge
category: compositions
---

~~~~{haskell}
wedge :: Time -> Pattern a -> Pattern a -> Pattern a
~~~~

`wedge` combines two patterns by squashing two patterns into a single pattern cycle.
It takes a ratio as the first argument. The ratio determines what percentage of the
pattern cycle is taken up by the first pattern. The second pattern fills in the
remainder of the pattern cycle.

~~~~{haskell}
d1 $ wedge (1/4) (sound "bd*2 arpy*3 cp sn*2") (sound "odx [feel future]*2 hh hh")
~~~~
23 changes: 23 additions & 0 deletions _functions/conditional/every.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
---
title: every
category: conditional
---

~~~~ {haskell}
every :: Int -> (Pattern a -> Pattern a) -> Pattern a -> Pattern a
~~~~

(The above means `every` is a function that is given an integer number, a
function which transforms a pattern, and an actual pattern, and
returns a pattern of the same type.)

Transform the given pattern using the given function, but only every
given number of repetitions.

Example:

~~~~ {haskell}
d1 $ sound (every 3 (density 2) "bd sn kurt")
~~~~

Also, see `whenmod`.
5 changes: 5 additions & 0 deletions _functions/conditional/index.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
---
category: conditional
weight: -9
---
Conditional transformers are functions that apply other transformations under certain cirumstances. These can be based upon the number of cycles, probability or time-range within a pattern.
Loading

0 comments on commit 848b8a1

Please sign in to comment.