Wiktionary:Stilguide/Grammatik/Skapa en mall

Detta dokument beskriver hur man ska gå tillväga för att skapa en grammatikmall såsom {{sv-subst-n-or}} eller {{eo-verb}}.

För att lära dig att


Innan du börjar redigera

Kontrollera att du inte skapar en mall i onödan. Alla grammatikmallar ska vara kategoriserade enligt [[Kategori:Wiktionary:Mallar för <språk>]], exempelvis Kategori:Wiktionary:Mallar för svenska.

Dessutom ska alla mallar vara beskrivna i en undersida till Wiktionary:Stilguide/Grammatik.

Om du inte kan hitta mallen – fortsätt läsa!


Namngivning redigera

Mallens namn ska ha följande struktur:

språkkod

Exempelvis "sv" för svenska. En fullständig lista hittas på Wiktionary:Stilguide/Språknamn.

förkortad ordklass

För vilken ordklass ska mallen gälla? Här anges (oftast) en förkortning av ordklassen, här nedan följer en lista:

  • adjektiv → adj
  • adverb → adv
  • pronomen → pron
  • substantiv → subst
  • verb → verb (oförändrat)

(lägg gärna till nya vid behov)

egenskap

Detta anges bara om den aktuella mallen enbart kommer att gälla för ord av aktuell ordklass med viss egenskap, vilken gör att mallen måste förändras. Exempelvis finns det flera olika mallar för substantiv på svenska ({{sv-subst-t-0}}, {{sv-subst-n-er}} m.fl.). Denna egenskap uttrycks så kort som möjligt, samtidigt som den ska vara logisk och lättförståelig.

Grundläggande struktur redigera

Grammatikmallar skapas med fördel med moduler. För mer information, se:

Grundläggande struktur utan modul redigera

Böjningar av {sidnamn} Form 1
Form 2 {sidnamn}

Den enklast tänkbara mallen:

1:   <noinclude>{{grammatik-dok|Svenska|Substantiv}}{{#invoke:categorize|getTemplateWikitext}}</noinclude><includeonly>
2:   {{grammatik-start|2|{{{fakta|X}}}|sv-subst-n-namn|lang=sv|h3=subst}}
3:   !class="main"|Böjningar&nbsp;av ''{{länka|{{{grundform|{{PAGENAME}}}}}}}&nbsp;{{{betydelser|}}}''
4:   !Form 1
5:   |-
6:   !Form 2
7:   |{{g-cell|sv|{{{grundform|{{PAGENAME}}}}}}}
8:   {{grammatik-slut|2|{{{not|}}}|{{{förled|}}}}}
9:   {{#invoke:categorize|getMainWikitext|sv|subst}}</includeonly>
Förklaring
  1. Påbörjar en grammatiktabell - och innehåller alltså {|. Kopiera mer eller mindre rakt av, men ändra:
    • Svenska i exemplet till språket för din tabell. (kom ihåg att använda versal första bokstav!)
    • Substantiv i exemplet till ordklassen för din tabell. (kom ihåg att använda versal första bokstav!)
    • 2 i exemplet till antalet kolumner i din tabell.
    • sv-subst-n-namn i exemplet till ditt mallnamn. (detta används för att automatiskt skapa böjningsuppslag)
    • sv i exemplet till tabellens språkkod. (rekommenderat; krävs om språkkoden innehåller bindestreck)
    • subst i exemplet till ordklasskoden, såsom subst för substantiv, adj för adjektiv och verb för verb. (rekommenderat; krävs om språkkoden innehåller bindestreck)
  2. Huvudrubriken. ! gör att rutan får färgad bakgrund och class="main" gör att den är fetstilt och inte kursiv.
    • Denna rad behöver oftast inte ändras alls, men den kan behöva göras bredare/högre m.h.a. colspan (i så fall se nedan) eller rowspan.
    • Vissa andra rutor kan också vara fetstilta och ej kursiva och således använda class="main". I så fall ska informationen gälla hela tabellen, t.ex. utrum eller neutrum för svenska substantiv. (notera att dessa börjar med gemen)
  3. Rubriker som gäller en rad/kolumn (eller grupp av dem). ! gör att rutan får färgad bakgrund.
    • Exempel på sådana rubriker är Obestämd, Plural, Femininum eller Ackusativ. (notera att dessa börjar med versal)
  4. Skapar ny rad i tabellen.
  5. Se 3.
  6. De faktiska böjningsformerna av ordet. | gör bakgrunden vit.
    • Här måste du antagligen infoga en algoritm som är unik för just din mall. Det kan vara så simpelt som {{g-cell|sv|{{{grundform|{{PAGENAME}}}}}s}}, eller mycket, mycket krångligare.
    • Kom ihåg att det är bra att tillåta parametrarna grundform= och 1= istället för att enbart ta {{PAGENAME}}.
    • Böjningsformen ska länkas automatiskt, men använd inte vanliga wikilänkar. Använd {{g-cell|språkkod|böjning}} istället för [[böjning]] ({{g-cell}} har många finesser vilka du kan läsa om på mallsidan).
  7. Avslutar en grammatiktabell - och innehåller alltså |}. Kopiera mer eller mindre rakt av, men ändra:
    • 2 i exemplet till antalet kolumner i din tabell.
    • Svenska i exemplet till språket för din tabell. (kom ihåg att använda versal första bokstav!)
    • Substantiv i exemplet till ordklassen för din tabell. (kom ihåg att använda versal första bokstav!)

Förmodligen är det enklaste sättet att skapa en ny mall är att kopiera en befintlig mall som är mycket lik mallen du vill skapa och göra nödvändiga ändringar. Du kan se på Wiktionary:Projekt/Mallar vilka som är markerade med . Dessa ska vara fullt anpassade till den standard som grammatikmallar helst bör följa.

Detaljinformation redigera

Gömbara tabeller: {{grammatik-start-göm}} och {{grammatik-slut-göm}} redigera

Vissa grammatiktabeller innehåller väldigt mycket information, så mycket att det blir störande på uppslaget. I dessa fall kan man välja att minimera tabellen genom att byta ut {{grammatik-start}} mot {{grammatik-start-göm}}, och detsamma för slutet.

1:   <noinclude>{{grammatik-dok|Svenska|Pronomen}}{{#invoke:categorize|getTemplateWikitext}}</noinclude><includeonly>
2:   {{grammatik-start-göm|10|{{{fakta|X}}}|sv-pron-pers|Tabell över pronomen|lang=sv|h3=pron}}
XX:  ...
XX:  resten av tabellkoden
114: {{grammatik-slut-göm|10|{{{not|}}}|{{{förled|}}}}}
115: {{#invoke:categorize|getMainWikitext|sv|pron}}</includeonly>
Förklaring
  1. Det mesta är som för vanliga tabeller. Det som skiljer sig är:
  • mallen är utbytt mot {{grammatik-start-göm}}
  • Tabell över pronomen - valfritt - om rubriken till tabellen behöver vara något annat än "Böjningar av {sidnamn}" anges det här.
  • Det som skiljer sig från vanliga tabeller är:
  • Väldigt bred tabell: bredd= redigera

    Det finns de grammatiktabeller som behöver väldigt mycket utrymme, och där det blir fult om webbläsaren försöker komprimera ihop det. I dessa fall kan man använda parametern bredd= till {{grammatik-start-göm}}[1]

    1:	<noinclude>{{grammatik-dok|Svenska|Pronomen}}</noinclude><includeonly>{{grammatik-start-göm|10|{{{fakta|X}}}|sv-pron-pers|Tabell över pronomen|bredd=}}
    
    Förklaring
    1. Som för andra tabeller. Det som skiljer sig är:
      • bredd= - anges för att göra tabellen tillräckligt stor. Man kan också specificera en särskild bredd (i px) som webbläsaren kommer försöka följa om innehållet får plats, men oftast behövs inte bredd= alls i sådana fall.


    Rutor som behöver variabel bredd: class="min" redigera

    Förklaring av användning
    Vissa rutor har automatiskt class="min".
    !class="main"|
    Ruta till huvudrubrik
    |
    Ruta för böjningar
    !
    Mindre rubrikruta
    För huvudrubriks- och böjningsrutor:

    Om rutan skulle vara bredare än en standardruta (pga. att den använder colspan), lägg till class="min". Alltså något av följande:
    !colspan="3" class="main min"|...
    |colspan="4" class="min"|...

    Använd aldrig class="min" här eftersom dessa rutor har "min" automatiskt.

    Oftast behöver class="min" inte användas. Är du osäker, strunta i det (eller be någon om hjälp) - det blir inga allvarliga layoutfel.

    Tekniskt: Ofta är det praktiskt att ha en bestämd bredd på tabellcellerna, men då colspan används ger detta konstiga layoutfel. class="min" gör att cellen får width:auto (dvs. webbläsaren avgör själv lagom bredd). Detta sker automatiskt för de flesta webbläsare och detta är enbart en fix för Internet Explorer 6 och tidigare.

    Förklaring för när class="min" bör användas finns till höger.

    1. Parametern bredd= går även att använda till {{grammatik-start}}, men om tabellen är så stor att det behövs bör den troligen gömmas som default.