foo
Angenommen wir möchten auf ein Ereignis warten, das die folgenden drei Pfad-Segmente enthält:
sync "/*/*/*"
Hiermit kann man auf jegliches Time State Ereignis syncen, dass aus exakt drei Pfadsegmenten besteht, unabhängig davon, wie genau der Inhalt der Segmente ist. Schauen wir uns das an einem Beispiel an:
cue "/foo/bar/baz"
cue "/foo/baz/quux"
cue "/eggs/beans/toast"
cue "/moog/synths/rule"
Allerdings wird es nicht auf Ereignisse “matchen”, die weniger oder mehr Pfad-Segmente hätten. Die folgenden würden nicht erkannt und damit kein Ereignis triggern:
cue "/foo/bar"
foo
cue "/eggs"
Jeder *
bedeutet irgendein Inhalt. Das heisst, wie können Pfade mit nur einem Segment mit /*
oder Pfade aus fünf Segmenten mit /*/*/*/*/*
erkennen
foo
cue "/foo/bar/baz"
foo
foo
Allerdings erkennt es nicht das Folgende:
foo foo foo
foo
foo
cue "/foo/bar/baz"
foo
foo
foo
Du kann das ?
verwenden, um auf ein bestimmtes einzelnes Zeichen zu erkennen. "/?oo/bar/baz"
passt auf:
cue "/foo/bar/baz"
cue "/goo/bar/baz"
cue "/too/bar/baz"
cue "/woo/bar/baz"
foo
foo foo foo
foo
foo foo foo
foo
foo foo foo foo foo
When calling sync
or get
you are free to combine matchers in any order you see fit to powerfully match any Time State event created by cue
or set
. Let’s look at a crazy example:
sample :loop_amen
For those curious, these matching rules are based on the Open Sound Control pattern matching specification which is explained in detail here: http://opensoundcontrol.org/spec-1_0