Tom*_*lis 12 python emacs virtualenv
今天我一直在尝试将更多与Python相关的模式带入我的Emacs配置中,但我没有太多运气.
首先我注意到的是,根据Emacs的启动方式(终端vs桌面),它决定使用的解释器是不同的.
从KDE菜单启动:M-! which python给出/usr/bin/python
从终端发起:M-! which python给出~/local/bin/python
我可以接受这个,因为我的.bashrc将〜/ local/bin附加 到路径上,我猜KDE默认忽略它.我可以解决这个问题,但是我不明白的是,如果我激活virtualenv,我会期望M-!哪个python指向 〜/ project.env/bin/python但是它仍然指向〜/ local/bin/python.
因此,当我M-x py-shell,我得到〜/ local/bin/python所以如果我尝试 M-x py-execute-buffer在virtualenv中的一个包中驻留的模块,py-shell会抱怨在virtualenv中也不知道模块.
将py-python-command设置为"〜/ project.env/bin/python"似乎在加载所有内容后无效.
所以我想我的问题的总体症结是,如何让所有与python相关的emacs东西指向正确的解释器?
因此,似乎python-shell通过拾取环境设置来做正确的事情,而py-shell则没有.python-shell由python.el提供,py-shell由python-mode.el提供,有与此相关的bug报告等,所以我现在不打算使用py-shell.如果谷歌机器出于某种原因认为这是一个高排名的项目,我想关闭这个循环.