add InlineBackend to ConsoleApp class list, so it will be included in generated config files / help-all output of the appropriate entry points.
This will alleviate some of the annoyance discussed on the list, because the config file will have the whole default rc commented out, so the starting point for user-edits is no change, rather than a blank slate.
New Tooltip, New Completer and JS Refactor.
This is a major reworking of lots of notebook client code, both introducing new features and allowing certain things to be done more cleanly:
- New graphical tooltip with keyboard control: successive presses of the TAB key will expand it, pin it for 10 s (a clock icon is shown), and send its content to the bottom help pager (which is now resizable).
- Completer has been refactored into a new class and now can analyze the current cell to support completions on objects that don't exist in the kernel yet (because the cell hasn't been executed).
- All the client-side JavaScript has been decoupled to ease reuse of parts of the machinery without having to build a full-blown notebook. This will make it much easier to communicate with an IPython kernel from existing web pages and to integrate single cells into other sites, without loading the full notebook document-like UI.
- This refactoring also enables the possibility of writing dynamic javascript widgets that are returned from Python code and that present an interactive view to the user, with callbacks in Javascript executing calls to the Kernel. This will enable many interactive elements to be added by users in notebooks.
An example of this capability has been provided as a proof of concept in `docs/examples/widgets` that lets you directly communicate with one or more parallel engines, acting as a mini-console for parallel debugging and introspection.
Closes#1498.
When kernel is died and restarted, or restarted while it is in the
busy state, message "(Busy)" on the window title is not updated. This
problem is fixed by updating document title when restarting.
it seem that show and hide methods fron tooltip where collinding with
jquery, sometime blocking the notebook.
Move from css fadeIn/Out to jQuery fade In/Out, and replace
addRemoveClass by fadeIn/fadeOut
For security reasons, the kernel should not be started until
after the notebook content is completely loaded and on the page.
This prevents people from creating notebooks that run nasty code
on the users machine at load time.
In order to implement this, we had to create a CodeCell.set_kernel
method that allows the kernel attribute of a CodeCell to be set
at a later time. This also fixes some error messages we were
seeing related to the kernel's channels not being setup properly
when a send was attempted.
Use notification to quicky remind use of the tooltip
Use javascript in notebook to make a live demo in
01_notebook_introduction
tooltip docstring is remplaceid for the first use by a live tutorial
I had removed the choice for the user to not restart a dead kernel
but we are using that elsewhere. Eventually we may not give them
a choice, but for now we will use that model.