收是什么生肖| 乳房痛挂什么科| 什么的爬| 信必可是什么药| 小米性寒为什么养胃| 三个毛念什么| hcg偏高是什么原因| 胃痛吃什么| 男生手淫有什么危害| 7月31号是什么星座| 两肺纹理增多模糊是什么意思| 胆摘除对身体有什么影响| 蒙古族信仰什么教| 梦到孩子被蛇咬是什么意思| sp是什么| 叶酸什么时候吃合适| 氢键是什么| 韩国是什么民族| 松花蛋不能和什么一起吃| 什么的树叶| 考试早餐吃什么| 姜汁可乐有什么功效与作用| 庹是什么意思| 守株待兔是什么意思| 孩子睡觉咬牙齿是什么原因引起的| 坐月子能吃什么水果| 眼眶疼是什么原因| 口吐白沫是什么生肖| 放下执念是什么意思| 二氧化硅是什么东西| 发泄是什么意思| 多吃木耳有什么好处和坏处| 水牛背满月脸是什么病| 什么的河流| 牛标志的车是什么牌子| 湿化瓶内放什么水| 红黄是什么颜色| 前列腺增生吃什么药| 92年是什么命| 肥皂水是什么| 禾加一笔是什么字| 脸部出汗多是什么原因引起的| 杨枝甘露是什么东西| 淋巴结是什么原因引起的| 洗衣机什么牌子好| 肾精亏虚吃什么药最好| 命里缺水取什么名字好| 马步鱼为什么是甜的| 德艺双馨什么意思| 小孩眼屎多是什么原因引起的| 优势卵泡是什么意思| 男人耳后有痣代表什么| m是什么牌子| 在家无聊可以干什么| 鼻涕倒流吃什么药效果好| 宫殿是什么意思| 博士生导师是什么级别| 咖啡为什么提神| 包子都有什么馅| 标新立异什么意思| 脸部麻木是什么的前兆| 情绪波动大是什么原因| 聂的拼音是什么| 12月25日是什么日子| iabp医学上是什么意思| 什么蚌相争| 圆房要做什么| 羊水破了是什么感觉| 5.2号是什么星座| 3月23是什么星座| 吃奇亚籽有什么好处| 北瓜是什么| 硬脂酸镁是什么东西| 六月份生日是什么星座| 白天不咳嗽晚上咳嗽吃什么药| 再生纤维是什么面料| 喉炎吃什么药好得快| 胸长什么样| 晨起口干口苦是什么原因| 师长相当于地方什么级别| 地三鲜是什么| ggo是什么意思| 月经一直不停有什么办法止血| 甲醛是什么东西| 锁骨上的痣代表什么| 狐狸狗是什么品种| 口舌麻木吃什么药| 相爱相杀是什么意思| 头发出油是什么原因| 苍鹰是什么意思| 云南白药里面的保险子有什么用| mt是什么单位| cl是什么牌子| 晚上尿多是什么原因| 指鹿为马的反义词是什么| 统招生是什么意思| 霉菌性阴道炎有什么症状| ad是什么缩写| 血象高会导致什么后果| 糖尿病患者可以吃什么水果| 蟑螂中药名称叫什么| 乐观是什么意思| 农历十月十八是什么星座| brooks是什么品牌| 为什么喜欢秋天| mrmrs是什么牌子| 肺积水是什么原因引起的| tablet是什么意思| 连长相当于地方什么官| 哪吒代表什么生肖| 什么病不能吃豆制品| 什么是前列腺| 男人梦到蛇预示着什么| 梦见给别人理发是什么意思| 煮奶茶用什么茶叶| moss是什么意思| 什么叫人工智能| 昧是什么意思| 数不胜数的胜是什么意思| 浑身疼痛什么原因| 树大招风的意思是什么| 98年属什么的| 阅后即焚什么意思| 牙龈有点发黑是什么原因| pcm是什么意思| 什么的杜鹃花| 糖耐筛查主要检查什么| 腿上长水泡是什么原因| 心什么什么什么| 骨穿刺主要检查什么病| txt什么意思| 鲤鱼爱吃什么食物| 晚上睡眠不好有什么办法可以解决| 骨钙素低是什么原因| 早熟是什么意思| 今天是什么月| 延迟是什么意思| 众星捧月是什么意思| 三月三是什么星座| 为什么会厌学| 治股癣用什么药最好| 什么将什么相| 天女散花是什么意思| 眉毛有什么作用| 跟腱为什么会断裂| 更年期是什么意思| 扁桃体结石是什么原因引起的| 肌肉酸痛吃什么药| 苯磺酸氨氯地平片什么时候吃| 为什么会心悸| 为什么会长痔疮| 喝水不排尿是什么原因| 书签是什么| 肩胛骨麻麻的什么原因| 牙痛 吃什么药| 涸的意思是什么| 地黄长什么样子图| 离是什么生肖| 酒后第二天吃什么| 精液是什么味道的| 爱钻牛角尖是什么意思| 八字七杀是什么意思| 精子有点黄是什么原因| 河南人喜欢吃什么| jk什么意思| 尿蛋白高不能吃什么食物| 舌头什么颜色正常| bbs是什么意思| 青蛙吃什么东西| 骶椎腰化什么意思| 鸡腿炒什么菜好吃| 肺部硬结灶是什么意思| k金是什么意思| 感性的人是什么意思| 早上九点半是什么时辰| 什么是结扎| 为什么会下冰雹| 谷丙转氨酶是什么意思| 镭射是什么意思| 欲言又止的欲什么意思| pa是什么元素| 雷锋原名叫什么| 地贫吃什么补血最快| 柱镜是什么意思| 夜明珠代表什么生肖| 赵云的坐骑是什么马| 手淫过度会导致什么| 甲功异常有什么症状| 水灵灵是什么意思| 老狐狸是什么意思| 勾股定理是什么意思| 人乳头瘤病毒16型阳性是什么意思| 男人左眼皮跳是什么预兆| 眉毛上长痘是什么原因| 山东简称为什么是鲁不是齐| 条子是什么意思| 政委是什么军衔| 水代表什么数字| 看头发挂什么科| 梦见玉米是什么意思| kksk是什么意思| 出家人不打诳语是什么意思| 咳嗽恶心干呕是什么原因引起的| 冬至下雨有什么说法| kj是什么意思| 清洁度iv是什么意思| mirage轮胎什么牌子| 盥洗室什么意思| 茶壶嘴为什么不能对着人| 力挽狂澜是什么意思| 钙化斑是什么意思| 舌头肿了是什么原因| 慢慢张开你的眼睛是什么歌的歌词| 20岁长白头发是什么原因造成的| 联袂是什么意思| 血脂高吃什么蔬菜好| 疲软是什么意思| 中分化是什么意思| 野兔子吃什么| 练字用什么笔好| 以马内利什么意思| 影子代表什么生肖| dvt是什么意思| 排卵期有什么明显症状| 缺乏维生素b12的症状是什么| 治疗白斑最有效的方法是什么| 万圣节应该送什么礼物| 肾阴虚的表现是什么| 左下腹是什么器官| 梦见月经血是什么预兆| 6月7号是什么星座| 葡萄胎有什么症状反应| 年收入10万什么水平| miracle是什么意思| 黄体功能不足吃什么药| 三竖一横念什么| 盐酸左氧氟沙星片治什么病| bred是什么意思| 什么是科学| 上日下文念什么| 实证是什么意思| 北京市副市长什么级别| 拉伤筋用什么药好| 肛门坠胀是什么原因| 吃李子有什么好处| 开什么店好赚钱| 甲状腺结节有什么感觉| 生活补贴是什么意思| 咳嗽挂号挂什么科| 尔尔是什么意思| 惊奇的什么| 梅菜在北方叫什么菜| 不什么而同| 20年是什么婚| 点到为止是什么意思| 很nice什么意思| 桑葚搭配什么泡水喝最好| hpv感染后有什么症状| 鸡内金是什么| 牙龈出血缺什么维生素| 五什么六什么的成语| 出现幻觉幻听是什么心理疾病| 冰岛说什么语言| 徘徊是什么意思| 百度Vai al contenuto

相生什么意思

Da Wikipedia, l'enciclopedia libera.
(Reindirizzamento da Wikipedia:Modulo)
百度 在国内连续9年保持ATM机销量第一的广电运通,2017年半年报披露,由于受ATM设备装机量同比减少及产品价格下滑影响,2017年上半年广电运通ATM机业务实现营收亿元,下降了%。

TIPI DI PAGINA

Voce · Discussione (Bar)
Bozza · Categoria
Aiuto · Linea guida
Pagina di servizio
Portale · Progetto
Modulo · Template
File (Immagine · Suono)
Pagina utente
Tutti i namespace

I moduli sono pagine particolari che contengono programmi scritti con il linguaggio di programmazione Lua, e possono essere richiamate da altre pagine per effettuare varie elaborazioni sul testo, come si fa con le funzioni parser. Sono utili a realizzare template quando è necessaria una logica di funzionamento complessa.

I moduli appartengono al namespace "Modulo", ovvero il titolo delle pagine ha la forma "Modulo:Nome". Possono essere creati e modificati da chiunque, ma occorre rispettare la sintassi di Lua; a tale scopo la pagina di lettura e la casella di modifica di un modulo sono dotate di colorazione della sintassi. Le righe del programma sono numerate e selezionabili e, in modifica, segnalano gli errori generali di sintassi. Si può wikilinkare la n-esima riga di un modulo aggiungendo #L-n al nome.

I moduli sono stati introdotti il 13 marzo 2013 con l'attivazione[1][2] dell'estensione Scribunto su tutti i progetti di Wikimedia Foundation.

Lua è stato creato nel 1993 da alcuni ricercatori dell'università di Rio de Janeiro[3] e pubblicato, a partire dalla versione 5.0, sotto licenza MIT.[4]

Creare un modulo

[modifica | modifica wikitesto]
Lo stesso argomento in dettaglio: Aiuto:Lua.
Una breve presentazione di esempio curata da Brad Jorsch, sulla conversione dei template MediaWiki in moduli Lua.

Lua è un linguaggio di programmazione dinamico, o meglio un linguaggio di scripting utilizzabile per l'analisi di dati, calcolo di espressioni e formattazione dei risultati tramite funzioni o programmazione ad oggetti. Lua permette di realizzare sia script molto semplici che strutture molto complesse, con tabelle, funzioni dinamiche e array associativi. Supporta la ricorsione delle funzioni e la realizzazione di coroutine.

I programmi dei moduli vengono eseguiti solo quando la pagina che li richiama viene "analizzata sintatticamente" (cioè quando essa o una pagina che la incorpora viene modificata o visualizzata in anteprima), non ogni volta che viene visualizzata. Pertanto non è possibile realizzare un modulo Lua che permetta al lettore di Wikipedia, ad esempio, di inserire la temperatura in Fahrenheit e ottenere il valore in Celsius. Solo il contributore di Wikipedia può inserire il valore in Fahrenheit in fase di creazione della voce e ottenere automaticamente il valore in Celsius.

Come per i template, è necessario documentare il funzionamento di un modulo, affinché la comunità possa sfruttarlo. La realizzazione interna può essere spiegata agli esperti tramite commenti nel codice sorgente, mentre per il puro utilizzo è necessario un manuale comprensibile anche a chi non conosce Lua.

Le pagine dei moduli non possono contenere nulla che non sia codice sorgente Lua; la documentazione deve necessariamente trovarsi in una sottopagina chiamata "Modulo:Nome_modulo/man". All'interno della sottopagina va inserito il Template:Man modulo.

Valgono in generale le raccomandazioni fatte per i manuali dei template, ma nel caso di un modulo ci sono più funzioni diverse da documentare.

Creare un modulo di prova

[modifica | modifica wikitesto]

Dato che i moduli vanno creati nell'omonimo namespace esiste la pagina Modulo:Sandbox per le prove (analogamente a Wikipedia:Sandbox per le normali prove di modifica). Se si vuole creare un modulo di prova è possibile farlo in una sottopagina di Modulo:Sandbox creando una sottopagina con il proprio nome utente, per cui basta creare una pagina del tipo: Modulo:Sandbox/IlTuoNomeUtente/NomeModulo.

Richiamare un modulo

[modifica | modifica wikitesto]
Esempio di chiamata di un modulo Lua

Ogni modulo può contenere numerose funzioni, utilizzabili con lo stesso principio delle funzioni parser. I moduli sono richiamati tramite il comando {{#invoke:}}.

La sintassi del comando per richiamare una funzione contenuta in un modulo Lua è la seguente:
{{#invoke:nome_modulo|nome_funzione|parametro1|...|parametro_n}}.

Dove:

  • nome_modulo: nome del modulo da richiamare (titolo della pagina senza "Modulo:")
  • nome_funzione: nome della funzione del modulo da eseguire
  • parametro_1...parametro_n: eventuali parametri da passare alla funzione

La sintassi è quindi molto simile a quella di una normale chiamata di funzione parser o di template, con l'aggiunta del nome della funzione da richiamare, questo perché un modulo Lua può contenere più funzioni, quindi quando viene richiamato si deve specificare quale funzione del modulo si vuole usare.

Come per una chiamata di template i parametri possono essere posizionali o nominati, il manuale del modulo dovrebbe precisare quali parametri accetta ogni sua funzione.

L'effetto dell'esecuzione è simile a quello di una chiamata di template: l'istruzione di invocazione del modulo viene sostituita dal valore restituito dalla funzione (mentre nel caso del template viene sostituito dall'inclusione della pagina del template richiamato).

Da notare infine che anche se non vengono passati parametri a una funzione, questa riceve comunque una serie di informazioni sulla pagina che l'ha richiamata, tra cui i parametri che sono stati passati alla pagina che richiama la funzione, e può usare questi parametri per regolare il suo comportamento.

I moduli possono essere richiamati ovunque, ma per convenzione si preferisce richiamarli solo all'interno dei template, per mantenere il codice delle pagine più semplice possibile e accessibile ai meno esperti. Ad esempio, il Template:Ciccio chiamerà internamente il Modulo:Pippo tramite il comando {{#invoke:Pippo|...}}, ma l'utilizzatore finale non ha bisogno di saperlo, poiché nelle voci si limiterà a chiamare {{Ciccio|...}} (i parametri saranno automaticamente passati anche al modulo).

Lo stesso argomento in dettaglio: Aiuto:Subst.

Come per le funzioni parser e per i normali template, anche i moduli possono essere substati.

Ad esempio, scrivendo: {{subst:#invoke:HelloWorld|hello}} una volta salvata la pagina si visualizzerà "Hello, world!" sia quando si consulta la pagina (com'è normale che sia), sia nel codice sorgente.

Esempi di chiamata

[modifica | modifica wikitesto]

Chiamata senza parametri

[modifica | modifica wikitesto]

Per eseguire la funzione hello del Modulo:HelloWorld si deve usare il comando {{#invoke:HelloWorld|hello}}. In questo caso la funzione non accetta parametri e si limita a resistuire la stringa "Hello, world!" che sostituirà l'invocazione della funzione.

Chiamata con un parametro

[modifica | modifica wikitesto]

Per calcolare la lunghezza della stringa "buongiorno" si può richiamare la funzione len del Modulo:String usando il comando {{#invoke:String|len|buongiorno}}. La funzione restituirà la stringa "10" che andrà a sostituire l'invocazione.

Accesso ai parametri del template chiamante

[modifica | modifica wikitesto]

Per esempio di accesso ai parametri del template che chiama la funzione vedi la funzione missing_image del Modulo:Tassobox che viene richiamata dal template {{Tassobox}} per determinare quale immagine visualizzare nel caso non ne venga fornita una esplicitamente. Il template {{Tassobox}} usa il comando {{#invoke:Tassobox|missing_image}} per richiamare la funzione senza passare alcun parametro, ma al suo interno la funzione accede ai parametri con cui è stato chiamato originariamente il template {{Tassobox}} (cioè i parametri "ordine", "classe", "superclasse", "subphylum", ecc... di quest'ultimo) per decidere in base al valore di questi quale immagine utilizzare.

  1. ^ Sumana Harihareswara, New Lua templates bring faster, more flexible pages to your wiki, su blog.wikimedia.org, Wikimedia Tech Blog, 11 marzo 2013. URL consultato il 16 marzo 2013.
  2. ^ In questa discussione sono presenti alcune argomentazioni sul perché Lua è stato preferito a JavaScript.
  3. ^ (EN) Roberto Ierusalimschy, Luiz Henrique de Figueiredo e Waldemar Celes, The Evolution of Lua (PDF), su lua.org, 2007, p. 1. URL consultato il 4 novembre 2015.
  4. ^ (EN) License, su lua.org, 12 maggio 2015. URL consultato il 4 novembre 2015.

Risorse e documentazione

[modifica | modifica wikitesto]

Pagine correlate

[modifica | modifica wikitesto]
糖耐什么时候检查 什么是渎职 不义之财是什么意思 结膜炎角膜炎用什么眼药水 什么是宫刑
费玉清为什么不结婚 肺部散在小结节是什么意思 MR医学上是什么意思 体检报告都检查什么 欧米茄属于什么档次
龙涎香什么味道 喝咖啡对身体有什么好处 眼睛肿了用什么药 女人背心正中间疼是什么原因 智障什么意思
女人得性瘾什么症状 披萨用什么面粉 敕是什么意思 傲慢表情是什么意思 全自动洗衣机不脱水是什么原因
小便出血是什么原因zhongyiyatai.com 心跳过速是什么原因hcv9jop0ns8r.cn 炀是什么意思hcv9jop8ns0r.cn 朝霞不出门晚霞行千里是什么意思mmeoe.com 孙权字什么hcv8jop8ns2r.cn
什么蔬菜补血hcv9jop3ns8r.cn 胎芽是什么hcv7jop7ns2r.cn 杨公忌日是什么意思hcv9jop3ns7r.cn ib是什么单位hcv7jop4ns5r.cn 肾内科是看什么病的hcv9jop0ns4r.cn
老想放屁是什么原因hcv8jop9ns2r.cn 腹泻能吃什么hcv9jop6ns4r.cn 小便失禁是什么原因男性hcv9jop4ns8r.cn 女人为什么会来月经hcv8jop7ns1r.cn 肝血管瘤有什么症状表现hcv8jop1ns6r.cn
为什么要分手hcv8jop7ns7r.cn 手麻是什么情况hcv8jop6ns7r.cn 木耳不能和什么一起吃hcv8jop3ns2r.cn 抑郁症发作是什么感觉hcv9jop8ns2r.cn 什么是职业道德inbungee.com
百度