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.