百合届始祖!女孩子和女孩子才是真理!
Зовн?шн?й вигляд
![]() | Ця стор?нка — дов?дка, призначена для подання опису певних аспект?в в?к?пед?йних норм, звича?в, практик. Вона може в?дображати р?зн? р?вн? консенсусу, але це не пол?тика ? не настанова. |
Модул? — спец?альн? стор?нки В?к?пед??, що м?стять код мовою Lua, який можна запустити для генерац?? вм?сту ?нших стор?нок. Призначення модул?в — розширення функц?й руш?я В?к?пед?? завдяки пор?вняно складним функц?ям, що написан? користувачами. Модул? м?стяться у простор? назв ?Модуль?. Кр?м них, у цьому простор? розташована документац?я модул?в на п?дстор?нках типу Модуль:$1/документац?я. Нараз? вс? незаблокован? учасники укра?нсько? В?к?пед?? можуть створювати та редагувати модул? (за р?дк?сними винятками).
Техн?чн? особливост?
[ред. код]- Стор?нки з виконуваним кодом на Lua — це стор?нки у простор? назв модул?в, кр?м тих, чи? назви в?дпов?дають шаблону документац?? модуля. Техн?чно не можливо перейменувати на модуль стор?нку, що м?стить в?к?код, чи навпаки.
- На стор?нках модул?в не д?ють жодн? конструкц?? в?к?коду, включно з тегами категоризац??, включеннями шаблон?в, коментарями. Перед кодом модуля автоматично вмика?ться п?дстор?нка документац?? (чи виводиться запрошення створити ??, якщо ?? нема), на як?й можуть бути вс? елементи такого типу.
- Виклик модуля з ?нших стор?нок може зд?йснюватися:
- через безпосередн? використання конструкц??
{{#invoke|назва модуля|функц?я|…}}
; - через включення ц??? конструкц?? через шаблон (або будь-яку включувану стор?нку), при цьому модулю доступн? параметри безпосередньо викликаного
#invoke
шаблону; - через виклик з ?ншого модуля (див. документац?ю Lua).
- через безпосередн? використання конструкц??
- У вс?х випадках результат аналог?чний появ? у статт? на м?сц? розкриття
#invoke
певного в?к?коду.
- Стор?нки модул?в для користувач?в, у яких у браузер? включено JavaScript, в?дкриваються для редагування в спец?альному зручному редактор?. Редактор м?стить у соб? засоби для налагодження модуля без збереження. Також типово руш?й не да? зберегти модуль ?з синтаксичною помилкою.
- Зазвичай модуль обчислю?ться в кожн?й конструкц??
#invoke
, яка його виклика?; його значенням ма? бути таблиця, що м?стить функц??. ?сну? можлив?сть обчислювати певн? дан?, викликаючи модуль одноразово при оновленн? стор?нки. - Для коду на Lua д?ють визначен? техн?чн? обмеження, при перевищенн? яких виникають помилки.
Орган?зац?йн? особливост?
[ред. код]- Модул?, ?хня документац?я й обговорення ? стор?нками В?к?пед??. Ус? базов? правила й настанови В?к?пед?? (наприклад, ВП:АП, ВП:НТЗ, ВП:БЖЛ) мають дотримуватися також ? в них. Вм?ст, що генеру?ться модулем за коректного використання, також ма? задов?льняти вс? правила для вм?сту в?дпов?дних стор?нок (наприклад, ВП:КДВ).
- Модул? багато в чому аналог?чн? шаблонам, ? в б?льшост? випадк?в положення правил для шаблон?в автоматично поширюються на них (наприклад, ВП:ПАТ, ВП:ЗС).
- Не сл?д використовувати конструкц?ю
#invoke
безпосередньо на стор?нках основного простору назв, категор?й, документац?? про?кту тощо. Нав?ть щонайменш широко використовуван? модул? сл?д використовувати через спец?альн? шаблони. - Для модул?в зазвичай потр?бна наявн?сть п?дстор?нок документац??, що принаймн? м?стять категор?ю Категор?я:Модул? чи одну з ?? п?дкатегор?й (?накше модуль не може бути категоризовано). Вкрай бажано також там зазначити, де, як ? для чого ма? застосовуватися модуль ? його окрем? функц??.
- Наполегливо рекоменду?ться в?длагоджувати модуль спершу в консол?, а п?сля збереження та перед практичним застосуванням за межами особистого простору — за допомоги Модуль:UnitTests (див. документац?ю). При в?длагодженн? нових функц?й у вже використовуваних модулях рекоменду?ться створювати для експеримент?в тимчасову верс?ю (наприклад, Модуль:Math/п?сочниця). Особливо ц? положення стосуються активно використовуваних ? близьких до порогу обмежень модул?в.
- У простор? модул?в розм?щуються стор?нки користувач?в, про?кт?в, портал?в тощо, для яких потр?бно виконання коду. Вони зобов'язан? мати псевдопреф?кс типу
Користувач:
,В?к?пед?я:Про?кт:
(наприклад, Модуль:Користувач:%username%/п?сочниця) чи розташовуватися на п?дстор?нках Модуль:П?сочниця (Модуль:П?сочниця/%username%, Модуль:П?сочниця/%username%/якась заготовка). Вм?ст таких стор?нок ма? в?дпов?дати критер?ям для цього простору назв. - Код модул?в бажано коментувати, щоб ?ншим користувачам було прост?ше його редагувати.
Див. також
[ред. код]- Категор?я:Модул?
- Укра?нська документац?я Lua (може оновлюватися пов?льн?ше за англ?йську верс?ю)
- mw:Manual:Coding conventions/Lua — есе, вар?ант рекомендац?й з оформлення коду
- mw:Extension:Scribunto — додаток, що дозволя? запускати Lua на в?к?сайтах