Настройка файла info.plist для апплета AppleScript - PullRequest
0 голосов
/ 01 марта 2020

Так что в основном у меня есть это приложение, сделанное из AppleScript. Теперь я хотел бы настроить некоторую информацию (например, идентификатор пакета, номер версии и т. Д. c.) Однако, похоже, что даже малейшие изменения в файле info.plist приведут к тому, что скрипт ... не будет работать.

Есть идеи, как изменить info.plist приложения AppleScript, не нарушая его?

1 Ответ

0 голосов
/ 01 марта 2020

Существует только три требования для редактирования файла plist:

  1. Не изменяйте ничего в первых четырех строках. Они всегда должны выглядеть так:
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>

Не используйте ничего, кроме символов простого текста (без кавычек, форматированного текста, странных символов и т. Д. c). Я рекомендую использовать бесплатную версию BBEdit, которая будет держать все в порядке.

Не нарушайте иерархическую структуру ключ-значение. Записи Plist имеют форму:

<key>KeyWord</key>
<value-type>whatever data</value-type>

, где типом значения может быть 'строка', 'реальное', 'целое число', 'дата', 'данные', 'массив ',' dict ', одного из логических значений' true 'или' false '. Это стандартный стиль XML, с открывающими и закрывающими тегами (различимыми по sla sh) и синглтон-тегами для true и false (где sla sh находится в конце слова, а не в начале). Словари могут содержать пары ключ-значение, массивы имеют списки значений без ключей, вы можете вкладывать их настолько глубоко, насколько хотите, но вы всегда должны открывать и закрывать теги в правильном порядке.

Типичные ошибки:

  • случайное удаление открывающей или закрывающей угловой скобки
  • перекрывающихся открывающих и закрывающих тегов для вложенных элементов (например, открытый тег для dict, открытый тег для массива, закрывающий тег для тэг dict, close для массива)
  • отделяет ключи от их значений (элементы значения должны идти сразу после ключевых элементов
...