| Зверніть увагу! Коли Ви редагуєте цю сторінку, то погоджуєтесь робити свій внесок під ліцензієюCC0. Детальніше про умови ліцензії можна дізнатися насторінці довідки. |
TemplateData – це розширення, яке зберігає інформацію та параметри, пов’язані зшаблоном вікітексту, і робить його доступним для інтерфейсу редагування, який може отримати та представити його в редакторі шаблонів – усе це допомагає користувачам додавати та редагувати шаблони на сторінках.It also provides a user interface fordiscovering templates.
Станом на квітень 2019 року функціональність TemplateData є частиною стандартної роботи користувача для всіх користувачів на всіх вікі Вікімедіа, коли вони додають шаблон, навіть незареєстрованих користувачів.Обидва редактори, текстовий і візуальний, в той чи інший спосіб його використовують, як і багато скриптів, інструментів і гаджетів.Якщо ви хочете, щоб ця функція була у вашій власній вікі, установітьРозширення:TemplateData.
Додавання TemplateData до шаблону для використання цим розширенням передбачає вставку невеликого простого блокуJSON (як пояснено нижче) до сторінки документації шаблону.Ви можете зробити це вручну або за допомогою редактора TemplateData, графічного інтерфейсу користувача, до якого можна отримати доступ на сторінках шаблону «Редагувати»/«Редагувати код» у вікі з установленим розширенням TemplateData.JSON містить список параметрів шаблону й інформацію про ці параметри та про шаблон в цілому (докладніше див. нижче).
Шаблони, які містять TemplateData, відображатимуть цю інформацію в інтерфейсі користувача, коли користувач додасть шаблон.У деяких випадках це змінить поведінку редактора, коли ви використовуєте його для редагування або вставки заданого шаблону, значно полегшивши користувачам виконання кроків, необхідних для додавання заданого шаблону.
TemplateData було створено на початку 2013 длявізуального редактора, який в MediaWiki тоді працював у тестовому режимі.VisualEditor є основним графічним інтерфейсом для редагування вікі Вікімедіа, а TemplateData розширює його можливості при додаванні до сторінки шаблонів.Він одразу мавофіційну підтримку в візуальному редакторі.З розповсюдженням візуального редактора у різних великих вікі Вікімедіа як редактора за замовчуванням упродовж 2013—2016 років, TemplateData розповсюджувався там теж.
У грудні 2016 року в бета-тестовому режимі інтерфейс візуального редактора був прилаштований для редагування коду сторінок вікі.Ця функція отримала згодом назвуРедактор вікі-тексту 2017.Тоді функції TemplateData були вперше застосовані при редагуванні коду.
У березні 2018 рокуСем Вілсон розробивTemplateWizard, розширення для вставки шаблонів для роботи у звичайному редакторі коду ВікімедіаWikiEditor (знаному як редактор вікітексту 2010), з метою спрощення вставки шаблонів із застосуванням інформації з TemplateData.Уквітні 2019 року TemplateWizard увійшов до складу редактора вікітексту 2010 у всіх вікі Вікімедіа.Таким чином TemplateData тепер є складовою частиною обох редакторів, візуального та редактора коду, у всіх вікі Вікімедіа.
Аби додати чи змінити інформацію в TemplateData якогось шаблону, перейдіть спочатку на його сторінку — на «/Шаблон:Назва шаблону».
Перш ніж додавати чи редагувати TemplateData, перевірте, чи має шаблонпідсторінку документації.Тоді перевірте, чи шаблонуже містить TemplateData і якщо так, чи розміщені вони на сторінці шаблону або підсторінці документації.
У більшості вікі Вікімедіа є два основні способи зберігання приміток про застосування шаблонів та іншої інформації, яку не варто включати у сам шаблон (як-то категорії, до яких сам шаблон належить):
{{Documentation|content=, що охоплено тегом<noinclude>.Виглядати це може по-різному у різних вікі.Зрідка головні сторінки шаблонів можуть містити документацію, навіть якщо ви перевірили все вищесказане;тут користувач додасть іншу назву підсторінки /документація між «{{Documentation|» та «|content=», а потім додав власне вміст за «|content=».
Ви також можете знайти сповіщення внизу сторінки, подібне до цього: «Наведена вище документація включена з Template:Templatename/doc».
Якщо шаблон не має підсторінки документації, створіть її та перемістіть документацію шаблону туди (або її заготовку).Тоді можна додавати дані TemplateData до підсторінки документації.
Для створення підсторінки документації, натисніть «Редагувати»/«Редагувати код» на основній сторінці шаблону й відшукайте теги<noinclude> (зазвичай наприкінці), погляньте на їхній вміст.
Він має виглядати приблизно так:
<noinclude>{{Documentation|content=== Usage ==Information about usage.== More example headings ==More example contents[[Category:Example category]][[Category:Example category 2]]}}</noinclude>
Ви також можете виявити, що він уже містить TemplateData.Якщо так, це буде виглядати приблизно так:
<noinclude>{{Documentation|content=...<templatedata>{"description":"","params":{"1":{"label":"Example parameter","description":"Example parameter description","type":"string"}}}</templatedata></noinclude>
Виберіть усе після «|content=» і перед «</noinclude>» і виріжте це в буфер обміну або збережіть у тимчасовому документі. Видаліть «|content=», залишивши лише таке:
<noinclude>{{Documentation}}</noinclude>
Збережіть сторінку шаблона.
Now, to create the new subpage, look at your browser's address bar and add /doc to the end of the URL.Press↵ Enter, then choose the option to create a new page.
В українській вікі є шаблон {{Documentation subpage}}, тому додайте його на початку створюваної сторінки або створіть нову сторінку.Ви також можете додати інші шаблони, наприклад посилання {{Purge button}} або посилання {{Purge}} (якщо це підтримується відповідною вікі).
Insert the text you cut or saved in the previous text (beneath the notice template, if applicable).
Оберніть будь-які категорії в теги<includeonly>, щоб вони застосовувалися лише до головної сторінки шаблону:
<includeonly>[[Category:Example category]][[Category:Example category 2]]</includeonly>
Багато вікі мають шаблон{{Sandbox other}}.Використовуйте цей шаблон тут, якщо ймовірно, що шаблон, який ви редагуєте, існує у версії пісочниці (знаходиться за адресоюTemplate:Templatename/sandbox), щоб запобігти застосуванню категорій до пісочниці сторінка:
<includeonly>{{sandbox other||[[Category:Example category]][[Category:Example category 2]]}}</includeonly>
Нарешті, опублікуйте сторінку.
Тепер ви можете додавати та редагувати TemplateData на підсторінці документації, використовуючи інструкції, описані в#Методи.
Додавання чи редагування TemplateData на основній сторінці шаблону
Якщо ви не хочете чи не можете створити підсторінку /документація, можна додати дані TemplateData на основну сторінку шаблону. Інструкція представлена в#Методи.
Якщо шаблон має підсторінку документації, слід перевірити, чи вона містить дані TemplateData і чи вони знаходяться на підсторінці документації (або на основній сторінці шаблону).
Як альтернатива, розширення TemplateData може виконати цю перевірку замість вас.Натисніть «Редагувати» чи «Редагувати код» на відповідній сторінці.Якщо шаблон уже містить дані TemplateData на тій чи іншій сторінці, ви побачите виділену жовтим примітку нагорі сторінки, де написано таке:
або
Якщо шаблон містить дані TemplateData на своїй підсторінці документації
Якщо шаблон має дані TemplateData на своїй підсторінці документації, саме цю сторінку слід редагувати.Це можна зробити натисканням посилання «[редагувати]» біля заголовку «
Документація шаблону» (чи подібного), або, якщо ви вже на підсторінці /документація, натисканням «Редагувати» чи «Редагувати код» нагорі сторінки.Далі слідуйте вказівкам із#Методи для додавання чи редагування даних TemplateData.
Якщо шаблон містить дані TemplateData на своїй основній сторінці
Якщо шаблон містить дані TemplateData на своїй основній сторінці, є два способи дій:
Перенесення даних TemplateData до підсторінки документації
Аби зробити це, натисніть «Редагувати»/«Редагувати код» на основній сторінці шаблону і знайдіть тег<templatedata>, охоплений тегами<noinclude>.Це має виглядати приблизно так:
<noinclude>{{Documentation}}<templatedata>{"description":"","params":{"1":{"label":"Exampleparameter","description":"Exampleparameterdescription","type":"string"}}}</templatedata></noinclude>
Виріжте до буферу обміну тег<templatedata> з усім вмістом і збережіть сторінку.
Далі відкрийте редагування підсторінки документації натисканням посилання «[редагувати]» після заголовку
Документація шаблону" або подібного.
Наберіть заголовок, приміром, «TemplateData», під ним вставте дані з буферу обміну.
Тепер можна редагувати дані TemplateData згідно із вказівками в#Методи.
Редагування даних TemplateData на основній сторінці шаблону
Якщо ви не хочете переносити дані TemplateData до підсторінки /документація, можна редагувати їх просто на основній сторінці шаблону.Див.#Методи щодо редагування даних TemplateData.
Якщо шаблон не має TemplateData, але має підсторінку документації
Якщо шаблон наразі не має TemplateData, цей блок слід додавати до підсторінки документації.
Можна зробити це, натиснувши посилання «[редагувати]» біля заголовку «
Документація шаблону» (чи подібного), або, якщо ви вже на сторінці /документація, натиснувши «Редагувати» чи «Редагувати код» нагорі сторінки.Напишіть заголовок, на кшталт «TemplateData», потім додайте блок даних під ним.Розділ#Методи пояснює, як додавати блок TemplateData.
Це простіший спосіб додавання чи змінювання TemplateData, придатніший для недосвідчених користувачів.
Редактор TemplateData — графічний користувацький інтерфейс для додавання та редагування TemplateData.It is part of the TemplateData extension, available on any template's page (or documentation subpage) by clickingРедагувати orРедагувати код.
Після натискання на «Редагувати» чи «Редагувати код» ви побачите кнопку над полем редагування та заголовком сторінки з назвою «Редагувати дані шаблону».
Натисніть цю кнопку для входу вредактор TemplateData.Якщо сторінка, яку ви редагуєте, вже містить блок TemplateData, ці дані будуть відображені тут автоматично.
Функції, доступні в показаному вікні:
If no language template data exists, the interface will only offer users the wiki's own language, but users can clickДодати мову to add more inputs.The language code is displayed in brackets next to the parameters to which it can be applied, such as descriptions and labels.
Застосувати. Два основні типи:"inline" (в один рядок) і"block" (різними рядками). Цейпараметр і його вплив описані нижче.Нестандартний», він зможе описати цей формат набором вікітексту в параметрі «Рядок нестандартного формату», згідно зправилами користувацьких форматів, задокументованими нижче, і саме з такої розбивкою по рядках вставлятиметься шаблон, коли користувач в редакторі натискатиме «Застосувати».If parameters have already been defined in template data, this area displays them in a list.If the template's source code specifies parameters for which no template data exists, you may see a button labeledДодати 2 пропоновані параметри.The editor extracts these suggestions from the template's source code by looking for{{{parametername}}} or{{{parametername|}}}.ClickingДодати 2 пропоновані параметри will add these parameters using their names as defined in the source code.A green notice will also appear at the top, for example, "2 нові параметри імпортовано:names of parameters".
Додати параметр». Це дозволяє вручну додати параметр з довільною назвою.Наступним кроком є натискання на один із параметрів у списку. Там можна задати інформацію про параметр.
Всі ці функції та їхню дію описано в підрозділі#Всередині назви параметру.
Вилучити інформацію про параметр» вилучить опис параметру та всю інформацію про нього із даних TemplateData. Ви не зможете відновити чи відкотити цю зміну в TemplateData, якщо лише не натиснули відмову від запису «X» на закінчення редагування. Будь-які зміни, зроблені після натискання посилання «Застосувати», можна відкотити натисканнямCtrl+Z.Після завершення редагування натисніть «Застосувати».Це автоматично вставить блок TemplateData внизу сторінки перед тегом</noinclude>, або, якщо такий блок вже існував, замінить інформацію відповідно до редагування, не змінивши положення блоку.Також блок TemplateData буде виділено після натискання «Застосувати».
Редактор TemplateData створює параметр"paramOrder" наприкінці блоку TemplateData чи оновлює тамтешню інформацію.paramOrder містить поточний перелік опису параметрів шаблону в тому порядку, в якому вони відображувалися в редакторі даних шаблону.You can change theparamOrder by dragging the parameters up and down in the template data editor using the three horizontal bars on the left.paramOrder and its effects are documented below.
Після цього натисніть «Зберегти», аби записати зміни до редагованої сторінки.
Альтернативою використанню візуального редактору TemplateData є додавання цього блоку вручну. В окремих випадках таке може знадобитися.Структура TemplateData базується на стандартахJSON, але вам не треба опановувати JSON, щоб навчитися додавати TemplateData.Це робиться за дуже простими правилами й полягає в записі лише кількох десятків значень, майже завжди у вигляді"parameter": "value".
Додавання блока TemplateData вручну
Попередні міркування:
<noinclude>...</noinclude>.ClickРедагувати orРедагувати код on the respective page, then move to the place in the page where you intend to add template data and write a heading: "Template data".
Багато які вікі (зокрема, україномовна; але не всі) містять шаблон {{TemplateData header}}, який додає коротку примітку щодо блоку TemplateData. Додайте його після заголовку.
Для початку запису TemplateData вставте тег<templatedata> і пару фігурних дужок на нових рядках, з порожнім рядком поміж ними:
<templatedata>{}</templatedata>
Далі додайте відступ на порожньому рядку між двома круглими дужками і починайте записувати параметри. Подробиці щодо параметрів поданотут. Більшість параметрів необов'язкові, але декілька настійливо рекомендовані.
Параметри можна записувати в будь-якому порядку, але порядок, що найкраще корелює з порядком в документації щодо TemplateData і з відображенням редакторів TemplateData, такий:
<templatedata>{ "description": "", "format": "", "params": { "parameter1": { "aliases": ["",""] "label": "", "description": "", "type": "" } }, "paramOrder": [ "" ]}</templatedata>
Упевніться, що параметри, наприклад, в об'єкті"params", синтаксично залишаються всередині цього об'єкту, інакше при спробі збереження отримаєте помилкуНеочікувана властивість "propertyname"..
Приклад
Ось приклад блоку TemplateData для гіпотетичного шаблону прибирання.Шаблон має демонструвати сповіщення, а його код запрограмований вміщувати сторінку до відповідної категорії на ґрунті вказаної дати (рік і місяць).Сповіщення також має містити посилання на розділ сторінки обговорення, якщо вказано. Блок TemplateData виглядатиме приблизно так:
<templatedata>{"description":"Use this template to indicate that an article is in need of cleanup.","format":"inline","params":{"date":{"label":"Month and year","description":"The month and year that the template was added","type":"string","autovalue":"{{SUBST:CURRENTMONTHNAME}} {{SUBST:CURRENTYEAR}}","example":"January 2013","suggested":true},"reason":{"aliases":["1"],"label":"Reason","description":"The reason the article is in need of cleanup","type":"string"},"talk":{"aliases":["talksection"],"label":"Talk page section","description":"The section of the talk page containing relevant discussion","type":"string"}},"paramOrder":["date","reason","talk"]}</templatedata>
Відповідна документація TemplateData відображуватиметься так:
Use this template to indicate that an article is in need of cleanup.
| Parameter | Description | Type | Status | |
|---|---|---|---|---|
| Month and year | date | The month and year that the template was added
| String | suggested |
| Reason | reason1 | The reason the article is in need of cleanup | String | optional |
| Talk page section | talktalksection | The section of the talk page containing relevant discussion | String | optional |
Усі доступні параметри даних шаблона (тобто ті, що всередині тегів<templatedata>...</templatedata> у вікікоді) наведено нижче з описом та прикладом.Вони також більш детально перераховані на сторінціExtension:TemplateData#Format.
\n") in descriptions, labels, examples or defaults will not show in any of the main editors (TemplateWizard, the visual editor or the 2017 wikitext editor), even though they show in the auto-generated template data documentation.They are replaced by a null string in input forms and by a space elsewhere.| Параметр | Опис | Приклад |
|---|---|---|
| description | Параметр Вплив На сторінці документації шаблону цей опис буде показано у вигляді звичайного тексту під заголовком «Дані шаблону дляНазва шаблону». Всі поширені редактори (VisualEditor,Редактор вікі-тексту 2017,WikiEditor ізTemplateWizard тощо) демонструють цей опис у двох основних місцях:
У VisualEditor та редакторі вікітексту 2017 цей опис обмежений 50 символами під кожним знайденим результатом, за чим слідує ..., але в основному вікні редактора шаблонів відображується повний опис.В обох випадках відображення робиться сірим кольором. В основному вікні редактора шаблонів відображення робиться звичайним (чорним) кольором, а для довгих описів (більших за 540 символів) відображується смужка прокрутки. Якщо не вказано Якщо параметр опису не вказаний чи порожній, натомість буде відображено текст «
| "description":"Шаблон для посилання на категорію на Вікісховищі за темою статті", |
| format | Наступним є Параметр необов'язковий, але рекомендований.The default behavior when this parameter is not provided is preserving the existing formatting for existing parameters, or inline formatting for newly added parameters and templates. Вплив Внутрішній: ( При вставленні шаблону його вікітекст буде вміщено в код сторінки на одному рядку без пропусків між елементами, як-от:
Блок: ( При вставленні параметри шаблону розподіляться по рядках, кожен на новому, з одним пропуском між елементами, як-от: {{Foo| bar = baz| longparameter = quux}}Нестандартне форматування: Якщо параметр встановлено в особливий рядок вікітексту, згідно з правилами, переліченими в#Нестандартні формати, виведе свій вікітекст згідно з заданим вікітекстом. | "format":"inline" |
| params | Об'єкт Для кожного із параметрів він має міститиназву та набір підпараметрів TemplateData, описанийтут. Якщо шаблон має багато параметрів, відділяйте кожен об'єкт комоюпоміж ними, після закриваючої фігурної дужки попереднього об'єкту, але не після останнього об'єкту. | "params":{"parameter1":{...// інформація про параметри},// тут кома"parameter2":{...// інформація про параметри},// і тут теж"parameter3":{...// інформація про параметри}// але не тут} |
| paramOrder | Об'єкт Як користуватися Додається параметр Кожен із параметрів може бути написаний в новому рядку для виразності, але це необов'язково (можна й так: Рекомендовано вказувати Список має бути повним, тобто містити назву кожного з параметрів шаблону, що їх описано в блоці TemplateData, інакше отримаємо помилку«Відсутній атрибут». Якщо не вказано Якщо З іншими параметрами У редакторі вікітексту 2010 року з TemplateWizard:
У візуальному редакторі та редакторі вікітексту 2017 | "paramOrder":["date","reason","talk"] |
| Параметр | Опис | Приклад |
|---|---|---|
| Назва параметра | Єдиним параметром першого рівня в об'єкті Так, якщо в коді шаблону зустрічається Також можна зустріти параметри з іменем
Примітка: параметри з числовими назвами необов'язково нумерувати послідовно; так, можна використати Як користуватися Кожен із цих об'єктів « | "1":{// назва параметру...// тут іде інформація про параметр} |
| Параметр | Опис | Приклад |
|---|---|---|
| aliases | Додатковий параметр
or
Це означає, що назви параметра синонімічні, можна застосувати будь-яку для задання його значення.Така конструкція в коді перекладається дослівно так: «Значення parameter1. Якщо parameter1 невизначений чи його значення порожнє, то значення parameter2.»У другому випадку далі так: «Якщо parameter2 не вказаний чи має порожнє значення, то порожнє значення.» Аби додати синонімічні назви за допомогою | "aliases":["1","talk","talksection"], |
| inherits | Необов'язковий параметр Аби застосувати цей параметр, напишіть | "params":{"тема1":{"label":"Тема","description":"Тема, що згадується на цій сторінці неоднозначності","type":"string"},"тема2":{"inherits":"тема1"},"тема3":{"inherits":"тема1","label":"A different label"}} |
| label | Параметр TemplateData | "label":"Місяць та рік", |
| description | Тут | "description":"Місяць і рік, коли цей шаблон було додано до бази.", |
| type | See the#Type parameter section. | |
| default | Деякі параметри шаблону мають значення за замовчуванням; значення використовується, якщо воно не перевизначено користувачем.Елемент Вплив У всіх основних редакторах (візуальний редактор, редактор вікітексту 2017 та редактор вікітексту 2010 із TemplateWizard) текст З іншими параметрами У всіх основних редакторах (візуальний редактор, редактор вікітексту 2017 та редактор вікітексту 2010 із TemplateWizard), якщо вказано | "default":"Category:CommonsRoot", |
| autovalue | Параметру можна призначити This value can be overwritten by the user in the template editor. З іншими параметрами У всіх основних редакторах (візуальний редактор, редактор вікітексту 2017 та редактор вікітексту 2010 із TemplateWizard) | "autovalue":"{{subst:CURRENTMONTHNAME}} {{subst:CURRENTYEAR}}" |
| example | Параметр Вплив У всіх основних редакторах (візуальний редактор, вікітекстовий редактор 2017 і редактор вікітексту 2010 з TemplateWizard) ця властивість відображається під описом параметра (і під текстом З іншими параметрами У всіх основних редакторах (візуальний редактор, редактор вікітексту 2017 та редактор вікітексту 2010 із TemplateWizard), значення | "example":"January 2013", |
| suggested values | Атрибут
Інші типи (file, page, template, user, date, boolean, URL) наразі не підтримуються, оскільки вони мають особливу функціональність у візуальному редакторі, як-от автозаповнення, яке створить колізію із випадаючим меню із запропонованими значеннями. Редагування даних TemplateData як JSON у вікітексті Аби додати перелік запропонованих значень для параметра шаблону, додайте новий атрибут "suggestedvalues" в JSON. Значенням атрибуту “suggestedvalues” має бути перелік рядків (ланцюжків). Editing template data with the template data editor
Effects Після цього візуальний редактор відображуватиме запропоновані значення вкомбінованому списку (випадаючий список, в якому можна також вводити текст) для типів параметра шаблону, перелічених вище. Користувач обирає потрібне значення натисканням. Якщо цей список довгий, користувач може почати набір в полі вводу, список фільтруватиметься із залишенням лише тих варіантів, які починаються зі введених символів. Цей фільтр можна просто витерти, що поверне повний перелік. Якщо потрібного значення немає в списку, його можна просто набрати вручну. | "suggestedvalues":["Journal","Book","Newspaper","Magazine"] |
| Status option | Description | Example |
|---|---|---|
| required | Також у нас є Він визначає, чи є заповнення заданого параметра обов’язковим для шаблону. Вплив Статус обов'язкового параметра впливає на візуальний редактор таРедактор вікі-тексту 2017 в такий спосіб:
WikiEditor ізРозширення:TemplateWizard, як і інші редактори, так само автоматично при використанні шаблону відображує такий параметр, але його неможливо прибрати.Він також пише « З іншими параметрами У візуальному редакторі та редакторі вікітексту 2017 статус | "required":true |
| suggested | Статус Використовуйте Вплив У візуальному редакторі таРедактор вікі-тексту 2017 цей статус автоматично відображує параметр, коли користувач застосовує шаблон.Якщо для параметра вказано «автозначення», воно також автоматично відобразиться у полі вводу.Інших ефектів немає, як і додаткового тексту чи вікон попереджень. WikiEditor із TemplateWizard параметр не відображується автоматично при використанні шаблону, але його назва потрапляє збоку в перелік під заголовком « З іншими параметрами Статус | "suggested":true |
| deprecated | Нарешті, наявний Це статус параметрів, які більше не повинні використовуватися, але поки що існують.Таке трапляється, коли редагуванням шаблону змінюють набір його параметрів. Вплив Візуальний редактор та редактор вікітексту 2017 під впливом цього параметра відображують сірий знак оклику біля назви параметра шаблону при його вставленні, а в підказці під його описом відображують сірим курсивом текст «Поле застаріло.deprecation reason».На функціональність і застосовність параметра шаблону це не впливає, як і не веде до відображення додаткових попереджень. Попри той факт, що цей параметр блоку TemplateData може набувати текстового значення, з січня 2020 р. жоден із основних редакторів (візуальний, редактор вікітексту 2017 та 2010) не відображує користувачу цього тексту.Введений текст дає той самий ефект, що й значення Редактор вікітексту 2010 із TemplateWizard не дозволяє бачити чи додавати параметр шаблону, для якого «deprecated» встановлено в З іншими параметрами Якщо разом із цим встановити в Якщо встановити разом із цим у В редакторі вікітексту 2010 із TemplateWizard, навпаки, | "deprecated":"Натомість використовуйте, будь ласка, «publicationDate»." |
Примітка: якщо жоден із атрибутів"required","suggested" чи"deprecated" для параметра шаблону не встановленийtrue, його статус в документації TemplateData відповідатиме"optional" (необов’язковий).
Після завершення редагування натисніть «Зберегти». Якщо ви десь зробили помилку, система не дозволить Вам зберегти редагування (це трохи дратує, але завдяки цьому Ви нічого не пошкодите у коді). Якщо ж Ви натрапите на помилки у самій програмі, поясніть насторінці відгуків, що саме Ви намагалися зробити, і ми будемо раді допомогти Вам.
Зауважте, що, якщо ви зловживаєте хакерським шаблоном для динамічної генерації TemplateData, він не може перевірятися на помилки перед збереженням.
Зверніть увагу, що кожна порція інформації береться у лапки (за виняткомtrue таfalse), і відокремлюється від наступної порції комою (за винятком останньої).
Параметр блоку TemplateData"type" дає інформацію редактору шаблонів щодо природи значення параметра шаблону.В деяких випадках редактор шаблону отримує інструкції модифікувати користувацький інтерфейс відповідно до цієї природи, зокрема, дозволяти користувачу вводити лише значення, що відповідають вказаному типу.Цей параметр не справляє функціонального ефекту на параметр шаблону чи його значення, він керує лише відображенням параметра шаблону в редакторі шаблонів.
Як користуватися
Додати параметр"type", за яким двокрапку, пропуск та будь-який із типів, вказаний у першому стовпчику таблиці нижче.
Приклад:
"type":"string",
Вплив
З лютого 2020 р. лише 5 із 13 типів впливають на інтерфейс візуального редактора та редактора вікітексту 2017, а в TemplateWizard таких типів 8.
Вплив певних типів напевне змінюватиметься, коли редактори шаблонів отримуватимуть оновлення для їхньої підтримки. Один із таких проєктів для візуального редактора та редактора вікітексту 2017 відслідковується в задачі PhabricatorT55613. Подібний проєкт підтримки логічного типу в TemplateWizard відслідковується вT200664.
Нижче перелічено актуальні ефекти.
| Value | Description | |
|---|---|---|
| unknown | Значення Вплив Тип | |
| string | Значення Вплив У всіх основних редакторах (візуальний редактор, редактор вікітексту 2017 та редактор вікітексту 2010 із TemplateWizard) | |
| line | Значення Вплив
| |
| content | Тип Вплив
| |
| unbalanced-wikitext | Тип Вплив
| |
| wiki-page-name | Тип Вплив У всіх основних редакторах (візуальний, редактор вікітексту 2017 та 2010 із TemplateWizard) | |
| wiki-file-name | Тип Вплив
| |
| wiki-template-name | Тип Вплив У всіх основних редакторах (візуальний, редактор вікітексту 2017 та 2010 із TemplateWizard) | |
| wiki-user-name | Тип Вплив У всіх основних редакторах (візуальний, редактор вікітексту 2017 та 2010 із TemplateWizard) | |
| number | Значення Вплив
З іншими параметрами
| |
| boolean | Тип Вплив Із | |
| date | Тип Вплив
З іншими параметрами
| |
| url | Значення Вплив
required, але користувачу не видається попередження при вставленні шаблону без URL. Це також має місце за будь-якого статусу (як-от «suggested"» чи «deprecated»).
З іншими параметрами
| |
Редагуванням значення"format" можна створити спеціальні формати, якщо ввести набір символів вікітексту, дотримуючись певних наперед заданих правил.
{{ - початок шаблону_ - вміст (рядок, ціле число, параметр тощо). Символ підкреслювання визначає найменшу довжину значення в символах, його можна повторювати, як-от у_______. Якщо користувач не вичерпав усю довжину, значення буде доповнено пропусками. Це можна застосувати, приміром, для вирівнювання всіх знаків рівності після параметрів на певній позиції (якщо застосовано із\n як позначкою нового рядка).| - вертикальна риска (розділює параметри)= - знак рівності (передує значенню параметра)\n або натискання кнопки вводу — новий рядок (відобразить↵ у полі вводу) - пропуск (може застосовуватися із\n для формування відступу рядків)}} - кінець шаблонуВікітекст має щонайменше задовольняти мінімуму{{_|_=_}}, інакше буде видано помилку форматного рядку.
| Мета | Рядок формату | Виведення |
|---|---|---|
| Рядкове форматування | {{_|_=_}}inline | {{Foo|bar=baz|longparameter=quux}}{{Bar}} |
| Блокове форматування | {{_\n| _ = _\n}}block | {{Foo| bar = baz| longparameter = quux}}{{Bar}} |
| Без пропуску перед іменем параметру, кожен шаблон на своєму власному рядку | \n{{_\n|_ = _\n}}\n | {{Foo|bar = baz|longparameter = quux}}{{Bar}} |
| Відступ кожного параметру | {{_\n |_ = _\n}} | {{Foo |bar = baz |longparameter = quux}}{{Bar}} |
| Вирівнювати всі імена параметрів до даної довжини | {{_\n|_______________ = _\n}}\n | {{Foo|bar = baz|longparameter = quux|veryverylongparameter = bat}}{{Bar}} |
| Pipe-символи наприкінці попереднього рядка | {{_|\n _______________ = _}} | {{Foo| bar = baz| longparameter = quux}}{{Bar}} |
| Рядковий стиль із більшою кількість пропусків, повинен бути на початку рядка | \n{{_ | _ = _}} | {{Foo | bar = baz | longparameter = quux}}{{Bar }} |
| Шаблон на початку рядка, вирівняні відступи параметрів, вертикальна риска завчасно | \n{{_ |\n _______________ = _}} | {{Foo | bar = baz | longparameter = quux}}{{Bar}} |
Ви можете скопіювати порожній макет нижче, аби додати новий блок TemplateData до шаблону. У цей макет включені лише найчастіше вживані теги.
<templatedata>{"description":"","params":{"1":{"label":"","description":"","type":""},"2":{"label":"","description":"","type":""}}}</templatedata>
Ці помилки виникають під час збереження TemplateData, зазвичай відредагованих вручну, з недійсним кодом JSON (дубльовані ключі/параметри, кінцеві або відсутні коми тощо) у візуальному редакторі або редакторі вікітексту 2017.
«Синтаксична помилка в JSON.» з’являється у візуальному редакторі та редакторі вікітексту 2017 року; Під час редагування в редакторі TemplateData GUI з’являється повідомлення «Поганий формат JSON».
These errors can be difficult to detect and come in too many forms to list.Найкращий спосіб уникнути їх — редагувати дані шаблону виключно за допомогою редактора TemplateData; найкращий спосіб виявити їх після того, як вони виникли, — це використати зовнішній валідатор JSON, наприкладJSONLint, який виділить помилки та допоможе їх виправити.
Редактор вікітексту 2010 року не перевіряє недійсний JSON завдяки старій невиправленій помилці (T128029).Pages that contain invalid JSON may throw alarmingВнутрішня помилка messages.To fix these errors, your best bet is to use a JSON validator (see above).
Ця помилка виникає, коли певний параметр введено в"params", але він відсутній в"paramOrder".Число в квадратних дужках посилається на параметр із"paramOrder", відсутній в подальшому. Це порядковий номер, нумерація починається з 0, тобто перший параметр має номер 0, другий — 1 тощо.
"params":{"date":{...},"reason":{...},"talk":{...// <-- This parameter is not stated in "paramOrder", but it should be.}},"paramOrder":["date","reason"]// Error: Required property "paramOrder[2]" not found.
Для усунення помилки упевніться, що всі параметри, визначені в"params", також зібрані в"paramOrder".Або ж ви можете взагалі прибрати об'єкт"paramOrder" із блоку TemplateData.
Ця помилка виникає, коли певний параметр введено в"paramOrder", але він відсутній в"params".Число в квадратних дужках посилається на параметр у"paramOrder", якого там не має бути. Це порядковий номер, нумерація починається з 0, тобто перший параметр має номер 0, другий — 1 тощо.
"params":{"date":{...},"talk":{...}},"paramOrder":["date","reason",// <-- This parameter is not stated in "params", but it should be."talk"]// Error: Invalid value for property "paramOrder[1]".
Для усунення помилки упевніться, що всі параметри, визначені в"paramOrder", також зібрані в"params".Або ж ви можете взагалі прибрати об'єкт"paramOrder" із блоку TemplateData.
Ця помилка виникає, якщо взяти в лапки значення параметрів"required" або"suggested".
"suggested":"true"// <-- These quotation marks shouldn't be here.
Оскільки це логічні змінні, а не рядки, лапки для них зайві.Аби усунути цю помилку, приберіть всі лапки навколо значеньtrue чиfalse цих параметрів.
Якщо параметр"format" вказаний зі значенням, відмінним від"inline","block" чи коректного рядка форматування, виникне помилка «Властивість «format» має бути «inline», «block», або дійсний рядок формату.»
"format":"notinline"// Error : Property "format" is expected to be "inline", "block", or a valid format string.
Аби усунути помилку, перевірте, що значення після"format": дорівнює"inline" чи"block" і що в ньому немає помилок написання. Або ж, якщо робота з вікітекстом, перевірте, що він містить якнайменше{{_|_=_}} і не містить синтаксичних помилок, які зазвичай не дозволять обробити код шаблону, як-от подвійні знаки рівності чи зайві/відсутні фігурні дужки див. розділ#Нестандартні формати за подробицями синтаксису.Або ж ви можете взагалі прибрати параметр"format", щоб усунути цю помилку.
Ця помилка виникає, якщо створити неприпустимий параметр блоку TemplateData.Радше за все це помилка друку.
<templatedata>{"description":"","format":"inline","params":{"1":{"label":"","descriptino":"",// <-- spelling mistake"type":""}}}</templatedata>
Вона також трапляється, якщо записати параметр одного блоку з TemplateData в інший його блок. Це також може бути спричинено помилкою друку (розстановка дужок).
Приміром, можна було помилково записати параметр"label" в кореневому блоці об'єкту TemplateData замість всередині"params":
<templatedata>{"description":"","format":"inline","label":"",// <-- incorrectly placed parameter"params":{"1":{// ↓ it should be in here"description":"","type":""}}}</templatedata>
Або ж, якщо неочікуваний параметр знаходиться всередині параметра parametername шаблону"params", в описі помилки ви побачите його назву як «params.parametername.»
Аби усунути помилку, перевірте, що всі назви параметрів написано правильно, а також що всі параметри записано у відповідному блоці.Ще перевірте, що ви не додали неіснуючий в об'єкті TemplateData параметр.Можна перевірити, які параметри відомі для певного об'єкту, в розділі#Параметри TemplateData.
Ця помилка виникає, якщо в блоці TemplateData відсутній об'єкт"params".Це обов'язковий об'єкт, оскільки він містить всю інформацію про кожен із параметрів шаблону, тож виправте цю помилку, перевіривши, що він доданий без синтаксичних помилок.Див.вище інструкцію з додавання параметра"params".