2016-09-13 2 views
0

Я хотел попробовать Jupyter ноутбуки, но быстро столкнулся с проблемами с ним, так как моя раскладка клавиатуры использует alt+d и alt+f для вставки ( и ), который не работает. Все мои другие модификаторы также основаны на alt+{letter}, и все они работают, но почему-то alt+d и alt+f что-то проглатывают. Однако я не могу найти ярлык, задокументированный для этих двух комбинаций.Jupyter Notebook альт + D ярлык столкновения

Я добавил следующее ~/.ipython/profile_default/static/custom/custom.js

$([IPython.events]).on("app_initialized.NotebookApp", function() { 
    // No idea what these do, but the mess with my keyboard layout 
    IPython.keyboard_manager.command_shortcuts.remove_shortcut("Alt-d"); 
    IPython.keyboard_manager.command_shortcuts.remove_shortcut("Alt-f"); 
}); 

Но это, кажется, не имеют никакого эффекта даже после перезагрузки сервера и браузера перезагрузки.

Благодаря

+0

Я уверен, что Jupyter ничего не делать с этими ярлыками, хотя вполне возможно, что CodeMirror компонент редактор кода в записной книжке, делает. Но когда я пытаюсь использовать его в своем браузере, Alt-d и Alt-f являются ярлыками браузера, а не чем-либо в редакторе. –

+0

Возможно, это может быть тот факт, что редактор, похоже, не использует фактические поля ввода, но вместо этого какое-то другое решение, возможно, это заставляет браузер не отключать определенные ярлыки, которые не должны включаться при вводе текста. –

+0

@ThomasK Да, похоже, это ярлык Codemirror для удаления слова https://github.com/codemirror/CodeMirror/blob/1cbf1f64001b36dc7115f6a36c0f919f59c434fa/lib/codemirror.js#L2911. Вы знаете, можно ли также удалить эти ярлыки? –

ответ

0

Таким образом, после некоторого количества рытья я понял, что причины этого. Проблема не в ноутбуке jupyter, но вызвана ярлыком в основном редакторе CodeMirror. Как видно here CodeMirror добавляет ярлыки для Alt + d и Alt + e. Способ отключить это ставит следующие в ~/.jupyter/custom/custom.js

delete CodeMirror.keyMap.emacsy["Alt-F"]; 
delete CodeMirror.keyMap.emacsy["Alt-D"]; 

 Смежные вопросы

  • Нет связанных вопросов^_^