When I open Emacs to edit a Python project, the first command I run is pyvenv-activate to activate the virtualenv.If I have a Python file open for that project before running pyvenv-activate, flycheck won’t work because I install my development dependencies (which are needed by the checkers) in the local virtualenv.
Luckily pyvenv provides a hook that runs whenever a virtualenv was activated.
(defun clear-flycheck-auto-disabled-checkers ()
"Clears any automatically disabled flycheck checkers."
(setq flycheck--automatically-disabled-checkers nil)
(message "Cleared all disabled flycheck checkers")
(flycheck-mode)
(flycheck-mode))
(setq pyvenv-post-activate-hooks
(list (lambda () (clear-flycheck-auto-disabled-checkers))))
Erben Systems GmbH
Watterstrasse 81, c/o Sarbach Treuhand AG, 8105 Regensdorf, Switzerland
CHE-174.268.027 MwSt