mirror of
https://github.com/jupyter/notebook.git
synced 2025-02-11 12:30:51 +08:00
Move language info from kernelspec to kernel_info_reply
This commit is contained in:
parent
a58b215421
commit
9c7d73a05e
@ -207,9 +207,18 @@ define([
|
|||||||
});
|
});
|
||||||
|
|
||||||
this.events.on('spec_changed.Kernel', function(event, data) {
|
this.events.on('spec_changed.Kernel', function(event, data) {
|
||||||
that.set_kernelspec_metadata(data);
|
that.metadata.kernelspec =
|
||||||
|
{name: data.name, display_name: data.display_name};
|
||||||
|
});
|
||||||
|
|
||||||
|
this.events.on('kernel_ready.Kernel', function(event, data) {
|
||||||
|
var kinfo = data.kernel.info_reply
|
||||||
|
var langinfo = kinfo.language_info || {};
|
||||||
|
if (!langinfo.name) langinfo.name = kinfo.language;
|
||||||
|
|
||||||
|
that.metadata.language_info = langinfo;
|
||||||
// Mode 'null' should be plain, unhighlighted text.
|
// Mode 'null' should be plain, unhighlighted text.
|
||||||
cm_mode = data.codemirror_mode || data.language || 'null'
|
var cm_mode = langinfo.codemirror_mode || langinfo.language || 'null'
|
||||||
that.set_codemirror_mode(cm_mode);
|
that.set_codemirror_mode(cm_mode);
|
||||||
});
|
});
|
||||||
|
|
||||||
@ -329,21 +338,11 @@ define([
|
|||||||
md: this.metadata,
|
md: this.metadata,
|
||||||
callback: function (md) {
|
callback: function (md) {
|
||||||
that.metadata = md;
|
that.metadata = md;
|
||||||
},
|
},
|
||||||
name: 'Notebook',
|
name: 'Notebook',
|
||||||
notebook: this,
|
notebook: this,
|
||||||
keyboard_manager: this.keyboard_manager});
|
keyboard_manager: this.keyboard_manager});
|
||||||
};
|
};
|
||||||
|
|
||||||
Notebook.prototype.set_kernelspec_metadata = function(ks) {
|
|
||||||
var tostore = {};
|
|
||||||
$.map(ks, function(value, field) {
|
|
||||||
if (field !== 'argv' && field !== 'env') {
|
|
||||||
tostore[field] = value;
|
|
||||||
}
|
|
||||||
});
|
|
||||||
this.metadata.kernelspec = tostore;
|
|
||||||
}
|
|
||||||
|
|
||||||
// Cell indexing, retrieval, etc.
|
// Cell indexing, retrieval, etc.
|
||||||
|
|
||||||
@ -1811,6 +1810,14 @@ define([
|
|||||||
this.events.trigger('spec_changed.Kernel', this.metadata.kernelspec);
|
this.events.trigger('spec_changed.Kernel', this.metadata.kernelspec);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Set the codemirror mode from language_info metadata
|
||||||
|
if (this.metadata.language_info !== undefined) {
|
||||||
|
var langinfo = this.metadata.language_info;
|
||||||
|
// Mode 'null' should be plain, unhighlighted text.
|
||||||
|
var cm_mode = langinfo.codemirror_mode || langinfo.language || 'null'
|
||||||
|
this.set_codemirror_mode(cm_mode);
|
||||||
|
}
|
||||||
|
|
||||||
// Only handle 1 worksheet for now.
|
// Only handle 1 worksheet for now.
|
||||||
var worksheet = content.worksheets[0];
|
var worksheet = content.worksheets[0];
|
||||||
if (worksheet !== undefined) {
|
if (worksheet !== undefined) {
|
||||||
|
@ -46,6 +46,7 @@ define([
|
|||||||
this.username = "username";
|
this.username = "username";
|
||||||
this.session_id = utils.uuid();
|
this.session_id = utils.uuid();
|
||||||
this._msg_callbacks = {};
|
this._msg_callbacks = {};
|
||||||
|
this.info_reply = {}; // kernel_info_reply stored here after starting
|
||||||
|
|
||||||
if (typeof(WebSocket) !== 'undefined') {
|
if (typeof(WebSocket) !== 'undefined') {
|
||||||
this.WebSocket = WebSocket;
|
this.WebSocket = WebSocket;
|
||||||
@ -398,7 +399,8 @@ define([
|
|||||||
this.events.trigger('kernel_starting.Kernel', {kernel: this});
|
this.events.trigger('kernel_starting.Kernel', {kernel: this});
|
||||||
// get kernel info so we know what state the kernel is in
|
// get kernel info so we know what state the kernel is in
|
||||||
var that = this;
|
var that = this;
|
||||||
this.kernel_info(function () {
|
this.kernel_info(function (reply) {
|
||||||
|
that.info_reply = reply.content;
|
||||||
that.events.trigger('kernel_ready.Kernel', {kernel: that});
|
that.events.trigger('kernel_ready.Kernel', {kernel: that});
|
||||||
});
|
});
|
||||||
};
|
};
|
||||||
@ -925,7 +927,8 @@ define([
|
|||||||
} else if (execution_state === 'starting') {
|
} else if (execution_state === 'starting') {
|
||||||
this.events.trigger('kernel_starting.Kernel', {kernel: this});
|
this.events.trigger('kernel_starting.Kernel', {kernel: this});
|
||||||
var that = this;
|
var that = this;
|
||||||
this.kernel_info(function () {
|
this.kernel_info(function (reply) {
|
||||||
|
that.info_reply = reply.content;
|
||||||
that.events.trigger('kernel_ready.Kernel', {kernel: that});
|
that.events.trigger('kernel_ready.Kernel', {kernel: that});
|
||||||
});
|
});
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user