From 46510664725b1c65d84fe7390e1f9827e5976dc9 Mon Sep 17 00:00:00 2001 From: Richard Julian Date: Sat, 6 Jan 2024 11:55:00 -0800 Subject: [PATCH 1/2] Remove hideHeader for better mobile UI and consistency --- .../src/pages/de/workshop/first-effects.mdx | 39 ++++------ website/src/pages/de/workshop/first-notes.mdx | 42 ++++------- .../src/pages/de/workshop/first-sounds.mdx | 72 +++++++++---------- .../src/pages/de/workshop/pattern-effects.mdx | 29 +++----- website/src/pages/de/workshop/recap.mdx | 66 ++++++++--------- website/src/pages/workshop/first-effects.mdx | 39 ++++------ website/src/pages/workshop/first-notes.mdx | 41 ++++------- website/src/pages/workshop/first-sounds.mdx | 72 +++++++++---------- .../src/pages/workshop/pattern-effects.mdx | 29 +++----- website/src/pages/workshop/recap.mdx | 66 ++++++++--------- 10 files changed, 203 insertions(+), 292 deletions(-) diff --git a/website/src/pages/de/workshop/first-effects.mdx b/website/src/pages/de/workshop/first-effects.mdx index b408a343..aa89de9c 100644 --- a/website/src/pages/de/workshop/first-effects.mdx +++ b/website/src/pages/de/workshop/first-effects.mdx @@ -15,7 +15,6 @@ import Box from '@components/Box.astro'; **low-pass filter** /2") .sound("sawtooth").lpf(800)`} @@ -33,7 +32,6 @@ lpf = **l**ow **p**ass **f**ilter **filter automatisieren** /2") .sound("sawtooth").lpf("200 1000")`} @@ -51,7 +49,6 @@ Später sehen wir, wie man mit Wellenformen Dinge automatisieren kann. **vowel = Vokal** /2") .sound("sawtooth").vowel("/2")`} @@ -60,7 +57,6 @@ Später sehen wir, wie man mit Wellenformen Dinge automatisieren kann. **gain = Verstärkung** ") .sound("sawtooth").lpf(600) @@ -145,7 +139,6 @@ Kannst du erraten, was die einzelnen Werte machen? **adsr-Kurznotation** ") .sound("sawtooth").lpf(600) @@ -156,7 +149,6 @@ Kannst du erraten, was die einzelnen Werte machen? **delay = Verzögerung** ~]") @@ -188,7 +180,6 @@ Was passiert, wenn du `.delay(".8:.06:.8")` schreibst? Kannst du erraten, was di **room aka reverb = Hall** ~@16] ~>/2") .scale("D4:minor").sound("gm_accordion:2") @@ -206,7 +197,6 @@ Füg auch ein Delay hinzu! **kleiner Dub-Tune** ~]") @@ -221,7 +211,6 @@ Füg auch ein Delay hinzu! Für echten Dub fehlt noch der Bass: ~]") @@ -245,7 +234,6 @@ Füg `.hush()` ans Ende eines Patterns im stack... **pan = Panorama** ").room(.2)`} /> +").room(.2)`} /> **fast and slow = schnell und langsam** Mit `fast` und `slow` kann man das Tempo eines Patterns außerhalb der Mini-Notation ändern: - + @@ -272,13 +260,13 @@ Was passiert, wenn du den Wert automatisierst? z.b. `.fast("<1 [2 4]>")` ? Übrigens, innerhalb der Mini-Notation: `fast` ist `*` und `slow` ist `/`. -")`} /> +")`} /> ## Automation mit Signalen Anstatt Werte schrittweise zu automatisieren, können wir auch sogenannte Signale benutzen: - + @@ -294,7 +282,7 @@ Der `gain`-Wert (Verstärkung) wird in der Visualisierung als Transparenz darges Signale bewegen sich standardmäßig zwischen 0 und 1. Wir können das mit `range` ändern: - + `range` ist nützlich wenn wir Funktionen mit einem anderen Wertebereich als 0 und 1 automatisieren wollen (z.b. `lpf`) @@ -307,7 +295,6 @@ Was passiert wenn du die beiden Werte vertauschst? Wir können die Geschwindigkeit der Automation mit slow / fast ändern: /2") .sound("sawtooth") @@ -324,13 +311,13 @@ Die ganze Automation braucht nun 8 cycle bis sie sich wiederholt. | Name | Beispiel | | ----- | -------------------------------------------------------------------------------------------------- | -| lpf | ")`} /> | -| vowel | ")`} /> | -| gain | | -| delay | | -| room | | -| pan | | -| speed | ")`} /> | -| range | | +| lpf | ")`} /> | +| vowel | ")`} /> | +| gain | | +| delay | | +| room | | +| pan | | +| speed | ")`} /> | +| range | | Lass uns nun die für Tidal typischen [Pattern-Effekte anschauen](/de/workshop/pattern-effects). diff --git a/website/src/pages/de/workshop/first-notes.mdx b/website/src/pages/de/workshop/first-notes.mdx index c44969df..e80495a1 100644 --- a/website/src/pages/de/workshop/first-notes.mdx +++ b/website/src/pages/de/workshop/first-notes.mdx @@ -17,7 +17,6 @@ Jetzt schauen wir uns an wie man mit Tönen mit der `note` Funktion spielt. **Töne mit Zahlen** + @@ -126,7 +121,6 @@ Probier ein paar sounds aus: **Zwischen Sounds hin und her wechseln** + @@ -171,7 +164,7 @@ Wenn eine Sequenz unabhängig von ihrem Inhalt immer gleich schnell bleiben soll **Eins pro Cycle per \< \>** -").sound("gm_acoustic_bass")`} punchcard /> +").sound("gm_acoustic_bass")`} punchcard /> @@ -190,7 +183,6 @@ usw.. **Eine Sequenz pro Cycle** ") .sound("gm_acoustic_bass")`} @@ -200,7 +192,6 @@ usw.. oder auch... /2") .sound("gm_acoustic_bass")`} @@ -212,7 +203,6 @@ oder auch... Ähnlich wie Unter-Sequenzen, kann auch `<...>` innerhalb einer Sequenz verwendet werden: ") .sound("gm_xylophone")`} @@ -222,7 +212,6 @@ oder auch... Das ist auch praktisch für atonale Sounds: , [~ hh]*2") .bank("RolandTR909")`} @@ -235,7 +224,6 @@ Es kann mühsam sein die richtigen Noten zu finden wenn man alle zur Verfügung Mit Skalen ist das einfacher: ") .scale("C:minor").sound("piano")`} @@ -262,7 +250,6 @@ Probier verschiedene Skalen: Wie alle Funktionen können auch Skalen mit einem Pattern automatisiert werden: , 2 4 <[6,8] [7,9]>") .scale("/4") @@ -283,7 +270,7 @@ Nimm dir Zeit um herauszufinden welche Skalen du magst. **Verlängern mit @** - + @@ -296,7 +283,6 @@ Spiel mit der Länge! **Unter-Sequenzen verlängern** *2") .scale("/4") @@ -314,7 +300,7 @@ Das nennt man auch manchmal `triolen swing`. Es ist ein typischer Rhythmus im Bl **Wiederholen** -]").sound("piano")`} punchcard /> +]").sound("piano")`} punchcard /> @@ -330,25 +316,24 @@ Das haben wir in diesem Kapitel gelernt: | Concept | Syntax | Example | | ------------ | ------ | ------------------------------------------------------------------- | -| Verlangsamen | \/ | | -| Alternativen | \<\> | ")`} /> | -| Verlängern | @ | | -| Wiederholen | ! | | +| Verlangsamen | \/ | | +| Alternativen | \<\> | ")`} /> | +| Verlängern | @ | | +| Wiederholen | ! | | Neue Funktionen: | Name | Description | Example | | ----- | --------------------------------------- | -------------------------------------------------------------------------------------------- | -| note | Tonhöhe als Buchstabe oder Zahl | | -| scale | Interpretiert `n` als Skalenstufe | | -| stack | Spiele mehrere Patterns parallel (s.u.) | | +| note | Tonhöhe als Buchstabe oder Zahl | | +| scale | Interpretiert `n` als Skalenstufe | | +| stack | Spiele mehrere Patterns parallel (s.u.) | | ## Beispiele **Bassline** /2") .sound("gm_synth_bass_1") @@ -358,7 +343,6 @@ Neue Funktionen: **Melodie** , [~ hh]*2") .bank("RolandTR909")`} @@ -387,7 +370,6 @@ Das geht mit `stack` 😙 /2") diff --git a/website/src/pages/de/workshop/first-sounds.mdx b/website/src/pages/de/workshop/first-sounds.mdx index a689add8..cfb27f83 100644 --- a/website/src/pages/de/workshop/first-sounds.mdx +++ b/website/src/pages/de/workshop/first-sounds.mdx @@ -15,7 +15,7 @@ Dies ist das erste Kapitel im Strudel Workshop, schön dich an Bord zu haben! Der Workshop ist voller interaktiver Textfelder. Lass uns lernen wie sie funktionieren. Hier ist eins: - + @@ -35,7 +35,7 @@ Glückwunsch, du kannst jetzt live coden! Gerade haben wir schon den ersten sound mit `sound` abgespielt: - + @@ -57,7 +57,7 @@ Ein Sound kann mehrere Samples (Audio Dateien) enthalten. Du kannst ein anderes Sample wählen, indem du `:` und eine Zahl an den Sound-Namen anhängst: - + @@ -74,7 +74,7 @@ Vorerst bleiben wir bei den voreingestellten Sounds, später erfahren wir noch w Strudel kommt von Haus aus mit einer breiten Auswahl an Drum Sounds: - + @@ -92,7 +92,7 @@ Probier verschiedene Sounds aus! Wir können den Charakter des Drum Sounds verändern, indem wir mit `bank` die Drum Machine auswählen: - + In diesem Beispiel ist `RolandTR909` der Name der Drum Machine, die eine prägende Rolle für House und Techno Musik spielte. @@ -117,7 +117,7 @@ Dann kannst du ihn mit `Strg`+`C` kopieren und mit `Strg`+`V` einfügen. Im letzten Beispiel haben wir schon gesehen dass man mehrere Sounds hintereinander abspielen kann wenn man sie durch Leerzeichen trennt: - + Beachte wie der aktuell gespielte Sound im Code markiert und auch darunter visualisiert wird. @@ -129,13 +129,13 @@ Versuch noch mehr Sounds hinzuzfügen! **Je länger die Sequence, desto schneller** - + Der Inhalt einer Sequence wird in einen sogenannten Cycle (=Zyklus) zusammengequetscht. **Tempo ändern mit `cpm`** - + @@ -151,7 +151,7 @@ Wir werden später noch mehr Möglichkeiten kennen lernen das Tempo zu veränder **Pausen mit '~'** - + @@ -164,7 +164,7 @@ Tilde tippen: **Unter-Sequenzen mit [Klammern]** - + @@ -178,11 +178,11 @@ Genau wie bei der ganzen Sequence wird eine Unter-Sequence schneller je mehr dri **Multiplikation: Dinge schneller machen** - + **Multiplikation: Vieeeeeeel schneller** - + @@ -192,12 +192,11 @@ Tonhöhe = sehr schneller Rhythmus **Multiplikation: Ganze Unter-Sequences schneller machen** - + Bolero: + @@ -216,15 +215,15 @@ Du kannst so tief verschachteln wie du willst! **Parallele Sequenzen mit Komma** - + Du kannst so viele Kommas benutzen wie du möchtest: - + Kommas können auch in Unter-Sequenzen verwendet werden: - + @@ -237,7 +236,6 @@ Es kommt öfter vor, dass man die gleiche Idee auf verschiedene Arten ausdrücke **Mehrere Zeilen schreiben mit \` (backtick)** + Das gleiche kann man auch so schreiben: - + ## Rückblick @@ -269,33 +267,33 @@ Das haben wir bisher gelernt: | Concept | Syntax | Example | | --------------------- | ----------- | -------------------------------------------------------------------------------- | -| Sequenz | Leerzeichen | | -| Sound Nummer | :x | | -| Pausen | ~ | | -| Unter-Sequenzen | \[\] | | -| Unter-Unter-Sequenzen | \[\[\]\] | | -| Schneller | \* | | -| Parallel | , | | +| Sequenz | Leerzeichen | | +| Sound Nummer | :x | | +| Pausen | ~ | | +| Unter-Sequenzen | \[\] | | +| Unter-Unter-Sequenzen | \[\[\]\] | | +| Schneller | \* | | +| Parallel | , | | Die mit Apostrophen umgebene Mini-Notation benutzt man normalerweise in einer sogenannten Funktion. Die folgenden Funktionen haben wir bereits gesehen: | Name | Description | Example | | ----- | -------------------------------------- | ---------------------------------------------------------------------------------- | -| sound | Spielt den Sound mit dem Namen | | -| bank | Wählt die Soundbank / Drum Machine | | -| cpm | Tempo in **C**ycles **p**ro **M**inute | | -| n | Sample Nummer | | +| sound | Spielt den Sound mit dem Namen | | +| bank | Wählt die Soundbank / Drum Machine | | +| cpm | Tempo in **C**ycles **p**ro **M**inute | | +| n | Sample Nummer | | ## Beispiele **Einfacher Rock Beat** - + **Klassischer House** - + @@ -306,12 +304,11 @@ Bestimmte Drum Patterns werden oft genreübergreifend wiederverwendet. We Will Rock you - + **Yellow Magic Orchestra - Firecracker** + **jux = einen stereo kanal modifizieren** - + So würde man das ohne `jux` schreiben: + Das hat den gleichen Effekt, wie: >")) .color(">").adsr("[.1 0]:.2:[1 0]") @@ -95,7 +91,6 @@ z.B. c4 = 60, also ist c4 + 2 = 62 Man kann auch mehrmals addieren: >").add("0,7")) .color(">").adsr("[.1 0]:.2:[1 0]") @@ -106,7 +101,6 @@ Man kann auch mehrmals addieren: **add + scale** [~ <4 1>]>*2".add("<0 [0,2,4]>/4")) .scale("C5:minor").release(.5) @@ -117,7 +111,6 @@ Man kann auch mehrmals addieren: **Alles zusammen** [~ <4 1>]>*2".add("<0 [0,2,4]>/4")) @@ -134,11 +127,11 @@ Man kann auch mehrmals addieren: **ply** - + das ist wie: - + @@ -149,7 +142,6 @@ Probier `ply` mit einem pattern zu automatisieren, z.b. `"<1 2 1 3>"` **off** ] <2 3> [~ 1]>" .off(1/8, x=>x.add(4)) @@ -168,7 +160,6 @@ In der Notation `x=>x.`, ist `x` das Pattern, das wir bearbeiten. `off` ist auch nützlich für Sounds: x.speed(1.5).gain(.25))`} @@ -176,8 +167,8 @@ In der Notation `x=>x.`, ist `x` das Pattern, das wir bearbeiten. | Name | Beschreibung | Beispiel | | ---- | --------------------------------- | ---------------------------------------------------------------------------------------------- | -| rev | rückwärts | | -| jux | einen Stereo-Kanal modifizieren | | -| add | addiert Zahlen oder Noten | ")).scale("C:minor")`} /> | -| ply | multipliziert jedes Element x mal | ")`} /> | -| off | verzögert eine modifizierte Kopie | x.speed(2))`} /> | +| rev | rückwärts | | +| jux | einen Stereo-Kanal modifizieren | | +| add | addiert Zahlen oder Noten | ")).scale("C:minor")`} /> | +| ply | multipliziert jedes Element x mal | ")`} /> | +| off | verzögert eine modifizierte Kopie | x.speed(2))`} /> | diff --git a/website/src/pages/de/workshop/recap.mdx b/website/src/pages/de/workshop/recap.mdx index c0d577d1..eb1f64f0 100644 --- a/website/src/pages/de/workshop/recap.mdx +++ b/website/src/pages/de/workshop/recap.mdx @@ -13,56 +13,56 @@ Diese Seite ist eine Auflistung aller im Workshop vorgestellten Funktionen. | Konzept | Syntax | Beispiel | | --------------------- | -------- | -------------------------------------------------------------------------------- | -| Sequenz | space | | -| Sample-Nummer | :x | | -| Pausen | ~ | | -| Unter-Sequenzen | \[\] | | -| Unter-Unter-Sequenzen | \[\[\]\] | | -| Schneller | \* | | -| Verlangsamen | \/ | | -| Parallel | , | | -| Alternieren | \<\> | ")`} /> | -| Verlängern | @ | | -| Wiederholen | ! | | +| Sequenz | space | | +| Sample-Nummer | :x | | +| Pausen | ~ | | +| Unter-Sequenzen | \[\] | | +| Unter-Unter-Sequenzen | \[\[\]\] | | +| Schneller | \* | | +| Verlangsamen | \/ | | +| Parallel | , | | +| Alternieren | \<\> | ")`} /> | +| Verlängern | @ | | +| Wiederholen | ! | | ## Sounds | Name | Beschreibung | Beispiel | | ----- | -------------------------- | ---------------------------------------------------------------------------------- | -| sound | spielt den Sound mit Namen | | -| bank | wählt die Soundbank | | -| n | wählt Sample mit Nummer | | +| sound | spielt den Sound mit Namen | | +| bank | wählt die Soundbank | | +| n | wählt Sample mit Nummer | | ## Noten | Name | Beschreibung | Beispiel | | --------- | ---------------------------------- | -------------------------------------------------------------------------------------------- | -| note | wählt Note per Zahl oder Buchstabe | | -| n + scale | wählt Note n in Skala | | -| stack | spielt mehrere Patterns parallel | | +| note | wählt Note per Zahl oder Buchstabe | | +| n + scale | wählt Note n in Skala | | +| stack | spielt mehrere Patterns parallel | | ## Audio-Effekte | Name | Beispiele | | ----- | -------------------------------------------------------------------------------------------------- | -| lpf | ")`} /> | -| vowel | ")`} /> | -| gain | | -| delay | | -| room | | -| pan | | -| speed | ")`} /> | -| range | | +| lpf | ")`} /> | +| vowel | ")`} /> | +| gain | | +| delay | | +| room | | +| pan | | +| speed | ")`} /> | +| range | | ## Pattern-Effekte | Name | Beschreibung | Beispiel | | ---- | --------------------------------- | ---------------------------------------------------------------------------------------------- | -| cpm | Tempo in Cycles pro Minute | | -| fast | schneller | | -| slow | langsamer | | -| rev | rückwärts | | -| jux | einen Stereo-Kanal modifizieren | | -| add | addiert Zahlen oder Noten | ")).scale("C:minor")`} /> | -| ply | jedes Element schneller machen | ")`} /> | -| off | verzögert eine modifizierte Kopie | x.speed(2))`} /> | +| cpm | Tempo in Cycles pro Minute | | +| fast | schneller | | +| slow | langsamer | | +| rev | rückwärts | | +| jux | einen Stereo-Kanal modifizieren | | +| add | addiert Zahlen oder Noten | ")).scale("C:minor")`} /> | +| ply | jedes Element schneller machen | ")`} /> | +| off | verzögert eine modifizierte Kopie | x.speed(2))`} /> | diff --git a/website/src/pages/workshop/first-effects.mdx b/website/src/pages/workshop/first-effects.mdx index e3ce5487..de3d6201 100644 --- a/website/src/pages/workshop/first-effects.mdx +++ b/website/src/pages/workshop/first-effects.mdx @@ -17,7 +17,6 @@ We have sounds, we have notes, now let's look at effects! **low-pass filter** /2") .sound("sawtooth").lpf(800)`} @@ -35,7 +34,6 @@ lpf = **l**ow **p**ass **f**ilter **pattern the filter** /2") .sound("sawtooth").lpf("200 1000")`} @@ -53,7 +51,6 @@ We will learn how to automate with waves later... **vowel** /2") .sound("sawtooth").vowel("/2")`} @@ -62,7 +59,6 @@ We will learn how to automate with waves later... **gain** ") .sound("sawtooth").lpf(600) @@ -146,7 +140,6 @@ Can you guess what they do? **adsr short notation** ") .sound("sawtooth").lpf(600) @@ -157,7 +150,6 @@ Can you guess what they do? **delay** ~]") @@ -189,7 +181,6 @@ What happens if you use `.delay(".8:.06:.8")` ? Can you guess what the third num **room aka reverb** ~@16] ~>/2") .scale("D4:minor").sound("gm_accordion:2") @@ -207,7 +198,6 @@ Add a delay too! **little dub tune** ~]") @@ -222,7 +212,6 @@ Add a delay too! Let's add a bass to make this complete: ~]") @@ -246,7 +235,6 @@ Try adding `.hush()` at the end of one of the patterns in the stack... **pan** ").room(.2)`} /> +").room(.2)`} /> **fast and slow** We can use `fast` and `slow` to change the tempo of a pattern outside of Mini-Notation: - + @@ -273,13 +261,13 @@ What happens if you use a pattern like `.fast("<1 [2 4]>")`? By the way, inside Mini-Notation, `fast` is `*` and `slow` is `/`. -")`} /> +")`} /> ## automation with signals Instead of changing values stepwise, we can also control them with signals: - + @@ -295,7 +283,7 @@ The gain is visualized as transparency in the pianoroll. By default, waves oscillate between 0 to 1. We can change that with `range`: - + @@ -306,7 +294,6 @@ What happens if you flip the range values? We can change the automation speed with slow / fast: /2") .sound("sawtooth") @@ -323,13 +310,13 @@ The whole automation will now take 8 cycles to repeat. | name | example | | ----- | -------------------------------------------------------------------------------------------------- | -| lpf | ")`} /> | -| vowel | ")`} /> | -| gain | | -| delay | | -| room | | -| pan | | -| speed | ")`} /> | -| range | | +| lpf | ")`} /> | +| vowel | ")`} /> | +| gain | | +| delay | | +| room | | +| pan | | +| speed | ")`} /> | +| range | | Let us now take a look at some of Tidal's typical [pattern effects](/workshop/pattern-effects). diff --git a/website/src/pages/workshop/first-notes.mdx b/website/src/pages/workshop/first-notes.mdx index ab11ed90..d525cf81 100644 --- a/website/src/pages/workshop/first-notes.mdx +++ b/website/src/pages/workshop/first-notes.mdx @@ -17,7 +17,6 @@ Let's look at how we can play notes **play notes with numbers** + {/* c2 g2, e3 b3 d4 e4 */} @@ -127,7 +122,6 @@ Try out different sounds: **switch between sounds** + @@ -172,7 +165,7 @@ Because it is so common to just play one thing per cycle, you can.. **Play one per cycle with \< \>** -").sound("gm_acoustic_bass")`} punchcard /> +").sound("gm_acoustic_bass")`} punchcard /> @@ -185,7 +178,6 @@ Try adding more notes inside the brackets and notice how it does **not** get fas {/* <[c2 c3]*4 [bb1 bb2]*4 [f2 f3]*4 [eb2 eb3]*4>/2 */} /2") .sound("gm_acoustic_bass")`} @@ -195,7 +187,6 @@ Try adding more notes inside the brackets and notice how it does **not** get fas **Alternate between multiple things** ") .sound("gm_xylophone")`} @@ -205,7 +196,6 @@ Try adding more notes inside the brackets and notice how it does **not** get fas This is also useful for unpitched sounds: , [~ hh]*2") .bank("RolandTR909")`} @@ -217,7 +207,6 @@ This is also useful for unpitched sounds: Finding the right notes can be difficult.. Scales are here to help: ") .scale("C:minor").sound("piano")`} @@ -244,7 +233,6 @@ Try out different scales: Just like anything, we can automate the scale with a pattern: , 2 4 <[6,8] [7,9]>") .scale("/4") @@ -265,7 +253,7 @@ Take your time and you'll find scales you like! **Elongate with @** - + @@ -278,7 +266,6 @@ Try changing that number! **Elongate within sub-sequences** *2") .scale("/4") @@ -296,7 +283,7 @@ This is also sometimes called triplet swing. You'll often find it in blues and j **Replicate** -]").sound("piano")`} punchcard /> +]").sound("piano")`} punchcard /> @@ -312,25 +299,24 @@ Let's recap what we've learned in this chapter: | Concept | Syntax | Example | | --------- | ------ | ------------------------------------------------------------------- | -| Slow down | \/ | | -| Alternate | \<\> | ")`} /> | -| Elongate | @ | | -| Replicate | ! | | +| Slow down | \/ | | +| Alternate | \<\> | ")`} /> | +| Elongate | @ | | +| Replicate | ! | | New functions: | Name | Description | Example | | ----- | ----------------------------------- | -------------------------------------------------------------------------------------------- | -| note | set pitch as number or letter | | -| scale | interpret `n` as scale degree | | -| stack | play patterns in parallel (read on) | | +| note | set pitch as number or letter | | +| scale | interpret `n` as scale degree | | +| stack | play patterns in parallel (read on) | | ## Examples **Classy Bassline** /2") .sound("gm_synth_bass_1") @@ -340,7 +326,6 @@ New functions: **Classy Melody** , [~ hh]*2") .bank("RolandTR909")`} @@ -369,7 +353,6 @@ It's called `stack` 😙 /2") diff --git a/website/src/pages/workshop/first-sounds.mdx b/website/src/pages/workshop/first-sounds.mdx index 5897f029..5b0f45f2 100644 --- a/website/src/pages/workshop/first-sounds.mdx +++ b/website/src/pages/workshop/first-sounds.mdx @@ -15,7 +15,7 @@ This is the first chapter of the Strudel Workshop, nice to have you on board! The workshop is full of interactive code fields. Let's learn how to use those. Here is one: - + @@ -33,7 +33,7 @@ Congratulations, you are now live coding! We have just played a sound with `sound` like this: - + @@ -55,7 +55,7 @@ One Sound can contain multiple samples (audio files). You can select the sample by appending `:` followed by a number to the name: - + @@ -72,7 +72,7 @@ For now we'll stick to this little selection of sounds, but we'll find out how t By default, Strudel comes with a wide selection of drum sounds: - + @@ -90,7 +90,7 @@ Try out different drum sounds! To change the sound character of our drums, we can use `bank` to change the drum machine: - + In this example `RolandTR909` is the name of the drum machine that we're using. It is a famous drum machine for house and techno beats. @@ -115,7 +115,7 @@ There are a lot more, but let's keep it simple for now In the last example, we already saw that you can play multiple sounds in a sequence by separating them with a space: - + Notice how the currently playing sound is highlighted in the code and also visualized below. @@ -127,13 +127,13 @@ Try adding more sounds to the sequence! **The longer the sequence, the faster it runs** - + The content of a sequence will be squished into what's called a cycle. **One way to change the tempo is using `cpm`** - + @@ -147,11 +147,11 @@ We will look at other ways to change the tempo later! **Add a rests in a sequence with '~'** - + **Sub-Sequences with [brackets]** - + @@ -163,15 +163,15 @@ Similar to the whole sequence, the content of a sub-sequence will be squished to **Multiplication: Speed things up** - + **Multiplication: Speed up sequences** - + **Multiplication: Speeeeeeeeed things up** - + @@ -181,7 +181,7 @@ Pitch = really fast rhythm **Sub-Sub-Sequences with [[brackets]]** - + @@ -191,15 +191,15 @@ You can go as deep as you want! **Play sequences in parallel with comma** - + You can use as many commas as you want: - + Commas can also be used inside sub-sequences: - + @@ -212,7 +212,6 @@ It is quite common that there are many ways to express the same idea. **Multiple Lines with backticks** + This is shorter and more readable than: - + ## Recap @@ -237,32 +236,32 @@ This is what we've leared so far: | Concept | Syntax | Example | | ----------------- | -------- | -------------------------------------------------------------------------------- | -| Sequence | space | | -| Sample Number | :x | | -| Rests | ~ | | -| Sub-Sequences | \[\] | | -| Sub-Sub-Sequences | \[\[\]\] | | -| Speed up | \* | | -| Parallel | , | | +| Sequence | space | | +| Sample Number | :x | | +| Rests | ~ | | +| Sub-Sequences | \[\] | | +| Sub-Sub-Sequences | \[\[\]\] | | +| Speed up | \* | | +| Parallel | , | | The Mini-Notation is usually used inside some function. These are the functions we've seen so far: | Name | Description | Example | | ----- | ----------------------------------- | ---------------------------------------------------------------------------------- | -| sound | plays the sound of the given name | | -| bank | selects the sound bank | | -| cpm | sets the tempo in cycles per minute | | -| n | select sample number | | +| sound | plays the sound of the given name | | +| bank | selects the sound bank | | +| cpm | sets the tempo in cycles per minute | | +| n | select sample number | | ## Examples **Basic rock beat** - + **Classic house** - + @@ -273,12 +272,12 @@ Certain drum patterns are reused across genres. We Will Rock you - + **Yellow Magic Orchestra - Firecracker** + **play pattern left and modify it right with jux** - + This is the same as: + This is like doing >")) .color(">").adsr("[.1 0]:.2:[1 0]") @@ -93,7 +89,6 @@ If you add a number to a note, the note will be treated as if it was a number We can add as often as we like: >").add("0,7")) .color(">").adsr("[.1 0]:.2:[1 0]") @@ -104,7 +99,6 @@ We can add as often as we like: **add with scale** [~ <4 1>]>*2".add("<0 [0,2,4]>/4")) .scale("C5:minor").release(.5) @@ -115,7 +109,6 @@ We can add as often as we like: **time to stack** [~ <4 1>]>*2".add("<0 [0,2,4]>/4")) @@ -132,11 +125,11 @@ We can add as often as we like: **ply** - + this is like writing: - + @@ -147,7 +140,6 @@ Try patterning the `ply` function, for example using `"<1 2 1 3>"` **off** ] <2 3> [~ 1]>" .off(1/8, x=>x.add(4)) @@ -166,7 +158,6 @@ In the notation `x=>x.`, the `x` is the shifted pattern, which where modifying. off is also useful for sounds: x.speed(1.5).gain(.25))`} @@ -174,8 +165,8 @@ off is also useful for sounds: | name | description | example | | ---- | ------------------------------ | ---------------------------------------------------------------------------------------------- | -| rev | reverse | | -| jux | split left/right, modify right | | -| add | add numbers / notes | ")).scale("C:minor")`} /> | -| ply | speed up each event n times | ")`} /> | -| off | copy, shift time & modify | x.speed(2))`} /> | +| rev | reverse | | +| jux | split left/right, modify right | | +| add | add numbers / notes | ")).scale("C:minor")`} /> | +| ply | speed up each event n times | ")`} /> | +| off | copy, shift time & modify | x.speed(2))`} /> | diff --git a/website/src/pages/workshop/recap.mdx b/website/src/pages/workshop/recap.mdx index fad14fb4..17377e97 100644 --- a/website/src/pages/workshop/recap.mdx +++ b/website/src/pages/workshop/recap.mdx @@ -13,56 +13,56 @@ This page is just a listing of all functions covered in the workshop! | Concept | Syntax | Example | | ----------------- | -------- | -------------------------------------------------------------------------------- | -| Sequence | space | | -| Sample Number | :x | | -| Rests | ~ | | -| Sub-Sequences | \[\] | | -| Sub-Sub-Sequences | \[\[\]\] | | -| Speed up | \* | | -| Parallel | , | | -| Slow down | \/ | | -| Alternate | \<\> | ")`} /> | -| Elongate | @ | | -| Replicate | ! | | +| Sequence | space | | +| Sample Number | :x | | +| Rests | ~ | | +| Sub-Sequences | \[\] | | +| Sub-Sub-Sequences | \[\[\]\] | | +| Speed up | \* | | +| Parallel | , | | +| Slow down | \/ | | +| Alternate | \<\> | ")`} /> | +| Elongate | @ | | +| Replicate | ! | | ## Sounds | Name | Description | Example | | ----- | --------------------------------- | ---------------------------------------------------------------------------------- | -| sound | plays the sound of the given name | | -| bank | selects the sound bank | | -| n | select sample number | | +| sound | plays the sound of the given name | | +| bank | selects the sound bank | | +| n | select sample number | | ## Notes | Name | Description | Example | | --------- | ----------------------------- | -------------------------------------------------------------------------------------------- | -| note | set pitch as number or letter | | -| n + scale | set note in scale | | -| stack | play patterns in parallel | | +| note | set pitch as number or letter | | +| n + scale | set note in scale | | +| stack | play patterns in parallel | | ## Audio Effects | name | example | | ----- | -------------------------------------------------------------------------------------------------- | -| lpf | ")`} /> | -| vowel | ")`} /> | -| gain | | -| delay | | -| room | | -| pan | | -| speed | ")`} /> | -| range | | +| lpf | ")`} /> | +| vowel | ")`} /> | +| gain | | +| delay | | +| room | | +| pan | | +| speed | ")`} /> | +| range | | ## Pattern Effects | name | description | example | | ---- | ----------------------------------- | ---------------------------------------------------------------------------------------------- | -| cpm | sets the tempo in cycles per minute | | -| fast | speed up | | -| slow | slow down | | -| rev | reverse | | -| jux | split left/right, modify right | | -| add | add numbers / notes | ")).scale("C:minor")`} /> | -| ply | speed up each event n times | ")`} /> | -| off | copy, shift time & modify | x.speed(2))`} /> | +| cpm | sets the tempo in cycles per minute | | +| fast | speed up | | +| slow | slow down | | +| rev | reverse | | +| jux | split left/right, modify right | | +| add | add numbers / notes | ")).scale("C:minor")`} /> | +| ply | speed up each event n times | ")`} /> | +| off | copy, shift time & modify | x.speed(2))`} /> | From 569137eb22b31792c48fdbe92799c61477110eb7 Mon Sep 17 00:00:00 2001 From: Richard Julian Date: Sat, 6 Jan 2024 12:05:39 -0800 Subject: [PATCH 2/2] Formatting for passing CI --- .../src/pages/de/workshop/first-effects.mdx | 4 +- website/src/pages/de/workshop/first-notes.mdx | 8 ++-- .../src/pages/de/workshop/first-sounds.mdx | 8 ++-- .../src/pages/de/workshop/pattern-effects.mdx | 4 +- website/src/pages/de/workshop/recap.mdx | 20 +++++----- website/src/pages/workshop/first-effects.mdx | 4 +- website/src/pages/workshop/first-notes.mdx | 8 ++-- website/src/pages/workshop/first-sounds.mdx | 37 +++++++++---------- .../src/pages/workshop/pattern-effects.mdx | 4 +- website/src/pages/workshop/recap.mdx | 20 +++++----- 10 files changed, 58 insertions(+), 59 deletions(-) diff --git a/website/src/pages/de/workshop/first-effects.mdx b/website/src/pages/de/workshop/first-effects.mdx index aa89de9c..a790120a 100644 --- a/website/src/pages/de/workshop/first-effects.mdx +++ b/website/src/pages/de/workshop/first-effects.mdx @@ -309,8 +309,8 @@ Die ganze Automation braucht nun 8 cycle bis sie sich wiederholt. ## Rückblick -| Name | Beispiel | -| ----- | -------------------------------------------------------------------------------------------------- | +| Name | Beispiel | +| ----- | --------------------------------------------------------------------------------------- | | lpf | ")`} /> | | vowel | ")`} /> | | gain | | diff --git a/website/src/pages/de/workshop/first-notes.mdx b/website/src/pages/de/workshop/first-notes.mdx index e80495a1..0f5efc55 100644 --- a/website/src/pages/de/workshop/first-notes.mdx +++ b/website/src/pages/de/workshop/first-notes.mdx @@ -314,8 +314,8 @@ Was ist der Unterschied? Das haben wir in diesem Kapitel gelernt: -| Concept | Syntax | Example | -| ------------ | ------ | ------------------------------------------------------------------- | +| Concept | Syntax | Example | +| ------------ | ------ | -------------------------------------------------------- | | Verlangsamen | \/ | | | Alternativen | \<\> | ")`} /> | | Verlängern | @ | | @@ -323,8 +323,8 @@ Das haben wir in diesem Kapitel gelernt: Neue Funktionen: -| Name | Description | Example | -| ----- | --------------------------------------- | -------------------------------------------------------------------------------------------- | +| Name | Description | Example | +| ----- | --------------------------------------- | --------------------------------------------------------------------------------- | | note | Tonhöhe als Buchstabe oder Zahl | | | scale | Interpretiert `n` als Skalenstufe | | | stack | Spiele mehrere Patterns parallel (s.u.) | | diff --git a/website/src/pages/de/workshop/first-sounds.mdx b/website/src/pages/de/workshop/first-sounds.mdx index cfb27f83..743a5312 100644 --- a/website/src/pages/de/workshop/first-sounds.mdx +++ b/website/src/pages/de/workshop/first-sounds.mdx @@ -265,8 +265,8 @@ Wir haben jetzt die Grundlagen der sogenannten Mini-Notation gelernt, der Rhythm Das haben wir bisher gelernt: -| Concept | Syntax | Example | -| --------------------- | ----------- | -------------------------------------------------------------------------------- | +| Concept | Syntax | Example | +| --------------------- | ----------- | --------------------------------------------------------------------- | | Sequenz | Leerzeichen | | | Sound Nummer | :x | | | Pausen | ~ | | @@ -278,8 +278,8 @@ Das haben wir bisher gelernt: Die mit Apostrophen umgebene Mini-Notation benutzt man normalerweise in einer sogenannten Funktion. Die folgenden Funktionen haben wir bereits gesehen: -| Name | Description | Example | -| ----- | -------------------------------------- | ---------------------------------------------------------------------------------- | +| Name | Description | Example | +| ----- | -------------------------------------- | ----------------------------------------------------------------------- | | sound | Spielt den Sound mit dem Namen | | | bank | Wählt die Soundbank / Drum Machine | | | cpm | Tempo in **C**ycles **p**ro **M**inute | | diff --git a/website/src/pages/de/workshop/pattern-effects.mdx b/website/src/pages/de/workshop/pattern-effects.mdx index f710f41d..c76c831d 100644 --- a/website/src/pages/de/workshop/pattern-effects.mdx +++ b/website/src/pages/de/workshop/pattern-effects.mdx @@ -165,8 +165,8 @@ In der Notation `x=>x.`, ist `x` das Pattern, das wir bearbeiten. .off(1/8, x=>x.speed(1.5).gain(.25))`} /> -| Name | Beschreibung | Beispiel | -| ---- | --------------------------------- | ---------------------------------------------------------------------------------------------- | +| Name | Beschreibung | Beispiel | +| ---- | --------------------------------- | ----------------------------------------------------------------------------------- | | rev | rückwärts | | | jux | einen Stereo-Kanal modifizieren | | | add | addiert Zahlen oder Noten | ")).scale("C:minor")`} /> | diff --git a/website/src/pages/de/workshop/recap.mdx b/website/src/pages/de/workshop/recap.mdx index eb1f64f0..14ef6b25 100644 --- a/website/src/pages/de/workshop/recap.mdx +++ b/website/src/pages/de/workshop/recap.mdx @@ -11,8 +11,8 @@ Diese Seite ist eine Auflistung aller im Workshop vorgestellten Funktionen. ## Mini Notation -| Konzept | Syntax | Beispiel | -| --------------------- | -------- | -------------------------------------------------------------------------------- | +| Konzept | Syntax | Beispiel | +| --------------------- | -------- | --------------------------------------------------------------------- | | Sequenz | space | | | Sample-Nummer | :x | | | Pausen | ~ | | @@ -27,24 +27,24 @@ Diese Seite ist eine Auflistung aller im Workshop vorgestellten Funktionen. ## Sounds -| Name | Beschreibung | Beispiel | -| ----- | -------------------------- | ---------------------------------------------------------------------------------- | +| Name | Beschreibung | Beispiel | +| ----- | -------------------------- | ----------------------------------------------------------------------- | | sound | spielt den Sound mit Namen | | | bank | wählt die Soundbank | | | n | wählt Sample mit Nummer | | ## Noten -| Name | Beschreibung | Beispiel | -| --------- | ---------------------------------- | -------------------------------------------------------------------------------------------- | +| Name | Beschreibung | Beispiel | +| --------- | ---------------------------------- | --------------------------------------------------------------------------------- | | note | wählt Note per Zahl oder Buchstabe | | | n + scale | wählt Note n in Skala | | | stack | spielt mehrere Patterns parallel | | ## Audio-Effekte -| Name | Beispiele | -| ----- | -------------------------------------------------------------------------------------------------- | +| Name | Beispiele | +| ----- | --------------------------------------------------------------------------------------- | | lpf | ")`} /> | | vowel | ")`} /> | | gain | | @@ -56,8 +56,8 @@ Diese Seite ist eine Auflistung aller im Workshop vorgestellten Funktionen. ## Pattern-Effekte -| Name | Beschreibung | Beispiel | -| ---- | --------------------------------- | ---------------------------------------------------------------------------------------------- | +| Name | Beschreibung | Beispiel | +| ---- | --------------------------------- | ----------------------------------------------------------------------------------- | | cpm | Tempo in Cycles pro Minute | | | fast | schneller | | | slow | langsamer | | diff --git a/website/src/pages/workshop/first-effects.mdx b/website/src/pages/workshop/first-effects.mdx index de3d6201..48764bce 100644 --- a/website/src/pages/workshop/first-effects.mdx +++ b/website/src/pages/workshop/first-effects.mdx @@ -308,8 +308,8 @@ The whole automation will now take 8 cycles to repeat. ## Recap -| name | example | -| ----- | -------------------------------------------------------------------------------------------------- | +| name | example | +| ----- | --------------------------------------------------------------------------------------- | | lpf | ")`} /> | | vowel | ")`} /> | | gain | | diff --git a/website/src/pages/workshop/first-notes.mdx b/website/src/pages/workshop/first-notes.mdx index d525cf81..335cffe7 100644 --- a/website/src/pages/workshop/first-notes.mdx +++ b/website/src/pages/workshop/first-notes.mdx @@ -297,8 +297,8 @@ What's the difference? Let's recap what we've learned in this chapter: -| Concept | Syntax | Example | -| --------- | ------ | ------------------------------------------------------------------- | +| Concept | Syntax | Example | +| --------- | ------ | -------------------------------------------------------- | | Slow down | \/ | | | Alternate | \<\> | ")`} /> | | Elongate | @ | | @@ -306,8 +306,8 @@ Let's recap what we've learned in this chapter: New functions: -| Name | Description | Example | -| ----- | ----------------------------------- | -------------------------------------------------------------------------------------------- | +| Name | Description | Example | +| ----- | ----------------------------------- | --------------------------------------------------------------------------------- | | note | set pitch as number or letter | | | scale | interpret `n` as scale degree | | | stack | play patterns in parallel (read on) | | diff --git a/website/src/pages/workshop/first-sounds.mdx b/website/src/pages/workshop/first-sounds.mdx index 5b0f45f2..91ae1e5a 100644 --- a/website/src/pages/workshop/first-sounds.mdx +++ b/website/src/pages/workshop/first-sounds.mdx @@ -55,7 +55,7 @@ One Sound can contain multiple samples (audio files). You can select the sample by appending `:` followed by a number to the name: - + @@ -72,7 +72,7 @@ For now we'll stick to this little selection of sounds, but we'll find out how t By default, Strudel comes with a wide selection of drum sounds: - + @@ -90,7 +90,7 @@ Try out different drum sounds! To change the sound character of our drums, we can use `bank` to change the drum machine: - + In this example `RolandTR909` is the name of the drum machine that we're using. It is a famous drum machine for house and techno beats. @@ -234,24 +234,24 @@ This is shorter and more readable than: Now we've learned the basics of the so called Mini-Notation, the rhythm language of Tidal. This is what we've leared so far: -| Concept | Syntax | Example | -| ----------------- | -------- | -------------------------------------------------------------------------------- | -| Sequence | space | | -| Sample Number | :x | | -| Rests | ~ | | -| Sub-Sequences | \[\] | | -| Sub-Sub-Sequences | \[\[\]\] | | -| Speed up | \* | | -| Parallel | , | | +| Concept | Syntax | Example | +| ----------------- | -------- | --------------------------------------------------------------------- | +| Sequence | space | | +| Sample Number | :x | | +| Rests | ~ | | +| Sub-Sequences | \[\] | | +| Sub-Sub-Sequences | \[\[\]\] | | +| Speed up | \* | | +| Parallel | , | | The Mini-Notation is usually used inside some function. These are the functions we've seen so far: -| Name | Description | Example | -| ----- | ----------------------------------- | ---------------------------------------------------------------------------------- | -| sound | plays the sound of the given name | | -| bank | selects the sound bank | | -| cpm | sets the tempo in cycles per minute | | -| n | select sample number | | +| Name | Description | Example | +| ----- | ----------------------------------- | ----------------------------------------------------------------------- | +| sound | plays the sound of the given name | | +| bank | selects the sound bank | | +| cpm | sets the tempo in cycles per minute | | +| n | select sample number | | ## Examples @@ -277,7 +277,6 @@ We Will Rock you **Yellow Magic Orchestra - Firecracker** x.speed(1.5).gain(.25))`} /> -| name | description | example | -| ---- | ------------------------------ | ---------------------------------------------------------------------------------------------- | +| name | description | example | +| ---- | ------------------------------ | ----------------------------------------------------------------------------------- | | rev | reverse | | | jux | split left/right, modify right | | | add | add numbers / notes | ")).scale("C:minor")`} /> | diff --git a/website/src/pages/workshop/recap.mdx b/website/src/pages/workshop/recap.mdx index 17377e97..9260a8f6 100644 --- a/website/src/pages/workshop/recap.mdx +++ b/website/src/pages/workshop/recap.mdx @@ -11,8 +11,8 @@ This page is just a listing of all functions covered in the workshop! ## Mini Notation -| Concept | Syntax | Example | -| ----------------- | -------- | -------------------------------------------------------------------------------- | +| Concept | Syntax | Example | +| ----------------- | -------- | --------------------------------------------------------------------- | | Sequence | space | | | Sample Number | :x | | | Rests | ~ | | @@ -27,24 +27,24 @@ This page is just a listing of all functions covered in the workshop! ## Sounds -| Name | Description | Example | -| ----- | --------------------------------- | ---------------------------------------------------------------------------------- | +| Name | Description | Example | +| ----- | --------------------------------- | ----------------------------------------------------------------------- | | sound | plays the sound of the given name | | | bank | selects the sound bank | | | n | select sample number | | ## Notes -| Name | Description | Example | -| --------- | ----------------------------- | -------------------------------------------------------------------------------------------- | +| Name | Description | Example | +| --------- | ----------------------------- | --------------------------------------------------------------------------------- | | note | set pitch as number or letter | | | n + scale | set note in scale | | | stack | play patterns in parallel | | ## Audio Effects -| name | example | -| ----- | -------------------------------------------------------------------------------------------------- | +| name | example | +| ----- | --------------------------------------------------------------------------------------- | | lpf | ")`} /> | | vowel | ")`} /> | | gain | | @@ -56,8 +56,8 @@ This page is just a listing of all functions covered in the workshop! ## Pattern Effects -| name | description | example | -| ---- | ----------------------------------- | ---------------------------------------------------------------------------------------------- | +| name | description | example | +| ---- | ----------------------------------- | ----------------------------------------------------------------------------------- | | cpm | sets the tempo in cycles per minute | | | fast | speed up | | | slow | slow down | |