Some useful high level documentation lives here, this won't make much sense if you are reading this in a different place from the help system in the fluxus scratchpad app, but it might be useful anyway...
Returns
Example
Fluxus documentation -------------------- "act of a flowing; a continuous moving on or passing by, as of a flowing stream; a continuous succession of changes" Fluxus is a realtime rendering engine for livecoding in Scheme. For more detailed docs, see: fluxus/docs/fluxus-documentation.txt The fluxus scratchpad has two modes of operation, the console (you are using this now) which allows you to enter commands and see the results immediately. The other mode is the editor which is more like a normal text editor - there are 9 workspaces, (which allow you to edit more than one script at once) switch to them using ctrl-1 to ctrl-9 and switch back to the console with ctrl-0. To copy/paste examples, hit the right cursor until you move behind the prompt, navigate to the example, use shift to select it, press ctrl-c to copy, then ctrl-0 and ctrl-v to paste into a text buffer. More help topics: (help "keys") for keyboard commands for controlling fluxus (help "console") for more help on the console (help "editor") for more help on the livecoding editor (help "camera") for help on the camera controls (help "language") for more info on the fluxus commands (help "misc") for miscellaneous fluxus info (help "toplap") for the toplap manefesto (help "authors") who made this?
Returns
Example
Fluxus keys
-----------
ctrl-f : Fullscreen mode.
ctrl-w : Windowed mode.
ctrl-h : Hide/show the text.
ctrl-l : Load a new script (navigate with cursors and return).
ctrl-s : Save current script.
ctrl-d : Save as - current script (opens a filename dialog).
ctrl-p : Auto format the whitespace in your scheme script to be more pretty
ctrl-b : Show where cursor is.
ctrl-1 to 9 : Switch to selected workspace.
ctrl-0 : Switch to the REPL. F3 : Resets the camera if you get lost.
F5 : (or ctrl-e) Executethe selected text, or all if none is selected.
F6 : Completely resets the interpreter, then executes the selected text,
or all if none is selected.
F9 : Toggles scratchpad effects.
F10 : Decreases the text opacity
F11 : Increases the text opacity
F12 : Pauses keypress file playback.
Returns
Example
Fluxus console (or REPL) ------------------------ If you press ctrl and 0, instead of getting another script workspace, you will be presented with a Read EvaluatePrint Loop interpreter, or repl for short. This is really just an interactive interpreter similar to the commandline, where you can enter scheme code for immediate evaluation. This code is evaluated in the same interpreter as the other scripts, so you can use the repl to debug or inspect global variables and functions they define. This window is also where error reporting is printed, along with the terminal window you started fluxus from.
Returns
Example
Fluxus editor ------------- When using the fluxus scratchpad, the idea is that you only need the one window to build scripts, or play live. f5 is the key that runs the script when you are ready. Selecting some text (using shift) and pressing f5 will execute the selected text only. This is handy for reevaluating functions without running the whole script each time. Workspaces ---------- The script editor allows you to edit 9 scripts simultaneously by using workspaces. To switch workspaces, use ctrl+number key. Only one can be run at once though, hitting f5 will execute the currently active workspace script. Auto focus ---------- The editor includes an auto scaling/centering feature which is enabled by default. To disable it - add the line: (set! fluxus-scratchpad-do-autofocus 0) to your .fluxus.scm file - or create a new file called that in your home directory, containing that line.
Returns
Example
Fluxus camera control --------------------- The camera is controlled by moving the mouse and pressing mouse buttons. Left mouse button: Rotate Middle mouse button: Move Right mouse button: Zoom
Returns
Example
Fluxus init script
------------------
Fluxus looks for a script in your home directory called
.fluxus.scm which it will run if it is found. This is useful
for putting init commands (like connecting to jack or setting
the help text language etc)
Frame rate throttling
---------------------
By default fluxus throttles the framerate to around 40fps.
to disable this (and run at 100% cpu), use desiredfps with
some arbitrary large number:
(desiredfps 100000000)
To display the fps use (show-fps 1)
Command line options
---------------------
The easiest way to load a script into fluxus is to specify it on
the command line, eg:
$ fluxus myscript.scm
Will launch fluxus and load the script into the editor.
$ fluxus -x myscript.scm
Will launch fluxus, load, hide and execute the script.
Use -h to print all commandline options.
Fluxus also contains a keypress and mouse event recorder for
recording livecoding sessions:
$ fluxus -r filename : record to keypresses file
$ fluxus -p filename : playback from file
$ fluxus -p filename -d time : seconds per frame time override for
playback (for use with frame-dump)
Returns
Example
Authors
-------
Glauber Alex Dias Prado
Artem Baguinski
Dan Bethell
Nik Gaffney
Dave Griffiths
Claude Heiland-Allen
Alex Norman
Gabor Papp
Fabien Pelisson
Jeff Rose
James Tittle
Scott Watson
EvanRaskob
"Computers are useless. They can only give you answers".
Pablo Picasso (1881 - 1973).
Returns
Example
Language Docs
-------------
Fluxus is comprised of a set of functions which
extend Scheme for use in realtime computer graphics.
Scheme itself is out of the scope of this documentation,
but fluxus is a good way of learning it. I reccommend
"The Little Schemer" by by Daniel P. Friedman and Matthias
Felleisen.
The functions are grouped into sections to make things
a bit easier to find.
(help "sections") for a list of all sections
(help "sectionname") to find out more about a section
(help "functionname") to find out more about a function
The idea is that you can find a function you are interested
in by doing something like this:
(help "sections")
... list of sections ...
(help "maths")
... description and list of maths functions ...
(help "vmul")
... details about the function with example ...
Returns
Example
TOPLAP MANEFESTO We demand:
* Give us access to the performer's mind, to the whole human
instrument.
* Obscurantism is dangerous. Show us your screens.
* Programs are instruments that can change themselves
* The program is to be transcended - Artificial language is the way.
* Code should be seen as well as heard, underlying algorithms viewed
as well as their visual outcome.
* Live coding is not about tools. Algorithms are thoughts.
Chainsaws are tools. That's why algorithms are sometimes
harder to notice than chainsaws.
We recognise continuums of interaction and profundity, but prefer:
* Insight into algorithms
* The skillful extemporisation of algorithm as an
expressive/impressive display of mental dexterity
* No backup (minidisc, DVD, safety net computer)
We acknowledge that:
* It is not necessary for a lay audience to understand the
code to appreciate it, much as it is not necessary to know
how to play guitar in order to appreciate watching a guitar
performance.
* Live coding may be accompanied by an impressive display of
manual dexterity and the glorification of the typing interface.
* Performance involves continuums of interaction, covering
perhaps the scope of controls with respect to the parameter
space of the artwork, or gestural content, particularly
directness of expressive detail. Whilst the traditional
haptic rate timing deviations of expressivity in
instrumental music are not approximated in code, why repeat
the past? No doubt the writing of code and expression of
thought will develop its own nuances and customs.
Performances and events closely meeting these manifesto
conditions may apply for TOPLAP approval and seal.