Browse Source

Add creators to the plugins

Steven Silvester 8 năm trước cách đây
mục cha
commit
a9e02c35ba
3 tập tin đã thay đổi với 15 bổ sung21 xóa
  1. 10 0
      src/docregistry/plugin.ts
  2. 0 2
      src/editorwidget/plugin.ts
  3. 5 19
      src/notebook/plugin.ts

+ 10 - 0
src/docregistry/plugin.ts

@@ -21,6 +21,16 @@ const docRegistryProvider: JupyterLabPlugin<IDocumentRegistry> = {
     let registry = new DocumentRegistry();
     registry.addModelFactory(new TextModelFactory());
     registry.addModelFactory(new Base64ModelFactory());
+    registry.addFileType({
+      name: 'Text',
+      extension: '.txt',
+      fileType: 'file',
+      fileFormat: 'text'
+    });
+    registry.addCreator({
+      name: 'Text File',
+      fileType: 'Text',
+    });
     return registry;
   }
 };

+ 0 - 2
src/editorwidget/plugin.ts

@@ -291,8 +291,6 @@ function createMenu(app: JupyterLab, tracker: IEditorTracker): Menu {
     args: { theme: name }
   }));
 
-  menu.addItem({ command: 'file-operations:new-text-file' });
-  menu.addItem({ command: 'file-operations:save' });
   menu.addItem({ command: cmdIds.closeAll });
   menu.addItem({ type: 'separator' });
   menu.addItem({ type: 'submenu', menu: settings });

+ 5 - 19
src/notebook/plugin.ts

@@ -145,30 +145,17 @@ function activateNotebookHandler(app: JupyterLab, registry: IDocumentRegistry, s
   registry.addModelFactory(new NotebookModelFactory());
   registry.addWidgetFactory(widgetFactory, options);
 
-  // Add the ability to launch notebooks for each kernel type.
-  let displayNameMap: { [key: string]: string } = Object.create(null);
-  let specs = services.kernelspecs;
-  for (let kernelName in specs.kernelspecs) {
-    let displayName = specs.kernelspecs[kernelName].spec.display_name;
-    displayNameMap[displayName] = kernelName;
-  }
-  let displayNames = Object.keys(displayNameMap).sort((a, b) => {
-    return a.localeCompare(b);
-  });
   registry.addFileType({
     name: 'Notebook',
     extension: '.ipynb',
     fileType: 'notebook',
     fileFormat: 'json'
   });
-  for (let displayName of displayNames) {
-    registry.addCreator({
-      name: `${displayName} Notebook`,
-      fileType: 'Notebook',
-      widgetName: 'Notebook',
-      kernelName: displayNameMap[displayName]
-    });
-  }
+  registry.addCreator({
+    name: 'Notebook',
+    fileType: 'Notebook',
+    widgetName: 'Notebook'
+  });
 
   addCommands(app, tracker);
   populatePalette(palette);
@@ -622,7 +609,6 @@ function createMenu(app: JupyterLab): Menu {
   settings.title.label = 'Settings';
   settings.addItem({ command: cmdIds.toggleAllLines });
 
-  menu.addItem({ command: 'file-operations:new-notebook' });
   menu.addItem({ command: cmdIds.undo });
   menu.addItem({ command: cmdIds.redo });
   menu.addItem({ command: cmdIds.split });