Plist ��� ������� mac os

PLIST – Файл параметров приложения Mac OS X (Mac OS X Property List File)

Расширение PLIST

Чем открыть файл PLIST

В Mac OS: Apple Property List Editor, Fat Cat PlistEdit Pro, PrefEdit, PlistEdit Pro, Night Productions Pref Setter, Late Night Property List Tools, Apple plutil, Любой текстовый редактор

Описание расширения PLIST

Популярность:

Разработчик: Apple

Расширение файла PLIST связано в основном с Mac OS X и iOS, но также используется в фреймворках NeXTSTEP и GNUstep. Файл с расширением PLIST – это файл свойств в формате XML, формат основан на Core Foundation DTD от Apple. Название расширения PLIST происходит от английского «Property List» (переводится как: список свойств) и ссылается на то, что файлы *.PLIST обычно хранят список свойств. Список параметров в файле представлен в виде пар Ключ – Значение. Например: Ключ Значение (строка) . Данные в файле могут храниться как в текстовом, так и в двоичном виде.

*.PLIST файлы являются стандартной частью OS X Core Foundation, так что их используют многие приложения Mac OS X. Вы можете редактировать текстовые *.PLIST файлы с помощью текстового редактора, или утилиты Apple Property List Editor (входит в состав Apple Developer Tools). Однако, как правило, не рекомендуется изменять пользователям файлы .PLIST, так как они изменяются соответствующими программами по мере необходимости.

Многие PLIST файлы с настройками приложений лежат в Home -> Library -> Preferences (например, com.apple.finder.plist, com.skype.skype.plist). Название файла состоит из 4 частей: com.компания.приложение.plist.

Пример кода PLIST-файла:

ПРИМЕЧАНИЕ: Вы можете конвертировать PLIST файлы между XML и бинарным форматом с помощью утилиты командной строки plutil:

    Из бинарного в XML: plutil -convert xml1 file.plist
    Из XML в бинарный: plutil -convert binary1 file.plist

ПРИМЕЧАНИЕ: Главный файл настроек для приложений Mac OS X обычно находится в каталоге /Contents/ бандла .APP и называется Info.plist. Для просмотра этого файла, щелкните правой кнопкой мыши на файле приложения, выберите «Показать содержание пакета» (Show Package Contents), и откройте папку Contents.

HEX код: 3C 3F 78 6D 6C 20 76 65 72 73 69 6F 6E 3D 22 31 2E
ASCII код: .?xml.version=

Другие программы, связанные с расширением PLIST

    Файл настроек видео в HandBrake от HandBrake Project
    Расширение файла PLIST связано с инструментом преобразования видео. Файл содержит предустановленные сохраненные настройки видео (видео фильтры, разрешение видео, настройки аудио, параметры субтитров и параметры глав). Относится к разделу Конфигурационные файлы.

Популярность:

Источник

Изучаем файл настроек загрузки Mac OS X — com.apple.Boot.plist

В Mac OS X тысячи файлов настроек с расширением .plist, в которых прописаны абсолютно все параметры работы системы и отдельных программ. Но есть среди них и самый важный файл, отвечающий за параметры загрузки самой Mac OS X — com.apple.Boot.plist. Любой неверный параметр, прописанный там, серьёзно осложнит вам жизнь, потому что Мак может перестать загружаться. Тем не менее, знать устройство этого файла стоит любому пользователю, потому что через него можно настроить многие аспекты поведения компьютера. А особенно важно понимать устройство com.apple.Boot.plist владельцам хакинтошей, которым неизбежно придётся редактировать этот файл.

Кратко опишем, что позволяет сделать файл com.apple.Boot.plist:

  • зафиксировать определённые режимы загрузки (см. здесь). Например, можно заставить систему всегда загружаться в 64-битном режиме, вместо того, чтобы держать клавиши 6 и 4 при загрузке.
  • настроить графический режим загрузки: изменить разрешение экрана для заставки с яблочком или для текстового режима загрузки
  • ограничить количество используемой памяти или ядер процессора
  • загрузить систему с другим ядром
  • настроить задержку загрузчика перед выбором системы по умолчанию

Последние опции будут полезны владельцам хакинтошей в случае возникновения проблем.

Редактирование файла

Теперь пару слов о том, как редактировать файл com.apple.Boot.plist. Он лежит в папке /Library/Preferences/SystemConfiguration/. Но открыв его в стандартном редакторе TextEdit, вы не сможете сохранить внесённые изменения, потому что сделать это вам не позволят права доступа к файлу.

Читайте также:  Где искать папку windows old

Варианты есть такие:

1) Терминал. Вводите команды и нажмите Enter после каждой из них:

Введите пароль администратора (символы на экране не появятся) и нажмите Enter.

nano /Library/Preferences/SystemConfiguration/com.apple.Boot.plist

Если не хотите вводить такую длинную строку, можете сократить её, как показано ниже:

nano /L*/Pref*/SystemC*/com.apple.Boot.plist

Прямо в Терминале откроется окно редактора. Мышь в нём работать не будет, курсор нужно перемещать стрелками клавиатуры.

Когда закончите редактирование, нажмите Ctrl+X, затем Y и Enter.

2) TextMate. Этот вариант поудобнее — программа TextMate умеет редактировать почти любой код в любых файлах, даже защищённых системой. Открыть в ней com.apple.Boot.plist вы сможете через контекстное меню файла, через меню File-Open в самой программе или перетаскиванием файла на иконку TextMate в Доке.

При сохранении файла вам попросят ввести пароль.

Источник

PlistEdit Pro

Информация

Описание

PlistEdit Pro является наиболее продвинутым редактором списков свойств написанных для macOS.
Разработчики Mac и IOS должны редактировать различные файлы списков при разработке своих приложений. PlistEdit Pro позволяет редактировать эти файлы проще, предоставляя интуитивный и мощный интерфейс.

В дополнение к возможности копирования и вставки или перетаскивания данных списка свойств вокруг, PlistEdit Pro также предлагает мощные функции поиска и замены, а также определяет структуры которые обеспечивают легкий доступ к наиболее часто используемые клавиши в различных стандартных файлов из списка свойств.

Опытные пользователи могут также извлечь из браузера PlistEdit Pro, которое обеспечивает легкий доступ к собственности списков используя macOS для хранения настроек в вашей системе. Просмотреть ваши списки предпочтений, или искать папку с PLIST файлов за один раз для конкретного ключа или значения.
PlistEdit Pro также позволяет автоматизировать задачи, связанные списки, через его Applescript поддержки и pledit инструмент командной строки.

Особенности:
полная поддержка Drag&Drop и копи-пейста
поддержка навигации с клавиатуры
возможность просмотра и редактирования свойств в режиме схемы или простого текста
поддержка AppleScript для автоматизации работы
многоуровневый undo
возможности поиска и замены
встроенный браузер plist-файлов
настройка шрифтов

Источник

Работа с файлами .plist в Cocoa/CocoaTouch

Всем доброго хабрадня!

Сегодня я бы хотел рассказать о некоторых аспектах сохранения настроек и прочих данных программы в OS X и/или iOS. Как обычно, у нас есть несколько вариантов: Core Data, «голый» SQLite, свои бинарные форматы, свои текстовые форматы, NSUserDefaults и, как Вы уже наверняка слышали, файлы типа PLIST, то есть XML Property List.

Вкратце, plist-файлы представляют из себя обычный XML, но с некоторыми оговорками. К примеру, порядок тегов в нём обусловлен некоторыми правилами: они идут парами «ключ-значение», но теги типа «ключ» и теги типа «значение» располагаются на одном уровне. Типичный пример:

Плисты умеют хранить основные типы данных Cocoa: NSString, NSNumber (int, float, BOOL), NSDate, NSArray, NSDictionary и NSData. Этим типам соответствуют следующие теги: , , , , , , , , . Собственно, plist состоит из тегов , за которыми следуют перечисленные теги со значением.

Под катом — описание дополнительных ограничений и, что самое главное, API для работы с такими файлами.

Наверняка Вы уже обратили внимание на возможность хранить в plist’е массивы и словари и у Вас возникли закономерные вопросы: «а как это?», «а если в массиве мои объекты?», «а если в словаре ещё словари?» и подобные им. Если не возникло, значит эту часть статьи можно пропустить без ущерба для понимания.

Дело в том, что массивы и словари при сериализации в плист проходятся рекурсивно, то есть, получается всего лишь ещё один уровень вложенности на каждый массив или словарь внутри другого контейнера. Отсюда и вытекают ограничения на содержимое: только типы, поддающиеся сериализации. То есть, массив вьюшек Вы таким способом не сериализуете, даже не пытайтесь. Но многие свои типы можете: достаточно имплементировать протокол NSCoding и получить NSData из своего объекта с помощью NSKeyedArchiver. А уж NSData и в плисте сохранить легко. Опробовать такой метод сериализации и десериализации своих объектов я оставляю Вам в качестве домашнего задания.

Ещё один интересный момент. Для ускорения чтения и записи плисты часто делают двоичными, переводят в формат bplist (Binary Plist), что снижает их удобочитаемость практически до нуля. Но не расстраиваемся: Xcode умеет открывать и такие плисты, но если Вы хотите всё ж посмотреть на XML в другом редакторе, Вы можете легко переконвертировать бинарный плист в текстовый из консоли: plutil -convert xml1 MyFile.plist . Кстати, plutil умеет конвертировать плист ещё и в JSON, это может кому-либо пригодиться, но лично я этим ни разу не пользовался.

Читайте также:  Установка pyqt5 designer windows

Очень часто с плистами разработчик работает посредством NSUserDefaults, пусть даже он об этом зачастую и не знает. Этот класс разработан для работы с глобальными настройками программы, хранимыми в

/Library/Preferences/com.yourcompany.yourapp.plist (который, кстати, обычно бинарный, то есть, bplist), и переключить его на работу с другим файлом нельзя. Но ведь мы хотим создавать и читать свои собственные плисты, не так ли? Для этого мы будем использовать простой класс NSPropertyListSerialization , заботливо предоставленный нам разработчиками Cocoa.

Итак, что же умеет этот класс? Для начала, он умеет преобразовывать NSDictionary и NSArray в NSData, содержащий наш plist. И, разумеется, он умеет делать обратные преобразования: из NSData в NSDictionary или NSArray.

Рассмотрим простой пример: создадим словарик с кучей данных (в том числе вложенных) и посмотрим на практике, во что это дело сохранится.

В результате выполнения этого кода, который слишком простой, что бы его ещё и комментировать, будет плист примерно такого вида:

Что, просто? Конечно просто! И даже XML достаточно удобочитаемый. А в консоль ещё и свалится текстовое описание нашего словарика:

Теперь будем загружать сохранённый на этом этапе плист:

И что же мы должны получить? Ну конечно же! Мы в консоли должны увидеть тот же симпатичный JSON-чик, что и при сохранении! Правда, нет гарантий, что он будет именно таким же: порядок следования элементов в NSDictionary не определён. Но все данные должны быть на месте.

Кстати говоря, мы загрузили наши данные в виде «mutable» данных, на что указывает флаг NSPropertyListMutableContainersAndLeaves . Если бы мы указали NSPropertyListImmutable , то получили бы не NSMutableDictionary, а обычный NSDictionary, так что тут есть небольшой простор для фантазии и оптимизации.

Что ж, в этом уроке мы немного разобрались с форматом PLIST и научились работать с файлами такого типа с помощью Cocoa. Полный пример можно найти, как всегда, на гитхабе.

UPD: Как заметил mejedi, бинарный формат плиста иногда может записываться в файл медленней plain-XML формата.

XML пишется «в лоб», а при сохранении в бинарный формат происходит поиск и устранение дублирующих элементов (формат по сути представляет собой поток сущностей с взаимными ссылками, например если у нас два раза строка «hello world» встречается, хранить две копии не обязательно).

Сейчас посмотрел код, чтобы освежить память — на 10.6 все так, как я описал, а на 10.8 устранение дубликатов больше не делается, по-идее должно стать быстрее (релевантная функция называется __CFBinaryPlistWrite).

Источник

Хакерские методы работы с файлами PLIST в Mac OS X

PLIST — это сокращение от «property list» (список свойств), и редактирование файлов с этим расширением имени представляет собой основной метод модификации Mac OS X (а также некоторых других операционных систем). С помощью этого метода вы можете организовать данные таким образом, чтобы к ним могли получать доступ программы, и при этом они структурированы так, что при необходимости пользователи могут создавать собственные файлы этого типа. Это краткое описание, разумеется, практически ничего не говорит, но детальное описание файлов PLIST — это сложная и трудоемкая задача. Если вы действительно заинтересованы в функциональных возможностях файлов PLIST, внимательно изучите следующую документацию: http://developer.apple.com/documentation/Darwin/Reference/Manpages/man_/plist._.html или запустите программу Terminal и введите следующую команду: man plist.При настройке компьютера в соответствии с вашими личными потребностями, наиболее часто приходится настраивать файлы PLIST, в которых хранятся значения по умолчанию для настроек различных программ — от стандартных цветов до реакции программ на те или иные действия. Как правило, эти файлы находятся в папке Library/Preferences вашего домашнего каталога. В большинстве случаев модификация этих файлов безвредна, и при этом позволяет разблокировать довольно неожиданные функциональные возможности. Если вы случайно повредите файл при редактировании, вы можете просто переместить его в Корзину, и при следующем запуске приложения взамен удаленного файла будет сгенерирован новый. Разумеется, при этом вы потеряете все индивидуальные настройки, созданные для этой программы, поэтому лучший способ (как и во всех случаях хакинга, при возможности) заключается в том, чтобы создать резервную копию этого файла с целью последующего восстановления в случае неполадок.

Читайте также:  Установить tor для windows

Существует множество способов доступа к файлам PLIST. Наиболее быстрый из них — из программы Terminal с помощью команды default. Рассмотрим простой пример. Некоторые программы можно настроить таким образом, чтобы они отображали меню Debug (большинство пользователей, активно работающих с приложением iCal, знают, насколько полезным может быть это меню). Давайте рассмотрим, каким образом можно настроить iCal таким образом, чтобы добавить в строку меню команду Debug:

  1. При необходимости закройте приложение iCal.
  2. Запустите программу Terminal (Applications/Utilities/Terminal).
  3. Когда на экране появится приглашение к вводу (символ $), введите следующую команду: defaults write com.apple.iCal IncludeDebugMenu
  4. Перезапустите приложение iCal.

После появления окна приложения вы увидите, что в нем появилось новое меню Debug (рис. 1.15).

Рис. 1.15. В окне приложения iCal появилось меню Debug

Приложение Terminal предоставляет великолепные возможности, когда вы знаете, что именно следует поменять. Однако если вы этого не знаете и лишь стремитесь узнать, какие настройки следует изменить, оно уже не будет столь полезным. Для этой цели вам понадобится список свойств (property list). Как было упомянуто в начале этого раздела, обычно большинство файлов PLIST находятся в папке Library в вашем домашнем каталоге. Для файла PLIST, содержащего настройки iCal, путь будет выглядеть следующим образом:

/Library/Preferences/com.apple.ical.plist. Как только вы обнаружите нужный файл, откройте его редактором списков свойств (Property List Editor). Как было рассказано в этой статье, этот редактор входит в состав Xcode Tools и устанавливается в папке /Developer/Applications. Кроме того, вы можете просто выполнить двойной щелчок мышью на нужном файле, и он будет открыт для редактирования (рис. 1.16).

Рис. 1.16. Список свойств, открытый для редактирования, отображает полный набор доступных вам опций

После того как файл будет открыт, вы сможете отредактировать любую из его строк. Большинство строк не имеют большого практического значения, но некоторые из них имеют явно выраженный смысл и позволяют редактировать функциональные возможности приложения. Например, изменение числового значения в строке delete todos after с 30 на 60 приведет к тому, что задачи, принятые к исполнению, будут храниться в течение 60 дней.

Итак, теперь вы вооружены командной строкой и программой, позволяющей редактировать файлы PLIST, экспериментируя с их настройками. Кроме того, файлы PLIST можно редактировать и обычным текстовым редактором. В версиях Mac OS X, более ранних, чем Tiger, файлы PLIST можно было непосредственно открывать текстовыми редакторами, но теперь эти файлы хранятся в двоичном формате. Чтобы открыть файл PLIST текстовым редактором, вам потребуется предварительно преобразовать его. Какой из методов преобразования файлов PLIST является наиболее простым? На помощь снова придет приложение Terminal.

Рис. 1.17. Файл PLIST, преобразованный в формат XML

Файл PLIST приложения iCal уже достаточно хорошо изучен, так что теперь попробуем модифицировать закладки браузера Safari. Полный путь к файлу PLIST с настройками Safari выглядит так:

/Library/Safari/Bookmarks.plist. Прежде всего, создадим его резервную копию (как и рекомендуется поступать в большинстве случаев). Для этого наведите на файл курсор мыши, щелкните правой кнопкой и из контекстного меню выберите команду Duplicate. Теперь выполните преобразование этого файла с помощью следующей командной строки: $ plutil -convert xml1

В данном случае команда plutil запускает процедуру преобразования списка свойств. Ключ -convert xml1 сообщает plutil о необходимости преобразовать файл PLIST в формат XML, а остальная часть командной сроки задает путь к преобразуемому файлу. После того как команда отработает, переместитесь в нужную папку в помощью Finder, наведите на нужный файл курсор мыши, щелкните правой кнопкой и выберите из контекстного меню команды Open With → Other, а затем выберите опцию Text Edit. Файл PLIST, преобразованный в формат XML, выглядит вполне удобочитаемым (рис. 1.17).

Разумеется, файлы PLIST заслуживают намного более тщательного изучения, но приведенный здесь необходимый минимум информации уже позволит вам начать их исследование и экспериментировать с настройками.

Источник

Оцените статью