Как отлаживать программы на Python в emacs?
Я использую python-mode.el
Я получаю ссылку, как
import pdb; pdb.set_trace();
но не уверен, как его использовать.
Как отлаживать программы на Python в emacs?
Я использую python-mode.el
Я получаю ссылку, как
import pdb; pdb.set_trace();
но не уверен, как его использовать.
Введите M-x cd
, чтобы изменить каталог на местонахождение программы, которую вы хотите отлаживать. Введите M-x pdb
. Вам будет предложено Run pdb (like this): pdb
. Введите название программы (например, test.py
).
В приглашении (Pdb)
введите help
, чтобы узнать, как использовать pdb.
В качестве альтернативы вы можете поставить
import pdb
pdb.set_trace()
прямо внутри вашей программы (например, test.py
). Теперь введите M-x shell
, чтобы получить приглашение оболочки. Когда вы запустите свою программу, вы попадете в pdb
в точке, где выполняется pdb.set_trace()
.
Для меня мне нужно было заменить «pdb» по умолчанию на
python -m pdb myscript.py
Пакет realgud
(доступен в MELPA) поддерживает PDB (среди бесчисленного множества других отладчиков) и имеет хост изящных функций, которых нет в Emac's PDB.
Мне больше всего нравится режим коротких клавиш. Как только вы начнете отлаживать программу, вы можете нажать n
, s
, c
и т. д. прямо в окне исходного кода, вместо того, чтобы вводить эти команды в буфер PDB. Он также поддерживает сочетания клавиш в стиле Visual-Studio с функциональными клавишами (f10
, f11
, f5
и т. д.).
После установки RealGUD нужно запустить M-x load-feature realgud
для его загрузки, а pdb
можно запустить с M-x realgud:pdb
.
pytest
. Любые советы здесь? Возможно, это сделает то, что я ищу: github.com/ реалгуд/реалгуд/
- person mindthief; 16.08.2019
emacs-25
недоступен», к сожалению, пока он не будет поддерживаться emacs-25, мне нужно будет найти альтернативный отладчик Python для emacs-25 или просто продолжать использовать pdb без интеграции с emacs
- person AmazingMiki; 05.02.2020