Wikipedia:Landsbybrønden/Opdatering af Modul:Citation-CS1 og masse-ensretning: Forskelle mellem versioner

Fra Wikipedia, den frie encyklopædi
Content deleted Content added
Linje 64: Linje 64:
:: Hvis opsætningen er ufuldstændig kan IABot muligvis på en eller anden måde "gætte" hvad det mest sandsynlige er. Så hvis vi bruger "ok" så tænker botten at "ok" sandsynligvis betyder "live".
:: Hvis opsætningen er ufuldstændig kan IABot muligvis på en eller anden måde "gætte" hvad det mest sandsynlige er. Så hvis vi bruger "ok" så tænker botten at "ok" sandsynligvis betyder "live".
:: Jeg har dog sat IABot på pause mens vi diskuterer hvordan vi gerne vil have opsætningen og hvilke værdier vi synes skal betyde hvad. Jeg tænker, at det vil blive endnu mere rodet, hvis vi sætter en bot til at rette på den ene måde mens IABot stadig tror, at vi vil bruge den gamle måde. Så derfor er step 1 at beslutte opsætningen, step 2 at rette modulet, step 3 at konvertere og først da kan step 4 være at starte IABot igen. --[[Bruger:MGA73|MGA73]] ([[Brugerdiskussion:MGA73|diskussion]]) 2. maj 2021, 15:41 (CEST)
:: Jeg har dog sat IABot på pause mens vi diskuterer hvordan vi gerne vil have opsætningen og hvilke værdier vi synes skal betyde hvad. Jeg tænker, at det vil blive endnu mere rodet, hvis vi sætter en bot til at rette på den ene måde mens IABot stadig tror, at vi vil bruge den gamle måde. Så derfor er step 1 at beslutte opsætningen, step 2 at rette modulet, step 3 at konvertere og først da kan step 4 være at starte IABot igen. --[[Bruger:MGA73|MGA73]] ([[Brugerdiskussion:MGA73|diskussion]]) 2. maj 2021, 15:41 (CEST)
:::Hvordan afprøver man rettet kode i et modul? Jeg har nu fundet ud af hvordan jeg ser og retter LUA koden, men jeg er i tvivl om hvordan man afprøver en rettelse.--[[Bruger:Honymand|Honymand]] ([[Brugerdiskussion:Honymand|diskussion]]) 2. maj 2021, 17:19 (CEST)

Versionen fra 2. maj 2021, 17:19

Opdatering af Modul:Citation-CS1 og masse-ensretning

Jeg har 2 forskellige ting i dette opslag. De har principielt ikke noget med hinanden at gøre, men i praksis så har de det alligevel.

  1. Det ene er, at jeg gerne vil opdatere Modul:Citation/CS1 og jeg har derfor kopieret de engelske dele til de tilsvarende danske sandkasser. Fx Modul:Citation/CS1/sandkasse.
  2. Det andet er, at jeg foreslår en masseensretning på dawiki. Fx hvis en værdi i et felt kan være både Ja, ja, J, j, OK, ok og ok. Så foreslår jeg, at vi retter dem til det fx ok. Det kan også være forskellige skrivemåder nu en bot alligevel er i gang med at rette artiklerne. Så hvis vi fx både kan skrive % og pct., så retter vi det til den ene værdi.
Baggrunden for forslagene

Baggrunden er at jf. Wikipedia:Landsbybrønden/Brug archive.org så har det været lidt kompliceret at få Bruger:InternetArchiveBot (IABot) til at køre på dawiki. Bruger:Weblars har gjort en kæmpe indsats og fik det til at virke.

Da Weblars p.t. desværre ikke er aktiv, så har jeg selv forsøgt mig med at kigge på modulet. Jeg synes ikke det er særlig let at finde rundt i og ændringerne er ikke dokumenteret samlet – i alt fald ikke et sted jeg kan finde.

Jeg har skrevet et opslag på Moduldiskussion:Citation/CS1#Opdatering_2021_pga_IABot i håb om at der lige kom en kodenørd forbi og ville fixe det hele. Men jeg tænker, at de fleste ligesom mig tænker ”Uh, det har jeg ikke lyst til at pille ved!”.

Men jeg kom frem til, at det bedste nok var at hente alle modulerne igen og starte forfra på tilpasningerne. Så det har jeg gjort. Mange af tilpasningerne kan jeg heldigvis genbruge fra det eksisterende modul. Så det er ikke så slemt, som det lyder.

Jeg har så skrevet med en af hoved-kode-nørderne på det engelske modul (Trappist the monk) og munken synes at det lød spændende at jeg ville starte forfra og forsøge at dokumentere ændringerne. Så munken vil gerne hjælpe (jeg måtte dog så meget gerne hjælpe med at beskrive ændringerne, så andre wikier har en guide til hvis de vil gøre det samme). Fx skulle vi lave en særlig tilpasning fordi maj er på 3 bogstaver hvilket er det samme som når man forkorter måneder (fx feb). Det bliver nu fanget automatisk af koden, så vi ikke behøver at lave denne tilpasning. I Danmark skriver vi punktum i datoer fx 2. maj 2021 så derfor skal vi have en særlig ['d.My'] og da denne også bruges i Norge og Finland samt på Færøerne, så ville det jo være smart, at koden på enwiki understøtter det så man kan slå det til ved fjerne udkommenteringen et par steder.

Men der er stadig mange ting, der skal tilpasses.

Forslag om at genimportere modulet

Modulet virker p.t. men IABot fungerer ikke optimalt sammen med modulet og de danske skabeloner. Det viser sig, at kombinationen af tilpasninger af modulet gør, at botten og modulet og {{Cite web}} (og formentlig andre skabeloner) opfatter koden forskelligt.

Det er ret uoverskueligt at få det rettet og det er svært at finde nogen, der har lyst til at hjælpe fordi modulet på dawiki er specialtilpasset og bygger på en gammel version af det engelske modul.

Jeg tænker, at det bedste derfor er at genimportere modulet. På den måde får vi de seneste funktioner med og jeg tænker også at det bliver lettere at vedligeholde modulet, {{Cite web}} og alle de andre skabeloner, der bruger modulet.

Hvis vi genimporterer modulet, så er der brug for at oversætte en række felter mv. igen. Det er så her mit næste forslag (nedenfor) kommer ind i billedet. For vi kan enten besluttet at vi bruger de engelske navne (og undlader at oversætte) eller også at vi oversætter til dansk fordi det er den danske Wikipedia. Vi kan også beslutte, at vi tillader fx norske og svenske navne fordi det gør det lettere at kopiere artikler mv. fra disse wikier. Men det øger mængden af tilpasninger vi skal foretage.

Jeg vil derfor gerne høre om der er stemning til at importere modulet igen?

Hvis ja, er der så nogle ting vi gerne vil gøre anderledes denne gang?

Forslag om at masse-ensretning

Som nævnt så virker modulet p.t. men IABot og modulet og {{Cite web}} opfatter koden forskelligt. Problemet er tilsyneladende at man på et tidspunkt har rettet |dead-url= til fordel for |url-status=.

Som det danske modul er sat op, så skriver IABot ”yes” hvis URL’en er død. Men {{Cite web}} opfatter ”yes” som at URL’en er levende. Det betyder faktisk at yes og no giver samme resultat hvilket ikke er logisk.

Jeg foreslår derfor, at vi laver en masse-ensretning af værdierne til fx ”live”, ”dead”, ”usurped”. Men det betyder, at vi skal rette måske 40.000 sider (igen). Det havde selvfølgelig været bedre at have opdaget det noget før, men det gjorde vi altså ikke. Eller hvis nogen havde opdaget det, så undlod de at fortælle om det.

Da enwiki og IABot bruger |url-status= hvor man skal svare på spørgsmålet hvilken status har URL’en, så giver det os kun problemer, at vi har |dead-url=, hvor man skal svare på om URL’en er død. For hvordan skal man så svare, hvis siden er blevet overtaget af en anden?

Jeg foreslår derfor, at vi retter alle felterne til, så vi bruger samme som enwiki. Dvs. vi fjerne udgåede felter og tilføjer manglende felter.

Derudover skal vi så som nævnt beslutte om vi vil tillade engelske, danske, svenske, norske, kinesiske feltnavne. Jeg mener helt klart at vi skal tillade engelske navne. Jeg kan også lokkes til at tillade danske. Men jeg synes at vi skal fjerne alle andre sprog. Hvis vi alligevel skal rette 40.000 sider, så synes jeg vi skal overveje, om der er andre skabeloner og andre ting vil gerne vil rette nu hvor en bot alligevel retter.

Som nævnt kan vi fx brugen af ”%” og ”pct.” fra den ene til den anden hvis der er stemning for det. Der er dog nogle krav:

  1. Det skal kunne gøres med en bot, så det skal kunne afgøres fuldautomatisk. Dvs. det skal være korrekt i 100 % af tilfældene at rette fra A til B. Eller som minimum korrekt i fx 999 ud af 1.000 gange.
  2. Det må ikke være kontroversielle ændringer. Så ikke noget med at rette fx Holland til Nederlandene.

Der er fx nogen der mener, at man bør skrive navne på skabelonerne med stort begyndelsesbogstav men alle felterne med lille begyndelsesbogstav. Der er også nogen der mener at det bedste er at skrive mellemrum før | og ingen mellemrum før/efter =. Fx {{Skabelon |felt 1=blah |felt 2=blaaaaaah}}.

Det kunne også være at nogen mener, at når man skriver overskrifter == Foo ==, så skal det være med mellemrum mellem == og selve teksten og evt. altid med en blank linke før teksten overfor og ingen blank linje efter overskriften. Den slags kosmetiske ændringer vil man jo normalt ikke lave bare for at ensrette. Men nu man alligevel skal rette, så kunne det måske være interessant.

Jeg ved ikke om der er nogle andre ændringer, det vil være muligt eller hensigtsmæssig at rette med en bot. Men nu er der i alt fald mulighed for at komme med forslaget hvis nogen har en idé. --MGA73 (diskussion) 2. maj 2021, 12:56 (CEST)[svar]

Kommentarer mht. modul og ensretning

Jeg har oprettet en underoverskrift for at gøre det lettere at kommentere. Jeg håber, at der er nogle, der vil byde ind, for modulet er kompliceret og det vil være godt med 2, 4 eller 30 ekstra øjne til at kigge på koden og hjælpe med at teste og rapportere eventuelle problemer. --MGA73 (diskussion) 2. maj 2021, 12:56 (CEST)[svar]

Det vil jeg egentlig gerne hjælpe med. Dog - jeg kender både Lua og da-wiki, men alligevel forekommer det mig noget uklart hvordan det egentlig hænger sammen med moduler og bots osv. Findes der en intro - gerne på engelsk, også som beskrives wiki's arkitektur "under the hood". Jeg er mest Windows mand, så der er mange Linux ting jeg ikke har så meget erfaring med. --Honymand (diskussion) 2. maj 2021, 14:45 (CEST)[svar]
@Honymand: Det er bare fantastisk! Jeg har hidtil holdt mig væk fra Lua. Når jeg har brugt min egen bot, så har jeg taget udgangspunkt i det der står på den enkelte wikiside. Altså en slags simpel søg og erstat. Altså fx find "status=ja" og ret til "status=live". Udfordringerne kommer så når der både kan bruges store og små bogstaver og med og uden mellemrum omkring = og når ja også kan være j, yes eller y. Det gør kodningen besværlig, men dog mulig fordi jeg jo kender til både engelsk og dansk.
Modulet er så sat op til at det kan forstå ja, j, yes, y, dead, død, live osv. med store og små bogstaver. Det udnytter IABot så den ikke behøver at kende til spansk, fransk, russisk, kinesisk, dansk osv. Så den spørger modulet hvilken værdi status er og så siger modulet at status = dead (på engelsk). Når botten så har fået svaret, så slår den op i konfigurationen i modulet og tjekker hvordan dawiki foretrækker at "dead" skal se ud. Det er så blevet sat op som "yes".
Hvis opsætningen er ufuldstændig kan IABot muligvis på en eller anden måde "gætte" hvad det mest sandsynlige er. Så hvis vi bruger "ok" så tænker botten at "ok" sandsynligvis betyder "live".
Jeg har dog sat IABot på pause mens vi diskuterer hvordan vi gerne vil have opsætningen og hvilke værdier vi synes skal betyde hvad. Jeg tænker, at det vil blive endnu mere rodet, hvis vi sætter en bot til at rette på den ene måde mens IABot stadig tror, at vi vil bruge den gamle måde. Så derfor er step 1 at beslutte opsætningen, step 2 at rette modulet, step 3 at konvertere og først da kan step 4 være at starte IABot igen. --MGA73 (diskussion) 2. maj 2021, 15:41 (CEST)[svar]
Hvordan afprøver man rettet kode i et modul? Jeg har nu fundet ud af hvordan jeg ser og retter LUA koden, men jeg er i tvivl om hvordan man afprøver en rettelse.--Honymand (diskussion) 2. maj 2021, 17:19 (CEST)[svar]