Елементи, які можна використовувати у файлах .pluginmap

<document>

Має бути у будь-якому файлі .pluginmap як кореневий вузол (лише один раз). Атрибути:

base_prefix

Назви файлів, вказані у файлі .pluginmap, вважаються визначеними відносно каталогу файла .pluginmap + префікс, вказаний вами тут. Особливо корисний, якщо усі ваші компоненти розташовано у одному підкаталозі.

namespace

Простір назв для ідентифікаторів компонентів. Під час пошуку компонентів для вбудовування програма отримуватиме компоненти за допомогою рядка «namespace::ідентифікатор_компонента». У поточній версії встановлено у значення «rkward».

id

Додатковий рядок ідентифікатора цієї .pluginmap. Визначення такого ідентифікатора надасть змогу стороннім авторам посилатися на вашу .pluginmap і завантажувати її з власних (див. розділ щодо обробки залежностей).

priority

Одне з таких значень: "hidden", "low", "medium" або "high". Файли .pluginmap з рівнем пріоритетності «medium"» або «high» автоматично активуються, щойно їх буде вперше виявлено RKWard. Рівнем priority="hidden" слід користуватися для .pluginmap-ів, які не слід активувати, каталогів (які призначено лише для включення). Втім, у поточній реалізації це, насправді, не приховує .pluginmap. (необов’язковий, типовим значенням є «medium»).

<dependencies>

Цей елемент, що вказує залежності, можна використовувати як безпосередній дочірній елемент елемента <document> (лише один раз) або як дочірній елемент елементів <component> (по одному на кожен елемент <component>). Визначає залежності, які має бути задоволено для того, щоб додатком (або додатками) можна було користуватися. Огляд питань щодо залежностей наведено у відповідному розділі. Атрибути:

rkward_min_version, rkward_max_version

Мінімальна і максимальна дозволені версії RKWard. Специфікація версій може включати нечислові суфікси, наприклад «0.5.7z-devel1». Якщо вказані умови залежності не виконуються, додаток, який їх використовуватиме, буде проігноровано. Докладніші відомості. Необов’язковий, якщо не вказано, вимог щодо мінімальної і максимальної версій RKWard не висуватиметься.

R_min_version, R_max_version

Мінімальна і максимальна дозволені версії R. У специфікації версій не можна включати нечислові суфікси, зокрема не можна визначати версію так: «0.5.7z-devel1». Дані щодо залежності від версії R буде показано на сторінках довідки додатка, але самі залежності не враховуватимуться (версія RKWard 0.6.1). Докладніші відомості. Необов’язковий, якщо не вказано, вимог щодо мінімальної і максимальної версій R не висуватиметься.

Дочірні елементи:

<package>

Додає залежність від вказаного пакунка R. Атрибути:

name

Назва пакунка (обов’язкова).

min_version, max_version

Мінімальна або максимальна дозволена версія (необов’язкова).

repository

Сховище, у якому зберігається пакунок. Необов’язкове, але дуже рекомендоване, якщо пакунок не можна отримати з CRAN.

<pluginmap>

Додає залежність від вказаної .pluginmap RKWard. Атрибути:

name

Рядок-ідентифікатор потрібної .pluginmap (обов’язковий).

min_version, max_version

Мінімальна або максимальна дозволена версія (необов’язкова).

url

Адреса, за якою можна знайти .pluginmap. Обов’язкова.

<about>

Можна використовувати лише один раз як дочірній елемент елемента <document>. Містить метаінформацію щодо .pluginmap (або додатка). Див. розділ щодо відомостей про додаток, щоб дізнатися більше. Атрибути:

name

Видима назва для користувачів. Необов’язкова. Може бути іншою, ніж вказано у «id».

version

Номер версії. Необов’язковий. Формат номера не обмежено, але щоб ним можна було користуватися, варто дотримуватися типової нумерації версій, зокрема «x.y.z».

releasedate

Специфікація дати випуску. Необов’язкова. Формат: «РРРР-ММ-ДД».

shortinfo

Короткий опис додатка або .pluginmap. Необов’язковий.

url

Адреса, за якою можна знайти додаткову інформацію. Необов’язкова, але рекомендована.

copyright

Специфікація авторських прав, наприклад «2012-2013 by Ivan Ivanenko». Необов’язкова, але рекомендована.

licence

Специфікація умов ліцензування, наприклад «GPL» або «BSD». Будь ласка, не забувайте додавати до ваших файлів текст відповідних умов ліцензування повністю! Необов’язкова, але рекомендована.

category

Категорія додатків, наприклад «Item response theory». З RKWard 0.6.1 немає попередньо визначеного жорсткого набору категорій. Необов’язкова.

Дочірні елементи:

<author>

Додає відомості щодо автора. Атрибути:

name, given, family

Або вкажіть ім’я повністю за допомогою name, або визначте given (ім’я) та family (прізвище) окремо.

role

Опис ролі автора (необов’язковий).

email

Адреса електронної пошти, за допомогою якої можна зв’язатися з автором. Можна вказати адресу списку листування rkward-devel, якщо ви підписані на нього, а ваш додаток призначено для включення до офіційного випуску RKWard.

url

Адреса сторінки із додатковою інформацією про автора, наприклад домашньої сторінки (необов’язкова).

<components>

Має бути використано лише один раз як безпосередній дочірній елемент елемента <document>. Містить окремі елементи <component>, які описано нижче. Не має атрибутів.

<component>

Безпосередніми дочірніми елементами елемента <components> мають бути один або декілька елементів <component>. Їх можна використовувати лише так. Реєструє компонент або додаток у RKWard. Атрибути:

type

Для подальшого розширення можливостей, тип компонента або додатка. У поточній версії завжди має значення «standard» (єдиний тип, підтримку якого зараз передбачено).

id

Ідентифікатор, за яким можна отримати цей компонент (для розташовування його у меню (див. нижче) або для вбудовування). Див. простір назв <document> вище.

file

Обов’язковий принаймні для компонентів з type="standard": назва файла XML з описом графічного інтерфейсу.

label

Мітка для цього компонента, яка використовується для розташування компонента у ієрархії меню.

<attribute>

Визначає атрибути компонента. Поки має значення лише для додатків імпортування. Можна використовувати лише як безпосередній дочірній елемент <component>. Атрибути:

id

Ідентифікатор атрибута

value

Значення атрибута

labels

Мітка, яку пов’язано з атрибутом

<hierarchy>

Має бути використано точно один раз як безпосередній дочірній елемент елемента <document>. Описує, де у ієрархії меню має бути розташовано оголошені вище компоненти. Приймає як безпосередні дочірні елементи лише елементи <menu>. Не має атрибутів.

<menu>

Як безпосередні дочірні елементи елемента <hierarchy> має бути вказано один або декілька елементів <menu>. Якщо меню із вказаним ідентифікатором (див. нижче) вже існує, меню буде об’єднано. Елемент <menu> можна використовувати лише як безпосередній дочірній елемент елемента <hierarchy> (меню верхнього рівня) або як безпосередній дочірній елемент іншого елемента <menu> (підменю). Сам же елемент <menu> приймає як дочірні елементи лише інші елементи <menu> або елементи <entry>. Атрибути:

id

Рядок-ідентифікатор меню. Є корисним, якщо визначення меню читаються з декількох файлів .pluginmap, для забезпечення розташовування пунктів додатків у тих самих меню. Деякі ідентифікатори меню, зокрема «file» стосуються попередньо визначених типових меню (у цьому випадку на меню «Файл»). Щоб використовувати узгоджену систему ідентифікаторів пунктів меню, ознайомтеся із кодом наявних файлів .pluginmap.

label

Мітка меню.

group

Надає змогу керувати упорядковуванням пунктів меню. Див. упорядковування пунктів меню. Необов’язковий.

<entry>

Пункт меню, тобто пункт, за допомогою якого можна викликати додаток. Можна використовувати лише як безпосередній дочірній елемент елемента <menu>, не має дочірніх елементів. Атрибути:

component

Ідентифікатор компонента, який має бути викликано, якщо задіяно відповідний пункт меню.

group

Надає змогу керувати упорядковуванням пунктів меню. Див. упорядковування пунктів меню. Необов’язковий.

<group>

Оголошує групу пунктів у меню. Див. упорядковування пунктів меню. Атрибути:

id

Назва цієї групи.

separated

Необов’язковий. Якщо встановлено значення «true» пункт у цій групі буде візуально відділено від навколишніх пунктів.

group

Назва групи, до якої слід долучити цю групу (необов’язкова).

<context>

Оголошує записи у контексті. Можна використовувати лише як безпосередній дочірній елемент вузла <document>. Приймає як дочірні елементи лише теґи <menu>. Атрибути:

id

Ідентифікатор контексту. Поки що реалізовано лише два контексти: «x11» і «import».

<require>

Включити інший файл .pluginmap. Цей файл .pluginmap буде завантажено лише один раз, навіть якщо його буде визначено за допомогою <require> у якихось інших файлах. Найважливішим випадком використання є включення файла .pluginmap, у якому оголошено певні компоненти, які вбудовуються компонентами, які оголошено у поточному файлі .pluginmap. Елементи <require> можна використовувати лише як безпосередні дочірні елементи вузла <document>. Атрибути:

file

Назва файла .pluginmap, який слід включити. Визначається відносно каталогу поточного файла .pluginmap + base_prefix (див. вище у описі елемента <document>). Якщо вам невідомий відносний шлях до файла .pluginmap, який слід включити, скористайтеся атрибутом map для посилання на нього за його ідентифікатором.

map

Щоб включити файл .pluginmap з іншого пакунка (або .pluginmap RKWard з вашого зовнішнього .pluginmap), ви можете послатися на нього за його значенням назва_простору_назв::ідентифікатор, який вказано у елементі <document> файла .pluginmap. Включення не відбудеться, що програма не виявить .pluginmap з таким ідентифікатором (наприклад, його не встановлено у системі користувача). Вам слід використовувати цей метод лише для включення .pluginmap, якого немає у вашому пакунку. Для карт у вашому пакунку швидшим і надійнішим способом є визначення відносного шляху (атрибута file).