Module:ti-conj

Hello, you have come here looking for the meaning of the word Module:ti-conj. In DICTIOUS you will not only get to know all the dictionary meanings for the word Module:ti-conj, but we will also tell you about its etymology, its characteristics and you will know how to say Module:ti-conj in singular and plural. Everything you need to know about the word Module:ti-conj you have here. The definition of the word Module:ti-conj will help you to be more precise and correct when speaking or writing your texts. Knowing the definition ofModule:ti-conj, as well as those of other words, enriches your vocabulary and provides you with more and better linguistic resources.


local m_g = require('Module:gender and number')

local export = {}
function export.default(frame)
	do
		local args = frame:getParent().args
		local tablo = frame:expandTemplate{
			title = 'inflection-table-top',
			args = {
				title = "Conjugation of " .. mw.title.getCurrentTitle().text,
				palette = 'red',
				tall = 'yes',
			}
		} .. [[
		{| class="wikitable"
! colspan="3" | infinitive
| {{{infinitive}}}
| class="blank-end-row" colspan="9" | 
|-
| class="separator" colspan="4" | 
| class="separator" colspan="1" rowspan="1" | 
| class="separator" colspan="4" | 
|-
! colspan="4" class="outer" | perfect
| class="separator" rowspan="7" | 
! colspan="4" class="outer" | gerundive
|-
! colspan="2" | 
! singular
! plural
! colspan="2" | 
! singular
! plural
|-
! colspan="2" | 1st
| {{{perfect_1s}}}
| {{{perfect_1p}}}
! colspan="2" | 1st
| {{{gerundive_1s}}}
| {{{gerundive_1p}}}
|-
! rowspan="2" style="text-align: center;" | 2nd
! class="secondary" | {{{m}}}
| {{{perfect_2sm}}}
| {{{perfect_2pm}}}
! rowspan="2" | 2nd
! class="secondary" | {{{m}}}
| {{{gerundive_2sm}}}
| {{{gerundive_2pm}}}
|-
! class="secondary" | {{{f}}}
| {{{perfect_2sf}}}
| {{{perfect_2pf}}}
! class="secondary" | {{{f}}}
| {{{gerundive_2sf}}}
| {{{gerundive_2pf}}}
|-
! rowspan="2" | 3rd
! class="secondary" | {{{m}}}
| {{{perfect_3sm}}}
| {{{perfect_3pm}}}
! rowspan="2" | 3rd
! class="secondary" | {{{m}}}
| {{{gerundive_3sm}}}
| {{{gerundive_3pm}}}
|-
! class="secondary" | {{{f}}}
| {{{perfect_3sf}}}
| {{{perfect_3pf}}}
! class="secondary" | {{{f}}}
| {{{gerundive_3sf}}}
| {{{gerundive_3pf}}}
|-
| class="separator" colspan="4" | 
| class="separator" colspan="1" rowspan="1" | 
| class="separator" colspan="4" | 
|-
! colspan="4" class="outer" | imperfect
| class="separator" rowspan="7" | 
! colspan="4" class="outer" | jussive
|-
! colspan="2" | 
! singular
! plural
! colspan="2" | 
! singular
! plural
|-
! colspan="2" style="text-align: center;" | 1st
| {{{imperfect_1s}}}
| {{{imperfect_1p}}}
! colspan="2" style="text-align: center;" | 1st
| {{{jussive_1s}}}
| {{{jussive_1p}}}
|-
! rowspan="2" | 2nd
! class="secondary" | {{{m}}}
| {{{imperfect_2sm}}}
| {{{imperfect_2pm}}}
! rowspan="2" | 2nd
! class="secondary" | {{{m}}}
| {{{jussive_2sm}}}
| {{{jussive_2pm}}}
|-
! class="secondary" | {{{f}}}
| {{{imperfect_2sf}}}
| {{{imperfect_2pf}}}
! class="secondary" | {{{f}}}
| {{{jussive_2sf}}}
| {{{jussive_2pf}}}
|-
! rowspan="2" | 3rd
! class="secondary" | {{{m}}}
| {{{imperfect_3sm}}}
| {{{imperfect_3pm}}}
! rowspan="2" | 3rd
! class="secondary" | {{{m}}}
| {{{jussive_3sm}}}
| {{{jussive_3pm}}}
|-
! class="secondary" | {{{f}}}
| {{{imperfect_3sf}}}
| {{{imperfect_3pf}}}
! class="secondary" | {{{f}}}
| {{{jussive_3sf}}}
| {{{jussive_3pf}}}
|-
| class="separator" colspan="4" | 
| class="separator" colspan="1" rowspan="1" | 
| class="separator" colspan="4" | 
|-
! colspan="4" class="outer" | affirmative commands
| class="separator" rowspan="4" | 
! colspan="4" class="outer" | negative commands
|-
! colspan="2" | 
! style="text-align: center;" | singular
! style="text-align: center;" | plural
! colspan="2" | 
! style="text-align: center;" | singular
! style="text-align: center;" | plural
|-
! rowspan="2" | 2nd
! class="secondary" | {{{m}}}
| {{{imperative_2sm}}}
| {{{imperative_2pm}}}
! rowspan="2" | 2nd
! class="secondary" | {{{m}}}
| {{{imperative_2smN}}}
| {{{imperative_2pmN}}}
|-
! class="secondary" | {{{f}}}
| {{{imperative_2sf}}}
| {{{imperative_2pf}}}
! class="secondary" | {{{f}}}
| {{{imperative_2sfN}}}
| {{{imperative_2pfN}}}
]] .. frame:expandTemplate{ title = 'inflection-table-bottom' }

		if args ~= nil
		then
		local t = {}
		-- perfect conjugations ገበረ
		t = string.format("mə %s %sa %s", args, args, args)
		t = string.format("%sä %sä %s ku",args, args, args)
		t = string.format("%sä %sä %s na",args, args, args)
		t = string.format("%sä %sä %s ka",args, args, args)
		t = string.format("%sä %sä %s kum",args, args, args)
		t = string.format("%sä %sä %s ki",args, args, args)
		t = string.format("%sä %sä %s kən",args, args, args)
		t = string.format("%sä %sä %sä",args, args, args)
		t = string.format("%sä %sä %su",args, args, args)
		t = string.format("%sä %sä %sä t",args, args, args)
		t = string.format("%sä %sä %sa",args, args, args)
		
		--gerundive conjugations ገቢሩ
		t = string.format("%sä %si %sä",args, args, args)
		t = string.format("%sä %si %s na",args, args, args)
		t = string.format("%sä %si %s ka",args, args, args)
		t = string.format("%sä %si %s kum",args, args, args)
		t = string.format("%sä %si %s ki",args, args, args)
		t = string.format("%sä %si %s kən",args, args, args)
		t = string.format("%sä %si %su",args, args, args)
		t = string.format("%sä %si %som",args, args, args)
		t = string.format("%sä %si %sa",args, args, args)
		t = string.format("%sä %si %sän",args, args, args)
		
		--imperfect conjugations ይገብር
		t = string.format("ʾə %sä %s %sə %s",args, args, args, args)
		t = string.format("nə %sä %s %sə %s",args, args, args, args)
		t = string.format("tə %sä %s %sə %s",args, args, args, args)
		t = string.format("tə %sä %s %su",args, args, args)
		t = string.format("tə %sä %s %si",args, args, args)
		t = string.format("tə %sä %s %sa",args, args, args)
		t = string.format("yə %sä %s %sə %s",args, args, args, args)
		t = string.format("yə %sä %s %su",args, args, args)
		t = string.format("tə %sä %s %sə %s",args, args, args, args)
		t = string.format("yə %sä %s %sa",args, args, args)
		
		--jussive conjugations ይግበር
		t = string.format("ʾə %s %sä %s", args, args, args)
		t = string.format("nə %s %sä %s", args, args, args)
		t = string.format("tə %s %sä %s", args, args, args)
		t = string.format("tə %s %sä %su", args, args, args)
		t = string.format("tə %s %sä %si", args, args, args)
		t = string.format("tə %s %sä %sa", args, args, args)
		t = string.format("yə %s %sä %s", args, args, args)
		t = string.format("yə %s %sä %su", args, args, args)
		t = string.format("tə %s %sä %s", args, args, args)
		t = string.format("yə %s %sä %sa", args, args, args)
		
		--affirmative command conjugations ግበር
		t = string.format("%sə %sä %s", args, args, args)
		t = string.format("%sə %sä %su", args, args, args)
		t = string.format("%sə %sä %si", args, args, args)
		t = string.format("%sə %sä %sa", args, args, args)
		
		--negative command conjugations ኣይትግበር
		t = string.format("ʾa y tə %s %sä %s", args, args, args)
		t = string.format("ʾa y tə %s %sä %su", args, args, args)
		t = string.format("ʾa y tə %s %sä %si", args, args, args)
		t = string.format("ʾa y tə %s %sä %sa", args, args, args)
		
		
		--t = mw.ustring.gsub(t, "(%bbb)", function(a) return mw.ustring.sub(a,1,1) end)
		
		local tm = {}
		for var=1,49,1 do
			tm = mw.ustring.gsub(t, "(%bhh)", function(a) return mw.ustring.sub(a,1,1) end) --not actually used, doesn't double
			tm = mw.ustring.gsub(tm, "(l%sl)", function(a) return mw.ustring.sub(a,1,1) end)
		--	tm = mw.ustring.gsub(tm, "(%bḥḥ)", function(a) return mw.ustring.sub(a,1,1) end) --not used, the other letters that don't double won't appear
			tm = mw.ustring.gsub(tm, "(s%ss)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(š%sš)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(ḳ%sḳ)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(b%sb)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(t%st)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(n%sn)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(k%sk)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(x%sx)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(w%sw)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(z%sz)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(y%sy)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(d%sd)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(ǧ%sǧ)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(g%sg)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(ṭ%sṭ)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(č%sč)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(ṣ%sṣ)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(f%sf)", function(a) return mw.ustring.sub(a,1,1) end)
			tm = mw.ustring.gsub(tm, "(x̣%sx̣)", function(a) return mw.ustring.sub(a,1,2) end)
			end
		
		-- consonant characters that hypothetically double in verbs: hlḥsšx̣btnʾkxwʿzydǧgṭčṣf
		local rtr = {
			 ="ሀ", ="ሁ", ="ሂ", ="ሃ", ="ሄ", ="ህ", ="ሆ", ="ህ",
	 ="ለ", ="ሉ", ="ሊ", ="ላ", ="ሌ", ="ል", ="ሎ", 
		 ="ሏ", ="ል",
	 ="ሐ", ="ሑ", ="ሒ", ="ሓ", ="ሔ", ="ሕ", ="ሖ", 
		 ="ሗ", ="ሕ", 
		 ="መ", ="ሙ", ="ሚ", ="ማ", ="ሜ", ="ም", ="ሞ", 
		 ="ሟ", ="ፙ",  	 
		 ="ረ", ="ሩ", ="ሪ", ="ራ", ="ሬ", ="ር", ="ሮ",
		 ="ሯ", ="ፘ", 
	 ="ሰ", ="ሱ", ="ሲ", ="ሳ", ="ሴ", ="ስ", ="ሶ",
		 ="ሷ", 
	 ="ሸ", ="ሹ", ="ሺ", ="ሻ", ="ሼ", ="ሽ", ="ሾ",
		 ="ሿ", 
	 ="ቀ", ="ቁ", ="ቂ", ="ቃ", ="ቄ", ="ቅ", ="ቆ",
		 ="ቈ", ="ቊ", ="ቋ", ="ቌ", ="ቍ", 
	 ="ቐ", ="ቑ", ="ቒ", ="ቓ", ="ቔ", ="ቕ", ="ቖ",
		 ="ቘ", ="ቚ", ="ቛ", ="ቜ", ="ቝ",
	 ="በ", ="ቡ", ="ቢ", ="ባ", ="ቤ", ="ብ", ="ቦ", 
		 ="ቧ",  
	 ="ተ", ="ቱ", ="ቲ", ="ታ", ="ቴ", ="ት", ="ቶ", 
		 ="ቷ",  
	 ="ነ", ="ኑ", ="ኒ", ="ና", ="ኔ", ="ን", ="ኖ",
		 ="ኗ",  
	 ="አ", ="ኡ", ="ኢ", ="ኣ", ="ኤ", ="እ", ="ኦ", 
	 ="ከ", ="ኩ", ="ኪ", ="ካ", ="ኬ", ="ክ", ="ኮ", 
		 ="ኰ", ="ኲ", ="ኳ", ="ኴ", ="ኵ", 
	 ="ኸ", ="ኹ", ="ኺ", ="ኻ", ="ኼ", ="ኽ", ="ኾ",   ="ዅ",
	 ="ወ", ="ዉ", ="ዊ", ="ዋ", ="ዌ", ="ው", ="ዎ", 
	 ="ዐ", ="ዑ", ="ዒ", ="ዓ", ="ዔ", ="ዕ", ="ዖ", 
	 ="ዘ", ="ዙ", ="ዚ", ="ዛ", ="ዜ", ="ዝ", ="ዞ",
		 ="ዟ", 
	 ="የ", ="ዩ", ="ዪ", ="ያ", ="ዬ", ="ይ", ="ዮ", 
	 ="ደ", ="ዱ", ="ዲ", ="ዳ", ="ዴ", ="ድ", ="ዶ",
		 ="ዷ", 
	 ="ጀ", ="ጁ", ="ጂ", ="ጃ", ="ጄ", ="ጅ", ="ጆ", 
		 ="ጇ", 
	 ="ገ", ="ጉ", ="ጊ", ="ጋ", ="ጌ", ="ግ", ="ጎ",
		 ="ጐ", ="ጒ", ="ጓ", ="ጔ", ="ጕ",  
	 ="ጠ", ="ጡ", ="ጢ", ="ጣ", ="ጤ", ="ጥ", ="ጦ", 
		 ="ጧ", 
	 ="ጨ", ="ጩ", ="ጪ", ="ጫ", ="ጬ", ="ጭ", ="ጮ",
		 ="ጯ", 
	 ="ጸ", ="ጹ", ="ጺ", ="ጻ", ="ጼ", ="ጽ", ="ጾ", 
		 ="ጿ", 
	 ="ፈ", ="ፉ", ="ፊ", ="ፋ", ="ፌ", ="ፍ", ="ፎ",
		 ="ፏ", ="ፚ",  ="ም" , ="ር", ="ስ", ="ሽ",="ቅ", ="ቕ", 
		 ="ብ", ="ት", ="ን", ="እ", ="ክ", ="ኽ", ="", ="ዕ", ="ዝ",
		 ="ይ", ="ድ", ="ጅ", ="ግ", ="ጥ", ="ጭ", ="ጽ", ="ፍ",
		}
		local tf = {}
		for var=1,49,1 do
		tf = mw.ustring.gsub(tm, "%a%a", rtr)
		tf = mw.ustring.gsub(tf,"." , rtr)
		tf = mw.ustring.gsub(tf, "%s+", "")
		t = mw.ustring.gsub(t, "%s+","")
		end
		
		local g_m = m_g.format_list({'m'})
		local g_f = m_g.format_list({'f'})
		
		local conjs = {
			 = g_m,
			 = g_f,
			
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
		
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			
			 = tf,
			 = tf,
			 = tf,
			 = tf,
			
			 = tf,
			 = tf,
			 = tf,
			 = tf
		}
		
		
		tablof = mw.ustring.gsub(tablo, "{{{.-}}}", conjs)
		
		return tablof
		
		
		else
			local input = {
			 = g_m,
			 = g_f,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,
			
			 = args,
			 = args,
			 = args,
			 =	args,
			 = args,
			= args,
			 = args,
			 = args,
			 = args,
			 = args,

		
			 = args,
			 = args,
			 = args,
			 = args,
			 =	args,
			 = args,
			 = args,
			 = args,
			 = args,
			 = args,

			
			 = args,
			 = args,
			 = args,
			 = args,
			
			 = args,
			 = args,
			 = args,
			 = args,
			}
			tabloff = mw.ustring.gsub(tablo, "{{{.-}}}", input)
			return tabloff
		end
	end
	end
return export