<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://linguifex.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3Amdf-translit</id>
	<title>Module:mdf-translit - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://linguifex.com/w/index.php?action=history&amp;feed=atom&amp;title=Module%3Amdf-translit"/>
	<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:mdf-translit&amp;action=history"/>
	<updated>2026-05-14T00:52:16Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.43.6</generator>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:mdf-translit&amp;diff=495129&amp;oldid=prev</id>
		<title>Sware: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:mdf-translit&amp;diff=495129&amp;oldid=prev"/>
		<updated>2026-04-21T12:00:23Z</updated>

		<summary type="html">&lt;p&gt;1 revision imported&lt;/p&gt;
&lt;table style=&quot;background-color: #fff; color: #202122;&quot; data-mw=&quot;interface&quot;&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;col class=&quot;diff-marker&quot; /&gt;
				&lt;col class=&quot;diff-content&quot; /&gt;
				&lt;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;2&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:00, 21 April 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;4&quot; class=&quot;diff-notice&quot; lang=&quot;en&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(No difference)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;!-- diff cache key mediawiki-mw_:diff:1.41:old-495128:rev-495129 --&gt;
&lt;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:mdf-translit&amp;diff=495128&amp;oldid=prev</id>
		<title>wikt&gt;Thadh at 19:03, 31 March 2026</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:mdf-translit&amp;diff=495128&amp;oldid=prev"/>
		<updated>2026-03-31T19:03:33Z</updated>

		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;local export = {}&lt;br /&gt;
&lt;br /&gt;
local gsub = mw.ustring.gsub&lt;br /&gt;
local lower = mw.ustring.lower&lt;br /&gt;
local trim = mw.text.trim&lt;br /&gt;
&lt;br /&gt;
-- apply gsub() repeatedly until no change&lt;br /&gt;
local function gsub_repeatedly(term, foo, bar)&lt;br /&gt;
	while true do&lt;br /&gt;
		local new_term = gsub(term, foo, bar)&lt;br /&gt;
		if new_term == term then&lt;br /&gt;
			return term&lt;br /&gt;
		end&lt;br /&gt;
		term = new_term&lt;br /&gt;
	end&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
local letters = {&lt;br /&gt;
	[&amp;quot;А&amp;quot;]=&amp;quot;A&amp;quot;, [&amp;quot;Б&amp;quot;]=&amp;quot;B&amp;quot;, [&amp;quot;В&amp;quot;]=&amp;quot;V&amp;quot;, [&amp;quot;Г&amp;quot;]=&amp;quot;G&amp;quot;, [&amp;quot;Д&amp;quot;]=&amp;quot;D&amp;quot;, [&amp;quot;Е&amp;quot;]=&amp;quot;E&amp;quot;, [&amp;quot;Ё&amp;quot;]=&amp;quot;O&amp;quot;, [&amp;quot;Ж&amp;quot;]=&amp;quot;Ž&amp;quot;, [&amp;quot;З&amp;quot;]=&amp;quot;Z&amp;quot;, [&amp;quot;И&amp;quot;]=&amp;quot;I&amp;quot;, [&amp;quot;Й&amp;quot;]=&amp;quot;J&amp;quot;,&lt;br /&gt;
	[&amp;quot;К&amp;quot;]=&amp;quot;K&amp;quot;, [&amp;quot;Л&amp;quot;]=&amp;quot;L&amp;quot;, [&amp;quot;М&amp;quot;]=&amp;quot;M&amp;quot;, [&amp;quot;Н&amp;quot;]=&amp;quot;N&amp;quot;, [&amp;quot;О&amp;quot;]=&amp;quot;O&amp;quot;, [&amp;quot;П&amp;quot;]=&amp;quot;P&amp;quot;, [&amp;quot;Р&amp;quot;]=&amp;quot;R&amp;quot;, [&amp;quot;С&amp;quot;]=&amp;quot;S&amp;quot;, [&amp;quot;Т&amp;quot;]=&amp;quot;T&amp;quot;, [&amp;quot;У&amp;quot;]=&amp;quot;U&amp;quot;, [&amp;quot;Ф&amp;quot;]=&amp;quot;F&amp;quot;,&lt;br /&gt;
	[&amp;quot;Х&amp;quot;]=&amp;quot;H&amp;quot;, [&amp;quot;Ц&amp;quot;]=&amp;quot;C&amp;quot;, [&amp;quot;Ч&amp;quot;]=&amp;quot;Č&amp;quot;, [&amp;quot;Ш&amp;quot;]=&amp;quot;Š&amp;quot;, [&amp;quot;Щ&amp;quot;]=&amp;quot;Šč&amp;quot;, [&amp;quot;Ъ&amp;quot;]=&amp;quot;Ə&amp;quot;, [&amp;quot;Ы&amp;quot;]=&amp;quot;Ï&amp;quot;, [&amp;quot;Ь&amp;quot;]=&amp;quot;&amp;quot;, [&amp;quot;Э&amp;quot;]=&amp;quot;Ë&amp;quot;, [&amp;quot;Ю&amp;quot;]=&amp;quot;U&amp;quot;, [&amp;quot;Я&amp;quot;]=&amp;quot;A&amp;quot;,&lt;br /&gt;
	[&amp;quot;Ӕ&amp;quot;]=&amp;quot;Ä&amp;quot;, [&amp;quot;Ѣ&amp;quot;]=&amp;quot;E&amp;quot;, [&amp;quot;Ҥ&amp;quot;]=&amp;quot;Ŋ&amp;quot;, [&amp;quot;І&amp;quot;]=&amp;quot;I&amp;quot;, [&amp;quot;Ѳ&amp;quot;]=&amp;quot;Kv&amp;quot;,&lt;br /&gt;
	[&amp;quot;а&amp;quot;]=&amp;quot;a&amp;quot;, [&amp;quot;б&amp;quot;]=&amp;quot;b&amp;quot;, [&amp;quot;в&amp;quot;]=&amp;quot;v&amp;quot;, [&amp;quot;г&amp;quot;]=&amp;quot;g&amp;quot;, [&amp;quot;д&amp;quot;]=&amp;quot;d&amp;quot;, [&amp;quot;е&amp;quot;]=&amp;quot;e&amp;quot;, [&amp;quot;ё&amp;quot;]=&amp;quot;o&amp;quot;, [&amp;quot;ж&amp;quot;]=&amp;quot;ž&amp;quot;, [&amp;quot;з&amp;quot;]=&amp;quot;z&amp;quot;, [&amp;quot;и&amp;quot;]=&amp;quot;i&amp;quot;, [&amp;quot;й&amp;quot;]=&amp;quot;j&amp;quot;,&lt;br /&gt;
	[&amp;quot;к&amp;quot;]=&amp;quot;k&amp;quot;, [&amp;quot;л&amp;quot;]=&amp;quot;l&amp;quot;, [&amp;quot;м&amp;quot;]=&amp;quot;m&amp;quot;, [&amp;quot;н&amp;quot;]=&amp;quot;n&amp;quot;, [&amp;quot;о&amp;quot;]=&amp;quot;o&amp;quot;, [&amp;quot;п&amp;quot;]=&amp;quot;p&amp;quot;, [&amp;quot;р&amp;quot;]=&amp;quot;r&amp;quot;, [&amp;quot;с&amp;quot;]=&amp;quot;s&amp;quot;, [&amp;quot;т&amp;quot;]=&amp;quot;t&amp;quot;, [&amp;quot;у&amp;quot;]=&amp;quot;u&amp;quot;, [&amp;quot;ф&amp;quot;]=&amp;quot;f&amp;quot;,&lt;br /&gt;
	[&amp;quot;х&amp;quot;]=&amp;quot;h&amp;quot;, [&amp;quot;ц&amp;quot;]=&amp;quot;c&amp;quot;, [&amp;quot;ч&amp;quot;]=&amp;quot;č&amp;quot;, [&amp;quot;ш&amp;quot;]=&amp;quot;š&amp;quot;, [&amp;quot;щ&amp;quot;]=&amp;quot;šč&amp;quot;, [&amp;quot;ъ&amp;quot;]=&amp;quot;ə&amp;quot;, [&amp;quot;ы&amp;quot;]=&amp;quot;ï&amp;quot;, [&amp;quot;ь&amp;quot;]=&amp;quot;&amp;quot;, [&amp;quot;э&amp;quot;]=&amp;quot;ë&amp;quot;, [&amp;quot;ю&amp;quot;]=&amp;quot;u&amp;quot;, [&amp;quot;я&amp;quot;]=&amp;quot;a&amp;quot;,&lt;br /&gt;
	[&amp;quot;ӕ&amp;quot;]=&amp;quot;ä&amp;quot;, [&amp;quot;ѣ&amp;quot;]=&amp;quot;e&amp;quot;, [&amp;quot;ҥ&amp;quot;]=&amp;quot;ŋ&amp;quot;, [&amp;quot;і&amp;quot;]=&amp;quot;i&amp;quot;, [&amp;quot;ѳ&amp;quot;]=&amp;quot;kv&amp;quot;&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local palatals = {&lt;br /&gt;
	[&amp;quot;Д&amp;quot;]=&amp;quot;Ď&amp;quot;, [&amp;quot;З&amp;quot;] = &amp;quot;Ź&amp;quot;, [&amp;quot;Л&amp;quot;] = &amp;quot;Ľ&amp;quot;, [&amp;quot;Н&amp;quot;] = &amp;quot;Ń&amp;quot;, [&amp;quot;Р&amp;quot;] = &amp;quot;Ŕ&amp;quot;, [&amp;quot;С&amp;quot;] = &amp;quot;Ś&amp;quot;, [&amp;quot;Т&amp;quot;] = &amp;quot;Ť&amp;quot;, [&amp;quot;Ц&amp;quot;] = &amp;quot;Ć&amp;quot;,&lt;br /&gt;
	[&amp;quot;д&amp;quot;]=&amp;quot;ď&amp;quot;, [&amp;quot;з&amp;quot;] = &amp;quot;ź&amp;quot;, [&amp;quot;л&amp;quot;] = &amp;quot;ľ&amp;quot;, [&amp;quot;н&amp;quot;] = &amp;quot;ń&amp;quot;, [&amp;quot;р&amp;quot;] = &amp;quot;ŕ&amp;quot;, [&amp;quot;с&amp;quot;] = &amp;quot;ś&amp;quot;, [&amp;quot;т&amp;quot;] = &amp;quot;ť&amp;quot;, [&amp;quot;ц&amp;quot;] = &amp;quot;ć&amp;quot;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local vowels = &amp;quot;аоуыэяёюиеьАОУЫЭЯЁЮИЕЬ&amp;quot;&lt;br /&gt;
local front = &amp;quot;ЕЁИЮЯІӔӒеёиюяіӕӓ&amp;quot;&lt;br /&gt;
local accents = &amp;quot;́̀&amp;quot;&lt;br /&gt;
local nonpalatals = &amp;quot;бвгжкпмшБВГЖКПМШ&amp;quot;&lt;br /&gt;
&lt;br /&gt;
function export.tr(text, lang, sc)&lt;br /&gt;
	-- make all word borders have a space&lt;br /&gt;
	text = &amp;quot; &amp;quot; .. text .. &amp;quot; &amp;quot;&lt;br /&gt;
&lt;br /&gt;
	-- front vowels after another vowel are written with initial j&lt;br /&gt;
	text = gsub_repeatedly(text, &amp;quot;([&amp;quot; .. vowels .. &amp;quot;][&amp;quot; .. accents .. &amp;quot;]?)([еёию])&amp;quot;, &amp;quot;%1j%2&amp;quot;)&lt;br /&gt;
	text = gsub_repeatedly(text, &amp;quot;([&amp;quot; .. vowels .. &amp;quot;][&amp;quot; .. accents .. &amp;quot;]?)([ЕЁИЮ])&amp;quot;, &amp;quot;%1J%2&amp;quot;)&lt;br /&gt;
	text = gsub_repeatedly(text, &amp;quot;([&amp;quot; .. vowels .. &amp;quot;][&amp;quot; .. accents .. &amp;quot;]?)([я])&amp;quot;, &amp;quot;%1jä&amp;quot;)&lt;br /&gt;
	text = gsub_repeatedly(text, &amp;quot;([&amp;quot; .. vowels .. &amp;quot;][&amp;quot; .. accents .. &amp;quot;]?)([Я])&amp;quot;, &amp;quot;%1JÄ&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	-- е, ё, ю, я at the beginning of a word are also written with initial j&lt;br /&gt;
	text = gsub(text, &amp;quot;([%s%p])([еёюя])&amp;quot;, &amp;quot;%1j%2&amp;quot;)&lt;br /&gt;
	text = gsub(text, &amp;quot;([%s%p])([ЕЁЮЯ])&amp;quot;, &amp;quot;%1J%2&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	-- э at the beginning of a word is written as e&lt;br /&gt;
	text = gsub(text, &amp;quot;([%s%p])э&amp;quot;, &amp;quot;%1e&amp;quot;)&lt;br /&gt;
	text = gsub(text, &amp;quot;([%s%p])Э&amp;quot;, &amp;quot;%1E&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	-- я after non-palatal consonants becomes ä&lt;br /&gt;
	text = gsub(text, &amp;quot;([&amp;quot; .. nonpalatals .. &amp;quot;])я&amp;quot;, &amp;quot;%1ä&amp;quot;)&lt;br /&gt;
	text = gsub(text, &amp;quot;([&amp;quot; .. nonpalatals .. &amp;quot;])Я&amp;quot;, &amp;quot;%1Ä&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	-- ё after non-palatal consonants becomes ö&lt;br /&gt;
	text = gsub(text, &amp;quot;([&amp;quot; .. nonpalatals .. &amp;quot;])ё&amp;quot;, &amp;quot;%1ö&amp;quot;)&lt;br /&gt;
	text = gsub(text, &amp;quot;([&amp;quot; .. nonpalatals .. &amp;quot;])Ё&amp;quot;, &amp;quot;%1Ö&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	-- make Е, Ё, Ю, Я lowercase if preceding a non-capital letter&lt;br /&gt;
	text = gsub(text, &amp;quot;([ЕЁЮЯ])([^%u])&amp;quot;, function(v, l)&lt;br /&gt;
		return lower(v) .. l&lt;br /&gt;
	end)&lt;br /&gt;
&lt;br /&gt;
	-- consonants before ь and certain vowels are palatalised&lt;br /&gt;
	for i, v in pairs(palatals) do&lt;br /&gt;
		text = gsub(text, i .. &amp;quot;ь&amp;quot;, v)&lt;br /&gt;
&lt;br /&gt;
		-- special handling of я&lt;br /&gt;
		text = gsub(text, i .. &amp;quot;ь?я&amp;quot;, v .. &amp;quot;a&amp;quot;)&lt;br /&gt;
		text = gsub(text, i .. &amp;quot;ь?Я&amp;quot;, v .. &amp;quot;A&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
		-- other front vowels&lt;br /&gt;
		text = gsub(text, i .. &amp;quot;ь?([&amp;quot; .. front .. &amp;quot;])&amp;quot;, v .. &amp;quot;%1&amp;quot;)&lt;br /&gt;
	end&lt;br /&gt;
&lt;br /&gt;
	-- ъ and ь are omitted before Е, Ё, Ю, Я&lt;br /&gt;
	text = gsub(text, &amp;quot;ъ([еёюя])&amp;quot;,&amp;quot;j%1&amp;quot;)&lt;br /&gt;
	text = gsub(text, &amp;quot;Ъ([еёюя])&amp;quot;,&amp;quot;J%1&amp;quot;)&lt;br /&gt;
&lt;br /&gt;
	return trim(gsub(text, &amp;quot;.&amp;quot;, letters))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return export&lt;/div&gt;</summary>
		<author><name>wikt&gt;Thadh</name></author>
	</entry>
</feed>