I have just happily configured emacs with autocompletion via jedi and syntax check via flycheck and virtualenvs created within bootstrap. It all seems to work.
I'd like to add the ability to use flycheck-pylint (to get errors in import) but I'm not able to make it work. Even if I change the virtualenv by hand (M-x: pyvenv-activate RET path-to-my-venv) I still see lots of import errors that come from a wrong virtualenv used.
My current initialization code:
(require 'pyvenv)
(add-hook 'after-init-hook #'global-flycheck-mode)
(defun set-flake8-executable ()
(pyvenv-activate (get-current-buffer-venv))
(flycheck-set-checker-executable (quote python-flake8)
(get-current-buffer-flake8)))
where "get-current-buffer-venv" and "get-current-buffer-flake8" are functions that implement my specific setup and are working correctly.
How can I change the interpreter used?
Poking at the problem today, I found another solution (which works with current version of flycheck, as of Jun 2020).
Just create .dir-locals.el
with appropriate settings for given project. Like:
((python-mode
(flycheck-python-flake8-executable . "/home/marcin/.virtualenvs/adgv/bin/python")
(flycheck-python-pylint-executable . "/home/marcin/.virtualenvs/adgv/bin/python")))
(creating the file with M-x add-dir-local-variable
works too, but remember to add double quotes around the command)
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With