在Emacs中使用带有flake8的Flycheck时,如何在Python 2和3之间切换?
为Emacs安装了Flycheck后,我安装了flake8
之类的语法检查器。
使用flake8
安装pip install flake8
会使Flycheck检查Python 2语法。
但是,使用pip3 install flake8
会使Flycheck检查Python 3的语法。
如何在Emacs 24中切换Python 2和3的模式?
答案 0 :(得分:2)
如果您使用虚拟环境,使用anaconda,miniconda或virtualenv,那么我建议您使用pyvenv.el。它需要一些配置,如果需要,我可以帮助你,但它通常很容易设置。我用它在不同的python版本和不同的虚拟环境之间切换。
您还应该能够在.dir-locals.el文件中放置一个变量。此文件根据您所在的目录设置emacs变量。如果要根据您所在的项目或目录设置python-interpetter,只需创建一个名为.dir-locals的文件即可。 .el包含您要编辑的项目文件的文件夹。在那个文件中你应该有
((nil . ((python-shell-interpreter . "python3"))))
或
((nil . ((python-shell-interpreter . "python"))))
然后飞行检查应该为您切换。如果您有任何疑问,请告诉我。也许可以看一下flycheck的创建者的this