Указание интерпретатора Python из virtualenv в Emacs - PullRequest
12 голосов
/ 21 февраля 2010

Сегодня я пытался перенести больше связанных с Python режимов в моя конфигурация Emacs, но мне не очень повезло.

Первое, что я заметил, это то, что в зависимости от того, как Emacs запущен (терминал против рабочего стола), интерпретатор решает использование отличается.

  • запускается из меню KDE: M-! какой питон дает /usr/bin/python

  • запущен с терминала: М-! какой питон дает ~/local/bin/python

Я могу принять это, так как мой .bashrc дописывается ~ / local / bin к пути, и я думаю, KDE игнорирует это по умолчанию. Я могу обойти это, однако то, что я не понимаю, то если я активировать virtualenv, я ожидал бы M -! на какой питон указывать ~ / 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, указывающий на правильного интерпретатора?

Ответы [ 2 ]

8 голосов
/ 21 февраля 2010

Так что кажется, что python-shell делает правильные вещи, подбирая настройки окружения, а py-shell - нет. python-shell предоставляется с помощью python.el, а py-shell предоставляется с помощью python-mode.el, есть сообщения об ошибках и т. д., связанные с этим, поэтому я пока не собираюсь использовать py-shell. Думаю, я бы замкнул этот цикл на тот случай, если машина Google по той или иной причине считает это элементом с высоким рейтингом.

4 голосов
/ 06 июня 2011

Для Emacs существует режим virtualenv. Требуется Emacs 23.1 или выше.

Это второстепенный режим для настройки виртуальная среда для Python оболочка с использованием virtualenv и поддерживает и python-mode.el и python.el.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...