Module:En2bndigit

From Wikimedia Commons, the free media repository
Jump to navigation Jump to search
Lua

CodeDiscussionEditHistoryLinksLink count Subpages:DocumentationTestsResultsSandboxLive code All modules

Translates numbers, dates and months from English to Bengali language

অন্য একটি মডিউল থেকে কল করে ব্যবহার:

local converter = require('মডিউল:En2bndigit')
local text = '12:30, 29 April 2015'
text = converter._main(text)
-- তাহলে এখানে text-এর ফলাফল আসবে "১২:৩০, ২৯ এপ্রিল ২০১৫"

#invoke থেকে কল করা (উপরের মত ফলাফল আসবে):

{{#invoke:En2bndigit|main|12:30, 29 April 2015}} ফলাফল → ১২:৩০, ২৯ এপ্রিল ২০১৫

Code

-- Return input text after converting any en digits and month names.

local en_digits = {
	['0'] = '০',
	['1'] = '১',
	['2'] = '২',
	['3'] = '৩',
	['4'] = '৪',
	['5'] = '৫',
	['6'] = '৬',
	['7'] = '৭',
	['8'] = '৮',
	['9'] = '৯',
}

local en_months = {
	['January'] = 'জানুয়ারি',
	['january'] = 'জানুয়ারি',
	['February'] = 'ফেব্রুয়ারি',
	['february'] = 'ফেব্রুয়ারি',
	['March'] = 'মার্চ',
	['march'] = 'মার্চ',
	['April'] = 'এপ্রিল',
	['april'] = 'এপ্রিল',
	['May'] = 'মে',
	['may'] = 'মে',
	['June'] = 'জুন',
	['june'] = 'জুন',
	['July'] = 'জুলাই',
	['july'] = 'জুলাই',
	['August'] = 'আগস্ট',
	['august'] = 'আগস্ট',
	['September'] = 'সেপ্টেম্বর',
	['september'] = 'সেপ্টেম্বর',
	['October'] = 'অক্টোবর',
	['october'] = 'অক্টোবর',
	['November'] = 'নভেম্বর',
	['november'] = 'নভেম্বর',
	['December'] = 'ডিসেম্বর',
	['december'] = 'ডিসেম্বর',
}

local function _main(input)
	-- Callable from another module.
	input = input or ''
	return (input:gsub('%a+', en_months):gsub('%d', en_digits))
end

local function main(frame)
	-- Callable from #invoke or from a template.
	return _main(frame.args[1] or frame:getParent().args[1])
end

return { main = main, _main = _main }