Шаблон:Product info: различия между версиями

Материал из IFВики
Перейти к навигации Перейти к поиску
м
(не показаны 43 промежуточные версии 2 участников)
Строка 1: Строка 1:
 
{| class="infobox" cell cellpadding="3" cellspacing="0"
 
{| class="infobox" cell cellpadding="3" cellspacing="0"
| colspan="2" class="header" | {{#if: {{{название|}}}'''{{{название}}}'''|'''{{PAGENAME}}'''}}
+
| colspan="2" class="infoHeader" | {{#if: {{{название|}}}|'''{{{название}}}'''{{#vardefine:productname| {{{название}}} }}|'''{{PAGENAME}}'''{{#vardefine:productname| {{PAGENAME}} }} }}
 
|- style="{{#if: {{{тип|}}} | | display: none; }}"
 
|- style="{{#if: {{{тип|}}} | | display: none; }}"
! Тип
+
! [[Свойство:Тип|Тип]]
|<includeonly>{{#arraydefine:type|{{{тип| }}}|,}}{{#arrayprint:type|, |@@@@ |[[Категория:@@@@]] [[:Категория:@@@@|@@@@]] }}</includeonly><nowiki />
+
|<includeonly>{{#arraydefine:type|{{{тип| }}}|,}}{{#arrayprint:type|, |@@@@ |[[Категория:@@@@]] [[Тип::@@@@| ]] [[:Категория:@@@@|@@@@]] }} {{#vardefine:isplatform| {{#arraysearch:type|Менюшные платформы}}{{#arraysearch:type|Парсерные платформы}} }} {{#vardefine:issite| {{#arraysearch:type|Новостные ресурсы}}{{#arraysearch:type|Сайты}} }}</includeonly><nowiki />
 
|- style="{{#if: {{{разработчик|}}} | | display: none; }}"
 
|- style="{{#if: {{{разработчик|}}} | | display: none; }}"
! [[:Категория:Персоналии|Разработчик(и)]]
+
! [[:Категория:Персоналии|<includeonly>{{#if: {{#var:issite}} | Администратор(ы) | Разработчик(и) }}</includeonly>]]
 
| {{{разработчик}}}
 
| {{{разработчик}}}
 
|- style="{{#if: {{{язык|}}} | | display: none; }}"
 
|- style="{{#if: {{{язык|}}} | | display: none; }}"
Строка 26: Строка 26:
 
| {{{создаваемый формат}}}
 
| {{{создаваемый формат}}}
 
|- style="{{#if: {{{первый выпуск|}}} | | display: none; }}"
 
|- style="{{#if: {{{первый выпуск|}}} | | display: none; }}"
! [[Свойство:Дата|Дата первого выпуска]]
+
! [[Свойство:Дата первого релиза|<includeonly>{{#if: {{#var:issite}} | Начало работы | Дата первого выпуска }}</includeonly>]]
| <includeonly> {{#if: {{{первый выпуск|}}} | [[Дата::{{{первый выпуск}}}|{{#time: j xg Y|{{{первый выпуск}}}|ru }}]] | }} </includeonly>
+
| <includeonly> {{#if: {{{первый выпуск|}}} | [[Дата первого релиза::{{{первый выпуск}}}|{{#ifeq: {{#expr: {{{первый выпуск}}}*1 }} | {{{первый выпуск}}} | {{{первый выпуск}}} | {{#time: j xg Y|{{{первый выпуск}}}|ru }} }}]] | }} </includeonly>
 
|- style="{{#if: {{{последняя версия|}}} | | display: none; }}"
 
|- style="{{#if: {{{последняя версия|}}} | | display: none; }}"
! Последняя версия
+
! [[Свойство:Версия|Последняя версия]]
| {{{последняя версия}}}
+
| {{{последняя версия}}} <includeonly> {{#if: {{{последняя версия|}}} | [[Версия::{{{последняя версия}}}| ]] | }} </includeonly>
 
|- style="{{#if: {{{дата последней версии|}}} | | display: none; }}"
 
|- style="{{#if: {{{дата последней версии|}}} | | display: none; }}"
! [[Свойство:Дата|Дата последней версии]]
+
! [[Свойство:Дата последнего релиза|<includeonly>{{#if: {{#var:issite}} | Прекращение работы | Дата последней версии }}</includeonly>]]
| <includeonly> {{#if: {{{дата последней версии|}}} | [[Дата::{{{дата последней версии}}}|{{#time: j xg Y|{{{дата последней версии}}}|ru }}]] | }} </includeonly>
+
| <includeonly> {{#if: {{{дата последней версии|}}} | [[Дата последнего релиза::{{{дата последней версии}}}|{{#ifeq: {{#expr: {{{дата последней версии}}}*1 }} | {{{дата последней версии}}} | {{{дата последней версии}}} | {{#time: j xg Y|{{{дата последней версии}}}|ru }} }}]] | {{#if: {{{первый выпуск|}}} | [[Дата последнего релиза::{{{первый выпуск}}}| ]] | }} }} </includeonly>
 
|- style="{{#if: {{{состояние|}}} | | display: none; }}"
 
|- style="{{#if: {{{состояние|}}} | | display: none; }}"
 
! Состояние
 
! Состояние
| {{{состояние}}}
+
| <includeonly>{{#if: {{#var:isplatform}} | {{#ifeq: {{{состояние|}}} | Архивное | [[Категория:Заброшенные платформы]][[Заброшенные системы|{{{состояние}}}]] | {{{состояние}}} }} | {{{состояние}}} }}</includeonly>
 
|- style="{{#if: {{{лицензия|}}} | | display: none; }}"
 
|- style="{{#if: {{{лицензия|}}} | | display: none; }}"
! Лицензия
+
! <includeonly>{{#if: {{#var:issite}} | Условия использования | Лицензия }}</includeonly>
 
| {{{лицензия}}}
 
| {{{лицензия}}}
 
|- style="{{#if: {{{сайт|}}} | | display: none; }}"
 
|- style="{{#if: {{{сайт|}}} | | display: none; }}"
! Сайт
+
! <includeonly>{{#if: {{#var:issite}} | Адрес | Сайт }}</includeonly>
 
| {{{сайт}}}
 
| {{{сайт}}}
 
|}
 
|}
 +
<includeonly><nowiki />
 +
[[Название::{{#var:productname}}| ]]<nowiki />
 +
</includeonly><nowiki />
 +
 
<noinclude>
 
<noinclude>
{{ ЗаглушкаТекста }}
+
Данный шаблон используется для систематизации описания на страницах вики различных проектов и разработок из области [[Интерактивная литература|интерактивной литературы]], таких как [[:Категория:Платформы|платформы]], [[:Категория:Инструменты|инструменты]], [[:Категория:Интернет-ресурсы|Интернет-ресурсы]] и прочих.
 
 
Это концепт будущего шаблона для унификации структурированного представления информации о платформах разработки ИЛ, средствах разработки (редакторы, компиляторы), Интернет-ресурсах (информационных и совмещённых с платформами).
 
 
 
'''Шаблон не готов к использованию. До снятия этой отметки ни в коем случае не пытайтесь его применять на страницах wiki!'''
 
 
 
Для отслеживания результатов есть страница тестового применения шаблона «[[TADS Toolchain]]», за поломки которой никто обижаться не будет.
 
  
 
== Заготовка для копирования ==
 
== Заготовка для копирования ==
 
<pre><nowiki>
 
<pre><nowiki>
 
{{product info
 
{{product info
|название =
+
|название =  
 
|тип =  
 
|тип =  
|разработчик =
+
|разработчик =  
 
|язык =  
 
|язык =  
 
|система =  
 
|система =  
Строка 76: Строка 74:
  
 
== Параметры ==
 
== Параметры ==
Все параметры необязательны. При их отсутствии соответствующие поля карточки не будут показаны. Если не задан параметр «название», то в качестве названия в карточке будет показываться название статьи.
+
Все параметры необязательны. При их отсутствии (или при наличии с пустыми значениями) соответствующие поля карточки не будут показаны. Если не задан параметр «название», то в качестве названия в карточке будет показываться название статьи.
 
 
* название — название продукта произвольной строкой текста
 
* (!) тип — тип продукта, один или несколько (через запятую) из вариантов:
 
** Инструменты
 
** Интерпретаторы
 
** Новостные ресурсы
 
** Менюшные платформы
 
** Парсерные платформы
 
** Сайты
 
* разработчик — главные лица и организации, принявшие участие в разработке продукта. В виде произвольной строки текста, но конкретные персоны записываются в ней при помощи свойств соответствующего вида, например:
 
** Разработчик как &#91;&#91;Разработчик::Имя разработчика&#93;&#93;
 
** Локализатор как &#91;&#91;Локализатор::Имя локализатора&#93;&#93;
 
** Администратор как &#91;&#91;Администратор::Имя администратора&#93;&#93;
 
* язык — язык, на котором пользователь будет взаимодействовать с интерфейсом продукта. В виде произвольной строки текста, например:<br>12 языков, в том числе русский
 
* система — перечень систем, на которых возможно использование продукта. Значение в виде произвольной строки текста, желательно просто с перечислением названий через запятую.
 
* онлайн — флаг для [[:Категория:Онлайн-платформы|онлайн-платформ]]: если платформа имеет штатную возможность воспроизведения игр в онлайн-режиме, то данный параметр должен иметь значение «да».
 
* написано на — язык программирования, на котором написан продукт. Значение в виде произвольной строки текста, желательно просто с перечислением названий через запятую.
 
* язык разработки — язык программирования, на котором пользователь будет вести разработку (актуально для платформ и средств разработки), для [[:Категория:Платформы без программирования|платформ без программирования]] следует использовать значение «Визуальный редактор»
 
* читаемый формат — форматы файлов, которые можно открывать программой (актуально для интерпретаторов). Значение в виде произвольной строки текста, желательно описывать полным названием типа файла в виде ссылки на статью про соответствующее расширение, например, «&#91;&#91;.txt|Текстовые документы (*.txt)&#93;&#93;».
 
* создаваемый формат — форматы файлов, которые можно создавать программой (актуально для платформ и средств разработки (инструментов)). Значение в виде произвольной строки текста, желательно описывать полным названием типа файла в виде ссылки на статью про соответствующее расширение, например, «&#91;&#91;.html|Веб-страница (*.htm;*.html)&#93;&#93;».
 
* первый выпуск — дата выпуска первой версии. Значение в виде максимально подробного указания даты в форматах ДД.ММ.ГГГГ, ММ.ГГГГ или ГГГГ.
 
* последняя версия — текущая версия. Значение в виде произвольной строки текста.
 
* дата последней версии — дата выпуска текущей версии. Значение в виде максимально подробного указания даты в форматах ДД.ММ.ГГГГ, ММ.ГГГГ или ГГГГ.
 
* состояние — текущее состояние продукта: если разрабатывается, поддерживается или активно используется, то «активное», если ничего из этого, то «архивное»
 
* лицензия — лицензия, на условиях которой распространяется продукт. Значение в виде произвольной строки текста, но название лицензии желательно делать ссылкой на её текст или описание.
 
* сайт — официальный сайт продукта.
 
 
 
== Зависимости ==
 
Шаблон Product info имеет зависимости со следующими страницами:
 
  
* [[:Свойство:Дата]]
+
* '''название''' — название продукта произвольной строкой текста
* [[:Свойство:Локализатор]]
+
* '''тип''' — тип продукта, один или несколько (через запятую), которые должны соответствовать существующим категориям в вики, например:
* [[:Свойство:Разработчик]]
+
** ''[[:Категория:Менюшные платформы|Менюшные платформы]]''
* [[:Шаблон:Проекты и разработки]]
+
** ''[[:Категория:Парсерные платформы|Парсерные платформы]]''
 +
** Одна из подкатегорий категории [[:Категория:Расширения платформ|Расширения платформ]].
 +
** Одна или несколько из подкатегорий категории [[:Категория:Интерпретаторы|Интерпретаторы]]
 +
** ''[[:Категория:Инструменты|Инструменты]]''
 +
** ''[[:Категория:Новостные ресурсы|Новостные ресурсы]]''
 +
** ''[[:Категория:Сайты|Сайты]]''
 +
* '''разработчик''' — главные лица и организации, принявшие участие в разработке продукта. В виде произвольной строки текста, но конкретные персоны записываются в ней при помощи свойств соответствующего вида:
 +
** Разработчик как ''&#91;&#91;Разработчик::Имя разработчика&#93;&#93;'' (например, разработчик какой-то утилиты)
 +
** Локализатор как ''&#91;&#91;Локализатор::Имя локализатора&#93;&#93;'' (например, локализатор какой-то платформы)
 +
** Администратор как ''&#91;&#91;Администратор::Имя администратора&#93;&#93;'' (например, администратор какого-то Интернет-ресурса)
 +
** Технический писатель как ''&#91;&#91;Технический писатель::Имя технического писателя&#93;&#93;'' (например, автор документации для какой-то платформы)
 +
* '''язык''' — язык, на котором пользователь будет взаимодействовать с интерфейсом продукта. В виде произвольной строки текста, например:<br>''12 языков, в том числе русский''
 +
* '''система''' — перечень операционных систем, на которых возможно использование продукта. Значение в виде произвольной строки текста, желательно просто с перечислением названий через запятую.
 +
* '''онлайн''' — флаг для [[:Категория:Онлайн-платформы|онлайн-платформ]]: если платформа имеет штатную возможность воспроизведения игр в онлайн-режиме, то данный параметр должен иметь значение «''да''».
 +
* '''написано на''' — язык программирования, на котором написан продукт. Значение в виде произвольной строки текста, желательно просто с перечислением названий через запятую.
 +
* '''язык разработки''' — язык программирования, на котором пользователь будет вести разработку (актуально для платформ и средств разработки), для [[:Категория:Платформы без программирования|платформ без программирования]] следует использовать значение «''Визуальный редактор''»
 +
* '''читаемый формат''' — форматы файлов, которые можно открывать программой (актуально для интерпретаторов). Значение в виде произвольной строки текста, желательно описывать полным названием типа файла в виде ссылки на статью про соответствующее расширение, например, «''&#91;&#91;.txt|Текстовые документы (*.txt)&#93;&#93;''».
 +
* '''создаваемый формат''' — форматы файлов, которые можно создавать программой (актуально для платформ и средств разработки (инструментов)). Значение в виде произвольной строки текста, желательно описывать полным названием типа файла в виде ссылки на статью про соответствующее расширение, например, «''&#91;&#91;.html|Веб-страница (*.htm;*.html)&#93;&#93;''».
 +
* '''первый выпуск''' — дата выпуска первой версии. Значение в виде указания даты в формате ''ДД.ММ.ГГГГ'' или ''ГГГГ''.
 +
* '''последняя версия''' — текущая версия. Значение в виде произвольной строки текста.
 +
* '''дата последней версии''' — дата выпуска текущей версии. Значение в виде указания даты в формате ''ДД.ММ.ГГГГ'' или ''ГГГГ''.
 +
* '''состояние''' — текущее состояние продукта: если разрабатывается, поддерживается или активно используется, то «''Активное''», если ничего из этого, то «''Архивное''». Однако в явной форме указывать значение «''Активное''», как правило, смысла нет.
 +
* '''лицензия''' — лицензия, на условиях которой распространяется продукт. Значение в виде произвольной строки текста, но название лицензии желательно делать ссылкой на её текст или описание. Для Интернет-ресурсов здесь описываются условия использования (необходимость регистрации и пр.).
 +
* '''сайт''' — официальный сайт продукта. Значение в виде произвольной строки текста, но желательно, чтобы она была ссылкой, видимая часть которой будет написана в нижнем регистре без схемы URI, «www» и завершающего знака слеша, например, ''&#91;https&#58;//www.IFwiki.ru/ ifwiki.ru&#93;''
  
== To Do ==
+
== Примеры использования ==
* Продумать механизм классификации продуктов типа [[Z-машина|Z-машины]] в параметре «тип».
+
Для лучшего понимания принципов применения шаблона можно ознакомиться со следующими статьями вики, демонстрирующими его использование в разных вариантах:
* Для заполнения параметра «разработчик» создать свойство «[[:Свойство:Разработчик|Разработчик]]», а также создать для него следующие подсвойства: «[[:Свойство:Локализатор|Локализатор]]» (например, [[Коптельцев, Валентин|Валентин Коптельцев]] по отношению к [[TADS|TADS 2]] или [[Жучков, Антон|Антон Жучков]] по отношению к [[Twine]]). Также возможны такие подсвойства как «[[:Свойство:Ментейнер|Ментейнер]]», «[[:Свойство:Контрибьютер|Контрибьютер]]», «[[:Свойство:Администратор|Администратор]]», но есть сомнения, что для текущего объёма данных нужна столь мелкая классификация. Следует тщательнее изучить вопрос необходимости подобных подсвойств.
 
* Для отображения причастности [[:Категория:Персоналии|персоналий]] к тем или иным продуктам создать шаблон «[[:Шаблон:Проекты и разработки|Проекты и разработки]]», который должен будет добавляться на страницу персоны и в табличной форме выводить информацию, генерируемую по значениям свойства «[[:Свойство:Разработчик|Разработчик]]» и его подсвойств, аналогично работе шаблона «[[:Шаблон:Игры автора|Игры автора]]». Прямое внедрение информации от Product info в шаблон «[[:Шаблон:Игры автора|Игры автора]]», пожалуй, всё-таки неуместно.
 
* Шаблон Product info должен уметь следующее:
 
*# Одновременное наличие значения «Менюшные платформы» или «Парсерные платформы» параметра «тип» и значения «архивное» параметра «состояние» должно приводить к автоматической вставке категории «[[:Категория:Заброшенные платформы|Заброшенные платформы]]», то есть<br>''ЕСЛИ (тип = Менюшные платформы ИЛИ тип = Парсерные платформы) И состояние = архивное ТОГДА вставить Категория:Заброшенные платформы''
 
* Проверить именование всех потенциально задействованных семантических свойств на предмет отсутствия двусмысленности и коллизий.
 
* В конце ещё раз всё перепроверить и обкатать на нескольких тестовых страницах, после чего начать адаптировать под использование шаблона [[:Категория:Платформы|страницы платформ]] в этой wiki.
 
  
См. [[:Обсуждение:Product info|обсуждение]].
+
* [[RTADS|Статья про Платформу RTADS]]
 +
* [[TADS Toolchain|Статья про инструмент TADS Toolchain]]
 +
* [[IFHub|Статья про Интернет-ресурс IFHub]]
  
 
[[Категория:Шаблоны]]
 
[[Категория:Шаблоны]]
 
</noinclude>
 
</noinclude>

Версия 18:27, 16 июля 2021

Product info
Тип
[[:Категория:Персоналии|]] {{{разработчик}}}
Языки интерфейса {{{язык}}}
Операционные системы
Написано на {{{написано на}}}
Язык разработки
Читаемые форматы файлов {{{читаемый формат}}}
Создаваемые форматы файлов {{{создаваемый формат}}}
[[Свойство:Дата первого релиза|]]
Последняя версия {{{последняя версия}}}
[[Свойство:Дата последнего релиза|]]
Состояние
{{{лицензия}}}
{{{сайт}}}


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

Заготовка для копирования

{{product info
|название = 
|тип = 
|разработчик = 
|язык = 
|система = 
|онлайн = 
|написано на = 
|язык разработки = 
|читаемый формат = 
|создаваемый формат = 
|первый выпуск = 
|последняя версия = 
|дата последней версии = 
|состояние = 
|лицензия = 
|сайт = 
}}

Параметры

Все параметры необязательны. При их отсутствии (или при наличии с пустыми значениями) соответствующие поля карточки не будут показаны. Если не задан параметр «название», то в качестве названия в карточке будет показываться название статьи.

  • название — название продукта произвольной строкой текста
  • тип — тип продукта, один или несколько (через запятую), которые должны соответствовать существующим категориям в вики, например:
  • разработчик — главные лица и организации, принявшие участие в разработке продукта. В виде произвольной строки текста, но конкретные персоны записываются в ней при помощи свойств соответствующего вида:
    • Разработчик как [[Разработчик::Имя разработчика]] (например, разработчик какой-то утилиты)
    • Локализатор как [[Локализатор::Имя локализатора]] (например, локализатор какой-то платформы)
    • Администратор как [[Администратор::Имя администратора]] (например, администратор какого-то Интернет-ресурса)
    • Технический писатель как [[Технический писатель::Имя технического писателя]] (например, автор документации для какой-то платформы)
  • язык — язык, на котором пользователь будет взаимодействовать с интерфейсом продукта. В виде произвольной строки текста, например:
    12 языков, в том числе русский
  • система — перечень операционных систем, на которых возможно использование продукта. Значение в виде произвольной строки текста, желательно просто с перечислением названий через запятую.
  • онлайн — флаг для онлайн-платформ: если платформа имеет штатную возможность воспроизведения игр в онлайн-режиме, то данный параметр должен иметь значение «да».
  • написано на — язык программирования, на котором написан продукт. Значение в виде произвольной строки текста, желательно просто с перечислением названий через запятую.
  • язык разработки — язык программирования, на котором пользователь будет вести разработку (актуально для платформ и средств разработки), для платформ без программирования следует использовать значение «Визуальный редактор»
  • читаемый формат — форматы файлов, которые можно открывать программой (актуально для интерпретаторов). Значение в виде произвольной строки текста, желательно описывать полным названием типа файла в виде ссылки на статью про соответствующее расширение, например, «[[.txt|Текстовые документы (*.txt)]]».
  • создаваемый формат — форматы файлов, которые можно создавать программой (актуально для платформ и средств разработки (инструментов)). Значение в виде произвольной строки текста, желательно описывать полным названием типа файла в виде ссылки на статью про соответствующее расширение, например, «[[.html|Веб-страница (*.htm;*.html)]]».
  • первый выпуск — дата выпуска первой версии. Значение в виде указания даты в формате ДД.ММ.ГГГГ или ГГГГ.
  • последняя версия — текущая версия. Значение в виде произвольной строки текста.
  • дата последней версии — дата выпуска текущей версии. Значение в виде указания даты в формате ДД.ММ.ГГГГ или ГГГГ.
  • состояние — текущее состояние продукта: если разрабатывается, поддерживается или активно используется, то «Активное», если ничего из этого, то «Архивное». Однако в явной форме указывать значение «Активное», как правило, смысла нет.
  • лицензия — лицензия, на условиях которой распространяется продукт. Значение в виде произвольной строки текста, но название лицензии желательно делать ссылкой на её текст или описание. Для Интернет-ресурсов здесь описываются условия использования (необходимость регистрации и пр.).
  • сайт — официальный сайт продукта. Значение в виде произвольной строки текста, но желательно, чтобы она была ссылкой, видимая часть которой будет написана в нижнем регистре без схемы URI, «www» и завершающего знака слеша, например, [https://www.IFwiki.ru/ ifwiki.ru]

Примеры использования

Для лучшего понимания принципов применения шаблона можно ознакомиться со следующими статьями вики, демонстрирующими его использование в разных вариантах: