Modul:lif-headword

local export = {}
local pos_functions = {}
local links = require('Module:links')
local labels = require('Module:labels')
local m_scripts = require("Module:scripts")

local lang = require('Module:languages').getByCode('lif')
local PAGENAME = mw.title.getCurrentTitle().text
local current_script = lang:findBestScript(PAGENAME)

local Deva_Limb_translit = require('Module:Deva-Limb-translit')
local Limb_Deva_translit = require('Module:Limb-Deva-translit')
local function track(page)
	require("Module:debug").track("lif-headword/" .. page)
end
function export.show(frame)
	local args = require('Module:parameters').process(frame:getParent().args,{
		['g'] = {default = '?'},
		['head'] = {},
        ["tr"] = {list = true, allow_holes = true},
	})
	local poscat = frame.args[1] or error('Golongan kata belum ditentukan. Sila lepasi parameter 1 ke penyeruan modul.')
	
	local data = {lang = lang, sc = current_script, pos_category = poscat, categories = {poscat .. ' bahasa Limbu dalam ' .. current_script:getCategoryName()}, heads = {args['head'] or PAGENAME}, genders = {}, translits = args["tr"],  inflections = {}}
	
	if poscat == 'kata nama' or poscat == 'kata nama khas' then
		if args['g'] == 'm' or args['g'] == 'f' then
			table.insert(data.genders, args['g'])
		else
			table.insert(data.genders, '?')
		end
	end
		if #data.translits > 0 then
		track("manual-translit/" .. poscat)
	end
	if current_script:getCode() == 'Deva' then
		table.insert(data.inflections, {label = 'ejaan Limbu', Deva_Limb_translit.tr(head or PAGENAME, lang, m_scripts.getByCode('Deva'))})
	end
	if current_script:getCode() == 'Limb' then
		table.insert(data.inflections, {label = 'ejaan Deva', Limb_Deva_translit.tr(head or PAGENAME, lang, m_scripts.getByCode('Limb'))})
	end
	return require('Module:headword').full_headword(data)
end

return export