Prickle
Активный0.0
Установок
Последнее обновление
Версии
Prickle
Prickle представляет собой формат конфигурационных файлов, построенный на основе JSON. Данная модификация позволяет использовать этот формат непосредственно в Minecraft! Полную техническую документацию можно найти на странице GitHub.
Часто задаваемые вопросы
Какие преимущества предоставляет Prickle?
Хотя Prickle построен на JSON, он дополнен несколькими полезными функциями, включая комментарии и декораторы. Формат полностью обратно совместим с JSON и поддерживает все его возможности, инструменты и подсветку синтаксиса.
Почему он называется Prickle?
Prickle — коллективное существительное для обозначения группы ежей. Эти животные являются одними из моих любимых, и я считаю их удачной метафорой для конфигурационных файлов. Например, и то, и другое может показаться устрашающим на первый взгляд, но становится приятным после знакомства и понимания.
Почему не использовать существующие форматы?
Ранее я применял JSON для конфигурационных файлов, но сталкивался с несколькими проблемами, такими как отсутствие комментариев и значений по умолчанию. Prickle добавляет эти функции к JSON, сохраняя полную обратную совместимость. Я пробовал другие форматы, например TOML, но был разочарован многими их Java-реализациями. Зачастую им не хватает важных функций, они содержат серьёзные ошибки и больше не обновляются. Поскольку Minecraft уже использует JSON для датапаков и команд, этот формат знаком большинству игроков.
Спецификации формата
В Prickle значения свойств оборачиваются в JSON-объект. Это позволяет привязывать метаданные, такие как комментарии, к соответствующему свойству.
Например, стандартный JSON-файл может выглядеть так:
{
"database_host": "192.168.1.222"
}
Тот же файл в формате Prickle будет иметь такой вид:
{
"database_host": {
"//": "IP-адрес базы данных для подключения.",
"value": "192.168.1.222"
}
}
Комментарии
Ключ // зарезервирован для комментариев. Они служат исключительно для предоставления дополнительного контекста читателю и не влияют на парсинг файла. Комментарии могут быть строкой JSON или массивом строк для многострочных комментариев.
{
"database_host": {
"//": [
"IP-адрес базы данных для подключения.",
"Порт можно определить в конце, используя :"
],
"value": "192.168.1.222:1273"
}
}
Декораторы
Декораторы — это именованные комментарии, передающие определённый атрибут свойства. Распространённым примером декоратора является //default, который используется для отображения значения свойства по умолчанию. Как и комментарии, декораторы не влияют на парсинг файла, они только описывают, как свойство будет обрабатываться.
В файлах Prickle могут встречаться следующие декораторы:
//default— значение свойства по умолчанию//reference— ресурс для получения дополнительной информации, например ссылка на вики-страницу//range— допустимый диапазон значений, например >=5//regex— регулярное выражение, которому должно соответствовать значение//empty-allowed— разрешено ли пустое значение (по умолчанию true)