Documentation
¶
Overview ¶
Package jupyter implements the machinery necessary to implement and run a kernel for Jupyter.
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func RunKernel ¶
func RunKernel(kernel Kernel, connInfo *ConnectionInfo) error
RunKernel is the main entry point to start the kernel. This is what is called by the kernel executable.
Types ¶
type Completeness ¶
type Completeness string
const ( Complete Completeness = "complete" Incomplete Completeness = "incomplete" InvalidCode Completeness = "invalid" UnknownCompleteness Completeness = "unknown" )
type CompletionResult ¶
type CompletionResult struct {
// The list of all matches to the completion request.
Matches []string
// The range of text that should be replaced by the above matches
// when a completion is accepted. Typically CursorEnd is the same
// as CursorPos in the request.
CursorStart int
CursorEnd int
// Information that frontend plugins might use for extra display
// information about completions.
Metadata map[string]interface{}
}
type ConnectionInfo ¶
type ConnectionInfo struct {
Key string `json:"key"`
IP string `json:"ip"`
Transport string `json:"transport"`
SignatureScheme string `json:"signature_scheme"`
StdinPort int `json:"stdin_port"`
ControlPort int `json:"control_port"`
IOPubPort int `json:"iopub_port"`
HeartbeatPort int `json:"hb_port"`
ShellPort int `json:"shell_port"`
}
ConnectionInfo stores the contents of the kernel connection file created by Jupyter.
func ReadConnectionFile ¶
func ReadConnectionFile(connectionFilePath string) (*ConnectionInfo, error)
ReadConnectionFile reads the contents of the connection file at the specified path.
type ExecuteOptions ¶
type Kernel ¶
type Kernel interface {
Info() KernelInfo
Shutdown(restart bool) error
Execute(code string, options ExecuteOptions) ([]interface{}, error)
Complete(code string, cursorPos int) (*CompletionResult, error)
Completeness(code string) Completeness
}
type KernelInfo ¶
type KernelInfo struct {
// Version of messaging protocol.
// The first integer indicates major version. It is incremented when
// there is any backward incompatible change.
// The second integer indicates minor version. It is incremented when
// there is any backward compatible change.
//
// Note to implementers: the ProtocolVersion value returned by
// Kernel.Info() will be ignored, and will be replaced by the
// igo package.
ProtocolVersion string `json:"protocol_version"`
// The kernel implementation name
// (e.g. 'ipython' for the IPython kernel)
Implementation string `json:"implementation"`
// Implementation version number.
// The version number of the kernel's implementation
// (e.g. IPython.__version__ for the IPython kernel)
ImplementationVersion string `json:"implementation_version"`
// Information about the language of code for the kernel
LanguageInfo LanguageInfo `json:"language_info"`
// A banner of information about the kernel,
// which may be desplayed in console environments.
Banner string `json:"banner,omitempty"`
// A list of dictionaries, each with keys 'text' and 'url'.
// These will be displayed in the help menu in the notebook UI.
HelpLinks []HelpLink `json:"help_links,omitempty"`
}
type LanguageInfo ¶
type LanguageInfo struct {
// Name of the programming language in which kernel is implemented.
// Kernel included in IPython returns 'python'.
Name string `json:"name"`
// Language version number.
// It is Python version number (e.g., '2.7.3') for the kernel
// included in IPython.
Version string `json:"version"`
// mimetype for script files in this language
MimeType string `json:"mimetype"`
// Extension including the dot, e.g. '.py'
FileExtension string `json:"file_extension"`
// Pygments lexer, for highlighting
// Only needed if it differs from the 'name' field.
PygmentsLexer string `json:"pygments_lexer,omitempty"`
// Codemirror mode, for for highlighting in the notebook.
// Only needed if it differs from the 'name' field.
CodemirrorMode interface{} `json:"codemirror_mode,omitempty"`
// Nbconvert exporter, if notebooks written with this kernel should
// be exported with something other than the general 'script'
// exporter.
NbconvertExporter string `json:nbconvert_exporter,omitempty"`
}
Click to show internal directories.
Click to hide internal directories.