orca – an esoteric programming language designed to quickly create
games/orca [ –i ] [ –p ] [ –bpm bpm ] [ –s WxH ] [ –r random_seed ]
[ –c cursor ] [ –l undo_limit ] [ –n ] [ file ]|
Orca is not a synthesizer, but a flexible livecoding environment
capable of sending MIDI, OSC & UDP to your audio/visual interfaces.
Every letter of the alphabet is an operation, where lowercase letters operate on bang, uppercase letters operate each frame. Extensive documentation of the language is available on the project's GitHub web page, see SOURCE section.
There are a number of options:
' Enter rectangle selection mode, use arrows to extend it.|
( ) _ +
Mouse buttons works as one expects it. Left button selects a rectangle
on the grid. Snarf and paste are available by the usual means.
Right button held opens a menu. |
Holding Shift and pressing left mouse button will extend the selection without changing the cursor position.
Holding Alt and pressing left mouse button will move the selection
to the new cursor position, the cell under the mouse pointer.
Commands can be entered into Orca either manually with Ctrl+k
or with a $ operator. Arguments may be separated with a (semi)colon
as well as any whitespace characters. All commands except undo
, redo and color have a shorthand equivalent to their first two
Any command can start with , (comma) to select the entire grid
before executing the command.
run Forward one frame.
copyCopy the selection to the snarf buffer.
aux/listen1 –t tcp!127.0.0.1!49160 games/orca
Then start the following in a separate "command" window:
Orca supports injecting files at the current cursor position by
plumbing. Add this to your plumbing rules to get it working:|
type is text
data matches '[a–zA–Z¡–0–9_–.,/]+'
data matches '([a–zA–Z¡–0–9_–.,/]+).orca'
arg isfile $0
data set $file
plumb to orca
plumb start window games/orca $file