Я довольно новичок в Python virtualenvs и Emacs. Я хотел попробовать и сохранить пакеты python, которые я использую для проверки и форматирования кода (flake8 и black), из пакетов, которые использует моя фактическая база кода (например, numpy et c.).
My предполагалось создать два отдельных virtualenv (с pyenv), один для пакетов, необходимых для расширений Emacs, и другой для остальной части моего кода.
Я использую пакет Emacs elpy; после установки blacken автоформатирование по черному сработало сразу. Даже когда я был в моем проекте venv, в моем emacs-venv был установлен черный цвет.
Flycheck не был таким удачливым; ему трудно найти исполняемый файл flake8. Помещение следующего в мой файл инициализации Emacs ничего не делает; вместо этого по умолчанию вместо этого используется исполняемый файл python в моем текущем virtualenv.
(setq flycheck-python-flake8-executable <PATH>)
Однако я могу получить подходящий исполняемый файл, пройдя через интерактивный режим Emacs.
M-x flycheck-set-checker-executable RET python-flake8 RET <PATH>
I проверьте состояние контролера, и он говорит, что «он может быть включен», но когда я использую интерактивную команду включения, он отвечает, что «контролер не может использоваться в этом буфере».