У меня есть новая установка VS Code версии 1.50.1 с расширением python, которое теперь добавило расширение Jupyter. Номер сборки расширения Jupyter — 2020.12.411183115. Когда я нажимаю Shift Enter по умолчанию, он добавляет новую строку ниже. Вы можете видеть в видео, что Shift + Enter должен работать, чтобы запустить строку. На данный момент единственный способ запустить код в интерактивном окне — это нажать ctrl + shift + p и выбрать запуск выбранной ячейки.
Редактировать после работы с Дэнни Вародом и комментариями ниже:
Изменение сочетания клавиш на ctrl+enter и ничего не происходит (не добавляет новую строку ниже). Я нажимаю ctrl + shift + p и вижу, что правильный ярлык — crtl + enter, но он не запускает действие
Вот скриншот моих сочетаний клавиш до изменения.
Изменение моих сочетаний клавиш, чтобы они соответствовали комментарию ниже. Теперь при нажатии ctrl+enter ничего не происходит.
Shift+Enter
также вставил новую строку для меня, отмена сопоставления предотвратила это.
Я изменил сопоставления на:
Эти сопоставления работают для меня, однако в блокнотах Jupyter (.ipynb
) Ctrl+Enter
и Shift+Enter
меняются местами по сравнению с тем, что я определил 🤔.
Кроме того, я использую следующие расширения Python:
magicstack.magicpython
ms-toolsai.jupyter
Оба установлены:
donjayamanne.python-extension-pack
Когда я открываю файлы .ipynb
, они открываются как блокноты Jupyter.
Когда я открываю файлы .py
, я могу использовать Jupyter или MagicPython (и ни в коем случае не Python).
@Jeffkrop Я только что заметил - вы находитесь в файле .py
, а не в блокноте Jupyter .ipynb
, поэтому вы смотрите на неправильные настройки.
это работало в прошлом для файла .py. Изменилось ли это за последнюю неделю?
@Jeffkrop Не то, чтобы я знал. Возможно, обновление расширения что-то изменило или вы настроили вкладку для использования другого интерпретатора Python (MagicPython), отличного от прежнего (Juptyer).
Хорошо, после установки MagicPython я вижу это в правом нижнем углу. Но все же, когда я нажимаю shift, он добавляет новую строку. Если я нажимаю ctrl + shift + p, я могу выбрать строку запуска с интерактивным окном и показать ярлык как дерьмо + ввод.
@Jeffkrop, какие у вас сопоставлены ярлыки MagicPython?
Давайте продолжим обсуждение в чате.
Я сделал все то же самое, за исключением того, что я использую crtl + enter для выбора/строки запуска jupyter в интерактивном окне. Он по-прежнему не срабатывает с помощью сочетания клавиш.
Пожалуйста, используйте следующие настройки сочетания клавиш:
{ "key": "shift+enter", "command": "jupyter.execSelectionInteractive", "when": "editorTextFocus"
},
Эта клавиша быстрого доступа задается условиями использования, и ее можно использовать только при ее подтверждении (в том числе при открытии панели управления). Следовательно, мы можем удалить условия использования этой клавиши быстрого доступа.
Это то, что у меня было установлено по умолчанию. После изменения, чтобы соответствовать приведенному выше, он работает. "editorTextFocus && jupyter.ownsSelection && !findInputFocussed && !notebookEditorFocused && !replaceInputFocussed && editorLangId == 'python'"
В settings.json
под .vscode
добавьте следующую строку:
"jupyter.sendSelectionToInteractiveWindow": true
Тогда Shift+Enter
должно работать.
Этот ответ работал лучше для меня, так как принятый ответ испортил ярлык при использовании интерактивной панели.
Сейчас не работает......
Я обнаружил, что этот ответ работал, когда: использовал его отдельно в settings.json
и удалял любые пользовательские сочетания клавиш в keybindings.json
, например: "key": "shift+enter", "command": "jupyter.execSelectionInteractive", "when": "editorTextFocus"
. В результате Shift + Enter
, когда текстовый редактор сфокусирован, запускает код в интерактивном окне Python, а затем Shift + Enter
также запускает код в том же интерактивном окне при вводе в поле ввода кода этого интерактивного окна.
Что вам нужно изменить, это Блокнот: Выполнить ячейку:
В моем случае проблема была с расширениями; Установил Python
и Jupyter
из меню Extension
на левой панели, тогда заработало.
Примечание. Я уже добавил следующие строки в setting.json
:
"jupyter.sendSelectionToInteractiveWindow": true
Для меня это было решено путем удаления команды Insert Line Bellow
, которая якобы конфликтовала с моей горячей клавишей shift + enter
в блокнотах.
Похоже, есть новый параметр для переключения этого поведения. Мне просто нужно было добавить эту строку в файл настроек:
file: .vscode/settings.json
{
"jupyter.interactiveWindow.textEditor.executeSelection": true
}
Я обновил свой текст выше после внесения этих изменений. Не повезло