text:
Module:User:Benwing2/be-common

local export = {}

local u = mw.ustring.char local rsplit = mw.text.split local rfind = mw.ustring.find local rmatch = mw.ustring.match local rsubn = mw.ustring.gsub local ulen = mw.ustring.len local ulower = mw.ustring.lower local uupper = mw.ustring.upper local usub = mw.ustring.sub

-- version of rsubn that discards all but the first return value local function rsub(term, foo, bar) local retval = rsubn(term, foo, bar) return retval end

-- apply rsub repeatedly until no change local function rsub_repeatedly(term, foo, bar) while true do		local new_term = rsub(term, foo, bar) if new_term == term then return term end term = new_term end end

local AC = u(0x0301) -- acute = ́ local GR = u(0x0300) -- acute = ̀ local CFLEX = u(0x0302) -- circumflex = ̂ local DOTBELOW = u(0x0323) -- dot below = ̣ export.accents = AC .. CFLEX .. DOTBELOW export.accents_c = "[" .. export.accents .. "]"

export.vowel = "аеіоуяэыёюАЕІОУЯЭЫЁЮ" export.vowel_c = "[" .. export.vowel .. "]" export.non_vowel_c = "[^" .. export.vowel .. "]" export.velar = "кгґхКГҐХ" export.velar_c = "[" .. export.velar .. "]" export.always_hard = "ршчжРШЧЖ" export.always_hard_c = "[" .. export.always_hard .. "]" export.always_hard_or_ts = export.always_hard .. "цЦ" export.always_hard_or_ts_c = "[" .. export.always_hard_or_ts .. "]" export.cons_except_always_hard_or_ts = "бдфгґйклмнпствхзўьБДФГҐЙКЛМНПСТВХЗЎЬ'" export.cons_except_always_hard_or_ts_c = "[" .. export.cons_except_always_hard_or_ts .. "]" export.cons = export.always_hard .. export.cons_except_always_hard_or_ts .. "цЦ" export.cons_c = "[" .. export.cons .. "]"

export.VAR1 = u(0xFFF0) export.VAR2 = u(0xFFF1) export.VAR3 = u(0xFFF2) export.var_code_c = "[" .. export.VAR1 .. export.VAR2 .. export.VAR3 .. "]"

local grave_deaccenter = { [GR] = "", -- grave accent ["ѐ"] = "е", -- composed Cyrillic chars w/grave accent ["Ѐ"] = "Е", ["ѝ"] = "и", ["Ѝ"] = "И", }

local deaccenter = mw.clone(grave_deaccenter) deaccenter[AC] = "" -- acute accent

local destresser = mw.clone(deaccenter) destresser["ё"] = "е" destresser["Ё"] = "Е" destresser["о"] = "а" destresser["О"] = "А" destresser["э"] = "а" destresser["Э"] = "А"

local pre_tonic_destresser = mw.clone(destresser) pre_tonic_destresser["ё"] = "я" pre_tonic_destresser["Ё"] = "Я" pre_tonic_destresser["е"] = "я" pre_tonic_destresser["Е"] = "Я"

local ae_stresser = { ["а"] = "э", ["я"] = "е", }

local ao_stresser = { ["а"] = "о", ["я"] = "ё", }

local first_palatalization = { ["к"] = "ч", ["г"] = "ж", ["ґ"] = "ж", ["х"] = "ш", ["ц"] = "ч", }

local second_palatalization = { ["к"] = "ц", ["г"] = "з", ["ґ"] = "з", ["х"] = "с", }

function export.get_variants(form) return form:find(export.VAR1) and "var1" or		form:find(export.VAR2) and "var2" or		form:find(export.VAR3) and "var3" or		nil end

function export.remove_variant_codes(word) return rsub(word, export.var_code_c, "") end

-- Remove acute and grave accents; don't affect ёЁ. function export.remove_accents(word) return rsub(word, "[́̀ѐЀѝЍ]", deaccenter) end

function export.needs_accents(text) for _, word in ipairs(rsplit(text, "%s+")) do		-- A word needs accents if it contains no accent or ё and has more than one vowel if not export.is_stressed(word) and not export.is_monosyllabic(word) then return true end end return false end

function export.is_stressed(word) return rfind(word, "[́ёЁ]") end

-- Return whether the word has an acute accent. Use this in preference to is_stressed -- once mark_stressed_vowels_in_unstressed_syllables has been called, because -- is_accented will correctly ignore ё/Ё in unstressed syllables (those in stressed -- syllables are marked with an acute accent). function export.is_accented(word) return rfind(word, AC) end

function export.is_initial_stressed(word) return rfind(word, "^" .. export.non_vowel_c .. "*" .. export.vowel_c .. AC) or not rfind(word, AC) and rfind(word, "^" .. export.non_vowel_c .. "*[ёЁ]") end

function export.is_final_stressed(word) return rfind(word, AC .. export.non_vowel_c .. "*$") or not rfind(word, AC) and rfind(word, "[ёЁ]" .. export.non_vowel_c .. "*$") end

-- Check if word ends in a vowel. function export.ends_in_vowel(word) return rfind(word, export.vowel_c .. export.accents_c .. "*$") end

-- Check if word ends in a velar. function export.ends_in_velar(word) return rfind(word, export.velar_c .. "$") end

-- Check if word ends in an always-hard consonant. function export.ends_always_hard(word) return rfind(word, export.always_hard_c .. "$") end

-- Check if word ends in an always-hard consonant or ц. function export.ends_always_hard_or_ts(word) return rfind(word, export.always_hard_or_ts_c .. "$") end

--[=[

HANDLING BELARUSIAN VOWEL ALTERNATIONS:

We proceed as follows:

1. Call mark_stressed_vowels_in_unstressed_syllables to attach a stress mark (acute accent) to monosyllabic vowels and to stressed ё vowels, and attach a special signal (DOTBELOW) to vowels that are in positions they should not be  (о э ё in unstressed syllables, е directly before the stress), so that they are never converted to their destressed equivalent. 2. Attempt to reconstruct, as much as possible, the underlying vowels of the word. This is normally done using apply_vowel_alternation. 3. Move the stress mark elsewhere in the word (e.g. by removing the stress mark and  appending a stressed suffix). 4. Call destress_vowels_after_stress_movement to convert the word to its final form. This turns о э ё in unstressed syllables and е directly before the stress into other vowels, taking care not to do this if DOTBELOW follows the vowel. After that, it undoes the changes made in mark_stressed_vowels_in_unstressed_syllables. ]=]

-- Apply one or more vowel alternant specifications ("ao"/"ao2"/"ao3", "ae"/"ae2"/"ae3", -- "avo"/"avo2"/"avo3", "yo"/"yo2"/"yo3", "oy" or "voa") to the given word. function export.apply_vowel_alternation(word, vowel_alternants) if not vowel_alternants then return word end for _, valt in ipairs(vowel_alternants) do		if rfind(valt, "^av?[eo][23]?$") or rfind(valt, "^yo[23]?$") then local re, errmsg if rfind(valt, "[^23]$") then re = export.non_vowel_c .. "*" .. export.vowel_c .. AC				errmsg = "directly before the stress" elseif rfind(valt, "2$") then re = export.non_vowel_c .. "*" .. export.vowel_c .. export.non_vowel_c .. "*" .. export.vowel_c .. AC				errmsg = "two syllables before the stress" elseif rfind(valt, "3$") then re = export.non_vowel_c .. "*" .. export.vowel_c .. export.non_vowel_c .. "*" .. export.vowel_c .. export.non_vowel_c .. "*" .. export.vowel_c errmsg = "three syllables before the stress" else error("Unrecognized vowel alternant '" .. valt .. "'") end local new_word, req_vowel if rfind(valt, "^a[eo]") then new_word = rsub(word, "([аАяЯ])(" .. re .. ")",					function(a_vowel, rest)						local stresser = rfind(valt, "^ao") and ao_stresser or ae_stresser						return stresser[a_vowel] .. rest					end				) req_vowel = "а or я" elseif rfind(valt, "^avo") then new_word = rsub(word, "([аА])(" .. re .. ")",					function(a_vowel, rest)						return (a_vowel == "а" and "в" or "В") .. CFLEX .. "о" .. rest					end				) req_vowel = "а" elseif rfind(valt, "^yo") then new_word = rsub(word, "([ыЫ])(" .. re .. ")",					function(y_vowel, rest)						return (y_vowel == "ы" and "о" or "О") .. CFLEX .. rest					end				) req_vowel = "ы" else error("Unrecognized vowel alternant '" .. valt .. "'") end if new_word == word then error("Indicator '" .. valt .. "' can't be applied because word '" .. word .. "' doesn't have an " .. req_vowel .. " " .. errmsg) end word = new_word elseif valt == "oy" then local new_word = rsub(word, "([оО]́)", "%1" .. CFLEX) if new_word == word then error("Indicator 'oy' can't be applied because word '" .. word .. "' doesn't have a stressed о") end word = new_word elseif valt == "voa" then local new_word = rsub(word, "([вВ])о́", "%1" .. CFLEX .. "о́") if new_word == word then error("Indicator 'voa' can't be applied because word '" .. word .. "' doesn't have a stressed во") end word = new_word else error("Unrecognized vowel alternant '" .. valt .. "'") end end return word end

-- Mark vowels that should only occur in stressed syllables (э, о, ё) but -- actually occur in unstressed syllables with a dot-below. Also mark е -- that occurs directly before the stress in this fashion, and add an acute -- accent to stressed ё. We determine whether an ё is stressed as follows: -- (1) If an acute accent already occurs, an ё isn't marked with an acute --    accent (e.g. ра́дыё). -- (2) Otherwise, mark only the last ё with an acute, as multiple ё sounds --    can occur (at least, in Russian this is the case, as in трёхколёсный). function export.mark_stressed_vowels_in_unstressed_syllables(word) if export.is_nonsyllabic(word) then return word end if export.is_multi_stressed(word) then error("Word " .. word .. " has multiple accent marks") end if export.has_grave_accents(word) then error("Word " .. word .. " has grave accents") end word = export.add_monosyllabic_accent(word) if not rfind(word, AC) then if rfind(word, "[ёЁ]") then word = rsub(word, "([ёЁ])(.-)$", "%1" .. AC .. "%2") else error("Multisyllabic word " .. word .. "missing an accent") end end

word = rsub(word, "([эоёЭОЁ])([^́])", "%1" .. DOTBELOW .. "%2") word = rsub(word, "([эоёЭОЁ])$", "%1" .. DOTBELOW) word = rsub(word, "([еЕ])(" .. export.non_vowel_c .. "*" .. export.vowel_c .. AC .. ")",		"%1" .. DOTBELOW .. "%2") return word end

-- Undo extra diacritics added by `mark_stressed_vowels_in_unstressed_syllables` or -- otherwise (e.g. CFLEX). function export.undo_mark_stressed_vowels_in_unstressed_syllables(word) word = rsub(word, DOTBELOW, "") word = rsub(word, CFLEX, "") word = rsub(word, "([ёЁ])́", "%1") return word end

-- Destress vowels in unstressed syllables. Vowels followed by DOTBELOW are unchanged; -- otherwise, о -> а; э -> а; ё -> я directly before the stress or when followed by -- CFLEX, otherwise е; е -> я directly before the stress. After that, remove extra -- diacritics added by mark_stressed_vowels_in_unstressed_syllables. function export.destress_vowels_after_stress_movement(word) -- Handle ё + CFLEX. This assumes that a stress mark comes between ё and CFLEX, -- which will normally be the case if maybe_accent_initial_syllable or -- maybe_accent_final_syllable is used to add stress. We remove the CFLEX after -- destressing the syllable; a CFLEX after a stressed syllable will get removed by -- undo_mark_stressed_vowels_in_unstressed_syllables. word = rsub(word, "([ёЁ])" .. CFLEX, pre_tonic_destresser) -- Handle о + CFLEX; same idea as above. word = rsub(word, "([оО])" .. CFLEX, function(o_vowel) return o_vowel == "о" and "ы" or "Ы" end) word = rsub_repeatedly(word, "([эоёЭОЁ])([^" .. AC .. DOTBELOW .. "])",		function(vowel, rest)			return destresser[vowel] .. rest		end	) word = rsub(word, "([эоёЭОЁ])$", destresser) word = rsub(word, "([еЕ])(" .. export.non_vowel_c .. "*" .. export.vowel_c .. AC .. ")",		function(vowel, rest)			if not rfind(rest, "^" .. DOTBELOW) then				return pre_tonic_destresser[vowel] .. rest			else				return vowel .. rest			end		end) -- Handle в + CFLEX + non-о, which loses the в. Do this after converting unstressed о to а. word = rsub_repeatedly(word, "([вВ])" .. CFLEX .. "([^оО])", "%2") return export.undo_mark_stressed_vowels_in_unstressed_syllables(word) end

-- If word is lacking an accent, add it onto the initial syllable. -- This assumes the word has been processed by mark_stressed_vowels_in_unstressed_syllables, -- so that even the ё vowel gets stress. function export.maybe_accent_initial_syllable(word) if not rfind(word, AC) then -- accent first syllable word = rsub(word, "^(.-" .. export.vowel_c .. ")", "%1" .. AC) end return word end

-- If word is lacking an accent, add it onto the final syllable. -- This assumes the word has been processed by mark_stressed_vowels_in_unstressed_syllables, -- so that even the ё vowel gets stress. function export.maybe_accent_final_syllable(word) if not rfind(word, AC) then -- accent last syllable word = rsub(word, "(.*" .. export.vowel_c .. ")", "%1" .. AC) end return word end

-- Make a word unstressed, appropriately handling akanye and yakanye on the -- stressed syllable. PRE_TONIC indicates whether ё should be converted to я -- (PRE_TONIC is true) or е (otherwise). This has no effect on unstressed -- syllables, although in some cases they need to change (in particular, -- я in the pre-tonic syllabic might need to change to underlying е, and -- other changes might be necessary if the stress is going to be moved onto -- a different syllable of the word). function export.make_unstressed(word, pre_tonic) local destresser = pre_tonic and pre_tonic_destresser or destresser -- ё may occur in unstressed syllables, e.g. ра́дыё "radio". э may occur in -- unstressed syllables, e.g. тэлеві́зар "television". Possibly the same -- with о. In this case, we don't want to modify the ё/э/о. But we do want to -- modify stressed ё́/э́/о́ appropriately. if rfind(word, AC) then word = rsub(word, "([ёЁэЭоО])́", function(vowel)			return destresser[vowel]		end) return rsub(word, AC, "") end return rsub(word, "[̀ёЁэЭоОѐЀѝЍ]", destresser) end

function export.is_multi_stressed(text) for _, word in ipairs(rsplit(text, "[%s%-]+")) do		if ulen(rsub(word, "[^́]", "")) > 1 then return true end end return false end

-- Check if word is nonsyllabic. function export.is_nonsyllabic(word) return not rfind(word, export.vowel_c) end

-- Check if word is monosyllabic (also includes words without vowels). function export.is_monosyllabic(word) local num_syl = ulen(rsub(word, export.non_vowel_c, "")) return num_syl <= 1 end

-- Check if word has grave accents. function export.has_grave_accents(word) return rfind(word, "[̀ѐЀѝЍ]") end

-- If word is monosyllabic, add an accent mark to the vowel. Don't affect ёЁ -- unless `even_yo` is specified. function export.add_monosyllabic_stress(word, even_yo) if export.is_monosyllabic(word) and not rfind(word, "^%-") and not rfind(word, "%-$") and not (even_yo and export.is_accented(word) or export.is_stressed(word)) then word = rsub(word, "(" .. export.vowel_c .. ")", "%1" .. AC) end return word end

-- If word is monosyllabic, add an accent mark to the vowel. Unlike -- add_monosyllabic_stress, even add an accent to ёЁ. function export.add_monosyllabic_accent(word) return export.add_monosyllabic_stress(word, "even yo") end

-- If word is monosyllabic, remove accent marks from the vowel. function export.remove_monosyllabic_accents(word) if export.is_monosyllabic(word) and not rfind(word, "^%-") and not rfind(word, "%-$") then return export.remove_accents(word) end return word end

function export.iotate(stem) stem = rsub(stem, "с[ктц]$", "шч") stem = rsub(stem, "[ктц]$", "ч") stem = rsub(stem, "[сх]$", "ш") stem = rsub(stem, "[гґз]$", "ж") stem = rsub(stem, "дз?$", "дж") stem = rsub(stem, "([бўмпф])$", "%1л") stem = rsub(stem, "в$", "ўл") return stem end

function export.apply_first_palatalization(word) return rsub(word, "^(.*)([кгґхц])$",		function(prefix, lastchar) return prefix .. first_palatalization[lastchar] end	) end

function export.apply_second_palatalization(word) return rsub(word, "^(.*)([кгґх])$",		function(prefix, lastchar) return prefix .. second_palatalization[lastchar] end	) end

function export.palatalize_td(stem) stem = rsub(stem, "т$", "ц") stem = rsub(stem, "д$", "дз") return stem end

function export.combine_stem_ending(stem, ending) if stem == "?" then return "?" end if export.is_accented(ending) then stem = export.remove_accents(stem) end if rfind(ending, "^[яеіёюь]") then stem = export.palatalize_td(stem) end return stem .. ending end

function export.combine_stem_ending_into_external_form(stem, ending) return export.destress_vowels_after_stress_movement(		export.combine_stem_ending(stem, ending)	) end

-- Remove the vowel between the last two consonants of a stem. -- Used especially in masculine and third-declension feminine nouns to -- generate the stem that is used before endings beginning with a vowel. -- This is based on the corresponding function in Module:ru-common, -- adapted for Belarusian phonology and orthography. function export.reduce(stem) local pre, letter, post = rmatch(stem, "^(.+)([оОёЁаАэЭеЕ])́?(" .. export.cons_c .. "+)$")	if not pre then return nil end if rfind(letter, "[оОаАэЭ]") then -- FIXME, what about when the accent is on the removed letter? if rfind(post, "^[йЙ]$") then -- FIXME, is this correct? return nil end -- аўто́рак -> аўто́рк-, вы́нятак -> вы́нятк-, ло́жак -> ло́жк- -- алжы́рац -> алжы́рц- -- міні́стар -> міні́стр- letter = "" else local is_upper = rfind(post, "%u") if export.ends_in_vowel(pre) then -- аўстралі́ец -> аўстралі́йц- -- аўстры́ец -> аўстры́йц- -- еўрапе́ец -> еўрапе́йц letter = is_upper and "Й" or "й" elseif rfind(post, "[йЙ]") then if rfind(pre, "[вВ]$") then -- салаве́й -> салаў- letter = "" elseif rfind(pre, "[uбБпПфФмМ]$") then -- верабе́й -> вераб'- letter = "'" elseif is_upper then letter = usub(pre, -1) else -- вуле́й -> вулл- letter = ulower(usub(pre, -1)) end post = "" elseif rfind(post, export.velar_c .. "$") and rfind(pre, export.cons_except_always_hard_or_ts_c .. "$") or rfind(post, "[^йЙ" .. export.velar .. "]$") and rfind(pre, "[лЛ]$") then -- For the first part: князёк -> князьк- -- For the second part: алёс -> альс-, відэ́лец -> відэ́льц- -- Both at once: матылёк -> матыльк- letter = is_upper and "Ь" or "ь" else -- пёс -> пс- -- асёл -> асл-, бу́сел -> бу́сл- -- бабёр -> бабр-, шва́гер -> шва́гр- -- італья́нец -> італья́нц- letter = "" end -- адзёр -> адр- -- ірла́ндзец -> ірла́ндц- pre = rsub(pre, "([Дд])[Зз]$", "%1") -- кацёл -> катл-, ве́цер -> ве́тр- pre = rsub(pre, "ц$", "т") pre = rsub(pre, "Ц$", "Т") end -- ало́вак -> ало́ўк-, авёс -> аўс-, чо́вен -> чо́ўн-, ядло́вец -> ядло́ўц- -- NOTE: любо́ў -> любв- but we need to handle this elsewhere as it also applies -- to non-reduced nouns, e.g. во́страў -> во́страв- pre = rsub(pre, "в$", "ў") pre = rsub(pre, "В$", "Ў") return pre .. letter .. post end

-- Add an epenthetic vowel between the last two consonants of the stem. -- Used especially in feminine and neuter nouns to generate the genitive -- plural. `epenthetic_stress` is true if the inserted vowel should bear -- the stress according to the accent pattern of the noun. This is based -- on the corresponding function in Module:ru-common, adapted for -- Belarusian phonology and orthography. function export.dereduce(stem, epenthetic_stress) if epenthetic_stress then stem = export.remove_accents(stem) end -- FIXME, any cases where we have to dereduce a sequence Cдз -> CVдз? local pre, letter, post = rmatch(stem, "^(.*)(" .. export.cons_c .. ")(" .. export.cons_c .. ")$")	if not pre then return nil end local epvowel local is_upper = rfind(post, "%u") if post == "'" then -- сям'я́ "family" -> сяме́й post = "й" epvowel = "е" elseif rfind(letter, "[ьйЬЙ]") then -- аўстралі́йка "Australian woman" -> аўстралі́ек letter = "" if rfind(post, "[цЦ]") or not epenthetic_stress then epvowel = "е" else epvowel = "ё" end elseif rfind(letter, export.cons_except_always_hard_or_ts_c) and rfind(post, export.velar_c) or rfind(letter, export.velar_c) then if epenthetic_stress then epvowel = "о" else epvowel = "а" end elseif rfind(post, "[цЦ]") then if export.ends_always_hard(letter) then if epenthetic_stress then -- FIXME, is this right? epvowel = "э" else epvowel = "а" end else epvowel = "е" end elseif epenthetic_stress then if export.ends_always_hard_or_ts(letter) then epvowel = "о" else epvowel = "ё" end elseif export.ends_always_hard_or_ts(letter) then epvowel = "а" else epvowel = "е" end if letter == "ў" then letter = "в" elseif letter == "Ў" then letter = "В" end if rfind(epvowel, "[её]") then if letter == "т" then letter = "ц" elseif letter == "Т" then letter = "Ц" elseif letter == "д" then letter = "дз" elseif letter == "Д" then letter = is_upper and "ДЗ" or "Дз" end end if is_upper then epvowel = upper(epvowel) end if epenthetic_stress then epvowel = epvowel .. AC	end return pre .. letter .. epvowel .. post end

-- Handles the alternation between initial і/у and й/ў. function export.initial_alternation(word, previous) if type(word) == "table" then word, previous = word.args[1], word.args[2] end local prev_ends_in_vowel = export.ends_in_vowel(previous) if rfind(word, "^[іІ][лр]" .. export.cons_c) and prev_ends_in_vowel then if rfind(word, "^І") then return rsub(word, "^І(.)", function(letter) return uupper(letter) end) else return rsub(word, "^і", "") end elseif rfind(word, "^[ЛРлр]" .. export.cons_c) and not prev_ends_in_vowel then if rfind(word, "^[ЛР]") then return "І" .. rsub(word, "^(.)", function(letter) return ulower(letter) end) else return "і" .. word end elseif rfind(word, "^[іІ]") or rfind(word, "^[йЙ]" .. export.non_vowel_c) then if prev_ends_in_vowel then return rsub(word, "^[іІ]", {["і"] = "й", ["І"] = "Й"}) else return rsub(word, "^[йЙ]", {["й"] = "і", ["Й"] = "І"}) end elseif rfind(word, "^[уУ]") or rfind(word, "^[ўЎ]" .. export.non_vowel_c) then if prev_ends_in_vowel then return rsub(word, "^[уУ]", {["у"] = "ў", ["У"] = "Ў"}) else return rsub(word, "^[ўЎ]", {["ў"] = "у", ["Ў"] = "У"}) end end return word end

function export.u_v_alternation_msg(frame) local m_links = require("Module:links") local lang = require("Module:languages").getByCode("be") local params = { [1] = {}	}	local parargs = frame:getParent.args local args = require("Module:parameters").process(parargs, params) local alternant = args[1] or mw.title.getCurrentTitle.text local ualt, valt, ufirst if rfind(alternant, "^[ўЎ]") then valt = alternant ualt = rsub(export.add_monosyllabic_stress(valt), "^([ўЎ])", {["ў"] = "у", ["Ў"] = "У"}) ufirst = false else ualt = alternant valt = export.remove_monosyllabic_accents(rsub(ualt, "^([уУ])", {["у"] = "ў", ["У"] = "Ў"})) ufirst = true end ualt = m_links.full_link({lang = lang, term = ualt}, "term") .. " (used after consonants or at the beginning of a clause)" valt = m_links.full_link({lang = lang, term = valt}, "term") .. " (used after vowels)" local first, second if ufirst then first, second = ualt, valt else first, second = valt, ualt end return "The forms " .. first .. " and " .. second .. " differ in pronunciation but are considered variants of the same word." end

return export

title: Module:User:Benwing2/be-common


text: šály

license: Creative Commons - Attribution Share-Alike - https://creativecommons.org/licenses/by-sa/4.0/

title: šály


text: šále

title: šále


text:
Appendix:Proto-Katloid reconstructions

The following list of Proto-Katloid reconstructions is from Dimmendaal (2019).

Phonology
Reconstructed phonemes for Proto-Katloid:

 * Consonants

 * Vowels ([-ATR] / [+ATR])
 * *ɪ / *i
 * *ʊ / *u
 * *ɛ / *e
 * *ɔ / *o
 * *a / *ʌ

Pronouns

 * Independent pronouns

 * Object enclitics

 * Subject prefixes

Affixes

 * Singular noun class prefixes

 * Plural noun class prefixes

 * Agreement markers (demonstrative)

 * Agreement markers (pronominal possessive)

 * Agreement markers (adjective)

 * Agreement markers (numeral)

title: Appendix:Proto-Katloid reconstructions


text:
急屎

Verb

 * 1)  to (urgently) need to defecate

title: 急屎


text: šálů

title: šálů


text: šálu

title: šálu


text: geika

title: geika


text: šálo

title: šálo


text:
人有三急

Idiom

 * 1) to need to use the toilet; to need to urinate or defecate

title: 人有三急


text: šálou

title: šálou


text: šálami

title: šálami


text: šálách

title: šálách


text: šálám

title: šálám


title: User:Benwing2/be-adecl


title: User:Benwing2/test-be-adecl


text:
Talk:磕膝

Wuhan Mandarin
I was wondering, since the Wuhan dialect already exists as a category, maybe we could have a module already for Wuhan dialect, perhaps using Sichuanese pinyin, since they're both Southwestern Mandarin. The phonology is quite similar, except for the /l/ consonant in the old dialect at least. I'm assuming the 武汉方言词典 documents the modern Wuhan dialect. --Mar vin kaiser (talk) 03:28, 5 July 2020 (UTC)
 * I think we should be looking to match Hanyu Pinyin. This site uses a version of pinyin for Wuhan. We should probably see if their system works for us. — justin(r)leung { (t...) 05:46, 5 July 2020 (UTC)
 * Cool! I didn't know about this. Yeah, Hanyu Pinyin seems good also. --Mar vin kaiser (talk) 05:55, 5 July 2020 (UTC)

title: Talk:磕膝


text:
事急馬行田

Etymology
In xiangqi, the horse can only move like the character on the chessboard. A horse moving like the character violates the rule.

Idiom

 * 1) to take extraordinary actions in an emergency

title: 事急馬行田


text: 事急马行田

title: 事急马行田


text:
filtrasi

Etymology
From.

Noun

 * , the act or process of filtering; the mechanical separation of a liquid from the undissolved particles floating in it.

title: filtrasi


text:
Module:User:Benwing2/be-adjective

local export = {}

--[=[

Authorship: Ben Wing

]=]

--[=[

TERMINOLOGY:

-- "slot" = A particular combination of case/gender/number. Example slot names for adjectives are "gen_f" (genitive feminine singular) and "loc_p" (locative plural). Each slot is filled with zero or more forms.

-- "form" = The declined Belarusian form representing the value of a given slot.

-- "lemma" = The dictionary form of a given Belarusian term. Generally the nominative masculine singular, but may occasionally be another form if the nominative masculine singular is missing. ]=]

local lang = require("Module:languages").getByCode("be") local m_links = require("Module:links") local m_table = require("Module:table") local m_string_utilities = require("Module:string utilities") local iut = require("Module:inflection utilities") local m_para = require("Module:parameters") local com = require("Module:be-common")

local current_title = mw.title.getCurrentTitle local NAMESPACE = current_title.nsText local PAGENAME = current_title.text

local u = mw.ustring.char local rsplit = mw.text.split local rfind = mw.ustring.find local rmatch = mw.ustring.match local rgmatch = mw.ustring.gmatch local rsubn = mw.ustring.gsub local ulen = mw.ustring.len local uupper = mw.ustring.upper

local AC = u(0x0301) -- acute = ́

-- version of rsubn that discards all but the first return value local function rsub(term, foo, bar) local retval = rsubn(term, foo, bar) return retval end

-- version of rsubn that returns a 2nd argument boolean indicating whether -- a substitution was made. local function rsubb(term, foo, bar) local retval, nsubs = rsubn(term, foo, bar) return retval, nsubs > 0 end

local function tag_text(text) return m_script_utilities.tag_text(text, lang) end

local output_adjective_slots = { -- used with all variants but special == "dva" and special == "plonly" nom_m = "nom|m|s", nom_f = "nom|f|s", nom_n = "nom|n|s", gen_m = "gen|m//n|s", gen_f = "gen|f|s", dat_m = "dat|m//n|s", dat_f = "dat|f|s", acc_m_an = "an|acc|m|s", acc_m_in = "in|acc|m|s", acc_f = "acc|f|s", acc_n = "acc|n|s", ins_m = "ins|m//n|s", ins_f = "ins|f|s", loc_m = "loc|m//n|s", loc_f = "loc|f|s",

-- used with all variants but special == "dva" nom_p = "nom|p", gen_p = "gen|p", dat_p = "dat|p", acc_p_an = "an|acc|p", acc_p_in = "in|acc|p", ins_p = "ins|p", loc_p = "loc|p",

-- only used with special == "dva" nom_mp = "nom|m//n|p", nom_fp = "nom|f|p", gen_mp = "gen|m//n|p", gen_fp = "gen|f|p", dat_mp = "dat|m//n|p", dat_fp = "dat|f|p", acc_mp_an = "an|acc|m//n|p", acc_mp_in = "in|acc|m//n|p", acc_fp = "acc|f|p", ins_mp = "ins|m//n|p", ins_fp = "ins|f|p", loc_mp = "loc|m//n|p", loc_fp = "loc|f|p",

-- short forms short_m = "short|m|s", short_f = "short|f|s", short_n = "short|n|s", short_p = "short|p", }

local output_adjective_slots_with_linked = m_table.shallowcopy(output_adjective_slots) output_adjective_slots_with_linked["nom_m_linked"] = "nom|m|s"

local output_adjective_slots_surname = { nom_m = "nom|m|s", nom_f = "nom|f|s", nom_p = "nom|p", gen_m = "gen|m|s", gen_f = "gen|f|s", gen_p = "gen|p", dat_m = "dat|m|s", dat_f = "dat|f|s", dat_p = "dat|p", acc_m = "acc|m|s", acc_f = "acc|f|s", acc_p = "acc|p", ins_m = "ins|m|s", ins_f = "ins|f|s", ins_p = "ins|p", loc_m = "loc|m|s", loc_f = "loc|f|s", loc_p = "loc|p", }

local output_adjective_slots_surname_with_linked = m_table.shallowcopy(output_adjective_slots_surname) output_adjective_slots_surname_with_linked["nom_m_linked"] = "nom|m|s"

local input_adjective_slots = {} for slot, _ in pairs(output_adjective_slots) do	if slot == "acc_f" or not rfind(slot, "^acc") then table.insert(input_adjective_slots, slot) end end

local function get_output_adjective_slots(base, with_linked) if base.surname then return with_linked and output_adjective_slots_surname_with_linked or output_adjective_slots_surname else return with_linked and output_adjective_slots_with_linked or output_adjective_slots end end

local function combine_stem_ending(stem, ending) if stem == "?" then return "?" else return stem .. ending end end

local function add(base, slot, stems, endings) if get_output_adjective_slots(base)[slot] then -- Here, just add the stem and ending, in case the stem has unstressed -- ё or э in it. iut.add_forms(base.forms, slot, stems, endings, combine_stem_ending) end end

local function add_normal_decl(base, stem,	nom_m, nom_f, nom_n, nom_p, gen_m, gen_f, gen_p,	dat_m, dat_f, dat_p, acc_f,	ins_m, ins_f, ins_p, loc_m, loc_f, loc_p,	footnote) stem = iut.combine_form_and_footnotes(stem, footnote) add(base, "nom_m", stem, nom_m) add(base, "nom_f", stem, nom_f) add(base, "nom_n", stem, nom_n) add(base, "nom_p", stem, nom_p) add(base, "gen_m", stem, gen_m) add(base, "gen_f", stem, gen_f) add(base, "gen_p", stem, gen_p) add(base, "dat_m", stem, dat_m) add(base, "dat_f", stem, dat_f) add(base, "dat_p", stem, dat_p) add(base, "acc_f", stem, acc_f) add(base, "ins_m", stem, ins_m) add(base, "ins_f", stem, ins_f) add(base, "ins_p", stem, ins_p) add(base, "loc_m", stem, loc_m) add(base, "loc_f", stem, loc_f) add(base, "loc_p", stem, loc_p) end

local function destress_ending(ending) if type(ending) == "string" then return com.make_unstressed(ending) else for i, e in ipairs(ending) do			ending[i] = destress_ending(e) end return ending end end

local function maybe_destress_endings(suffix, endings) if not com.is_stressed(suffix) then for i, e in ipairs(endings) do			endings[i] = destress_ending(e) end end end

local function y_to_i(ending) if type(ending) == "string" then return rsub(ending, "ы", "і") else for i, e in ipairs(ending) do			ending[i] = y_to_i(e) end return ending end end

local function y_to_i_endings(endings) for i, e in ipairs(endings) do		endings[i] = y_to_i(e) end end

-- See documentation for `use_variant_codes` in do_generate_forms. local function maybe_tag_ins_s_with_variant(base, ins_s_endings) if base.use_variant_codes then assert(type(ins_s_endings) == "table") assert(#ins_s_endings == 2) local ending1, ending2 = unpack(ins_s_endings) return {ending1 .. com.VAR1, ending2 .. com.VAR2} else return ins_s_endings end end

local decls = {}

decls["normal"] = function(base) local normal_endings, old_endings local stem, suffix

local function add_endings maybe_destress_endings(suffix, normal_endings) if rfind(stem, com.velar_c .. "$") then y_to_i_endings(normal_endings) end add_normal_decl(base, stem, unpack(normal_endings)) end

-- hard in -ы (including velar in -і) stem, suffix = rmatch(base.lemma, "^(.*" .. com.velar_c .. ")(і́?)$") if not stem then stem, suffix = rmatch(base.lemma, "^(.*)(ы́?)$") end if stem then normal_endings = { "ы́", "а́я", "о́е", "ы́я", --nom "о́га", "о́й", "ы́х", --gen "о́му", "о́й", "ы́м", --dat "у́ю", --acc "ы́м", maybe_tag_ins_s_with_variant(base, {"о́й", "о́ю"}), "ы́мі", --ins "ы́м", "о́й", "ы́х", --loc }		add_endings return end

-- soft in -і stem, suffix = rmatch(base.lemma, "^(.*)(і́?)$") if stem then normal_endings = { -- This isn't quite right, maybe should be "ё́я" etc.; but -- stressed variants of these endings never occur. "і́", "я́я", "я́е", "і́я", --nom "я́га", "я́й", "і́х", --gen "я́му", "я́й", "і́м", --dat "ю́ю", --acc "і́м", maybe_tag_ins_s_with_variant(base, {"я́й", "я́ю"}), "і́мі", --ins "і́м", "я́й", "і́х", --loc }		add_endings return end

error("Unrecognized adjective lemma, should end in '-ы' or '-і': '" .. base.lemma .. "'") end

local function get_possessive_stem_suffix_ending_prefix(lemma, adjtype) local stem, suffix, ending_prefix while true do		stem, suffix = rmatch(lemma, "^(.*)([аеё]ў)$") if stem then ending_prefix = rsub(suffix, "ў$", "в") break end stem, suffix = rmatch(lemma, "^(.*)([ое]́ў)$") if stem then ending_prefix = rsub(suffix, "ў$", "в") break end stem, suffix = rmatch(lemma, "^(.*)([ыі]́?н)$") if stem then ending_prefix = suffix break end error("Unrecognized " .. adjtype .. " lemma, should end in '-аў', '-о́ў', '-еў', '-ёў', '-ын' or '-ін': '" .. lemma .. "'") end return stem, suffix, ending_prefix end

decls["poss"] = function(base) local stem, suffix, ending_prefix = get_possessive_stem_suffix_ending_prefix(base.lemma, "possessive adjective")

local endings = { "а", "а", "ы", --nom "ага", "ай", "ых", --gen "аму", "ай", "ым", --dat "у", --acc "ым", maybe_tag_ins_s_with_variant(base, {"ай", "аю"}), "ымі", --ins "ым", "ай", "ых", --loc }	-- Do the nominative singular separately from the rest, which may have -- a different stem ending (e.g. -аў vs. -ав). add_normal_decl(base, stem, suffix) add_normal_decl(base, stem .. ending_prefix, nil, unpack(endings)) end

decls["surname"] = function(base) local stem, suffix, ending_prefix = get_possessive_stem_suffix_ending_prefix(base.lemma, "possessive surname")

local endings = { "а", nil, "ы", --nom "а", "ай", "ых", --gen "у", "ай", "ым", --dat "у", --acc "ым", maybe_tag_ins_s_with_variant(base, {"ай", "аю"}), "ымі", --ins "е", "ай", "ых", --loc }	-- Do the nominative singular separately from the rest, which may have -- a different stem ending (e.g. -аў vs. -ав). add_normal_decl(base, stem, suffix) add_normal_decl(base, stem .. ending_prefix, nil, unpack(endings)) end

local function parse_indicator_spec(angle_bracket_spec) local inside = rmatch(angle_bracket_spec, "^<(.*)>$") assert(inside) local base = {forms = {}} if inside ~= "" then local parts = rsplit(inside, ".", true) for _, part in ipairs(parts) do			if part == "surname" then if base.surname then error("Can't specify 'surname' twice: '" .. inside .. "'") end base.surname = true else error("Unrecognized indicator '" .. part .. "': '" .. inside .. "'") end end end return base end

-- Check that multisyllabic lemmas have stress, and add stress to monosyllabic -- lemmas if needed. local function normalize_all_lemmas(alternant_multiword_spec) iut.map_word_specs(alternant_multiword_spec, function(base)		base.orig_lemma = base.lemma		base.orig_lemma_no_links = com.add_monosyllabic_stress(m_links.remove_links(base.lemma))		base.lemma = base.orig_lemma_no_links		if not com.is_stressed(base.lemma) then			error("Multisyllabic lemma '" .. base.orig_lemma .. "' needs an accent")		end	end) end

local function detect_indicator_spec(base) if rfind(base.lemma, "[ыі]́?$") then base.decl = "normal" elseif rfind(base.lemma, "[ўн]$") then if base.surname then base.decl = "surname" else base.decl = "poss" end else error("Unrecognized adjective lemma: '" .. base.lemma .. "'") end end

local function detect_all_indicator_specs(alternant_multiword_spec, use_variant_codes) iut.map_word_specs(alternant_multiword_spec, function(base)		detect_indicator_spec(base)		if alternant_multiword_spec.surname == nil then			alternant_multiword_spec.surname = base.surname or false		elseif alternant_multiword_spec.surname ~= (base.surname or false) then			error("If 'surname' is specified in one alternant, it must be specified in all of them")		end		base.use_variant_codes = use_variant_codes	end) end

local function decline_adjective(base) if not decls[base.decl] then error("Internal error: Unrecognized declension type '" .. base.decl .. "'") end decls[base.decl](base) -- handle_derived_slots_and_overrides(base) end

local function process_overrides(forms, args) for _, slot in ipairs(input_adjective_slots) do		if args[slot] then forms[slot] = nil if args[slot] ~= "-" and args[slot] ~= "—" then for _, form in ipairs(rsplit(args[slot], "%s*,%s*")) do					iut.insert_form(forms, slot, {form=form}) end end end end end

local function set_accusative(alternant_multiword_spec) local forms = alternant_multiword_spec.forms if alternant_multiword_spec.surname then iut.insert_forms(forms, "acc_m", forms["gen_m"]) iut.insert_forms(forms, "acc_p", forms["gen_p"]) elseif alternant_multiword_spec.special == "dva" then iut.insert_forms(forms, "acc_mp_an", forms["gen_mp"]) iut.insert_forms(forms, "acc_mp_in", forms["nom_mp"]) iut.insert_forms(forms, "acc_fp", forms["nom_fp"]) else iut.insert_forms(forms, "acc_n", forms["nom_n"]) iut.insert_forms(forms, "acc_m_an", forms["gen_m"]) iut.insert_forms(forms, "acc_m_in", forms["nom_m"]) iut.insert_forms(forms, "acc_p_an", forms["gen_p"]) iut.insert_forms(forms, "acc_p_in", forms["nom_p"]) end end

local function add_categories(alternant_multiword_spec) local cats = {} local function insert(cattype) table.insert(cats, "Belarusian " .. cattype .. " adjectives") end if not alternant_multiword_spec.manual then iut.map_word_specs(alternant_multiword_spec, function(base)			if base.decl == "poss" then				insert("possessive")			elseif rfind(base.lemma, "ы$") then				insert("hard stem-stressed")			elseif rfind(base.lemma, "ы́$") then				insert("hard ending-stressed")			elseif rfind(base.lemma, com.velar_c .. "і$") then				insert("velar-stem stem-stressed")			elseif rfind(base.lemma, com.velar_c .. "і́$") then				insert("velar-stem ending-stressed")			elseif rfind(base.lemma, "і$") then				insert("soft")			end		end) end alternant_multiword_spec.categories = cats end

local function show_forms(alternant_multiword_spec) local lemmas = {} local lemmaform = alternant_multiword_spec.forms.nom_m or alternant_multiword_spec.forms.nom_p or		alternant_multiword_spec.forms.nom_mp if lemmaform then for _, form in ipairs(lemmaform) do			table.insert(lemmas, com.remove_monosyllabic_accents(form.form)) end end local props = { lemmas = lemmas, slot_table = get_output_adjective_slots(alternant_multiword_spec), lang = lang, canonicalize = function(form) return com.remove_variant_codes(com.remove_monosyllabic_accents(form)) end, include_translit = true, -- Explicit additional top-level footnotes only occur with. footnotes = alternant_multiword_spec.footnotes, allow_footnote_symbols = not not alternant_multiword_spec.footnotes, }	iut.show_forms(alternant_multiword_spec.forms, props) end

local function make_table(alternant_multiword_spec) local forms = alternant_multiword_spec.forms

local function template_prelude(min_width) return rsub([===[ {title}{annotation} {\op}| border="1px solid #000000" style="border-collapse:collapse;background:#F9F9F9;text-align:center; min-width:MINWIDTHem" class="inflection-table" ]===], "MINWIDTH", min_width) end

local function template_postlude return [=[ end
 * {\cl}{notes_clause}  ]=]

local table_spec = template_prelude("70") .. [=[ {title}{annotation} {\op}| border="1px solid #000000" style="border-collapse:collapse;background:#F9F9F9;text-align:center; min-width:70em" class="inflection-table" ! style="width:20%;background:#d9ebff" colspan="2" | ! style="background:#d9ebff" | masculine ! style="background:#d9ebff" | neuter ! style="background:#d9ebff" | feminine ! style="background:#d9ebff" | plural ! style="background:#eff7ff" colspan="2" | nominative ! style="background:#eff7ff" colspan="2" | genitive ! style="background:#eff7ff" colspan="2" | dative ! style="background:#eff7ff" rowspan="2" | accusative ! style="background:#eff7ff" | animate ! style="background:#eff7ff" | inanimate ! style="background:#eff7ff" colspan="2" | instrumental ! style="background:#eff7ff" colspan="2" | locative ]=] .. template_postlude
 * {nom_m}
 * {nom_n}
 * {nom_f}
 * {nom_p}
 * colspan="2" | {gen_m}
 * {gen_f}
 * {gen_p}
 * colspan="2" | {dat_m}
 * {dat_f}
 * {dat_p}
 * {acc_m_an}
 * rowspan="2" | {acc_n}
 * rowspan="2" | {acc_f}
 * {acc_p_an}
 * {acc_m_in}
 * {acc_p_in}
 * colspan="2" | {ins_m}
 * {ins_f}
 * {ins_p}
 * colspan="2" | {loc_m}
 * {loc_f}
 * {loc_p}{short_clause}

local table_spec_surname = template_prelude("55") .. [=[ ! style="background:#d9ebff" | ! style="background:#d9ebff" | masculine ! style="background:#d9ebff" | feminine ! style="background:#d9ebff" | plural ! style="background:#eff7ff" | nominative ! style="background:#eff7ff" | genitive ! style="background:#eff7ff" | dative ! style="background:#eff7ff" | accusative ! style="background:#eff7ff" | instrumental ! style="background:#eff7ff" | locative ]=] .. template_postlude
 * {nom_m}
 * {nom_f}
 * {nom_p}
 * {gen_m}
 * {gen_f}
 * {gen_p}
 * {dat_m}
 * {dat_f}
 * {dat_p}
 * {acc_m}
 * {acc_f}
 * {acc_p}
 * {ins_m}
 * {ins_f}
 * {ins_p}
 * {loc_m}
 * {loc_f}
 * {loc_p}

local table_spec_plonly = template_prelude("25") .. [=[ ! style="width:50%;background:#d9ebff" colspan="2" | ! style="background:#d9ebff" | plural ! style="background:#eff7ff" colspan="2" | nominative ! style="background:#eff7ff" colspan="2" | genitive ! style="background:#eff7ff" colspan="2" | dative ! style="background:#eff7ff" rowspan="2" | accusative ! style="background:#eff7ff" | animate ! style="background:#eff7ff" | inanimate ! style="background:#eff7ff" colspan="2" | instrumental ! style="background:#eff7ff" colspan="2" | locative ]=] .. template_postlude
 * {nom_p}
 * {gen_p}
 * {dat_p}
 * {acc_p_an}
 * {acc_p_in}
 * {ins_p}
 * {loc_p}

local table_spec_dva = template_prelude("40") .. [=[ ! style="width:40%;background:#d9ebff" colspan="2" | ! style="background:#d9ebff" colspan="2" | plural ! style="width:40%;background:#d9ebff" colspan="2" | ! style="background:#d9ebff" | masculine/neuter ! style="background:#d9ebff" | feminine ! style="background:#eff7ff" colspan="2" | nominative ! style="background:#eff7ff" colspan="2" | genitive ! style="background:#eff7ff" colspan="2" | dative ! style="background:#eff7ff" rowspan="2" | accusative ! style="background:#eff7ff" | animate ! style="background:#eff7ff" | inanimate ! style="background:#eff7ff" colspan="2" | instrumental ! style="background:#eff7ff" colspan="2" | locative ]=] .. template_postlude
 * {nom_mp}
 * {nom_fp}
 * {gen_mp}
 * {gen_fp}
 * {dat_mp}
 * {dat_fp}
 * {acc_mp_an}
 * rowspan="2" | {acc_fp}
 * {acc_mp_in}
 * {ins_mp}
 * {ins_fp}
 * {loc_mp}
 * {loc_fp}

local short_form_template = [=[

! style="height:0.2em;background:#d9ebff" colspan="6" | ! style="background:#eff7ff" colspan="2" | short form
 * {short_m}
 * {short_n}
 * {short_f}
 * {short_p}]=]

local notes_template = [===[ {footnote} ]===]

if alternant_multiword_spec.title then forms.title = alternant_multiword_spec.title else forms.title = 'Declension of ' .. forms.lemma .. '' end

if alternant_multiword_spec.manual then forms.annotation = "" else local ann_parts = {} local decls = {} iut.map_word_specs(alternant_multiword_spec, function(base)			if base.decl == "surname" then				m_table.insertIfNot(decls, "surname")			elseif base.decl == "poss" then				m_table.insertIfNot(decls, "possessive")			elseif rfind(base.lemma, "ы́?$") then				m_table.insertIfNot(decls, "hard")			elseif rfind(base.lemma, com.velar_c .. "і́?$") then				m_table.insertIfNot(decls, "velar")			else				m_table.insertIfNot(decls, "soft")			end		end) table.insert(ann_parts, table.concat(decls, " // ")) forms.annotation = " (" .. table.concat(ann_parts, ", ") .. ")" end

forms.notes_clause = forms.footnote ~= "" and m_string_utilities.format(notes_template, forms) or "" forms.short_clause = forms.short_m and forms.short_m ~= "—" and m_string_utilities.format(short_form_template, forms) or "" return m_string_utilities.format(		alternant_multiword_spec.surname and table_spec_surname or		alternant_multiword_spec.special == "plonly" and table_spec_plonly or		alternant_multiword_spec.special == "dva" and table_spec_dva or		table_spec, forms	) end

-- Externally callable function to parse and decline an adjective given -- user-specified arguments. Return value is ALTERNANT_MULTIWORD_SPEC, an -- object where the declined forms are in `ALTERNANT_MULTIWORD_SPEC.forms` for -- each slot. If there are no values for a slot, the slot key will be missing. -- The value for a given slot is a list of objects {form=FORM, footnotes=FOOTNOTES}. -- -- If `use_variant_codes` is given, add VAR1 (Unicode 0xFFF0) to feminine -- instrumental singular endings in -й and VAR2 (Unicode 0xFFF1) to -- corresponding endings in -ю. The same additions will be made to corresponding -- noun endings, which will ensure that adjectival forms in -й are attached -- only to nominal forms in -й and vice-versa. function export.do_generate_forms(parent_args, pos, from_headword, def, use_variant_codes) local params = { [1] = {required = true, default = def or "сі́ні"}, title = {}, }	for _, slot in ipairs(input_adjective_slots) do		params[slot] = {} end

local args = m_para.process(parent_args, params) local parse_props = { parse_indicator_spec = parse_indicator_spec, allow_default_indicator = true, }	local alternant_multiword_spec = iut.parse_inflected_text(args[1], parse_props) alternant_multiword_spec.title = args.title alternant_multiword_spec.forms = {} normalize_all_lemmas(alternant_multiword_spec) detect_all_indicator_specs(alternant_multiword_spec, use_variant_codes) local inflect_props = { slot_table = get_output_adjective_slots(alternant_multiword_spec, "with linked"), -- See documentation for `use_variant_codes` in do_generate_forms. get_variants = com.get_variants, inflect_word_spec = decline_adjective, }	iut.inflect_multiword_or_alternant_multiword_spec(alternant_multiword_spec, inflect_props) process_overrides(alternant_multiword_spec.forms, args) set_accusative(alternant_multiword_spec) add_categories(alternant_multiword_spec) return alternant_multiword_spec end

-- Externally callable function to parse and decline an adjective where all -- forms are given manually. Return value is WORD_SPEC, an object where the -- declined forms are in `WORD_SPEC.forms` for each slot. If there are no values -- for a slot, the slot key will be missing. The value for a given slot is a -- list of objects {form=FORM, footnotes=FOOTNOTES}. function export.do_generate_forms_manual(parent_args, pos, from_headword, def) local params = { special = {}, footnote = {list = true}, title = {}, }	for _, slot in ipairs(input_adjective_slots) do		params[slot] = {} end

local args = m_para.process(parent_args, params) local alternant_multiword_spec = { special = args.special, title = args.title, footnotes = args.footnote, forms = {}, manual = true, }	process_overrides(alternant_multiword_spec.forms, args) set_accusative(alternant_multiword_spec) add_categories(alternant_multiword_spec) return alternant_multiword_spec end

-- Entry point for. Template-callable function to parse and decline -- an adjective given user-specified arguments and generate a displayable table -- of the declined forms. function export.show(frame) local parent_args = frame:getParent.args local alternant_multiword_spec = export.do_generate_forms(parent_args) show_forms(alternant_multiword_spec) return make_table(alternant_multiword_spec) .. require("Module:utilities").format_categories(alternant_multiword_spec.categories, lang) end

-- Entry point for. Template-callable function to parse and -- decline an adjective given manually-specified inflections and generate a -- displayable table of the declined forms. function export.show_manual(frame) local parent_args = frame:getParent.args local alternant_multiword_spec = export.do_generate_forms_manual(parent_args) show_forms(alternant_multiword_spec) return make_table(alternant_multiword_spec) .. require("Module:utilities").format_categories(alternant_multiword_spec.categories, lang) end

-- Concatenate all forms of all slots into a single string of the form -- "SLOT=FORM,FORM,...|SLOT=FORM,FORM,...|...". Embedded pipe symbols (as might -- occur in embedded links) are converted to <!>. If INCLUDE_PROPS is given, -- also include additional properties (currently, none). This is for use by -- bots. local function concat_forms(alternant_multiword_spec, include_props) local ins_text = {} for slot, _ in pairs(get_output_adjective_slots(alternant_multiword_spec)) do		local formtext = iut.concat_forms_in_slot(alternant_multiword_spec.forms[slot]) if formtext then table.insert(ins_text, slot .. "=" .. formtext) end end return table.concat(ins_text, "|") end

-- Template-callable function to parse and decline an adjective given -- user-specified arguments and return the forms as a string -- "SLOT=FORM,FORM,...|SLOT=FORM,FORM,...|...". Embedded pipe symbols (as might -- occur in embedded links) are converted to <!>. If |include_props=1 is given, -- also include additional properties (currently, none). This is for use by -- bots. function export.generate_forms(frame) local include_props = frame.args["include_props"] local parent_args = frame:getParent.args local alternant_multiword_spec = export.do_generate_forms(parent_args) return concat_forms(alternant_multiword_spec, include_props) end

return export

title: Module:User:Benwing2/be-adjective


text:
User talk:Benwing2/test-be-adecl

Module for Belarusian adjectives needs beta-testing. Can you fix the examples to use real Belarusian words everywhere and check the endings? Benwing2 (talk) 03:45, 5 July 2020 (UTC)
 * Also, if you can create example pages with declensions for words like, , (stress may be wrong; ideally both possessive and surname variants),  (form may be wrong; ideally both possessive and surname variants) and  (form may be wrong), I can add support for them. Benwing2 (talk) 03:48, 5 July 2020 (UTC)

 * Thank you. "brother's" possessive adjective is, here are all the forms. It's in slounik but might be hard to read and interpret at first. Please note how ў alternates with в:
 * masc. бра́таў, бра́тавага, бра́таваму, бра́тавага (anim)/бра́таў(inanim), бра́тавым, бра́тавым
 * fem: бра́тава, бра́тавай, бра́тавай, бра́таву, бра́тавай or бра́таваю, бра́тавай
 * neut: бра́тава, бра́тавага, бра́таваму, бра́тава, бра́тавым, бра́тавым
 * plural: бра́тавы, бра́тавых, бра́тавым, бра́тавых (anim)/бра́тавы (inanim), бра́тавымі, бра́тавых
 * Belarusian words can't end in -в or have в in front of a consonant. There are a few other impossible combinations. All Russian surnames in -ов, ев, ёв end in ў. --Anatoli T. (обсудить/вклад) 08:00, 5 July 2020 (UTC)

 * Here's a declension of Бы́каў (from Russian Бы́ков), a Russian native surname in Belarusian.
 * masc. Бы́каў, Бы́кава, Бы́каву, Бы́кава, Бы́кавым, Бы́каве
 * fem: Бы́кава, Бы́кавай, Бы́кавай, Бы́кавау, Бы́кавай or Бы́каваю, Бы́кавай
 * plural: Бы́кавы, Бы́кавых, Бы́кавым, Бы́кавых, Бы́кавымі, Бы́кавых
 * I don't know with 100% certainty how to decline Ukrainian surnames, such as . I find different variants. I'll research more. --Anatoli T. (обсудить/вклад) 08:11, 5 July 2020 (UTC)
 * -ін/-ын possessive adjectives or surnames are declined like possessives or surnames above but without ў/в alternations.
 * One definite (confirmed) short adjective you can include is здаро́ў (m)/здаро́ва (f)/здаро́ва (n)/здаро́вы (pl) for . Please note the final -ў in the masculine short form.
 * I will add more short adjectives if I find them. --Anatoli T. (обсудить/вклад) 08:20, 5 July 2020 (UTC)

title: User talk:Benwing2/test-be-adecl


text:
Stomoxys

Etymology
, from.

Hypernyms

 * ; - subfamily;  - tribe

Hyponyms

 * (stable fly) - type species

title: Stomoxys


text: sáto

title: sáto


text: spaní

title: spaní


text:
spací

Etymology
From.

Adjective

 * 1) sleeping (used for sleep)

title: spací


text: bděl

title: bděl


text:
Citations:汝

Azuma Asobi

 * ,  Uta (song 2)

Kojiki

Nihon Shoki

 * "ja"
 * "ja"

- 飫襃枳瀰能耶陛能矩瀰哿枳哿哿梅騰謀儺嗚阿摩之耳彌哿哿農倶彌柯枳

Man'yōshū

 * , text here

 * , text here

 * , text here

 * , text here
 * [Note: second variant replaces the last line papa ni tagapi1nu with ]
 * , text here
 * , text here
 * , text here
 * , text here

 * , text here

Shoku Nihongi

 * 724, Shoku Nihongi (Jinki 1, fourth day of the second month: imperial edict 5)
 * 764, Shoku Nihongi ( 8, ninth day of the tenth month: imperial edict 29)
 * 771, Shoku Nihongi ( 2, twenty-second day of the second month: imperial edict 51)
 * 771, Shoku Nihongi (Hōki 2, twenty-second day of the second month: imperial edict 52)
 * 771, Shoku Nihongi ( 2, twenty-second day of the second month: imperial edict 51)
 * 771, Shoku Nihongi (Hōki 2, twenty-second day of the second month: imperial edict 52)
 * 771, Shoku Nihongi (Hōki 2, twenty-second day of the second month: imperial edict 52)

Pronoun: “one, oneself”

 * , text here

 * , text here

title: Citations:汝


text: bdě

title: bdě


text: bdíc

title: bdíc


text: bdíce

title: bdíce


text: 范阳

title: 范阳


text: bdí

title: bdí


text: bdi

title: bdi


text:
ʔilax̌ad

Noun

 * 1) edge, side
 * ʔilax̌ad tiʔəʔ swatixʷtəd
 * ends of the earth

title: ʔilax̌ad


text: bděn

title: bděn


text:
Template:Sarcophagidae Hypernyms

 * Brachycera - suborder; Muscomorpha - infraorder; Oestroidea - superfamily; Sarcophagidae - family

title: Template:Sarcophagidae Hypernyms


text: ʔilax̌əd

title: ʔilax̌əd


text:
sʔilax̌ad

Noun

 * 1) hired hand, employee, someone who works under someone's direction

title: sʔilax̌ad


text: sʔilax̌əd

title: sʔilax̌əd


text:
xʷʔilax̌ad

Noun

 * 1) side of body

title: xʷʔilax̌ad


text:
類毒素

Noun

 * 1)  toxoid

title: 類毒素


text: 类毒素

title: 类毒素


text:
dxʷʔilaladiʔ

Noun

 * 1) cheek

title: dxʷʔilaladiʔ


text:
差額選舉

Noun

 * 1) competitive election

title: 差額選舉


text: 差额选举

title: 差额选举


text: 等額選舉

title: 等額選舉


text: 等额选举

title: 等额选举


text:
stillongs

Etymology
, originally a trademark.

Noun

 * 1) tights

Etymology
, originally a trademark.

Noun

 * 1) tights

title: stillongs


text: Template:RQ:Onkelos

title: Template:RQ:Onkelos


text:
αντεγγυώμαι

Verb

 * 1) to countersecure

title: αντεγγυώμαι


text: αντεγγυήθηκα

title: αντεγγυήθηκα


text:
sʔilalubid

Noun

 * 1) shoulder

title: sʔilalubid


text:
Citations:Hamilsquad

Proper noun: "(fandom slang) the central characters of the musical Hamilton as a group"

 * 2017, Jasmine Mentzer, "'Hamilton' dazzles critics with musical", Wildcat (University High School, Los Angeles, California), 12 December 2017, page 2 (image caption):
 * After the patriot's triumphant victory over the Brits, the Hamilsquad relish in the fact that 'the world turned upside down.”
 * 2020, Anne Hart, "HART TO HEART: How to survive ’Hamilton’ fanatics", Savannah Morning News, 27 June 2020:
 * The term Hamilsquad, for example, is used in the fandom to refer to Hamilton's friends John Laurens, Hercules Mulligan, Marquis de Lafayette.

Proper noun: "(fandom slang) the fandom of the musical Hamilton"

 * 2018, Carrie Edelstein, "Hamilton Star Brings 'Fearless' To St. Louis", Sophisticated Living, March/April 2018, page 70:
 * Many will see the musical about America's founding father, Alexander Hamilton, for the first time (perhaps the third or fourth time for members of the Hamilsquad!).

title: Citations:Hamilsquad


text:
náprstok

Etymology
.

Noun

 * 1) thimble cap for the fingers

title: náprstok


text:
αντέγκληση

Noun

 * 1) recrimination, countercharge

title: αντέγκληση


text:
sʔilaligʷəd

Noun

 * 1) whole side; one side as opposed to the other

title: sʔilaligʷəd


text: αντέγκλησης

title: αντέγκλησης


text: αντεγκλήσεως

title: αντεγκλήσεως


text: αντεγκλήσεων

title: αντεγκλήσεων


text: αντεγκλήσεις

title: αντεγκλήσεις


text:
aryloxypyrimidine

Noun

 * 1)  Any aryloxy derivative of a pyrimidine

title: aryloxypyrimidine


text: げんど

title: げんど


text:
autobiotinylate

Verb

 * 1) To produce, or to undergo autobiotinylation

title: autobiotinylate


text: gendo

title: gendo


text:
ʔilay̓staq

Preposition

 * 1) near the fire
 * ʔal tiʔiɬ ʔilay̓staq ʔə tiʔiɬ
 * by the fireplace

title: ʔilay̓staq


text:
autobiotinylated

Adjective

 * 1) Modified by autobiotinylation

title: autobiotinylated


text: barachory

title: barachory


text:
Wiktionary talk:Votes/bt-2020-05/User:Tr-conj-bot for bot status

, just a reminder that your bot is good to go. —Μετάknowledge discuss/deeds 05:35, 5 July 2020 (UTC)


text:
ʔilgʷiɬ

Noun

 * 1) shore, shoreline

title: ʔilgʷiɬ


text:
bidigital

Adjective

 * 1) Relating to two digits (typically fingers)

title: bidigital


text:
liɬʔilgʷiɬ

Preposition

 * 1) along the shoreline

title: liɬʔilgʷiɬ


text:
binimetinib

Etymology

From.

Noun

 * 1)  A drug with the molecular formula C₁₇H₁₅BrF₂N₄O₃ that inhibits mitogen-activated protein kinase kinase (MEK), and is approved for use in combination with encorafenib to treat certain melanomas.

Translations

 * Hebrew: בינימטיניב
 * Japanese: ビニメチニブ
 * Serbo-Croatian:
 * Roman: binimetinib

title: binimetinib


text:
αντικατηγορία

Noun

 * 1) recrimination

title: αντικατηγορία


text: αντικατηγορίας

title: αντικατηγορίας


text:
bioaugmenting

Adjective

 * 1) That undergoes bioaugmentation

title: bioaugmenting


text: αντικατηγοριών

title: αντικατηγοριών


text: αντικατηγορίες

title: αντικατηγορίες


text:
孫女子

Noun

 * 1)  granddaughter one's son's daughter

title: 孫女子


text:
ʔilǰiqad

Noun

 * 1) bank or slope down to a river or lake

title: ʔilǰiqad


text: 孙女子

title: 孙女子


text:
阿娘孫

Noun

 * 1)  granddaughter one's son's daughter
 * 2)  fraternal niece brother's daughter

title: 阿娘孫


text:
bioelectrocatalyst

Noun

 * 1) A catalyst used in bioelectrocatalysis

title: bioelectrocatalyst


text: bioelectrocatalysts

title: bioelectrocatalysts


text: 阿娘孙

title: 阿娘孙


text:
коханий

Adjective

 * 1) beloved

Noun

 * 1) beloved, love

title: коханий


text:
biopedagogy

Noun

 * 1) The teaching of various aspects of biology

title: biopedagogy


text: biopedagogies

title: biopedagogies


text:
αντεθνικός

Adjective

 * 1) antinational, unpatriotic

title: αντεθνικός


text:
biopellet

Noun

 * 1) A biodegradable pellet used to deliver a material slowly over time (typically in an aquarium)

title: biopellet


text: biopellets

title: biopellets


text: brachycephaloid

title: brachycephaloid


text:
Talk:阿啞

Pronunciation
Wondering about your edit here. All my sources show aa3 ngaa2. Isn't "aa3 aa2" just 懶音? --Mar vin kaiser (talk) 05:57, 5 July 2020 (UTC)
 * The general rule is that ng- only appears with tones 4, 5 and 6 (陽調), which seems to apply to this word as well. Most character dictionaries have aa2. There are some exceptions to this, especially with colloquial words like 啱. ng- with tones 1, 2 and 3 is likely some sort of hypercorrection. — justin(r)leung { (t...) 06:01, 5 July 2020 (UTC)
 * = aa3 ngaa2 is 懶音 :P —Suzukaze-c (talk) 06:06, 5 July 2020 (UTC)
 * I do wonder though. If a lot of people today do pronounce it with 懶音, shouldn't that reflect what is in Wiktionary? Since this dictionary isn't a prescriptive project in the first place lol. --Mar vin kaiser (talk) 08:37, 3 December 2020 (UTC)
 * I think it should only be reflected in the IPA since these are kind of predictable things in most cases. — justin(r)leung { (t...) 08:55, 3 December 2020 (UTC)

title: Talk:阿啞


text:
cardiotopography

Noun

 * 1) The topography of the heart

title: cardiotopography


text:
αντεισαγγελέας

Noun

 * 1) deputy district attorney, deputy public prosecutor

title: αντεισαγγελέας


text: 日本血吸蟲

title: 日本血吸蟲


text: cefoxitine

title: cefoxitine


text: 日本血吸虫

title: 日本血吸虫


text: αντεισαγγελέα

title: αντεισαγγελέα


text: αντεισαγγελείς

title: αντεισαγγελείς


text: αντεισαγγελέων

title: αντεισαγγελέων


text:
chaiyaphumine

Noun

 * 1)  Any of a class of cyclodepsipeptide present in some bacteria

title: chaiyaphumine


text:
Pthirus

Etymology
, from.

Hyponyms

 * - selected species

title: Pthirus


text:
chemoprotector

Noun

 * 1) Any material that provides chemoprotection

title: chemoprotector


text: chemoprotectors

title: chemoprotectors


text:
Module talk:zh/data/dial-syn/都

About 攏總
About your question, I would say 攏總 is more like 全部. What would you say is the difference between 全部 and 都? --Mar vin kaiser (talk) 06:07, 5 July 2020 (UTC)
 * 全部 is more of a noun and 都 is definitely an adverb. You can say 我們全部都來了. — justin(r)leung { (t...) 06:21, 5 July 2020 (UTC)

title: Module talk:zh/data/dial-syn/都


text:
Pthiridae

Etymology
From.

Hyponyms

 * - genus

title: Pthiridae


text:
Template:Pthiridae Hypernyms

 * Pthiridae - family

title: Template:Pthiridae Hypernyms


text:
chloronitrile

Noun

 * 1)  Any compound that has both chloride and nitrile groups

title: chloronitrile


text: bīchi

title: bīchi


text:
cinnamoylglycine

Noun

 * 1)  An N-cinnamoyl derivative of glycine

title: cinnamoylglycine


text:
punye

Noun

 * 1)  scalp ringworm

title: punye


text:
cobimetinib

Noun

 * 1)  A mitogen-activated protein kinase inhibitor used, in combination with vemurafenib to treat melanoma

title: cobimetinib


text:
க்ஷ

Letter

 * 1) an irregular ligature of 🇰🇲 in Tamil, treated as a single consonant letter on its own when the vowel  notation is not present (க்ஷ்). Used mostly in loanwords and Tamil transliterations.
 * Example: ,

title: க்ஷ


text:
coprodeum

Noun

 * 1) The most cranial division of the cloaca

title: coprodeum


text:
costotransversal

Etymology
en

title: costotransversal


text: válce

title: válce


text: válci

title: válci


text:
cryostored

Adjective

 * 1) stored at a very low temperature

title: cryostored


text: války

title: války


text:
cyclizable

Adjective

 * 1)  Able to undergo cyclization

title: cyclizable


text:
bouchnout

Verb

 * 1) to explode
 * 2) to bang, slam
 * 3) to hit, strike
 * 1) to hit, strike
 * 1) to hit, strike

title: bouchnout


text: válko

title: válko


text: válku

title: válku


text: válkou

title: válkou


text: válek

title: válek


text: válkách

title: válkách


text: válkami

title: válkami


text: válkám

title: válkám


text:
Xenopsylla

Etymology
, from.

Hyponyms

 * - species

title: Xenopsylla


text:
потрібний

Etymology
, from and  (from ), possibly later reinforced by. .

Adjective

 * 1) necessary, needed, required

title: потрібний


text:
любий

Etymology
Inherited from.

Adjective

 * 1) dear, beloved

Noun

 * 1) dear, darling, sweetheart, love
 * 2) honey, darling, sweetheart

Determiner

 * 1)  any, either, whichever one wants

title: любий


text:
люба

Noun

 * 1) dear, darling, sweetheart, love
 * 2) honey, darling, sweetheart

title: люба


text:
єдиний

Etymology
Derived from +. Related to 🇨🇬.

Adjective

 * 1) only, sole
 * 2) united, unified, integral, indivisible
 * 3) single
 * 4) common
 * 1) common

Derived terms

 * (narwhal, unicorn)

Related terms

 * (one)
 * (to unite)
 * (unity)

title: єдиний


text:
певний

Etymology
Borrowed from.

Adjective

 * 1) certain, sure
 * 2) firm
 * 3) correct, accurate, reliable
 * 4) precise, definite
 * 5) reliable, trustworthy
 * 6) some, a certain

title: певний


text:
величезний

Adjective

 * 1) huge, enormous, vast, immense, great
 * 2) boundless, endless, infinite

title: величезний


text: ввесь

title: ввесь


text:
捲閘

Noun

 * 1) roller shutter

title: 捲閘


text: 卷闸

title: 卷闸


text: 弄伤

title: 弄伤


title: User:Benwing2/uk-у-в


title: User:Benwing2/test-uk-у-в


text: いっぴん

title: いっぴん


text:
User talk:Hazdotian

--Vahag (talk) 07:06, 5 July 2020 (UTC)

title: User talk:Hazdotian


text:
Template talk:U:uk:у-в

This is now backed by Lua. Only one argument is needed; the other is automatically computed. Benwing2 (talk) 07:09, 5 July 2020 (UTC)

title: Template talk:U:uk:у-в


text:
увесь

Pronoun

 * 1) all, the whole

title: увесь


text:
debordant

Noun

 * 1) A stone age flint scraper

Etymology
.

Adjective

 * 1) overflowing

title: debordant


text:
πωλούμε

Alternative forms

 * of πουλάω / πουλώ

title: πωλούμε


text: debordants

title: debordants


text:
decadienoic acid

Noun

 * 1)  Any dicarboxylic acid that has ten carbon atoms and two double bonds

Related terms

 * decadienoate

title: decadienoic acid


text:
deoxycarnitine

Noun

 * 1)  A deoxy form of carnitine released into the bloodstream from muscles

title: deoxycarnitine


text: 廣東住血線蟲

title: 廣東住血線蟲


text: 广东住血线虫

title: 广东住血线虫


text:
depletome

Noun

 * 1)  All the proteins in an organism that have been depleted by immunoffinity.

title: depletome


text: αντλούμαι

title: αντλούμαι


text: αντλούμε

title: αντλούμε


text: αντλήθηκα

title: αντλήθηκα


text:
deplex

Verb

 * 1) To separate and isolate the individual signals in a multiplex stream

title: deplex


text: deplexing

title: deplexing


text:
αντλημένος

Etymology
, passive voice of.

Participle

 * 1) drawn, concluded

title: αντλημένος


text:
difurocoumarin

Noun

 * 1)  Any organic compound containing a coumarin fused to two furan rings

title: difurocoumarin


text:
Talk:cjap

Etymology
The etymology is none, because no clear line and no source is given. Most probable might be the Turcish source, due to the long-lasting Turcic occupation, and sound change from e to a. 2A02:8108:9640:AC3:E53B:B5C1:DA9:85B5 07:39, 5 July 2020 (UTC)

title: Talk:cjap


text:
中板

Noun

 * 1)  moderato

title: 中板


text: απέτισα

title: απέτισα


text:
disalicylate

Noun

 * 1)  Any salt or ester that contains two salicylate anions or groups

title: disalicylate


text: απαιτούμε

title: απαιτούμε


text:
discorrelation

Noun

 * 1) A negative correlation

title: discorrelation


text:
docosadioate

Noun

 * 1)  Any salt or ester of a docosadioic acid

title: docosadioate


text:
эбес

Etymology
Cognate with 🇨🇬, 🇨🇬, 🇨🇬, 🇨🇬, 🇨🇬.

Adverb

 * 1) is not

title: эбес


text:
ecodistance

Noun

 * 1)  The difference in value of two related ecological variables

title: ecodistance


text: ecodistances

title: ecodistances


text:
ecohydrogeomorphic

Adjective

 * 1) ecological and hydrogeomorphic

title: ecohydrogeomorphic


text: electrodialytical

title: electrodialytical


title: Template:R:xcl:Rivola:1633


text:
elongatedness

Noun

 * 1) The condition of being elongated

title: elongatedness


text: enzulatamide

title: enzulatamide


text: επαινούμε

title: επαινούμε


text:
epilittoral

Adjective

 * 1) Above a littoral zone

title: epilittoral


text:
floodprone

Alternative forms

 * flood-prone

Etymology
From.

Adjective

 * 1) That is prone (liable) to flooding

title: floodprone


text:
formylglycinamidine

Noun

 * 1)  The N-formyl derivative of glycinamidine

title: formylglycinamidine


text:
glycinamidine

Noun

 * 1)  The amidine of glycine "carbamimidoyl 2-aminoacetate"

title: glycinamidine


text: fuzzywuzzy

title: fuzzywuzzy


text: gabapentenoid

title: gabapentenoid


text: gabapentenoids

title: gabapentenoids


text:
айсор

Etymology
.

Noun

 * 1)  Syriac, Assyrian

Usage notes

 * The word commonly designated the speakers of Assyrian Neo-Aramaic which fled their homeland in the areas around Lake Urmia in Persia and settled in the Russian Empire after the

title: айсор


text:
galloepicatechin

Noun

 * 1)  A gallate of epicatechin

title: galloepicatechin


text: galloepicatechins

title: galloepicatechins


text: geovisualisation

title: geovisualisation


text:
εισήγηση

Noun

 * 1) suggestion, recommendation, proposal

title: εισήγηση


text:
coevalist

Noun

 * 1) Someone or something born or arising at the same time as another.

title: coevalist


text: εισήγησης

title: εισήγησης


text: coevalists

title: coevalists


text: εισηγήσεως

title: εισηγήσεως


text: εισηγήσεων

title: εισηγήσεων


text: εισηγήσεις

title: εισηγήσεις


text:
αντεισήγηση

Noun

 * 1) counterproposal

title: αντεισήγηση


text: αντεισήγησης

title: αντεισήγησης


text: αντεισηγήσεως

title: αντεισηγήσεως


text: αντεισηγήσεων

title: αντεισηγήσεων


text: αντεισηγήσεις

title: αντεισηγήσεις


text:
αντεκδίκηση

Noun

 * 1) revenge, retaliation, vengeance

title: αντεκδίκηση


text: αντεκδίκησης

title: αντεκδίκησης


text: αντεκδικήσεως

title: αντεκδικήσεως


text: αντεκδικήσεων

title: αντεκδικήσεων


text: Wiktionary:Word of the day/2020/July 30

title: Wiktionary:Word of the day/2020/July 30


text: αντεκδικήσεις

title: αντεκδικήσεις


text:
focussen

Etymology 1
From.

Verb

 * 1)  to focus (oneself)

title: focussen


text: Category:mul:Motor racing

title: Category:mul:Motor racing


text:
chủ nghĩa đế quốc

Etymology
🇰🇲, a.

Noun

 * 1) imperialism

title: chủ nghĩa đế quốc


text:
Helleen

Etymology
Borrowed from.

Noun

 * 1) A Hellene, an ethnic Greek.

title: Helleen


text:
экеу

Etymology
Cognate with 🇨🇬, 🇨🇬, 🇨🇬, 🇨🇬, 🇨🇬, 🇨🇬.

Numeral

 * 1) two
 * 2) two of.

title: экеу


text: hellenismus

title: hellenismus


text: Onno

title: Onno


text: coordinatarum

title: coordinatarum


text: coordinatas

title: coordinatas


text: coordinatae

title: coordinatae


text:
αντεκδικούμαι

Verb

 * 1) to retaliate, revenge, avenge

title: αντεκδικούμαι


text: coordinatam

title: coordinatam


text: coordinatis

title: coordinatis


title: Template:el-conjug-2nd-B-double


text:
Reconstruction:Proto-West Germanic/sinþ

Etymology
From.

Noun

 * 1)  journey, way, path
 * 2)  time, occasion

title: Reconstruction:Proto-West Germanic/sinþ


text:
Reconstruction:Proto-West Germanic/sinþōn

Etymology
From. Equivalent to.

Verb

 * 1)  to go on a journey, travel


text:
Template:el-conjug-2nd-B-double/documentation

 * 2nd Conjugation, Class B with two infixes instead of one. Expected result
 * infix-act-s-1 and -2
 * infix-pass-s-1 and 2
 * It calls which formats the table
 * It also calls various templates (of general form el-conjug-sub---)
 * Also see Greek verb inflection-table templates/Parameters

Example

 * The conjugation of with double infix -ησ-, -εσ- / -ηθ-, -εθ-

gives:

Input parameters
If a second passive is needed (present -ιέμαι, imperfect -ιόμουν(α), add passive-2= as in . Add note1 too!
 * present
 * a-simplepast
 * infix-act-1 (for active forms)
 * infix-act-s-1 (streesed form of infix-act-1)
 * infix-pass-1 (for passive forms)
 * infix-pass-s-1
 * infix-ppp-1 (for passive perfect participle)
 * infix-act-2
 * infix-act-s-2
 * infix-pass-2
 * infix-pass-s-2
 * infix-ppp-2


text: Castroneves

title: Castroneves


text: αντεμετικός

title: αντεμετικός


text: Category:Tregami terms inherited from Proto-Nuristani


text: Category:Tregami terms derived from Proto-Indo-Iranian


text: Category:Tregami terms inherited from Proto-Indo-Iranian


text: Category:Tregami terms derived from Proto-Nuristani


text: Category:Tregami terms inherited from Proto-Indo-European


text: Category:Tregami terms derived from Proto-Indo-European


text: Category:Tregami lemmas

title: Category:Tregami lemmas


text: Category:Tregami terms derived from Indo-European languages


text: Category:Tregami terms derived from other languages


text: Category:Tregami terms by etymology

title: Category:Tregami terms by etymology


text: Category:Tregami nouns

title: Category:Tregami nouns


text: Category:Tregami inherited terms

title: Category:Tregami inherited terms


text: Category:Tregami terms derived from Indo-Iranian languages


text:
hellenist

Etymology
Borrowed from. is attested considerably later.

Noun

 * 1)  A Helleniser, a Hellenised Jew, a Hellenist ancient Jew who had adopted Ancient Greek customs.
 * 2)  A Hellenist one of any non-Greek people who had adopted Ancient Greek customs.

title: hellenist


text: hellenisten

title: hellenisten


text: καρνάγιου

title: καρνάγιου


text: καρνάγιων

title: καρνάγιων


text: καρνάγια

title: καρνάγια


text: ναυπηγείου

title: ναυπηγείου


text: ναυπηγείων

title: ναυπηγείων


text: ναυπηγεία

title: ναυπηγεία


text:
naprzemienny

Etymology
From.

Adjective

 * 1) alternate

title: naprzemienny


text:
naprzemiennie

Etymology
From.

Adverb

 * 1) alternately, by turns

title: naprzemiennie


text: 𰿉

title: 𰿉


text:
Talk:𐌲𐌰𐍃𐌹𐌽𐌸𐌰

n-stem?
The two entries state that they are attested only in the dative singular. But that form is ambiguous as to whether it's an an-stem or an a-stem. Given that a-stem forms are much more frequent in West Germanic, do you think the Gothic form could be one, too? —Rua (mew) 09:53, 5 July 2020 (UTC)
 * Good question. Given the -j- suffix, almost certainly belongs to an an-stem lemma (see ).  could technically speaking go both ways, but an an-stem noun makes more sense: agent nouns are very often weak in Gothic and the combination ga- + ... + -a in particular has a lot of precedent. Compare such formations as, ,  and . In contrast, Category:Gothic a-stem nouns contains no agent nouns with ga-. Therefore I followed the lead of Köbler and Lehmann, who both suppose an an-stem nom. sg. form. — Mnemosientje (t · c) 08:57, 6 July 2020 (UTC)
 * Hmm, I wonder why the West Germanic languages went in such a different direction then. Reconstructing a common origin is proving to be a problem. —Rua (mew) 09:31, 6 July 2020 (UTC)

title: Talk:𐌲𐌰𐍃𐌹𐌽𐌸𐌰


text: оларға

title: оларға


text:
postorderbedrijf

Etymology
Compound of.

Noun

 * 1) mail order company

title: postorderbedrijf


text: postorderbedrijven

title: postorderbedrijven


text:
zgodnie

Etymology
From. .

Adverb

 * 1)  agreeably, harmoniously, concordantly, unanimously
 * 2) rightly, properly, appropriately
 * 1) rightly, properly, appropriately
 * 1) rightly, properly, appropriately
 * 1) rightly, properly, appropriately

Etymology
..

Adverb

 * 1) agreeably, harmoniously, concordantly, unanimously
 * 2) accordingly, correspondingly
 * 3)  rightly, properly, appropriately
 * 1) accordingly, correspondingly
 * 2)  rightly, properly, appropriately
 * 1)  rightly, properly, appropriately

Etymology
..

Adverb

 * 1) agreeably, harmoniously, concordantly, unanimously

title: zgodnie


text: drive by

title: drive by


text: drive bys

title: drive bys


text:
彌撒曲

Noun

 * 1)  mass (a musical setting of parts of the mass)

title: 彌撒曲


text:
rozporządzenie

Etymology
From.

Noun

 * 1)  regulation, ordinance, edict
 * 1)  regulation, ordinance, edict

title: rozporządzenie


text: 弥撒曲

title: 弥撒曲


text: 場高學

title: 場高學


text: capital appreciation bonds

title: capital appreciation bonds


text: 𰾚

title: 𰾚


text: 𰾛

title: 𰾛


text:
rozporządzić

Etymology
From.

Verb

 * 1)  to command, to decide what will happen to

title: rozporządzić


text: 𰾛刀

title: 𰾛刀


text: 𰾛票

title: 𰾛票


text:
rozporządzać

Etymology
From.

Verb

 * 1)  to command, to dispose of
 * 2)  to have at one's disposal, to manage
 * 1)  to have at one's disposal, to manage

title: rozporządzać


text:
යථා

Adverb

 * 1)  (“as, like”)

title: යථා


text: συγχωριέμαι

title: συγχωριέμαι


text: frakken

title: frakken


text: συγχωρέθηκα

title: συγχωρέθηκα


text:
dysponować

Etymology
+.

Verb

 * 1)  to have, to have at one's disposal

title: dysponować


text:
ծխած

Adjective

 * 1)  high, smoked up, stoned (intoxicated from smoking marijuana)

title: ծխած


text:
dyspozycja

Etymology
.

Noun

 * 1) order, instruction
 * 2) disposition
 * 1) disposition

title: dyspozycja


text:
αντένα

Noun

 * 1) spar, yard, boom

title: αντένα


text:
قاتم

Adjective

 * 1) dark, gloomy

title: قاتم


text:
ذليل

Etymology
-type stative-verb from the verb.

Adjective

 * 1) servile
 * 2) despicable, very contemptible
 * 3) wormy

title: ذليل


text:
dyspozycyjny

Etymology
From.

Adjective

 * 1) at one's disposal, available, disposable

title: dyspozycyjny


text: ᑮᔮᓇᐤ

title: ᑮᔮᓇᐤ


text:
kroep

Etymology 1
Probably borrowed from, from.

Noun

 * 1) croup viral or diphtherial infection of the larynx

Etymology 2
Probably borrowed from, from , from , from , from.

Noun

 * 1) croup, croupe hindpart of the rump of a horse

title: kroep


text:
kîyawâw

Etymology
From.

Pronoun

 * 1) ye, you

title: kîyawâw


text: ᑮᔭᐚᐤ

title: ᑮᔭᐚᐤ


text: αντένας

title: αντένας


text: αντενών

title: αντενών


text: αντένες

title: αντένες


text:
dyspozycyjność

Etymology
From.

Noun

 * 1) availability

title: dyspozycyjność


text:
信德語

Noun

 * 1) Sindhi language

title: 信德語


text: 信德语

title: 信德语


text:
magtár

Etymology
.

Noun

 * 1)  granary storage facility for grain

title: magtár


text:
طمرة

Noun

 * 1) origin; first period of youthfulness

title: طمرة


text:
محتقر

Adjective

 * 1) despised

title: محتقر


text: haemojuvelin

title: haemojuvelin


text: ᐑᔭᐚᐤ

title: ᐑᔭᐚᐤ


text:
haemonchosis

Noun

 * 1) A disease that affects the abomasum of sheep, goats and cattle

title: haemonchosis


text:
wîyawâw

Etymology
From.

Pronoun

 * 1) they

title: wîyawâw


text:
طمث

Noun

 * 1) menstruation

title: طمث


text:
headfire

Noun

 * 1) A smaller fire moving in front of a larger one spread by the wind.

title: headfire


text: headfires

title: headfires


text:
hemicord

Noun

 * 1)  Each side of a spinal cord (separated by the midline)

Adjective

 * 1) Describing any of several syndromes caused by damage to one side of the spinal cord

title: hemicord


text:
achtminütig

Adjective

 * 1) eight-minute

title: achtminütig


text:
heterochromatinizing

Adjective

 * 1) Causing heterochromatinization

title: heterochromatinizing


title: 8-minütig


text:
طواف

Noun

 * 1) circling, circumambulation
 * 2)  tawaf
 * 1)  tawaf

Noun

 * 1) wanderer

Noun

 * 1) tawaf

Etymology
From, from.

Verb

 * 1)  to circumambulate
 * 2) to perform the tawaf

title: طواف


text:
ustanowienie

Etymology
From.

Noun

 * 1)  establishment, institution, implementation
 * 1)  establishment, institution, implementation

title: ustanowienie


text:
scepticus

Etymology
Borrowed from.

Noun

 * 1)  a skeptic, a member of the sect of skeptics
 * 2) * 2011 (quoting an earlier text?), Bernard J. F. Lonergan, "De Conscientia Christi", in Early Latin Theology, University of Toronto Press (ISBN 9781442612358), page 554:
 * "la"
 * 1) * 2011 (quoting an earlier text?), Bernard J. F. Lonergan, "De Conscientia Christi", in Early Latin Theology, University of Toronto Press (ISBN 9781442612358), page 554:
 * "la"

- 16. Quo clarius et facilius inter conscientiam et experientiam distinguatur, iuvat illud Aristotelicum considerare, nempe, qui cum sceptico tractat, efficere oportere ut scepticus loquatur. Vis huius consilii in eo reponitur quod de facto ille qui scepticus est etiam intelligens et rationabilis est.

title: scepticus


text:
heterocrine

Adjective

 * 1) Both endocrine and exocrine

title: heterocrine


text:
nîsta

Pronoun

 * 1)  I, me

title: nîsta


text: ᓃᐢᑕ

title: ᓃᐢᑕ


text:
hydroxyindole

Noun

 * 1)  Any hydroxy derivative of an indole

title: hydroxyindole