Usuari Discussió:Vriullop

Jump to navigation Jump to search

Sobre aquest tauler

Amadalvarez (discussiócontribucions)

No està funcionant la recuperació de la superfície a plantilla:infotaula de geografia política i surten errors.

Casca el Convert perquè les unitats enlloc d'arribar-li km2, li arriben quilòmetres quadrats.

El cas és que aïllo el codi en una pàgina i funciona, i la mateixa crida sense cap altra condicionant, no recupera bé el formatting=unitcode. No he estat capaç de detectar cap canvi als mòduls implicats que hagi fet canviar el funcionament. {{#invoke:Wikidata | claim | property=P2046| value={{{superficie|}}}|item=Q15468|list=false| formatting=unitcode}}

El mateix codi l'he posat special:diff/20160052 en el paràmetre "malnom" sense càlculs ni condicions a la infotaula i el mòdul li retorna malament. No ho entenc. Ahir vas fer un canvi pel tema del monolingual, però no pot afectar, o no ho he sabut veure.

Vriullop (discussiócontribucions)

Ha fallat l'invent per detectar el títol del mòdul: Special:Diff/20160295. Funciona en crida directa però no en subplantilles. En fallar no localitzava el Mòdul:Wikidata/Units. Ho deixo com una variable fins que ho acabi d'entendre.

Amadalvarez (discussiócontribucions)

uff. merci

Resposta a «HELP !!»
Amadalvarez (discussiócontribucions)

Bé, haurem de crear el perfil de la llengua din. Ho fas tu o h demano a VP:PA?.

Passa per la meva discussió que l'Amir m'ha respost i dona pistes sobre el tema de triar idioma que, a més, ens implica els mapes.

Merci,

Vriullop (discussiócontribucions)

Abans de res s'ha de fer el canvi dels femenins, i això depèn de la revisió via rastreig per traslladar els que ja usem a Wikidata. Una vegada revisats faig el canvi dels femenins via Wikidata, esperant no perdre'n cap pel camí, i immediatament activo el paràmetre lang. La idea és usar la llengua del wiki per defecte i poder canviar amb un paràmetre lang a nivell de plantilla, és a dir, usar {{infotaula de persona|lang=din}} o bé lang={{int:lang}}, per a proves o demos. El següent pas serà decidir si usem int:lang per defecte en alguns espais de noms.

El Mediawiki:Lang/din ja l'he creat.

Amadalvarez (discussiócontribucions)

Totalment d'acord. Ja he anat fent canvis. He atacat les esportistes perquè quan arregles una, en cauen(cauran) 10 més de la llista.

Vriullop (discussiócontribucions)

Com que els femenins va per llarg, fa dos dies n'hi havia 2000 en rastreig, ahir 1500, he començat a fer tirant de femenins de Wikidata i introduint el paràmetre lang. Mira les proves a Special:Permalink/20013123. Els valors ja surten en la llengua demanada, o la fallback (anglès pel dinka), excepte dates i edat amb format fixat en subplantilles. Està fet via Plantilla:Infotaula persona/proves/lang on només he canviat l'invoke a Mòdul:Wikidata/proves/lang. Com puc provar les etiquetes?

Amadalvarez (discussiócontribucions)
Amadalvarez (discussiócontribucions)
Amadalvarez (discussiócontribucions)

No em canvia l'idioma a les etiquetes pel sol fet de tenir lang=din a la primera crida. Pots confirmar que el invoke:wikidata/proves/lang/getLabel que tinc a infotaula persona/labels és com ha de ser ?

Vriullop (discussiócontribucions)

De moment m'he centrat en que funcioni amb un paràmetre lang definit. Que funcioni per la llengua de les preferències no és prioritat, tot i que sempre es pot definir lang={{int:lang}}.

El paràmetre lang, igual que l'item, és una definició global però s'ha d'anar passant com a mínim fins la plantilla que fa l'invoke. Ja ho he fet. És el que intentava explicar per item, ens el podem estalviar en l'invoke però ha de ser un dels paràmetres passats a la plantilla que fa l'invoke.

Si t'hi has fixat, he afegit un llapis en els valors que no són en la llengua demanada o per defecte la local del wiki. A notar que en aquest cas utilitza les llengües fallback, per dinka és anglès, per occità és ca-fr-en, per català és oc-en. El llapis facilita fer la traducció enllaçant a l'ítem corresponent. Serà útil també en català quan estigui tot actiu. Miraré d'afegir-lo també en les etiquetes.

La introducció d'etiquetes codificades amb T suposaran un problema per a una internacionalització ràpida. No tothom està avesat a trobar les plantilles a traduir, pocs tenen alguna idea de dinka, i d'entrada només es veuen codis estranys. Sempre que sigui possible seria millor una Q. Per exemple, per "T17=altres dades" es pot usar other (Q55107540) i en tot cas afinar-ho en català en local.

Amadalvarez (discussiócontribucions)

Sobre el tema dels literals, ja estic fent molta poda, però hi ha coses inexistents "nou càrrec", "pares", etc. Per mi la traducció d'aquests conceptes forma part del setup de la nova WP que, en tot cas, serà més suau que ara perquè estarà concentrat. La meva idea era que les plantilles "labels" tinguessin només dues llengües: l'anglès per a fer de llengua neutral a partir de la qual traduir i la local on cadascú fes una traducció inicial massiva i, si després hi ha alguna etiqueta de les recuperades de WD que no li acaba d'encaixar, pot afegir una excepció i li agafarà prioritàriament; però ja serà la seva còpia.

Vriullop (discussiócontribucions)

Per "nou càrrec" podria ser n/a (Q929804). Per "pares" existeix progenitor (Q7566) però aquí entrem en el problema dels plurals. Clar que sempre en quedaran d'intractables. Llavors a {{Infotaula persona/labels}} canvio anglès per default. El que es pot fer és afegit el llapisset, quan la llengua no sigui la local ni l'anglès, i que enllaci a la plantilla de traduccions.

Amadalvarez (discussiócontribucions)

Hi ha molts aprofitables que apareixen com a àlies i tampoc vull desvirtuar els labels de WD amb risc que algú ho canvii. Els conceptes han de ser prou invariables si no volem tenir sorpreses posteriors. Per exemple: "especialitat" està referit a esports. Si agafo el concepte genèric especialitat (Q1047113) ningú assegura que en una altra llengua el concepte "especialitat esportiva" es digui seguint la mateixa base. Ja anirem polint. El que dius del llapiset apuntant a la plantilla labels pot estar bé, però no em sembla prioritari. Ara estic acabant lo de les proteccions patrimonials que és bàsic per atacar la traducció de plantilla:infotaula edifici. He fet una millora que compatibilitzarà la recuperació de WD amb les entrades manuals dels "béns inventariats" que no estan a la P1435 de WD (i que tenim centenars). A vegades coincideixen amb BCILs o BCINs i, tal com està ara, o tot és manual o tot és WD per evitar inconsistències o duplicats. Ja ho descriuré amb detall a la documentació.

Amadalvarez (discussiócontribucions)

Una pregunta de "globals": quan invoco una subplantilla que farà invokes al Wikidata, li haig de passar el lang={{{lang|}}}, a més de l'item ?.

Vriullop (discussiócontribucions)

Sí, igual que item.

Amadalvarez (discussiócontribucions)

Actualització estat:

  • He alineat la versió de proves persona que havies fet amb les proves multilingüe de dades, amb la que jo tenia de labels. Fem servir {{proves persona}}. La {{infotaula persona/proves/lang}} és una redirecció.
  • la pàgina demo que es mostra té els exemples en diversos idiomes, alguns amb altres alfabets
  • He començat a treballar amb els "edificis" a {{proves amadalvarez}} i ja té una pàgina demo associada amb 3 llengües.
  • Quan tractis el "formatting=ca(o altra llengua)", no la canviïs per la lang global, perquè a priori no podem afirmar que sempre es vol la llengua pròpia. Ja ho aplico jo quan toca a la infotaula, en fer l'invoke.

Una pregunta:

A Plantilla:Sessió Patrimoni Unesco calcula el número de sessió a partir de l'any i la presenta com a ordinal. Saps si hi alguna fórmula per saber escriure els ordinals en qualsevol llengua, o simplement passo de fer-ho ordinal ?.

  • autoresposta: fent servir plantilla:ordinal, que tothom en té una.

Salut !

Vriullop (discussiócontribucions)

En l'anglès en:Module:Wikidata tenen una funció makeOrdinal amb els sufixos definits a la variable i18n. Sembla que és una qüestió comuna i fàcil de resoldre en la majoria de llengües definint 4 sufixos, excepte en català que són 5. De moment no ha sortit la necessitat de fer ordinals en el mòdul però si fos necessari caldria plantejar-ho com un case=ordinal posant aquesta funció makeOrdinal a Mòdul:Wikidata/i18n i que cada llengua s'ho adapti. En l'exemple de la Unesco, tractant-se d'una plantilla cal resoldre-ho amb plantilla.

En els exemples trobo a faltar alguna dona. En proves/lang ja treu els femenins de Wikidata. Estic segur que funciona en català, tret dels casos pendents de revisar, i voldria veure-ho en altres llengües.

El formating=ca no ho entenc. En cas de monolingualtext, tracta formatting=language, formatting=text, amb qualsevol altre valor (originalment era formating=ca) treu el valor en la llengua lang, i sense cap valor els treu tots. Per què no ha de ser en la llengua demanada? Potser cal replantejar la seva funcionalitat però caldria veure els casos d'ús.

Amadalvarez (discussiócontribucions)

1)L'únic ordinal que tenim dins un invoke és als càrrecs de la infotaula persona, però ho soluciono posant-li la plantilla. Per mi no cal.

2) ja hi ha una dona. Ara estic treballant en les subplantilles dels càrrecs i els esportistes, per això surten coses sense traduir, i precisament el nom del càrrec s'obté amb la Plantilla:Nom ítem WD (si recordes era aquell cas en que no el recupera el mòdul, perquè em cal obtenir-lo en raw), i la feminització la fa amb el ca-flexió. Com que pensava canviar-la a getLabel, si t'animes podies adaptar-la funció per a que també agafi la versió femenina.

3) Si tu ho dius, així serà. Per mi (i per les instruccions) language vol dir que retorna el codi de llenguatge del valor, text vol dir que passi text pla, sense span amb la llengua i ca o fr o ... vol dir que aquesta és la llengua que vols recuperar de les possibles que hi ha. Això era el que jo pensava amb el mòdul en producció. Ara he provat amb /proves/lang i la conclusió és: la llengua a recuperar l'agafa de lang, ja sigui global o afegit a la crida. Ara bé, el formatting ha quedat una mica tocat:

  • no serveix per indicar la llengua a recuperar (com tu deies)
  • si no li poses res, retorna totes els valors amb span
  • si li poses qualsevol cosa, retorna el cas que acompleix el lang, sense span
  • si li poses language, retorna el codi de tots els idiomes que hi ha
  • si li poses text, retorna tots els valor sense span.
  • tots els casos a special:permalink/20046305
Vriullop (discussiócontribucions)

2) Doncs no funcionen les formes femenines, ni en català ni en res. A revisar.

2bis) Nom ítem WD queda pendent per quan l'entengui.

3) Monolingualtext. Recapitulant, la primera versió copiada de l'anglesa era formatting=language, formatting=text o tot. Desprès hi vaig afegir formatting=ca per treure el valor en català, i en instal·lar-ho a eu.wiki ampliat a qualsevol valor per treure-ho en la llengua local. En proves/lang canviat a la llengua lang. Aquí no hi he posat cap span en cap valor amb llengua diferent a la local, monolingualtext, labels o enllaços, per la idea de que és provisional, per proves o demos. Segurament cal replantejar-ho tot plegat. No sé si s'ha utilitzat mai language, text i llista de tot. Amb el barret d'usuari, quina hauria de ser l'operativa per monolingualtext?

Amadalvarez (discussiócontribucions)

2) felicitacions pels femenins !.

2bis) nom ítem WD fa el mateix que el getLabel + linked: Si hi ha article, l'enllaça i si no enllaça a WD posant el label, si existeix. Per això més avall et deia si ja era estable com per utilitzar-lo en lloc del wikibase-label / page que tinc ara. Però com que la seva funció és passar de Q a text i el text potser s'ha de feminitzar (cas pràctic: els càrrecs polítics), també feia aquesta funció. Situació actual: he fet plantilla:nom ítem WD2 amb les mateixes funcions, però fent servir getLabel. Llavors és quan he pensat que, si et deixaves convèncer, podies fer que el getLabel recuperes "normal" o "feminitzant", a petició amb un case=gender i llavors directament liquidàvem la plantilla en qüestió. fàcil, oi?.

PD: estic preparant una bona resposta pels monolinguals.

Salut !

Vriullop (discussiócontribucions)

Cada vegada que em miro aquesta plantilla tinc la sensació de que és un hack. Posa'm un exemple on s'usi Nom ítem en femení, a veure si ho entenc millor. De totes formes, tinc entès que getLabel necessitarà femenins a banda de via "Nom ítem", correcte?

Amadalvarez (discussiócontribucions)

és fa servir a Plantilla:Infotaula persona/capçalcàrrec. Potser és un hack esperant la teva solució. Tot va començar per aquelles situacions en que, en un formatting=table, es necessitaria obtenir el valor i el raw de la propietat (no d'un qualifier que el posaria dos cops en la mateixa crida). Com que no ens varem ensortir perquè complicava massa el codi del table, recupero només el raw (necessari per a que sigui l'item d'una altra cosa) i quan em fa falta el seu valor crido aquesta plantilla. Que vull obtenir?. l'article o en el seu defecte el label. I quins mitjans tenia fins ara ? : wikibase:page o wikibase:label. I aquí estem.

A l'exemple que t'he posat s'arriba des del rowformat del bucle de càrrecs. La propietat recuperada són els càrrecs i els qualificadors són les dates i el predecessor-successor, etc. A la capçalera (que és el que fa aquesta plantilla) ens cal l'escut (obtingut a l'ítem del càrrec, no de la persona, i per això ens cal la Q del càrrec) i també ens cal el nom del càrrec que, com no l'hem pogut agafar, el recuperem a partir de la seva Q. Però, ai las, els càrrecs es feminitzen. El que dius de femenins a banda del nom, no ho crec. Jo m'imaginava invoke:getLabel|<item>|link=yes/no|case=gender(opcional)|itemgender=. Si no hi ha case=gender funciona com ara; amb case=gender, mira si és dona l'itemgender i feminitza l'item.

Vriullop (discussiócontribucions)

Ok, ara ho entenc. És el cas del $0raw que en el seu moment ja em va costar. Les taules tenen una columna 0 fixa i columnes 1-x variables. Introduir una columna nova 0bis és traslladar el hack al mòdul i no li veig solució raonable.

Tal com està la plantilla Nom ítem seria més aviat un fem=yes/no perquè ja li passes la P21 com a paràmetre. Trobo més lògic que la consulta a P21 la resolgui el mòdul passant-li l'item global itemgender={{{item|}}}.

M'ho miro. Haig de reorganitzar els femenins en funcions locals per reutilitzar-les a getLabel.

Amadalvarez (discussiócontribucions)

Bravo !!. T'haig de dir que a curt termini això de feminitzar serà la única funció que li quedarà, perquè allà on no cal feminitzar, ho estic canviant per un getLabel directament.

Vriullop (discussiócontribucions)

Estava fent la migdiada i m'he hagut d'aixecar per una il·luminació (es quan dormo que hi veig clar). Continua sent un hack, però d'una sola línia. Prova {{#invoke:wikidata/proves/lang|claim|item=Q2681411|formatting=table|property=P39|qualifier=P39|case0=gender|colformat1=raw}}

Amadalvarez (discussiócontribucions)

Definitivament, et senta bé fer migdiada.

Ja ho pots veure a la Forcadell de Plantilla:Proves persona. No majusculitza.

Bona nit !

Ah. Curiositat. Si no hi ha label d'un idioma no intenta agafar la forma femenina. Sembla lògic però m'ha espatllat la prova.

Vriullop (discussiócontribucions)

El truc de repetir la propietat com a qualificador ja l'he passat al mòdul en viu.

Vriullop (discussiócontribucions)

Majúscules arreglades: Special:Diff/20052744. Ja no cal els femenins a getLabel?

L'ordre que segueix és primer el label en la llengua lang o en els fallback. Es queda amb la primera llengua x amb la que ha aconseguit un label. Desprès consulta el femení amb aquesta llengua x. Se suposa que si no hi ha label en una llengua tampoc tindrà femení en aquesta llengua.

Per cert, gràcies a Lua he trobat la forma de consultar com estan definits els fallback al Mediawiki. Edita qualsevol mòdul, sense por. A la caixa "Consola de depuració" escriu =mw.language.getFallbacksFor("oc")[1] amb el codi que vulguis i polsa enter. En aquest cas n'hi ha fins a 3: =mw.language.getFallbacksFor("oc")[2] etc.

Amadalvarez (discussiócontribucions)

1) ho deixaria en stand-by perquè els casos que justificaven "nom item WD" en femení tenien sempre el seu origen en un formatting=table, ara solucionat. Ara bé, l'aparició d'aquesta plantilla, primer, i ara del getLabel ha obert nous usos i, prefereixo esperar que no em trobi el cas, abans de descartar-ho.

2) sembla molt lògic, res a canviar.

3) Bo de saber.

A banda:

a) quina previsió tens per fer multilingüe el getParentValues ?. Acabaré edifici i em ficaré amb geografia política i totes dues ho fan servir abastament.

b) has vist la taula dels monolinguals ?. Sembla complex però està fet amb vocació de documentar-ho bé. En el fons són 3 opcions per paràmetre. Els casos il·lògics estan explicats per a que s'entengui el que li passarà a l'editor si ho fa servir malament. Així el comportament del mòdul és homogeni, tot i que retorni una cosa inútil.

c) d'avui a divendres tenim el Paucabot a Cardiff fent una presentació de wikidata powered infoboxes. A veure que tal li va.

merci,

Vriullop (discussiócontribucions)

No tinc res previst per getParentValues, no m'ho he mirat. He vist la taula dels monolinguals i està en repòs a veure com ho digereixo. Encara estic passant femenins a Wikidata com a primer pas de tot plegat.

Amadalvarez (discussiócontribucions)

només és aplicar la lang, que jo vegi. Després s'hauria de tocar el /labels, però serà per cada llengua quan s'instal·li, entenc.

Vriullop (discussiócontribucions)
Amadalvarez (discussiócontribucions)

Segueixo preguntant: Com fas per determinar el format a aplicar a les dates segons versió lingüística ?. Ho tens en el /i18n ?. Tenim algunes plantilles de dates (data naixement, defunció, circa) que en algun moment decideixen el format amb que criden el mòdul. Fet!. Respostes a continuació.

Vriullop (discussiócontribucions)

El format de dates per defecte el pren de /i18n, si no s'usa cap formatting específic. És equivalent a #time aplicant-li el codi de llengua. En la documentació hi ha l'exemple {{#time:d F Y|1988-02-28|nl}}. Pràcticament només afecta al nom del mes sencer, no hi ha altres formats predefinits. Es pot intentar, quan hi hagi el mes sencer, usar el #time amb lang. Però al final és una cosa específica per llengua. Per exemple en l'anglesa tenen prohibit enllaçar les dates en les infotaules, i en el text només si es parla d'elles.

En el cas de la funció years_old es podria definir un format a /i18n, en anglès "age $1" i en català "$1 anys", però caldrà sincronitzar-ho amb un canvi en les plantilles.

Vriullop (discussiócontribucions)

He modificat {{Data naixement}} per funcionar amb #time i amb el codi de llengua, com a mostra. Quan es cridi caldrà passar-li el paràmetre lang. Com a mínim treu el mes traduït, tot i que genera un enllaç vermell. Fet!

També he inclòs el format ["years_old"] = "age $1". A {{Data de defunció i edat/wd}} funciona fent la crida a Wikidata/proves/lang i eliminant "anys" del formatting. Surt en anglès perquè encara no hi ha la traducció a /i18n. Per cada llengua dependrà de /i18n. No fet!

He respectat el codi actual fent que "anys/years old/..." surti de WD (anys (Q24564698)). Fet!
Amadalvarez (discussiócontribucions)

Justament estava modificant Plantilla:Data_naixement_i_edat/wd per tractar lo de years old i ja l'he fet multilingüe. El mes encara surt en català perquè té el mòdul actual. He provat amb /proves/lang i canvia també format data. Per tant, a questa OK. Vaig a posar el years_old a Plantilla:Data de defunció i edat/wd com l'he posat a naixement. Fet!

El {{circa}} també està modificat, però no es veu perquè crida el mòdul actual. Haig d'acabar de fer proves, perquè té moltes combinacions. En procés...

Amadalvarez (discussiócontribucions)

Tema unitats de mesura. Es continua veient en català perquè a) aplica el /units actual, i b) després de rebre resposta mòdul, sempre passa pel {{convert}} per assegurar que té una unitat que ens és propera (cm i no peus, kg i no lliures, etc.). Puc posar un IF per saltar aquest segon aspecte si el retorn ja és com volem, però com el que retorna és un text, és impossible fer-ho bé. Per tant, s'arreglarà i/o ajustarà quan s'instal·li i agafi el seu propi convert i el seu propi wikidata/units. per comprovar

Vriullop (discussiócontribucions)

2) Els femenins ja funcionen.

Amadalvarez (discussiócontribucions)

Més amunt em preguntaves si caldria encara el getLabel amb femení. Per sort et vaig respondre "deixa-ho en stand-by". Doncs bé, fent servir el getLabel per recuperar labels algun cas caldrà feminitzar. Ex.:Concedit per (P1027). Quan les etiquetes eren literals he fet filigranes per trobar neutres i evitar haver de diferenciar, però ara no controlem. No és urgent, però cal pensar-ho. Prova: special:permalink/20057350. Merci. Fet!

Vriullop (discussiócontribucions)

Fet, provat amb {{#invoke:Wikidata/proves/lang | getLabel | P748 | itemgender=Q87586}}

Amadalvarez (discussiócontribucions)

Segueixo amb les proves:

  • Puc canviar {{Nom ítem WD}} per a que funcioni amb la nova getLabel ? Fet!
  • A la {{Imatge item subordinat}} es mostra una imatge i l'enllaç associat pot ser a l'article WP, al label WD o enlloc, a triar a la crida. Ho faig amb wikibase i no em funciona l'accés a l'article quan li passo una llengua (ni que sigui ca). Veuràs una col·lecció de situacions fetes directament amb wikibase a special:permalink/20044910 Fet!. Veure resposta a sota
  • Els textos recuperats de WD en altres llengües que surten a les infotaules enllacen amb la cawiki, no amb la llengua corresponent. Assumeixo que això és correcte, ja que ho fem per facilitar la visualització no per sortir navegant fora de la VP. Ara bé, quan s'instal·li en una altra WP, entenc que funcionarà bé perquè és la llengua local. És correcte ?. Fet!. Veure resposta a sota
  • hauràs vist que una de les proves l'he feta en hebreu i, clar, aquesta llengua s'escriu de dreta a esquerra. Assumeixo que quan estigui en el seu entorn, no serà un problema perquè la seva {{infobox}} i tota la seva instal·lació ho resoldrà, oi?. Fet!. Veure resposta a sota

Merci

Vriullop (discussiócontribucions)
  • Wikibase page. En aquest cas el segon paràmetre no és el codi de llengua sinó del wiki. Funciona si canvies "de" per "dewiki". Surt traduïda l'etiqueta emergent però l'enllaç és vermell. corregit
  • Els enllaços amb formatting sitelink o internallink doncs són això, enllaçats en local independentment de lang que només afecta a les etiquetes. En una altra wiki seguiran sent locals i amb les etiquetes segons el lang per defecte local o els seus fallback.
  • En llengües RTL se suposa que funcionarà per la definició de l'entorn global de llengua. Si a {{Proves persona/actor/ús}} hi poso <div lang="he" dir="rtl">...</div> en la prova del Cruyff doncs li dóna la volta a un munt de coses, no sé si del tot correcte, però espero que en el seu wiki ho afini. Fet!
Amadalvarez (discussiócontribucions)

Proposta monolingual. Fet!

Adjunto taula de casos exhaustiva. No totes les situacions tenen sentit, però penso que no cal que el mòdul faci res. Gestionar errors seria complex. Les 4 columnes primeres són el que es vol aconseguir i un cas d'ús possible. Les 3 següents indiquen com s'haurien d'emplenar els paràmetres. He posat buit en els casos que m'han semblat més habituals, però no coincideixen amb la lògica de la resta de tractament del mòdul (false=1, buit=all), si ho vols invertir per coherència, cap problema. El firstrank (que ja no teníem) no té sentit perquè en aquest format la prioritat hauria de ser la llengua que t'interessa recuperar. Bé, si hi ha algun dubte/discrepància,...a disposar.

Quants recuperar Llengua Retorn Cas d'ús    list formatting separator Comentaris que no afecten a l'actuació del mòdul
Recuperar un únic valor de la llengua global  valor + llengua triar el valor de la versió corrent   buit buit N/A
   Només valor triar el valor de la versió corrent   buit text N/A
     només codi de llengua N/A   buit language N/A Sense utilitat perquè és la llengua de la pròpia WP, llevat que tinguem lang=
d'una llengua específica  valor + llengua Fer servir una versió concreta diferent de la llengua corrent   codi llengua buit N/A
   Només valor saber si existeix versió per una llengua concreta   codi llengua text N/A
   només codi de llengua N/A   codi llengua language N/A Sense utilitat perquè és la llengua que li hem proporcionat a "list="
Recuperar tots els valors (o firstrank) versions lingüístiques igualment vàlides  valor + llengua noms oficials / originals. No sempre és únic, com en estats multilingües   all buit si
    Només valor noms oficials / originals.   all text si
    només codi de llengua Saber la llengua retornada.     all language si Només útil quan hi ha només 1 valor.
Casos multivalor (llegenda,    valor + llengua sense sentit   all buit si Retorna una llista heterogènia i amb un format poc tractable via parsering
 Només valor Pot interessar per a fer un str find   all text si
 només codi de llengua sense sentit   all language si Retorna una llista de llengües sense aparellar amb els corresponents valors
Vriullop (discussiócontribucions)

A veure si ho he entès. Em sembla bé combinar-ho amb el paràmetre list, cosa que ara no fa, però hauria de ser amb els valors que ja usa: list=false, per defecte list=true. Cal combinar-ho també amb el paràmetre lang, llavors no té sentit usar list=lang. Tampoc tindrà sentit l'actual formatting=ca que s'haurà d'eliminar i substituir per list=false. El valor formatting=text ara el trobo confús, de fet hauria de ser formatting=raw, però deixem-ho estar. De fet, l'span de llengua hi hauria de ser per tots els retorns en llengua diferent a la local, excepte aquest formatting=text(raw). El formatting=language sembla que no té cap utilitat, però és senzill i no molesta, el podem deixar. A veure si encaixa amb la meva taula d'opcions. No considero separator ja que sempre hi és quan hi ha una llista.

lang list formatting Retorna
<codi> false ni text ni language text en lang, amb span si lang≠local
<codi> false text text en lang sense span
<codi> false language lang, si existeix; no res, si no existeix (sense sentit?, potser per comprovacions prèvies)
<no s'usa> true ni text ni language tots els texts, amb span pels lang≠local
<no s'usa> true text tots els texts sense span (sense sentit?)
<no s'usa> true language tots els language existents (sense sentit?)
Amadalvarez (discussiócontribucions)

Amb lang: Llavors, vol dir que faríem servir el paràmetre lang del invoke específic per a fer referència a la llengua que estem buscant, ja sigui la de la lang o una que en interessa. Ex.: vull el nom en llatí, tant si estic en català com si la lang de l'editor és fr. Com que només volem un i sabem quin és, el list=false. Primera part, coherent.

Sense lang: Quan no sabem el que busquem, sinó volem recuperar el "habitualment" únic valor que hi ha (cas de "nom en llengua original", o similar), s'aconseguiria amb list=true. Si finalment hi ha més d'un valor (entorns multilingüe), només l'opció formatting text o null ens donarien un contingut aprofitable per mostrar; fins i tot el formatting=text permetria alguna parsering tipus str find. Ara bé, el formatting =language, que no serveix per res en multivalor, ens estaria dient en quina llengua està allò que hem recuperat, si és monovalor. Cosa útil.

En aquest casos, actualment estic optant per recuperar amb span, perquè per mi el format ideal per mostrar en llistes de noms oficials seria "text (llengua)", però només ho puc muntar quan sé que només he recuperat 1 valor i si en són més, ja no puc mostra la llengua amb aquest format quan, precisament, més es necessita. Això en noms de poblacions orientals o africanes amb versió àrab + llengua local és força habitual. Podria existir un formatting que ho donés ?. És a dir: sense lang, list=true, formatting= textLangFormatted (o així).

Merci.

Vriullop (discussiócontribucions)

Amb lang i sense lang és correcte, però la clau és amb list false (un) o true (tots). Ara mateix amb list=false treu el primer de tots i la idea és que tregui el que correspongui a lang, sigui la indicada o la llengua per defecte. Bé, és la intenció, encara no sé com m'ho faré. Amb list=true seran tots els que hi hagi, independentment de lang.

Per un format "text (llengua)" podria ser amb formatting="$text ($language)" semblant al rowformat però amb les dues variables. A notar que "language" és el codi de llengua, no el nom. Per formats més complexos s'hi podrien afegir plantilles a expandir. Bé, començo a fer i ja anirem provant casos.

Amadalvarez (discussiócontribucions)

A mi aquesta forma em sembla bé. Efectivament, language és codi no el seu nom, igual que retornaria amb false+language. Merci.

Vriullop (discussiócontribucions)

Ja es pot provar. Finalment en lloc d'usar list=false ho he fet amb list=lang. Primer perquè m'ha resultat (molt) més fàcil, i sembla intuïtiu en línia amb list=firstrank. Proves amb Estats Units d'Amèrica (Q30):

  • {{#invoke:Wikidata/proves/lang|claim|item=Q30|property=P1448}} (list=true):
    United States of America
  • {{#invoke:Wikidata/proves/lang|claim|item=Q30|property=P1448|formatting=text}} (list=true, text en brut sense span):
    United States of America
  • {{#invoke:Wikidata/proves/lang|claim|item=Q30|property=P1448|formatting=($language) $text}} (list=true):
    (en) United States of America
  • {{#invoke:Wikidata/proves/lang|claim|item=Q30|property=P1813|list=lang}} (lang d'usuari):
    EUA
  • {{#invoke:Wikidata/proves/lang|claim|item=Q30|property=P1813|list=lang|lang=en|separator= - }}:
    USA - America - United States

Soluciona tots els casos de la taula?

Amadalvarez (discussiócontribucions)

Em sembla que si està tot. Observo que el separator funciona sempre. fins i tot amb aquesta [il·lògica] petició:

  • {{#invoke:Wikidata/proves/lang|claim|item=Q30|property=P1813|formatting=($language) $text| separator= - }} (list=true):
    (en) USA - (pt) EUA - (sr) САД - (ro) SUA - (ru) США - (cs) USA - (ka) აშშ - (udm) АОШ - (es) EE.UU. - (uk) США - (ca) EUA - (nl) VS - (en) America - (en) United States - (de) Vereinigte Staaten - (de) Amerika - (de) USA - (de-at) Vereinigte Staaten - (de-at) Amerika - (de-at) USA - (de-ch) Vereinigte Staaten - (de-ch) Amerika - (de-ch) USA - (zxx) 🇺🇸 - (hu) AEÁ - (he) ארה"ב - (be) ЗША - (be-tarask) ЗША - (ja) 米国 - (ja)  - (is) BNA - (sr) САД - (fr) É.-U. - (id) AS

Un exemple seriós:

  • {{#invoke:Wikidata/proves/lang|claim|item=Q47837|property=P1705|formatting=($language) $text| separator=<br/>}} (Al-Aaiun):
    (ar) العيون
    (tzm) ⵍⵄⵢⵓⵏ
    (fr) Laâyoune

Fantàstic !.

Hem de pensar en la migració ?. Habitualment faig servir:

  • {{#invoke:Wikidata|claim|item=Q76|formatting=ca|property=P18|qualifier=P2096 |list=false}} (peu imatge):
    Retrat oficial del President Barack Obama
  • {{#invoke:Wikidata|claim|item=Q76|formatting=table |property=P18|qualifier=P2096 |qualifier2=P585 |rowformat=$1 $2 |rowsubformat2 =($2) |colformat1=ca |colformat2 =Y |list=false}} (peu imatge amb data):
    Retrat oficial del President Barack Obama (2012)

He provat amb /proves/lang i sembla que funciona. Cert ?

Vriullop (discussiócontribucions)

El separador apareix sempre que hi ha una llista. En el meu exemple l'he definit perquè amb lang=en apareixia amb la conjunció and.

Falta compatibilitzar formatting=ca per fer la migració a list=lang amb un rastreig. L'exemple d'Obama m'ha deixat descol·locat i sincerament no entenc com funciona. Resulta que monolingualtext està estructurat de forma diferent per una propietat que per un qualificador.

  • {{#invoke:Wikidata|claim|item=Q76|property=P18|qualifier=P2096}}:
    Retrat oficial del President Barack Obama
    treu un únic valor, directament en la llengua local, no cal formatting=ca ni list=false, en proves tampoc cal list=lang
  • {{#invoke:Wikidata|claim|item=Q76|formatting=table |property=P18|qualifier=P2096 |qualifier2=P585 |rowformat=$1 $2 |rowsubformat2 =($2) |colformat2 =Y}}:
    Retrat oficial del President Barack Obama (2012)
    igual, no cal colformat1=ca ni list=false, ni el nou list=lang

Comparant a Barack Obama {{#invoke:wikidata|ViewSomething|claims|P1559}} i {{#invoke:wikidata|ViewSomething|claims|P18|1|qualifiers|P2096}} en el primer cas els valors estan en la taula mainsnak que no existeix en el segon cas i no sé com s'ho fa per treure'n només un. Sorprenentment usant lang sí que funciona, però ni idea de per què, hauria de rastrejar què fa el codi pas a pas:

  • {{#invoke:Wikidata/proves/lang|claim|item=Q76|property=P18|qualifier=P2096|lang=en}}:
    Official photograph of President Barack Obama
Amadalvarez (discussiócontribucions)

per tant, els formatting=ca i el colformatn=ca, ja els puc anar traient ara pels casos de recuperació específica.

Vriullop (discussiócontribucions)
Vriullop (discussiócontribucions)

Sense buscar-ho ja he trobat que el codi del mòdul fa un tractament diferent pels qualificadors monolingualtext (nota personal, és a function getQualifierSnak). Actua sempre com si fos list=lang. Recorda-m'ho si trobes algun cas en que hauria d'actuar igual que les propietats monolingualtext, tot i que no sembla fàcil.

He fet una actualització completa des de /proves/lang. Encara tinc coses en la llista de pendents però semblen menors. Totes les plantilles ja adopten la nova filosofia amb lang per defecte i llapisset quan cal traducció. Ja es pot començar a migrar el formatting=ca a list=lang.

Resposta a «Ja tenim client.»
Isidre blanc (discussiócontribucions)

Bon dia, Vicenç: He acabat l'habitual ronda de categorització de les fotos pendents de les llistes de monuments. Com que per fer-ho parteixo de la categoria "Cultural heritage monuments in Catalonia" i subcategories, si una foto porta la categoria de "Cultural heritage monuments in...", la localitzo. Però hi ha algunes fotos que són a les llistes però no porten dita categoria i, per tant, a no ser que me n'adoni, no estan categoritzades. Es detecten perquè no porten la lupa de commonscat. No crec que n'hi hagin moltes, però em podries fer una petita aplicació per obtindre una relació (ordenada per llistes) d'aquestes fotos?

Vriullop (discussiócontribucions)
Isidre blanc (discussiócontribucions)

Gràcies, Vicenç. Ja he utilitzat les dades. No em pensava trobar-ne tantes. Es pot esborrar la llista i desar el bot per una pròxima ocasió (mig any).

Vriullop (discussiócontribucions)

Ok, desat amb el nom imatgesensecommonscat.py per quan em diguis.

Resposta a «Categoritzant»
Amadalvarez (discussiócontribucions)

A Ante Pavelić li surt un (Error de Lua: invalid capture index %8 in replacement string.) a la seva sepultura. He parat boig i sembla de meigas.

A Plantilla:Proves persona/labels funciona: en infotaula i amb el codi Invoke directament.

He posat el codi del invoke directament a l'article i dona el mateix error, amb la qual cosa he pensat que podia ser un problema vinculat a l'espai principal, però funciona en un altre article agafat a l'atzar.

La infotaula de l'article ara té desactivada la recuperació per a que no es vegi l'error.

Alguna idea ?

Vriullop (discussiócontribucions)

Increïble. Falla en expandir la plantilla coord, via {{((}}empty_coord{{!}}$3{{!}}$4{{!}}display{{=}}inline{{))}}. Que només falli en aquest article i en d'altres no ja indica que el problema és el títol de la pàgina "Ante Pavelić" que codificat és "Ante+Paveli%C4%87". Aquesta codificació la fa el Mòdul:Coordenades per la pàgina actual. Lua dóna l'error pel %8, una variable que intentar substituir. No se m'acut cap solució de moment, tret de que no es pot expandir la coord. Potser amb alguna drecera que no passi pel mòdul coordenades, per exemple Special:Permalink/11548976.

Vriullop (discussiócontribucions)

Ho he solucionat per aquest cas (què bona la migdiada), però no estic segur que no tingui efectes secundaris. Comprova diferents casos de rowformat amb plantilles a veure si funcionen correctament amb /proves/lang.

Vriullop (discussiócontribucions)

Doncs amb això queden solucionats uns errors que havia vist a eu.wiki i que no havia investigat: eu:El Sardinero, eu:El Tamarugal probintzia i bastants d'altres. Allà és provocat per les banderes amb el nom del fitxer també codificat com a url. @Theklan: quan estigui ben provat ja ho actualitzaré a eu.wiki.

Resposta a «Poltergeist»
Yuanga (discussiócontribucions)

Hola Vicenç. Quan tinguis una estona podries fer una ullada a això? Merci!

Vriullop (discussiócontribucions)

Ho he vist i ho tinc anotat però aquestes coses necessiten temps. Potser quan acabi les vacances.

Yuanga (discussiócontribucions)

Només era per saber si n'estaves al corrent. Gràcies!

Resposta a «RefToolbar»
Amadalvarez (discussiócontribucions)

he vist aquest missatge i he pensat que potser estaves remenant les classes.

Vriullop (discussiócontribucions)

Sí però és un canvi lògic a Mediawiki:Commons.css. Ho he revertit perquè en uns dies no m'ho puc mirar. El problema és de la plantilla:medaller no de la class amb l'alineació per defecte.

Amadalvarez (discussiócontribucions)

ara me la miro.

Amadalvarez (discussiócontribucions)

Prova a tornar a fer el canvi i comprova si la plantilla: medaller surten centrats tots els textos. Si no surten, vol dir que no ho he fet bé. Disculpa

Vriullop (discussiócontribucions)

Ho deixo estar, no ho puc entendre. Provat al meu espai Usuari:Vriullop/vector.css el medaller es veu bé, però la idea era suprimir la definició a Mòdul:Infobox on està afegit expressament com a "NOU" (diferent a l'original anglès). Quan ho trec d'aquí surten totes les infotaules centrades sense fer cas al CSS.

Resposta a «has canviat class=infobox ?»
Amadalvarez (discussiócontribucions)

qui posa aquests textos, el mòdul o ja li arriben així?

Estava intentant trobar els seu raw per canviar els llocs on ara els tracto i poder tenir un valor de comparació que no varii amb la llengua. He fet un viewSomething i veig que està a snaktype com novalue i somevalue.

A partir d'aquí, o se t'acut alguna forma de passar-ho, o bé haurà de formar part de les tasques de installation setup. Merci,

Vriullop (discussiócontribucions)
Resposta a «sense valor i valor desconegut»
Resum per Amadalvarez

Fer servir numeració en paràmetres posicionals si el contingut conté un signe =.

Corregit plantilla:Circa/labels que funcionava erròniament

Amadalvarez (discussiócontribucions)

He perdut un munt de temps amb un estrany comportament de {{If both}} quan està conjuntament amb <abbr></abbr>. Finalment ho he arreglat amb dos Ifs encadenats però com que no trobo explicació, o no soc prou llest o hi ha un error que algú haurà de corregir.

He fet un bloc de proves a Special:permalink/20062154

Li pots fer un cop d'ull ?

Merci

Vriullop (discussiócontribucions)

Bona aquesta. Els paràmetres sense nom d'una plantilla no poden tenir un = sinó l'interpreta com un paràmetre amb nom. Funciona numerant els paràmetres {{if both|1=A|2=|3=RES|4=XXX<abbr title="proves de títol">''A+B'' </abbr>}} o bé escapant l'igual {{if both|A||RES|XXX<abbr title{{=}}"proves de títol">''A+B'' </abbr>}}. La primera solució és una bona pràctica en general dins de plantilles per evitar aquests ensurts i clarificar la sintaxi.

Amadalvarez (discussiócontribucions)

Brutal !.

Per mi la utilitat dels paràmetres posicionals és que simplifiquen el codi quan vas per feina, com ara en una crida camuflada des d'un formatting=table. Si li haig de posar el número d'ordre, millor ja els batejo i s'entén millor. Bé, gràcies. M'estava tornant lelo perquè no agafava ni el XXX que hi havia abans fins i tot del sospitós abbr.

Salut !

Paucabot (discussiócontribucions)
Vriullop (discussiócontribucions)

Correcte, són els dos que queden pendents.

Paucabot (discussiócontribucions)

Procedesc, idò.

Resposta a «Baixes administradors»
Àlex (discussiócontribucions)

Bona tarda Vicenç, si us plau gestioneu la baixa dels meus permisos d'administració, donat que no puc dedicar el temps que m'agradaria a aquest projecte. Una abraçada. - - Àlex (Discussió) 19:18, 30 juny 2018 (CEST)

Resposta a «Baixa d'administrador»