Совместное использование предпочтений между командной строкой и программами с графическим интерфейсом - PullRequest
0 голосов
/ 30 марта 2011

Я застрял в кажущейся простой проблеме.У меня есть несколько предпочтений, к которым я хотел бы получить доступ из приложения Какао и сценария Python из командной строки.Предпочтения в основном расположены на диске.Поскольку локации строятся друг из друга (например, $ LOCA = $ LOCB / stuff), использование переменных среды и чего-то вроде .bash_rc было бы идеальным.Проблема в том, что только программы командной строки наследуют переменные от .bash_rc, а приложения Какао - нет.

Каков наилучший механизм для хранения этих вещей, чтобы скрипты Python и приложения Какао могли иметь к ним одинаковый доступ?

спасибо.

1 Ответ

1 голос
/ 30 марта 2011

Начиная с Python 2.6, модуль plistlib доступен в стандартном Python.Вы можете использовать это для чтения и записи .plist файлов (и используйте NSPropertyListSerialization из Obj-C).Ни NSPropertyListSerialization, ни plistlib не будут выполнять нужные вам замены, поэтому вам придется встроить их как в сценарий, так и в программу OS X.

РЕДАКТИРОВАТЬ: plistlib только читает и записывает сериализованные в XML файлы .plist, а не двоичный формат - используйте константу NSPropertyListXMLFormat_v1_0 в коде Obj-C при сохранении .plist.

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