پودمان:Numeral converter2
این پودمان همان کپی قسمت تبدیل رقمِ پودمان:Numeral converter است، با این تفاوت که فقط جایگزینی ارقام را انجام میدهد و نقطه را به «٫» تغییر نمیدهد، زیرا این کار شناسههایی نظیر Bibcode را دچار مشکل میکند. همچنین عبارت ISBN
را از سرِ رشتهها حذف میکند (این کار به دلیل داده شدن شابک با پیشوند ISBN در الگوهای قدیمی یادکرد فارسی، که در کار پودمانهای یادکرد اختلال ایجاد میکند انجام شده).
local p = {} -- Use this function from templates. function p.convert_template(frame) -- Third argument is optional; If true given, signs like dot (.) will be replaced. frame.args[3] = frame.args[3] or nil return p.convert(frame.args[1], frame.args[2], frame.args[3]) end -- Use these function directly in modules. function p.convert(lang, text, signs, virgule) text = tostring(text) signs = signs or nil virgule= virgule or nil if lang == "fa" or lang == "ur" or lang == "mzn" or lang == "glk" then -- برای فارسی، اردو، مازندرانی، گیلکی text = mw.ustring.gsub(text, "[0٠]", "۰") text = mw.ustring.gsub(text, "[1١]", "۱") text = mw.ustring.gsub(text, "[2٢]", "۲") text = mw.ustring.gsub(text, "[3٣]", "۳") text = mw.ustring.gsub(text, "[4٤]", "۴") text = mw.ustring.gsub(text, "[5٥]", "۵") text = mw.ustring.gsub(text, "[6٦]", "۶") text = mw.ustring.gsub(text, "[7٧]", "۷") text = mw.ustring.gsub(text, "[8٨]", "۸") text = mw.ustring.gsub(text, "[9٩]", "۹") -- text = mw.ustring.gsub(text, "ISBN ", "") --تبدیل نقطه به «٫» را به دلیل ایجاد مشکل در فارسیسازی برخی شناسهها که نقطه دارند حذف کردم if type(signs) ~= "nil" then text = mw.ustring.gsub(text, "%.", "٫") --تبدیل % به درصد فارسی ٪ را نگذاشتم چون ممکن است کدهای درصدی وارد شده به پودمان را خراب کند. end elseif lang == "en" then -- تبدیل به انگلیسی text = mw.ustring.gsub(text, "[۰٠]", "0") text = mw.ustring.gsub(text, "[۱١]", "1") text = mw.ustring.gsub(text, "[۲٢]", "2") text = mw.ustring.gsub(text, "[۳٣]", "3") text = mw.ustring.gsub(text, "[۴٤]", "4") text = mw.ustring.gsub(text, "[۵٥]", "5") text = mw.ustring.gsub(text, "[۶٦]", "6") text = mw.ustring.gsub(text, "[۷٧]", "7") text = mw.ustring.gsub(text, "[۸٨]", "8") text = mw.ustring.gsub(text, "[۹٩]", "9") text = mw.ustring.gsub(text, "٫", ".") text = mw.ustring.gsub(text, "٪", "%") end return text end return p