Эмакс:Pymacs не загружает веревочные машины с помощью Carbon Emacs

StackOverflow https://stackoverflow.com/questions/1895459

Вопрос

Я пытаюсь использовать Pymacs с веревкой/веремаком для проверки синтаксиса Flymake, как описано здесь:http://www.enigmacurry.com/2009/01/21/autocompleteel-python-code-completion-in-emacs/

Когда я запускаю Carbon Emacs «обычно», он выдает ошибку:

ошибка:Pymacs загружает Ropemacs...не удалось

У меня это работало на OSX 10.5 с Carbon Emacs, но в 10.6 это не помогло.Однако он работает при загрузке «терминального» emacs, Aquamacs или если я открываю Carbon Emacs из командной строки, используя «/Applications/Emacs.app/Contents/MacOS/Emacs».Я предполагаю, что это какая-то ошибка пути, но я не могу понять это хоть убей.

Моя установка — OSX 10.6.2, и я использую macports python 2.6.4.

Спасибо!

Это было полезно?

Решение

Скорее всего, это проблема пути.Когда вы запускаете emacs с терминала, ваш PATH переменная среды предположительно включает каталог bin MacPorts /opt/local/bin потому что, предположительно, вы изменили один из профилей вашей оболочки, вероятно .bash_profile, чтобы включить этот каталог в PATH.

Но когда вы запускаете приложение напрямую (двойным щелчком по нему), оболочка не задействуется, поэтому по умолчанию /opt/local/bin не включается в процесс PATH переменная.В зависимости от того, как Pymacs и др. вызывают Python, скорее всего, в конечном итоге он получит поставляемый Apple python2.6 (python или /usr/bin/env python).Если вы можете выяснить, где он вызывает Python, вы можете изменить это на абсолютный путь, например /opt/local/bin/python2.6.

Если вы не можете понять, как это сделать, вы можете обойти проблему, изменив файл plist внутри Carbon Emacs.app пакет, включающий в себя LSEnvironment ключ с правильным значением для PATH.Или вы можете создать определение среды для всего пользователя для PATH в ~/.MacOSX/environment.plist.Оба варианта описаны здесь.

В противном случае вы можете попробовать установить Pymacs с помощью Python 2.6.1, поставляемого Apple.

Кстати, инструкция по установке в приведенной вами ссылке использует easy_install.Если вам нужно установить пакеты в Python MacPorts, убедитесь, что вы установили и используете easy_install экземпляр для него и не использовать экземпляр, поставляемый Apple, в /usr/bin:

$ sudo port install py26-setuptools
$ /opt/local/bin/easy_install-2.6 <package>
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top