Emacs: Pymacs не загружает Romamacs с помощью Carmamamac

Я пытаюсь использовать Pymacs для создания синтаксиса flymake для создания синтаксиса 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.

Спасибо!

1 ответ

Решение

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

Но когда вы запускаете приложение напрямую (дважды щелкнув по нему), оболочка не включается, поэтому по умолчанию /opt/local/bin не включается в процесс PATH переменная. В зависимости от того, как Pymacs и др. Вызывают python, он, скорее всего, заканчивается Python2.6, поставляемым Apple (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, Если вам нужно установить пакеты в MacPorts Python, убедитесь, что вы установили и используете easy_install экземпляр для него, а не использовать поставляемый Apple в /usr/bin:

$ sudo port install py26-setuptools
$ /opt/local/bin/easy_install-2.6 <package>
Другие вопросы по тегам