Мне нравится использовать команду Emacs «compile» для тестирования / запуска моих скриптов на python.M
- X
compile RET
вызовет «make -k» по умолчанию, но если вы удалите его и вставите в командную строку для вашего скрипта (включая опции), последующие «compiles» предоставят новый «compile»"Команда автоматически.Весь вывод вашего скрипта появится в буфере компиляции.(В отличие от оболочки, это обеспечивает хороший чистый буфер каждый раз, когда он вызывается. Хорошо подходит для поиска и тому подобное. Если вы забудете сохранить свой скрипт перед запуском, компиляция спросит вас, хотите ли вы сохранить файл.)
Вы потеряете командную строку при перезапуске Emacs.Но вы можете заставить Emacs установить команду компиляции для буфера, содержащего ваш скрипт, поместив в конец скрипта python такой код (фактически комментарий python):
# Trigger emacs to run this script using the "compile" command
# ;;; Local Variables: ***
# ;;; compile-command: "my_cool_script.py --complicated_option some_filename.txt" ***
# ;;; end: ***
Это удобно дляскрипты со сложными вызовами.Примечание: символ комментария python '#' защищает это от интерпретатора python, в то время как Emacs знает, как установить эти переменные, потому что он смотрит внизу каждого файла, когда открывает их.
Мне бы хотелось иметь возможность перейти к «ошибкам компиляции» в моем скрипте python, как это делает команда компиляции, когда вы используете ее для компиляции кода на C, но мне лень создавать регулярное выражение Emacsчтобы сделать эту работу.Возможно, это заставит задуматься о переполнении стека!