Vés al contingut

Usuari Discussió:JoRobot/Makedep

El contingut de la pàgina no s'admet en altres llengües.
De la Viquipèdia, l'enciclopèdia lliure

@Amadalvarez, Vriullop, Paucabot: Estic acabant de polir el codi que genera aquesta pàgina, i el penjaré al github d'Amical. Penso que pot ser útil per al projecte d'infotaules globals, però també per detectar plantilles importants que haurien d'estar protegides.

De moment, però, té certes limitacions i no sé com sortir-me'n, a veure si em podeu donar idees. El que fa (mitjançant una crida a l'API de wikimedia) és semblant a editar una plantilla, i mirar la secció "Aquesta pàgina fa servir les següents plantilles". Però hi havia un problema. Quan fas això amb la plantilla normal, t'indica que les plantilles que utilitza la plantilla, però també les que utilitza la pàgina de documentació. Llavors, en surten més del compte.

Què faig? Doncs ara mateix, el que estic fent és: agafar el text de la plantilla; treure'n tot el que estigui entre noincludes; treure els tags includeonly, i copiar aquest text en una pàgina auxiliar. Llavors pregunto a l'API les plantilles que utilitza, i vaig repetint-ho recursivament per a totes les que van sortint, i creant l'arbre.

Doncs bé, no n'hi ha prou. He detectat que, per exemple {{Circa WD}} utilitza moltes més plantilles (entre elles, la famosa {{((}}), però com que ho fa en paràmetres que es passen al mòdul Wikidades, l'API no ho detecta. He arribat a la conclusió que la crida aquesta a l'API només val per coses que realment s'han executat en el moment de renderitzar-se la pàgina.

I així estem. Se us acut alguna altra manera de cridar l'API i que doni resultats més fiables? Potser es podria preparar una pàgina model amb diferents exemples que cobreixin diferents opcions de la infotaula i llavors partir d'aquesta? --Joutbis (disc.) 18:51, 21 abr 2020 (CEST)[respon]

La conclusió és correcta, només mostra les plantilles que realment ha usat, no totes les possibles. Per exemple amb un {{#if: {{{para|}}} | {{plantilla1}} | {{plantilla2}} }} només en mostrarà una de les dues. No se m'acut cap forma de detectar-les totes. --V.Riullop (parlem-ne) 19:21, 21 abr 2020 (CEST)[respon]
@Vriullop, Joutbis: Podries eliminar les de documentació en algun punt al retorn de l'API ?. Quan vaig fer la primera càrrega ho vaig fer a "cocos", com tu dius. Em copiava les llistes del final de la previsualització i ho tornava a fer per cadascuna d'elles, recursivament. Llavors em vaig adonar que m'ho omplia de merda. i vaig decidir repetir l'operació eliminant la crida a la documentació. Em penso que en algun costat tinc la llista (immensa) de plantilles que es criden, com a mínim a la primera iteració. Sóc conscient que se'm va colar alguna (com la {{P}} o la {{Q}}, però tampoc importa, perquè no tenen sub-sub-sub plantilles nidades i, a la postre, també es necessiten a la documentació futura. Et serviria ?.amador (disc.) 23:02, 21 abr 2020 (CEST)[respon]
@Vriullop, Amadalvarez: No, l'API no distingeix d'on provenen. Però sí que estic pensant que si ho dirigís a les teves pàgines d'exemple cobriríem tots els casos. Llavors perdríem la jerarquia, però entre una i l'altre faríem el fet. El que hem de veure és com ho puc fer usable. Ara mateix has de tenir permís de bot per executar-ho. Joutbis (disc.) 23:58, 21 abr 2020 (CEST)[respon]