IPython Documentation

Table Of Contents

Previous topic

Module: html.services.notebooks.handlers

Next topic

Module: html.services.sessions.handlers

This Page

Note

This documentation is for a development version of IPython. There may be significant differences from the latest stable release.

Module: html.services.notebooks.nbmanager

A base class notebook manager.

Authors:

  • Brian Granger
  • Zach Sailer

1 Class

class IPython.html.services.notebooks.nbmanager.NotebookManager(**kwargs)

Bases: IPython.config.configurable.LoggingConfigurable

check_and_sign(nb, name, path='')

Check for trusted cells, and sign the notebook.

Called as a part of saving notebooks.

Parameters:

nb : dict

The notebook structure

name : string

The filename of the notebook

path : string

The notebook’s directory

copy_notebook(from_name, to_name=None, path='')

Copy an existing notebook and return its new model.

If to_name not specified, increment from_name-Copy#.ipynb.

create_checkpoint(name, path='')

Create a checkpoint of the current state of a notebook

Returns a checkpoint_id for the new checkpoint.

create_notebook(model=None, path='')

Create a new notebook and return its model with no content.

delete_checkpoint(checkpoint_id, name, path='')

delete a checkpoint for a notebook

delete_notebook(name, path='')

Delete notebook by name and path.

get_dir_model(name, path='')

Get the directory model given a directory name and its API style path.

The keys in the model should be: * name * path * last_modified * created * type=’directory’

get_kernel_path(name, path='', model=None)

Return the path to start kernel in

get_notebook(name, path='', content=True)

Get the notebook model with or without content.

increment_filename(basename, path='')

Increment a notebook filename without the .ipynb to make it unique.

Parameters:

basename : unicode

The name of a notebook without the .ipynb file extension.

path : unicode

The URL path of the notebooks directory

Returns:

name : unicode

A notebook name (with the .ipynb extension) that starts with basename and does not refer to any existing notebook.

is_hidden(path)

Does the API style path correspond to a hidden directory or file?

Parameters:

path : string

The path to check. This is an API path (/ separated, relative to base notebook-dir).

Returns:

exists : bool

Whether the path is hidden.

list_checkpoints(name, path='')

Return a list of checkpoints for a given notebook

list_dirs(path)

List the directory models for a given API style path.

list_notebooks(path='')

Return a list of notebook dicts without content.

This returns a list of dicts, each of the form:

dict(notebook_id=notebook,name=name)

This list of dicts should be sorted by name:

data = sorted(data, key=lambda item: item['name'])
mark_trusted_cells(nb, name, path='')

Mark cells as trusted if the notebook signature matches.

Called as a part of loading notebooks.

Parameters:

nb : dict

The notebook structure

name : string

The filename of the notebook

path : string

The notebook’s directory

notebook_exists(name, path='')

Returns a True if the notebook exists. Else, returns False.

Parameters:

name : string

The name of the notebook you are checking.

path : string

The relative path to the notebook (with ‘/’ as separator)

Returns:

bool

path_exists(path)

Does the API-style path (directory) actually exist?

Override this method in subclasses.

Parameters:

path : string

The path to check

Returns:

exists : bool

Whether the path does indeed exist.

restore_checkpoint(checkpoint_id, name, path='')

Restore a notebook from one of its checkpoints

save_notebook(model, name, path='')

Save the notebook and return the model with no content.

should_list(name)

Should this file/directory name be displayed in a listing?

trust_notebook(name, path='')

Explicitly trust a notebook

Parameters:

name : string

The filename of the notebook

path : string

The notebook’s directory

update_notebook(model, name, path='')

Update the notebook and return the model with no content.