सामग्री पर जाएँ

मॉड्यूल:DevanagariNumerals

विकिपीडिया से

इस मॉड्यूल हेतु प्रलेख मॉड्यूल:DevanagariNumerals/doc पर बनाया जा सकता है

local p = {}

function p.convert(frame)
    local input = tostring(frame.args[1] or frame.args.num or "")
    
    -- Numeral mapping
    local numerals = {
        ['0'] = '०',
        ['1'] = '१',
        ['2'] = '२',
        ['3'] = '३',
        ['4'] = '४',
        ['5'] = '५',
        ['6'] = '६',
        ['7'] = '७',
        ['8'] = '८',
        ['9'] = '९'
    }
    
    -- Convert each digit
    local output = input:gsub("%d", numerals)
    
    return output
end

-- Function to convert back to Western numerals if needed
function p.toWestern(frame)
    local input = tostring(frame.args[1] or "")
    
    local numerals = {
        ['०'] = '0',
        ['१'] = '1',
        ['२'] = '2',
        ['३'] = '3',
        ['४'] = '4',
        ['५'] = '5',
        ['६'] = '6',
        ['७'] = '7',
        ['८'] = '8',
        ['९'] = '9'
    }
    
    local output = input:gsub("[०-९]", numerals)
    
    return output
end

return p