ICalico
ICalico is a new method of interacting with Calico. In addition, a host of new functionality is available.
Contents
Installation
- Install IPython
- http://ipython.org/install.html
- Make sure that ipython is in your path
- On Windows:
PATH=%PATH%;c:\Python27\Scripts
- Install Calico
- Calico Download
- Put Calico where it will live before going on
- Create a profile
-
StartCalico --create-profile
- If you move Calico, you may have to re-create the profile
-
- Start IPython with Calico profile
-
ipython notebook --profile calico
-
A web page should open up which will allow you to enter scripts and Calico "magic" commands.
Getting Started
For an introduction to this manner of interacting with programs, please see:
Documentation
Technically, ICalico is a "IPython kernel". However, of course ICalico can operating using any of a number of languages.
Magics
ICalico magics are "meta" commands: commands for the ICalico system, separate from any Calico language.
- One preceding percent sign indicates a "magic line command" (applies to just the line)
- Two preceding percent signs indicates a "magic cell command" (applies to just the cell)
- Three preceding percent sign indicates a "magic notebook command" (applies from here to rest of notebook)
Any cell can have any number of magic commands, but they must all appear first, before any code.
%connect_info - show ICalico JSON connection information %edit FILENAME - edit a file in an external editor %%file FILENAME - create a filename with contents of cell %%html - treat the cell as HTML %lang - get information on current language %%lang LANGUAGE - change language for just this cell %%%lang LANGUAGE - change language for rest of cells %magic - get information on magic meta-commands %qtconsole - start a qtconsole %run FILENAME - run a file (language determined by extension) %%time - time how long it takes to run this cell
Display Functions
These are available from the calico object:
- display(...)
- Audio()
- HTML()
- Javascript()
- Latex()
- Math()
- Table()
- Image()
Example:
calico.display(calico.HTML("<b>This is bold!</b>"))
Widgets
Widgets allow for creating interactive interfaces, when connected to an executing kernel. All of the widgets are available from the calico object.
- BoundedFloatTextWidget
- BoundedIntTextWidget
- ButtonWidget
- CameraWidget
- CheckboxWidget
- ContainerWidget
- DropdownWidget
- FloatProgressWidget
- FloatSliderWidget
- FloatTextProgressWidget
- FloatTextWidget
- HTMLWidget
- ImageWidget
- IntProgressWidget
- IntSliderWidget
- IntTextWidget
- LatexWidget
- PasswordWidget
- PopupWidget
- RadioButtonsWidget
- SelectWidget
- SelectionWidget
- TextWidget
- TextareaWidget
- ToggleButtonWidget
- ToggleButtonsWidget
In addition, there are a number of similar Javascript-based widgets:
- GeoChart