2017-01-09 9 views
7

Как выбрать подходящие ключевые слова в ноутбуке Jupyter с помощью сочетания клавиш? Например, в редакторе Atom/Sublime я могу нажать cmd + D на mac (или Ctrl + d на Windows), в то время как курсор находится над «var», и каждый раз, когда я делаю это, будет выделен следующий «var». Затем я могу ввести новое имя переменной, а «var» заменяется на все, что я набрал.Atom/Sublime, как множественный выбор в Jupyter

var = "hello" 
print(var) 
print(var) 

Есть ли эквивалент в ноутбуке Jupyter?

+0

Я так не верю, нет. В то время как ноутбуки Jupyter удобны для возиться, я нашел их раздражающими (в лучшем случае) для использования в качестве замены редактора IDE/текстового редактора из-за отсутствия таких функций (не говоря уже о простой функции поиска и замены!). –

+0

Я думаю, что вы правы - я нашел обходное решение. У меня есть VIM-привязки, активированные в Jupyter alread, и поиск по Google. Я обнаружил, что VIM уже имеет способ справиться с такими вещами: http://vim.wikia.com/wiki/Search_and_replace – RancheroBeans

ответ

-1

Да, есть способ сделать это.

В бегущего Jupyter ноутбук:

Press

Esc

А затем нажмите

F

f/F обе будет работать.

Вы также можете посмотреть другие ярлыки для Jupyter ноутбука в

Помощи> Сочетания клавиш

Счастливого кодирование.

+0

OP запрашивает множество выборов, как в Sublime Текст, не найти/заменить. – Nick

+0

@ Ник внимательно прочитайте вопрос OP, после выбора всех совпадений он хочет заменить их новым именем переменной. Выше сказано, что это идеальный способ сделать это. –

+0

Поиск/замена не является совершенным следующим образом: 1.Find/replace заменит все вхождения строки, в то время как несколько курсоров могут редактировать строку рядом. 2. Найти/заменить громоздко по сравнению с несколькими курсорами. – Nick

1

Добавить custom.js в

C:\Users\username\.jupyter\custom  # for Windows and 
~/.jupyter/custom/      # for Mac 

с содержанием

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) {} 
      }); 
     } 
    } 
); 

и перезапустить jupyter. Теперь Ctrl+D должен работать так, как в Sublime.

Вы можете видеть, что функция Ctrl-Enter отключена, так как было бы очень удобно запускать текущую ячейку, а не создавать новую строку для большинства пользователей. Вы можете использовать эту функциональность, комментируя эту строку.

Вы можете отключить другую конфигурацию ключей, которую вы не хотите аналогичным образом.

enter image description here

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

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