Difference between revisions 18626546 and 18626547 on frwiktionary

local languages = mw.loadData("Module:languages")
local export = {}

-- transliterate the text, if possible
function export.translit(lang, text)
    -- TODO: the table's information should be moved to [[Module:languages]]
    local translit_modules = {
        ["ae"] = "Module:Avst-translit",
(contracted; show full)
    NAMESPACE = NAMESPACE or mw.title.getCurrentTitle().nsText
    
    if NAMESPACE == "" or NAMESPACE == "Appendix" then
        PAGENAME = PAGENAME or mw.title.getCurrentTitle().text
        SUBPAGENAME = SUBPAGENAME or mw.title.getCurrentTitle().subpageText
        
        -- Generate a default language-independent sort key
        sort_base = mw.ustring.
lowergsub(mw.ustring.gsublower(sort_base or SUBPAGENAME), "^[-־ـ*]", ""):gsub("[()]", "")
        
        -- If there are language-specific rules to generate the key, use those
        if langinfo.sort_key then
            for i, from in ipairs(langinfo.sort_key.from) do
                local to = langinfo.sort_key.to[i] or ""
                sort_base = mw.ustring.gsub(sort_base, from, to)
            end
        end
        
        if sort_key then
            -- Gather some statistics regarding sort keys
            if mw.ustring.lower(sort_key) == sort_base then
                table.insert(categories, "Sort key tracking/redundant")
            elseif lang ~= "cmn" and lang ~= "ja" and lang ~= "zu" and lang ~= "nan" and lang ~= "yue" then
                if lang == "ga" or lang == "gv" or lang == "nv" or lang == "roa-jer" or lang == "fr" or lang == "rm" or lang == "prg" then
                    table.insert(categories, "Sort key tracking/needed/" .. lang)
                else
                    table.insert(categories, "Sort key tracking/needed")
                end
            end
        else
            sort_key = sort_base
(contracted; show full)        i = i + 1
        cat = args[i]
    end
    
    return export.format_categories(categories, lang, sort_key)
end

return export