Moduuli:kieliaakkostus/hu

Wikisanakirjasta

Tämän moduulin ohjeistuksen voi tehdä sivulle Moduuli:kieliaakkostus/hu/ohje

-- unkari
local hu = {}
function hu.lajittelumuotoon(isanta, sana)
    return isanta.yksinkertaista_sana(sana, "abcdefghijklmnopqrstuvwxyz")
end

function hu.lajittelukirjaimiksi(isanta, sana, n)
    n = n or 2
    local b = 0
    local p = 1
    while p <= n do
        -- "konsonanttiyhtymät cs, dz, dzs, gy, ly, ny, sz, zs aakkostetaan yhdeksi kirjaimeksi"
	    if mw.ustring.sub(sana, p, p+1) == 'cs' then n = n + 1; p = p + 1 
	    elseif mw.ustring.sub(sana, p, p+2) == 'dzs' then n = n + 2; p = p + 2 
	    elseif mw.ustring.sub(sana, p, p+1) == 'dz' then n = n + 1; p = p + 1 
	    elseif mw.ustring.sub(sana, p, p+1) == 'gy' then n = n + 1; p = p + 1 
	    elseif mw.ustring.sub(sana, p, p+1) == 'ly' then n = n + 1; p = p + 1 
	    elseif mw.ustring.sub(sana, p, p+1) == 'ny' then n = n + 1; p = p + 1 
	    elseif mw.ustring.sub(sana, p, p+1) == 'sz' then n = n + 1; p = p + 1 
	    elseif mw.ustring.sub(sana, p, p+1) == 'zs' then n = n + 1; p = p + 1 
	    end
	    p = p + 1
    end

    sana = hu.lajittelumuotoon(isanta, sana)
    return mw.ustring.sub(sana, 1, n + b), mw.ustring.sub(sana, n + b + 1)
end

return hu