##// END OF EJS Templates
This feature was discussed in #6123, but it doesn't look like anything was ever incorporated into the IPython Notebook....
This feature was discussed in #6123, but it doesn't look like anything was ever incorporated into the IPython Notebook. Here's a brief overview of the changes: - Display of messages from other clients can be toggled on and off from within a notebook, either using the ``<M-m>e`` keyboard shortcut in the web UI, or through the option in the "Kernel" menu. - notebook.js controls whether messages are displayed through a callback that is invoked from kernel.js when no callbacks are available for a message. - The UI displays ``execute_input`` messages originating from an other clients in new cells at the end of the notebook. Output messages (``execute_result`` et al.) will only be displayed if a cell exists with a matching message ID. Pending design questions: - Should each ``execute_input`` message cause a new cell to be created? - Should new cells be placed at the end of the notebook, or elsewhere? If the latter, what criteria should be followed?
Nathan Heijermans -
r19164:17ac8ca3
Show More

IPython Notebook development

Development dependencies

Developers of the IPython Notebook will need to install the following tools:

  • invoke
  • node.js
  • less (npm install -g less)

Components

We are moving to a model where our JavaScript dependencies are managed using
bower. These packages are installed in static/components
and committed into a separate git repo ipython/ipython-components.
Our dependencies are described in the file
static/components/bower.json. To update our bower packages, run bower install
in this directory.

less

If you edit our .less files you will need to run the less compiler to build
our minified css files. This can be done by running python setup.py css from the root of the repository.
If you are working frequently with .less files please consider installing git hooks that
rebuild the css files and corresponding maps in ${RepoRoot}/git-hooks/install-hooks.sh.

JavaScript Documentation

How to Build/ view the doc for JavaScript. JavaScript documentation should follow a
style close to JSDoc one, so you should be able to build them with your favorite
documentation builder. Still the documentation comment are mainly written to be read
with YUI doc. You can either build a static version, or start a YUIdoc server that
will live update the doc at every page request.

To do so, you will need to install YUIdoc.

Install NodeJS

Node is a browser less javascript interpreter. To install it please refer to
the documentation for your platform. Install also NPM (node package manager) if
it does not come bundled with it.

Get YUIdoc

npm does by default install package in ./node_modules instead of doing a
system wide install. I'll leave you to yuidoc docs if you want to make a system
wide install.

First, cd into js directory :

cd IPython/html/static/js/
# install yuidoc
npm install yuidocjs

Run YUIdoc server

From IPython/html/static/js/

# run yuidoc for install dir 
./node_modules/yuidocjs/lib/cli.js --server .

Follow the instruction and the documentation should be available on localhost:3000

Omitting --server will build a static version in the out folder by default.