Modül:bo-alfabeçeviri

Merhaba, buraya Modül:bo-alfabeçeviri kelimesinin anlamını aramaya geldiniz. DICTIOUS'da Modül:bo-alfabeçeviri kelimesinin tüm sözlük anlamlarını bulmakla kalmayacak, aynı zamanda etimolojisini, özelliklerini ve Modül:bo-alfabeçeviri kelimesinin tekil ve çoğul olarak nasıl söylendiğini de öğreneceksiniz. Modül:bo-alfabeçeviri kelimesi hakkında bilmeniz gereken her şey burada. Modül:bo-alfabeçeviri kelimesinin tanımı, konuşurken veya metinlerinizi yazarken daha kesin ve doğru olmanıza yardımcı olacaktır. XXX'in ve diğer kelimelerin tanımını bilmek, kelime dağarcığınızı zenginleştirir ve size daha fazla ve daha iyi dilsel kaynaklar sağlar.
Modül belgelemesi


local export = {}
local gsub = mw.ustring.gsub
local match = mw.ustring.match

local conv = {
	 = "k",  = "kh",  = "g",  = "ng", 
	 = "c",  = "ch",  = "j",  = "ny", 
	 = "t",  = "th",  = "d",  = "n", 
	 = "p",  = "ph",  = "b",  = "m", 
	 = "ts",  = "tsh",  = "dz",  = "w", 
	 = "zh",  = "z",  = "‘",  = "y", 
	 = "r",  = "l",  = "sh",  = "s", 
	 = "h",  = "a", 
	 = "ṭ",  = "ṭh",  = "ḍ",  = "ṇ",  = "ṣ", 
	
	 = "i", 
	 = "u", 
	 = "e", 
	 = "o", 
	 = "ā", 
	 = "ī", 
	 = "ū", 
	 = "ai", 
	 = "au", 
	 = "ṛ", 
	 = "ṝ", 
	 = "ḷ", 
	 = "ḹ", 
	 = "ṃ", 
	 = "ṃ", 
	 = "aḥ", 
	 = "oṃ",
	
	 = "k",  = "kh",  = "g",  = "ng", 
	 = "c",  = "ch",  = "j",  = "ny", 
	 = "t",  = "th",  = "d",  = "n", 
	 = "p",  = "ph",  = "b",  = "m", 
	 = "ts",  = "tsh",  = "dz",  = "w", 
	 = "zh",  = "z",  = "‘",  = "y", 
	 = "r",  = "l",  = "sh",  = "s", 
	 = "h",  = "a", 
	 = "ṭ",  = "ṭh",  = "ḍ",  = "ṇ",  = "ṣ"
}

local symbol = {
	 = "0",  = "1",  = "2",  = "3",  = "4",
	 = "5",  = "6",  = "7",  = "8",  = "9",
	 = "0.5",  = "1.5",  = "2.5",  = "3.5",  = "4.5", 
	 = "5.5",  = "6.5",  = "7.5",  = "8.5",  = "9.5",
	 = " ",  = "·",  = "'",
}

function export.tr(text, lang, sc, debug_mode)
	text = gsub(text, "+ ?", "་")
	text = gsub(text, "+$", "")
	text = gsub(text, "()(འ)", "%1་‘་%2")
	
	for Tibetan_word in mw.ustring.gmatch(text, "+") do
		Tibetan_word = gsub(Tibetan_word, "་$", "")
		
		for syllable in mw.ustring.gmatch(Tibetan_word, "+") do
			local tr = {}

			local syl = gsub(syllable, "ཨ()", "%1")
			syl = gsub(syl, "(+)(*)$", "%1a%2")
			letter = mw.text.split(syl, "", true)
			
			for i = 1, #letter do
				tr = conv] or letter
			end

			if not match(syllable,"") then
				if #letter < 5 then
					if #letter > 3 then
						if letter ~= "འ" and letter ~= "འ" then
							table.insert(tr, 3, "a")
						end
						
					elseif #letter > 2 then
						if letter == "འ" then
							if letter == "འ" then
								tr = { "‘", tr, "a", "‘" }
							else
								tr = { tr, tr, "a", "‘" }
							end
							
						elseif not match(letter, "") or (match(letter..letter..letter, "ས")) then
							table.insert(tr, 2, "a")
						else
							table.insert(tr, 3, "a")
						end
						
					elseif match(letter, "") and not match(letter or "", "") then
						table.insert(tr, "a")
					else
						table.insert(tr, 2, "a")
					end
				end
			end
		
			tr = table.concat(tr)
			
			if match(syllable, "གཡ") then
				tr = gsub(tr, "gy", "g.y")
			end
			
			text = gsub(text, syllable, tr, 1)
		end
	end
	
	text = gsub(text, ".", symbol)
	text = gsub(text, " ' ", "")
	text = gsub(text, " *· *·? *", " · ")
	text = gsub(text, " *%.", ".")
	
	if match(text, "") and not debug_mode then
		return nil
	else
		return text
	end
end

return export