Мазмунга өтүү

Модуль:тактооч

Wiktionary долбоорунан

Documentation for this module may be created at Модуль:тактооч/doc

local p = {}

function p.render(frame)
    local args = frame.args
    local word = args['сөз'] or mw.title.getCurrentTitle().text
    
    -- Түрлөрү үчүн кыска коддор жана шилтемелер
    local type_map = {
        ['мезгил'] = '[[мезгил бышыктагыч тактооч|Мезгил тактооч]]',
        ['орун']   = '[[орун бышыктагыч тактооч|Орун тактооч]]',
        ['себеп']  = '[[себеп бышыктагыч тактооч|Себеп тактооч]]',
        ['максат'] = '[[максат бышыктагыч тактооч|Максат тактооч]]',
        ['сыпат']  = '[[сын-сыпат аныктагыч тактооч|Сын-сыпат тактооч]]',
        ['сан']    = '[[сан-өлчөм аныктагыч тактооч|Сан-өлчөм тактооч]]'
    }
    
    -- Жасалышы үчүн шилтемелер
    local making_map = {
        ['тубаса'] = '[[тубаса тактооч|Тубаса]]',
        ['туунду'] = '[[туунду тактооч|Туунду]]'
    }

    -- Дизайнды тазалоо (рамкасыз, кадимки текст түрүндө)
    local res = '<div style="margin-bottom: 15px; font-size: 100%; line-height: 1.6;">'
    res = res .. "'''" .. word .. "'''\n\n"
    res = res .. "'''[[тактооч|Тактооч]]'''\n"
    
    -- Муундар жана уңгу
    if args['муундар'] and args['муундар'] ~= "" then
        res = res .. "* Муундарга бөлүнүшү: '''" .. mw.ustring.gsub(args['муундар'], "|", "-") .. "'''\n"
    end
    res = res .. "* Уңгу: '''-" .. word .. "-'''\n"
    
    -- Маанилик тобу (Кыска коддорду колдонуу)
    local type_val = args['түрү']
    if type_val and type_val ~= "" then
        local linked_type = type_map[mw.ustring.lower(type_val)] or type_val
        res = res .. "* Маанилик тобу: " .. linked_type .. "\n"
    end
    
    -- Жасалышы (Шилтемелер жана мүчөлөр менен)
    local making_val = args['жасалышы']
    if making_val and making_val ~= "" then
        local linked_making = making_map[mw.ustring.lower(making_val)] or making_val
        if args['мүчө'] and args['мүчө'] ~= "" then
            linked_making = linked_making .. " ('''" .. args['мүчө'] .. "''' мүчөсү аркылуу)"
        end
        res = res .. "* Жасалышы: " .. linked_making .. "\n"
    end
    
  -- Даражалары бөлүмү (Күчөтмө жана Басаңдатма гана)
if (args['күчөтмө'] and args['күчөтмө'] ~= "") or 
   (args['басаңдатма'] and args['басаңдатма'] ~= "") then
    
    res = res .. "'''[[даража|Даражалары]]''':\n"
    
    if args['күчөтмө'] and args['күчөтмө'] ~= "" then
        res = res .. "*Күчөтмө: " .. args['күчөтмө'] .. "\n"
    end
    
    if args['басаңдатма'] and args['басаңдатма'] ~= "" then
        res = res .. "*Басаңдатма: " .. args['басаңдатма'] .. "\n"
    end
end

    res = res .. "</div>"
    
    -- Категориялар
    res = res .. "[[Категория:Кыргыз тили]] [[Категория:Кыргыз тактоочтор]]"
    
    return res
end

return p