Подсмотрел в
HaskellWiki интересный хак - десяток строчек на elisp'e закрывающих через пару секунд, если все ок, compilation window.
Команду компиляции для каждого файла можно выставить индивидуально. Особенно удобно если запускать не просто сборку а заодно и unit test'ы.
(require 'compile)
;; this means hitting the compile button always saves the buffer
;; having to separately hit C-x C-s is a waste of time
(setq mode-compile-always-save-buffer-p t)
;; make the compile window stick at 12 lines tall
(setq compilation-window-height 12)
;; from enberg on #emacs
;; if the compilation has a zero exit code,
;; the windows disappears after two seconds
;; otherwise it stays
(setq compilation-finish-function
(lambda (buf str)
(unless (string-match "exited abnormally" str)
;;no errors, make the compilation window go away in a few seconds
(run-at-time
"2 sec" nil 'delete-windows-on
(get-buffer-create "*compilation*"))
(message "No Compilation Errors!"))))
Совместно с python удобно использовать nosetests.
# Local Variables:
# compile-command: "nosetests"
# End: