Ключевые слова обозначают заданные в программе значения, которые изменяются со временем. Некоторые из них являются глобальными и могут использоваться в любом месте скина, другие — только в определённых окнах или списках. Ключевые слова можно задавать в тексте меток, кнопок и флажков, в атрибуте state
кнопки, атрибуте value
индикатора прогресса и в атрибуте tags
любых объектов. Ключевые слова начинаются с символа %
(в tags
необязательно).
Ключевые слова могут быть текстовыми и числовыми (некоторые имеют и текстовое, и числовое значение). Текстовое значение используется в атрибуте text
, а числовое — в атрибутах state
, value
и tags
. Числовое значение текстового ключевого слова равно 0, если текстовое значение пустое, и 1 в противном случае.
При использовании ключевых слов в тексте объектов можно указать несколько вариантов и условия, определяющие выбор одного из вариантов. Для этого используется следующий синтаксис:
{"текст1"(%ключевое_слово1, %ключевое_слово2, …); "текст2" (%ключевое_слово3, …); …}
Текст, заданный в кавычках, выводится, если задано значение всех ключевых слов, указанных в скобках. Если скобки со списком ключевых слов отсутствуют, текст выводится, если задано значение хотя бы одного ключевого слова, содержащегося в нём. Разные варианты разделяются точкой с запятой. Варианты рассматриваются слева направо до тех пор, пока не будет найден вариант, условия которого выполняются. Могут использоваться как двойные, так и одинарные кавычки. Текст может содержать вложенные выражения. Если в тексте присутствуют ключевые слова, разделённые пробелами и запятыми, то эти разделители не выводятся, если значения соответствующих ключевых слов не заданы.
Например:
{"%nextRoadTitle"; "%nextRoadType{" – %nextRoadDirection"}"}
Здесь выводится наименование улицы, а если оно не задано — тип и, если есть, направление.
{"%street, %house"(%street, %house); "%label"; "%city"}
Здесь, если заданы улица и дом, выводятся улица и дом, иначе, если есть подпись, выводится подпись, иначе город.
При задании ключевого слова в атрибуте state
кнопки её состояние становится равным числовому значению ключевого слова. Для каждого состояния кнопки может быть задан свой текст и картинка.
Ключевые слова можно использовать для изменения видимости объектов. Для этого в атрибуте tags
объекта указывается через точку с запятой список ключевых слов, значения которых должны быть ненулевыми, чтобы объект был виден на экране. Если, наоборот, объект должен быть виден, когда значение ключевого слова равно нулю, перед ключевым словом ставится знак !
.
POI
на карте (0 - скрывать все, 1 - использовать фильтр, 2 - показывать все).premium
— признак активированной премиум-версии.active
— 1, если продукт куплен и «действует».canceled
— 1, если подписка на продукт отменена, но ещё действует.canPurchase
— 1, если продукт можно купить.comment
— комментарий.description
— описание продукта.premiumProduct
— 1, если продукт активирует премиум-версию.price
— стоимость продукта.purchaseDate
— дата покупки.title
— наименование продукта.