2

Ich verwende Jupyter Notebook mit dem Sublime Text keymap, indem Sie folgende meinen Jupyter custom.js:deaktivieren Strg + Enter sublimes keymap in jupyter Notebook

require(["codemirror/keymap/sublime", "notebook/js/cell"], 
function(sublime_keymap, cell) { 
    cell.Cell.options_default.cm_config.keyMap = 'sublime'; 
}); 

... die meist große Werke, außer dass ich auf einer Windows-Maschine bin und das die Sublime-Funktionalität von "insertLineAfter" zu der Bindung für Ctrl + Enter hinzufügt, was ich nicht will, weil Ctrl + Enter die Bindung ist, um die aktuelle Zelle in Jupyter auszuführen.

Kann jemand bitte nur die "insertLineAfter" -Bindung für Strg + Enter deaktivieren?

Antwort

0

Individuelle Sublime Text Tastenbelegungen können mit dem unbound Befehl in Ihrer Default (OS).sublime-keymap Datei deaktiviert werden. d.h. Menu --> Preferences --> Key Bindings - User. In Ihrem Fall fügen Sie einfach die folgende Zeile hinzu.

{ "keys": ["ctrl+enter"], "command": "unbound" } 

Da die Add Line.sublime-macro sehr nützlich wünschen Sie können ihm eine andere Bindung zu geben, zum Beispiel Sie alt+enter oder super+enter in diesem Fall verwenden können Sie die folgende hinzufügen würden.

{ "keys": ["ctrl+enter"], "command": "unbound" } 

{ "keys": ["alt+enter"], "command": "run_macro_file", "args": 
    {"file": "res://Packages/Default/Add Line.sublime-macro"} }, 
2

können Sie die Abfrage verhindern + eine neue Zeile in jupyter Notebook mit Kommentar aus der folgenden Zeile erzeugen eingeben:

cmds[map[ctrl + "Enter"] = "insertLineAfter"] = function(cm) { insertLine(cm, false); }; 

in der Datei:

[python lib path]/dist-packages/notebook/static/components/codemirror/keymap/sublime.js 
3

Folge für mich gearbeitet :

require(["codemirror/keymap/sublime", "notebook/js/cell", "base/js/namespace"], 
    function(sublime_keymap, cell, IPython) { 
     cell.Cell.options_default.cm_config.keyMap = 'sublime'; 
     cell.Cell.options_default.cm_config.extraKeys["Ctrl-Enter"] = function(cm) {} 
     var cells = IPython.notebook.get_cells(); 
     for(var cl=0; cl< cells.length ; cl++){ 
      cells[cl].code_mirror.setOption('keyMap', 'sublime'); 
      cells[cl].code_mirror.setOption("extraKeys", { 
       "Ctrl-Enter": function(cm) {} 
      }); 
     } 
    } 
);