Modul:grammar-example

Definition från Wiktionary, den fria ordlistan.
Hoppa till navigering Hoppa till sök

Dokumentation för denna modul finns på /dok (redigera), /test


Syfte[redigera]

Visa på ett mycket begränsat exempel på hur en grammatikmodul bör använda Modul:grammar som basmodul.

local gt = require("Modul:grammar-table")
local export = require("Modul:grammar")

local lang_code_param = "xx" --byt ut xx mot modulens språkkod

function export._getAcceptedParameters()
	return {}
end

function export._getForms(pagename, templatename, args, meta, format)
	local base            = pagename          -- exempel 
	local plural          = pagename .. "a"   -- exempel
	local plural_genitive = pagename .. "ar"  -- exempel

	local forms = {}
	forms.form_1 = args[1] or base            -- byt ut form_1 och base
	forms.form_2 = args[2] or plural          -- byt ut form_2 och plural
	forms.form_3 = args[3] or base            -- byt ut form_3 och base
	forms.form_4 = args[4] or plural_genitive -- byt ut form_4 och plural_genitive

	if format == "wikitable" or format == "export" then
		local not_exists_representation = format == "wikitable" and "-" or nil
		local some_condition_is_true    = true        -- exempel
		
		if some_condition_is_true then                -- exempel
			forms.form_4 = not_exists_representation  -- exempel
		end                                           -- exempel
	end

	return forms
end

function export._getMeta(pagename, templatename, args)
	local meta = {}
	meta.numbered_cells       = 4  -- obligatorisk uppgift - byt ut 4 mot korrekt antal numrerade celler.
	meta.named_cells          = {} -- obligatorisk uppgift - byt ut mot {"namngiven cell 1"} om det finns en namngiven cell som heter "namngiven cell 1". Bör användas sparsamt, t ex för icke-böjningsformer. 
	
	return meta;
end

function export._getWikitable(forms, meta)
	local number_of_columns         = 1 -- byt 1 mot korrekt antal tabellkolumner
	local contains_a_quality_notice = not not meta.quality_notice

	gt.setLanguage(lang_code_param)

	local str = gt.getStart(number_of_columns, meta.templatename, contains_a_quality_notice, meta.pagename, meta.width)
	str = str .. gt.getRow('innehåll') -- byt ut innehåll för varje rad i tabellen
	str = str .. gt.getEnd()

	return str
end

function export._getCategories(forms, meta)
	local str = ""

	return str
end

return export