Module:translit-redirect

Wiktionary වෙතින්

This module replaces transliteration modules that don't generate transliteration. It takes language and script code and redirects to the actual transliteration module that handles this combination of codes, using Module:translit-redirect/data. It has replaced transliteration modules like Module:pa-translit. Languages whose transliteration is handled by this module: Abaza (abq), Abkhaz (ab), Adyghe (ady), Aramaic (arc), Ashokan Prakrit (inc-ash), Avar (av), Balti (bft), Bhojpuri (bho), Blin (byn), Bokar (sit-bok), Brokkat (bro), Buryat (bua), Chechen (ce), Classical Mongolian (cmg), Classical Tibetan (xct), Cree (cr), Daur (dta), Dogri (doi), Dukhan (trk-dkh), Gahri (bfu), Idu (clk), Ingush (inh), Inuktitut (iu), Kabardian (kbd), Kachchi (kfr), Kalaktang Monpa (kkf), Khamnigan Mongol (ykh), Khwarezmian (xco), Kipchak (qwm), Konkani (kok), Kurtöp (xkz), Laz (lzz), Lomavren (rmi), (khb), Maithili (mai), Manangba (nmm), Manipuri (mni), Marwari (mwr), Middle Mongol (xng), Middle Persian (pal), Newar (new), Nyenkha (neh), Old English (ang), Old Georgian (oge), Old Marathi (omr), Old Norse (non), Old Punjabi (inc-opa), Olekha (ole), Parthian (xpr), Phoenician (phn), Punic (xpu), Punjabi (pa), Rohingya (rhg), Saraiki (skr), Sherpa (xsr), Sogdian (sog), Tshangla (tsj), Tulu (tcy), Udi (udi), Varhadi (vah), Wakhi (wbl), Western Kayah (kyu), කාෂ්මීරි (ks), දිවෙහි (dv), ප්‍රාකෘත (inc-pra), පාලි (pi), පුරාතන ග්‍රීක (grc), මරාථි (mr), මොංගෝලියානු (mn), සංස්කෘත (sa), සින්ධි (sd).

Using a single module to redirect to other transliteration modules will save some Lua memory on pages that tend to go over the memory limit. Also, the template that generates documentation for transliteration modules ({{translit module documentation}}) can only discover that a language uses a transliteration module, and list that language on the transliteration module's documentation page, if the transliteration module is listed either in the language's data file, or in Module:translit-redirect/data.

Examples[සංස්කරණය]

pa (Punjabi) uses this module to redirect to the correct transliteration module for whatever script is being used.


local export = {}

function export.tr(text, lang, sc, debug_mode)
	if not sc then
		sc = require("Module:languages").getByCode(lang):findBestScript(text):getCode()
	end
	
	local language_data = mw.loadData("Module:translit-redirect/data")[lang]
	
	if language_data then
		local script_data = language_data[sc]
		
		if script_data then
			if script_data.module then
				local success, translit_module = pcall(require, "Module:" .. script_data.module)
			
				if success then
					return translit_module.tr(text, lang, sc, debug_mode)
				else
					error(translit_module)
				end
			else
				return nil
			end
		elseif sc ~= "Latn" then
			require("Module:debug").track{
				"translit-redirect/incorrect-script/" .. lang,
				"translit-redirect/incorrect-script/" .. lang .. "/" .. sc,
			}
			mw.log("script code (" .. sc .. ") for language code " .. lang .. " not found in Module:translit-redirect/data; text: " .. text)
		end
	end
end

return export
"https://si.wiktionary.org/w/index.php?title=Module:translit-redirect&oldid=29662" වෙතින් සම්ප්‍රවේශනය කෙරිණි