<?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%3Asa-utilities%2Ftranslit%2FSLP1-to-Deva</id>
	<title>Module:sa-utilities/translit/SLP1-to-Deva - 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%3Asa-utilities%2Ftranslit%2FSLP1-to-Deva"/>
	<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:sa-utilities/translit/SLP1-to-Deva&amp;action=history"/>
	<updated>2026-05-25T12:16:14Z</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:sa-utilities/translit/SLP1-to-Deva&amp;diff=495769&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:sa-utilities/translit/SLP1-to-Deva&amp;diff=495769&amp;oldid=prev"/>
		<updated>2026-04-21T12:44:49Z</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;tr class=&quot;diff-title&quot; lang=&quot;en&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;← Older revision&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: #fff; color: #202122; text-align: center;&quot;&gt;Revision as of 12:44, 21 April 2026&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&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;/table&gt;</summary>
		<author><name>Sware</name></author>
	</entry>
	<entry>
		<id>https://linguifex.com/w/index.php?title=Module:sa-utilities/translit/SLP1-to-Deva&amp;diff=495768&amp;oldid=prev</id>
		<title>wikt&gt;Exarchus: I edited the wrong version; fix for इन्द्राबृहस्पति</title>
		<link rel="alternate" type="text/html" href="https://linguifex.com/w/index.php?title=Module:sa-utilities/translit/SLP1-to-Deva&amp;diff=495768&amp;oldid=prev"/>
		<updated>2026-04-16T13:04:23Z</updated>

		<summary type="html">&lt;p&gt;I edited the wrong version; fix for इन्द्राबृहस्पति&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 consonant_list = &amp;quot;kKgGNcCjJYwWqQRtTdDnpPbBmyrlLvSzsh&amp;quot;&lt;br /&gt;
local consonant = &amp;quot;[&amp;quot; .. consonant_list .. &amp;quot;]&amp;quot;&lt;br /&gt;
local vowel_list = &amp;quot;aAiIuUfFxXeEoO&amp;quot;&lt;br /&gt;
local vowel = &amp;quot;[&amp;quot; .. vowel_list .. &amp;quot;]&amp;quot;&lt;br /&gt;
&lt;br /&gt;
local U = require(&amp;quot;Module:string/char&amp;quot;)&lt;br /&gt;
local gsub = mw.ustring.gsub&lt;br /&gt;
local gmatch = mw.ustring.gmatch&lt;br /&gt;
&lt;br /&gt;
local virAma = U(0x94D)&lt;br /&gt;
local svar = U(0x951)&lt;br /&gt;
local anud = U(0x952)&lt;br /&gt;
&lt;br /&gt;
local diacritics = {&lt;br /&gt;
	[&amp;#039;a&amp;#039;] = &amp;#039;&amp;#039;, [&amp;#039;A&amp;#039;] = &amp;#039;ा&amp;#039;,&lt;br /&gt;
	[&amp;#039;i&amp;#039;] = &amp;#039;ि&amp;#039;, [&amp;#039;I&amp;#039;] = &amp;#039;ी&amp;#039;,&lt;br /&gt;
	[&amp;#039;u&amp;#039;] = &amp;#039;ु&amp;#039;, [&amp;#039;U&amp;#039;] = &amp;#039;ू&amp;#039;,&lt;br /&gt;
	[&amp;#039;f&amp;#039;] = &amp;#039;ृ&amp;#039;, [&amp;#039;F&amp;#039;] = &amp;#039;ॄ&amp;#039;,&lt;br /&gt;
	[&amp;#039;x&amp;#039;] = &amp;#039;ॢ&amp;#039;, [&amp;#039;X&amp;#039;] = &amp;#039;ॣ&amp;#039;,&lt;br /&gt;
	[&amp;#039;e&amp;#039;] = &amp;#039;े&amp;#039;, [&amp;#039;E&amp;#039;] = &amp;#039;ै&amp;#039;,&lt;br /&gt;
	[&amp;#039;o&amp;#039;] = &amp;#039;ो&amp;#039;, [&amp;#039;O&amp;#039;] = &amp;#039;ौ&amp;#039;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
local tt = {&lt;br /&gt;
	-- consonants&lt;br /&gt;
	[&amp;#039;k&amp;#039;] = &amp;#039;क&amp;#039;, [&amp;#039;K&amp;#039;] = &amp;#039;ख&amp;#039;, [&amp;#039;g&amp;#039;] = &amp;#039;ग&amp;#039;, [&amp;#039;G&amp;#039;] = &amp;#039;घ&amp;#039;, [&amp;#039;N&amp;#039;] = &amp;#039;ङ&amp;#039;,&lt;br /&gt;
	[&amp;#039;c&amp;#039;] = &amp;#039;च&amp;#039;, [&amp;#039;C&amp;#039;] = &amp;#039;छ&amp;#039;, [&amp;#039;j&amp;#039;] = &amp;#039;ज&amp;#039;, [&amp;#039;J&amp;#039;] = &amp;#039;झ&amp;#039;, [&amp;#039;Y&amp;#039;] = &amp;#039;ञ&amp;#039;,&lt;br /&gt;
	[&amp;#039;w&amp;#039;] = &amp;#039;ट&amp;#039;, [&amp;#039;W&amp;#039;] = &amp;#039;ठ&amp;#039;, [&amp;#039;q&amp;#039;] = &amp;#039;ड&amp;#039;, [&amp;#039;Q&amp;#039;] = &amp;#039;ढ&amp;#039;, [&amp;#039;R&amp;#039;] = &amp;#039;ण&amp;#039;,&lt;br /&gt;
	[&amp;#039;t&amp;#039;] = &amp;#039;त&amp;#039;, [&amp;#039;T&amp;#039;] = &amp;#039;थ&amp;#039;, [&amp;#039;d&amp;#039;] = &amp;#039;द&amp;#039;, [&amp;#039;D&amp;#039;] = &amp;#039;ध&amp;#039;, [&amp;#039;n&amp;#039;] = &amp;#039;न&amp;#039;,&lt;br /&gt;
	[&amp;#039;p&amp;#039;] = &amp;#039;प&amp;#039;, [&amp;#039;P&amp;#039;] = &amp;#039;फ&amp;#039;, [&amp;#039;b&amp;#039;] = &amp;#039;ब&amp;#039;, [&amp;#039;B&amp;#039;] = &amp;#039;भ&amp;#039;, [&amp;#039;m&amp;#039;] = &amp;#039;म&amp;#039;,&lt;br /&gt;
	[&amp;#039;y&amp;#039;] = &amp;#039;य&amp;#039;, [&amp;#039;r&amp;#039;] = &amp;#039;र&amp;#039;, [&amp;#039;l&amp;#039;] = &amp;#039;ल&amp;#039;, [&amp;#039;v&amp;#039;] = &amp;#039;व&amp;#039;, [&amp;#039;L&amp;#039;] = &amp;#039;ळ&amp;#039;,&lt;br /&gt;
	[&amp;#039;S&amp;#039;] = &amp;#039;श&amp;#039;, [&amp;#039;z&amp;#039;] = &amp;#039;ष&amp;#039;, [&amp;#039;s&amp;#039;] = &amp;#039;स&amp;#039;, [&amp;#039;h&amp;#039;] = &amp;#039;ह&amp;#039;,&lt;br /&gt;
	-- vowels&lt;br /&gt;
	[&amp;#039;a&amp;#039;] = &amp;quot;अ&amp;quot;, [&amp;#039;A&amp;#039;] = &amp;quot;आ&amp;quot;,&lt;br /&gt;
	[&amp;#039;i&amp;#039;] = &amp;quot;इ&amp;quot;, [&amp;#039;I&amp;#039;] = &amp;quot;ई&amp;quot;,&lt;br /&gt;
	[&amp;#039;u&amp;#039;] = &amp;quot;उ&amp;quot;, [&amp;#039;U&amp;#039;] = &amp;quot;ऊ&amp;quot;,&lt;br /&gt;
	[&amp;#039;f&amp;#039;] = &amp;quot;ऋ&amp;quot;, [&amp;#039;F&amp;#039;] = &amp;quot;ॠ&amp;quot;,&lt;br /&gt;
	[&amp;#039;x&amp;#039;] = &amp;quot;ऌ&amp;quot;, [&amp;#039;X&amp;#039;] = &amp;quot;ॡ&amp;quot;,&lt;br /&gt;
	[&amp;#039;e&amp;#039;] = &amp;quot;ए&amp;quot;, [&amp;#039;E&amp;#039;] = &amp;quot;ऐ&amp;quot;,&lt;br /&gt;
	[&amp;#039;o&amp;#039;] = &amp;quot;ओ&amp;quot;, [&amp;#039;O&amp;#039;] = &amp;quot;औ&amp;quot;,&lt;br /&gt;
	-- chandrabindu&lt;br /&gt;
	[&amp;#039;~&amp;#039;] = &amp;#039;ँ&amp;#039;,&lt;br /&gt;
	-- anusvara&lt;br /&gt;
	[&amp;#039;M&amp;#039;] = &amp;#039;ं&amp;#039;,&lt;br /&gt;
	-- visarga&lt;br /&gt;
	[&amp;#039;H&amp;#039;] = &amp;#039;ः&amp;#039;,&lt;br /&gt;
	-- avagraha&lt;br /&gt;
	[&amp;quot;&amp;#039;&amp;quot;] = &amp;#039;ऽ&amp;#039;,&lt;br /&gt;
	--numerals&lt;br /&gt;
	[&amp;#039;0&amp;#039;] = &amp;#039;०&amp;#039;, [&amp;#039;1&amp;#039;] = &amp;#039;१&amp;#039;, [&amp;#039;2&amp;#039;] = &amp;#039;२&amp;#039;, [&amp;#039;3&amp;#039;] = &amp;#039;३&amp;#039;, [&amp;#039;4&amp;#039;] = &amp;#039;४&amp;#039;, [&amp;#039;5&amp;#039;] = &amp;#039;५&amp;#039;, [&amp;#039;6&amp;#039;] = &amp;#039;६&amp;#039;, [&amp;#039;7&amp;#039;] = &amp;#039;७&amp;#039;, [&amp;#039;8&amp;#039;] = &amp;#039;८&amp;#039;, [&amp;#039;9&amp;#039;] = &amp;#039;९&amp;#039;,&lt;br /&gt;
	--Vedic extensions&lt;br /&gt;
	[&amp;#039;Z&amp;#039;] = &amp;#039;ᳵ&amp;#039;,&lt;br /&gt;
	[&amp;#039;V&amp;#039;] = &amp;#039;ᳶ&amp;#039;,&lt;br /&gt;
	-- [&amp;#039;/&amp;#039;] = &amp;#039;&amp;#039;,&lt;br /&gt;
	-- [&amp;#039;\\&amp;#039;] = &amp;#039;&amp;#039;,&lt;br /&gt;
}&lt;br /&gt;
&lt;br /&gt;
function export.tr(text, lang, sc)&lt;br /&gt;
	-- Introduce underscore as extra &amp;#039;accent&amp;#039; for syllables where dependent svarita becomes anudatta (viz. between two udatta&amp;#039;s).&lt;br /&gt;
	text = gsub(text, &amp;quot;(/[&amp;quot; .. consonant_list .. &amp;quot; &amp;#039;HM~]*&amp;quot;.. vowel ..&amp;quot;)([&amp;quot; .. consonant_list .. &amp;quot; &amp;#039;HM~]*&amp;quot;.. vowel ..&amp;quot;/)&amp;quot;, &amp;quot;%1_%2&amp;quot;)&lt;br /&gt;
	text = gsub(text, &amp;quot;(/[&amp;quot; .. consonant_list .. &amp;quot; &amp;#039;HM~]*&amp;quot;.. vowel ..&amp;quot;)([&amp;quot; .. consonant_list .. &amp;quot; &amp;#039;HM~]*&amp;quot;.. vowel ..&amp;quot;/)&amp;quot;, &amp;quot;%1_%2&amp;quot;) -- twice&lt;br /&gt;
	&lt;br /&gt;
	-- capture twice so that all adjacent pairs are covered&lt;br /&gt;
	text = gsub(text, &amp;quot;(&amp;quot; .. consonant .. &amp;quot;)(&amp;quot; .. consonant .. &amp;quot;)&amp;quot;, &amp;quot;%1&amp;quot; .. virAma .. &amp;quot;%2&amp;quot;)&lt;br /&gt;
	text = gsub(text, &amp;quot;(&amp;quot; .. consonant .. &amp;quot;)(&amp;quot; .. consonant .. &amp;quot;)&amp;quot;, &amp;quot;%1&amp;quot; .. virAma .. &amp;quot;%2&amp;quot;)&lt;br /&gt;
	-- whitespace and end of string&lt;br /&gt;
	text = gsub(text, &amp;quot;(&amp;quot; .. consonant .. &amp;quot;)%f[%s%z-]&amp;quot;, &amp;quot;%1&amp;quot; .. virAma)&lt;br /&gt;
	-- all vowel diacritics&lt;br /&gt;
	text = gsub(text, &amp;quot;(&amp;quot; .. consonant .. &amp;quot;)(&amp;quot; .. vowel ..  &amp;quot;)&amp;quot;, function(c, v) return c .. diacritics[v] end)&lt;br /&gt;
	-- everything else&lt;br /&gt;
	text = gsub(text, &amp;#039;.&amp;#039;, tt)&lt;br /&gt;
	&lt;br /&gt;
	-- Vedic accent&lt;br /&gt;
	do&lt;br /&gt;
		-- Build sets of Devanagari consonants/vowels (post-transliteration).&lt;br /&gt;
		local dev_consonant = {}&lt;br /&gt;
		for c in gmatch(consonant_list, &amp;quot;.&amp;quot;) do&lt;br /&gt;
			dev_consonant[tt[c]] = true&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		local dev_vowel = {}&lt;br /&gt;
		for v in gmatch(vowel_list, &amp;quot;.&amp;quot;) do&lt;br /&gt;
			dev_vowel[tt[v]] = true&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		local vowel_sign = {}&lt;br /&gt;
		for _, sign in pairs(diacritics) do&lt;br /&gt;
			if sign ~= &amp;quot;&amp;quot; then&lt;br /&gt;
				vowel_sign[sign] = true&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		-- Common Devanagari marks that can trail a syllable.&lt;br /&gt;
		local mark = {&lt;br /&gt;
			[&amp;quot;ँ&amp;quot;] = true, [&amp;quot;ं&amp;quot;] = true, [&amp;quot;ः&amp;quot;] = true,&lt;br /&gt;
			[&amp;quot;ᳵ&amp;quot;] = true, [&amp;quot;ᳶ&amp;quot;] = true,&lt;br /&gt;
		}&lt;br /&gt;
&lt;br /&gt;
		-- Turn text into a codepoint array for easy indexing.&lt;br /&gt;
		local chars = {}&lt;br /&gt;
		for ch in gmatch(text, &amp;quot;.&amp;quot;) do&lt;br /&gt;
			chars[#chars + 1] = ch&lt;br /&gt;
		end&lt;br /&gt;
		local n = #chars&lt;br /&gt;
&lt;br /&gt;
		-- Collect syllable spans and explicit accent markers.&lt;br /&gt;
		local starts, ends, afters, accents = {}, {}, {}, {}&lt;br /&gt;
		local i = 1&lt;br /&gt;
		while i &amp;lt;= n do&lt;br /&gt;
			local ch = chars[i]&lt;br /&gt;
			if dev_consonant[ch] or dev_vowel[ch] then&lt;br /&gt;
				local start = i&lt;br /&gt;
				local j = i&lt;br /&gt;
&lt;br /&gt;
				if dev_consonant[ch] then&lt;br /&gt;
					j = j + 1&lt;br /&gt;
&lt;br /&gt;
					-- (virama + consonant)* for conjuncts&lt;br /&gt;
					while j &amp;lt;= n - 1 and chars[j] == virAma and dev_consonant[chars[j + 1]] do&lt;br /&gt;
						j = j + 2&lt;br /&gt;
					end&lt;br /&gt;
&lt;br /&gt;
					-- optional final virama (dead consonant)&lt;br /&gt;
					if j &amp;lt;= n and chars[j] == virAma then&lt;br /&gt;
						j = j + 1&lt;br /&gt;
					end&lt;br /&gt;
&lt;br /&gt;
					-- optional vowel sign&lt;br /&gt;
					if j &amp;lt;= n and vowel_sign[chars[j]] then&lt;br /&gt;
						j = j + 1&lt;br /&gt;
					end&lt;br /&gt;
				else&lt;br /&gt;
					-- independent vowel&lt;br /&gt;
					j = j + 1&lt;br /&gt;
				end&lt;br /&gt;
&lt;br /&gt;
				-- trailing marks (anusvara, candrabindu, visarga, etc.)&lt;br /&gt;
				while j &amp;lt;= n and mark[chars[j]] do&lt;br /&gt;
					j = j + 1&lt;br /&gt;
				end&lt;br /&gt;
&lt;br /&gt;
				-- optional explicit accent marker at the very end of the syllable&lt;br /&gt;
				local accent = &amp;quot;none&amp;quot;&lt;br /&gt;
				local after = j - 1&lt;br /&gt;
				local accent_name = { [&amp;#039;/&amp;#039;] = &amp;#039;acute&amp;#039;, [&amp;#039;\\&amp;#039;] = &amp;#039;grave&amp;#039;, [&amp;#039;_&amp;#039;] = &amp;#039;underscore&amp;#039; }&lt;br /&gt;
				if j &amp;lt;= n and (chars[j] == &amp;quot;/&amp;quot; or chars[j] == &amp;quot;\\&amp;quot; or chars[j] == &amp;quot;_&amp;quot;) then&lt;br /&gt;
					accent = accent_name[chars[j]]&lt;br /&gt;
					after = j       -- include the marker in &amp;quot;after&amp;quot;&lt;br /&gt;
					j = j + 1&lt;br /&gt;
				end&lt;br /&gt;
&lt;br /&gt;
				local end_idx = (accent == &amp;quot;none&amp;quot;) and after or (after - 1) -- exclude marker from end&lt;br /&gt;
				starts[#starts + 1] = start&lt;br /&gt;
				ends[#ends + 1] = end_idx&lt;br /&gt;
				afters[#afters + 1] = after&lt;br /&gt;
				accents[#accents + 1] = accent&lt;br /&gt;
&lt;br /&gt;
				i = after + 1&lt;br /&gt;
			else&lt;br /&gt;
				i = i + 1&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		-- Propagate accents:&lt;br /&gt;
		-- * Explicit acute &amp;quot;/&amp;quot; marks udatta (no glyph inserted), makes previous syllables anudatta,&lt;br /&gt;
		--   and the following syllable (if unmarked) becomes svarita.&lt;br /&gt;
		-- * Explicit grave &amp;quot;\&amp;quot; becomes svarita, and previous syllables become anudatta.&lt;br /&gt;
		local last_accent = 0&lt;br /&gt;
		local prev_acute = false&lt;br /&gt;
		for si, accent in ipairs(accents) do&lt;br /&gt;
			if accent == &amp;quot;acute&amp;quot; then&lt;br /&gt;
				for j = last_accent + 1, si - 1 do&lt;br /&gt;
					accents[j] = &amp;quot;anudatta&amp;quot;&lt;br /&gt;
				end&lt;br /&gt;
				last_accent = si&lt;br /&gt;
				prev_acute = true&lt;br /&gt;
			elseif accent == &amp;quot;grave&amp;quot; then&lt;br /&gt;
				for j = last_accent + 1, si - 1 do&lt;br /&gt;
					accents[j] = &amp;quot;anudatta&amp;quot;&lt;br /&gt;
				end&lt;br /&gt;
				last_accent = si&lt;br /&gt;
				accents[si] = &amp;quot;svarita&amp;quot;&lt;br /&gt;
				prev_acute = false&lt;br /&gt;
			elseif accent == &amp;quot;underscore&amp;quot; then&lt;br /&gt;
				last_accent = si&lt;br /&gt;
				accents[si] = &amp;quot;anudatta&amp;quot;&lt;br /&gt;
				prev_acute = false&lt;br /&gt;
			elseif prev_acute then&lt;br /&gt;
				accents[si] = &amp;quot;svarita&amp;quot;&lt;br /&gt;
				prev_acute = false&lt;br /&gt;
				last_accent = si&lt;br /&gt;
			end&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		-- Rebuild text:&lt;br /&gt;
		-- - drop the explicit &amp;quot;/&amp;quot; &amp;quot;\&amp;quot; &amp;quot;_&amp;quot; markers&lt;br /&gt;
		-- - insert anud/svar after syllable end as needed&lt;br /&gt;
		local out = {}&lt;br /&gt;
		local offset = 1&lt;br /&gt;
&lt;br /&gt;
		for si, start in ipairs(starts) do&lt;br /&gt;
			local end_idx = ends[si]&lt;br /&gt;
			local after = afters[si]&lt;br /&gt;
&lt;br /&gt;
			-- copy any non-syllable chars before this syllable&lt;br /&gt;
			if offset &amp;lt;= start - 1 then&lt;br /&gt;
				for k = offset, start - 1 do&lt;br /&gt;
					out[#out + 1] = chars[k]&lt;br /&gt;
				end&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			-- copy syllable body (excluding explicit marker)&lt;br /&gt;
			for k = start, end_idx do&lt;br /&gt;
				out[#out + 1] = chars[k]&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			-- insert accent glyphs&lt;br /&gt;
			local a = accents[si]&lt;br /&gt;
			if a == &amp;quot;anudatta&amp;quot; then&lt;br /&gt;
				out[#out + 1] = anud&lt;br /&gt;
			elseif a == &amp;quot;svarita&amp;quot; then&lt;br /&gt;
				out[#out + 1] = svar&lt;br /&gt;
			end&lt;br /&gt;
&lt;br /&gt;
			-- jump past syllable (+ explicit marker if it existed)&lt;br /&gt;
			offset = after + 1&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		-- copy any trailing chars after the last syllable&lt;br /&gt;
		for k = offset, n do&lt;br /&gt;
			out[#out + 1] = chars[k]&lt;br /&gt;
		end&lt;br /&gt;
&lt;br /&gt;
		text = table.concat(out)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- fix case where accent mark is placed before diacritic&lt;br /&gt;
	text = gsub(text, &amp;quot;([&amp;quot;.. anud .. svar .. &amp;quot;])([ंँः]+)&amp;quot;, &amp;quot;%2%1&amp;quot;)&lt;br /&gt;
	&lt;br /&gt;
	-- a virAma followed by accent mark should not have the accent mark at all&lt;br /&gt;
	text = gsub(text, virAma .. &amp;quot;[&amp;quot;.. anud .. svar .. &amp;quot;]&amp;quot;, virAma)&lt;br /&gt;
	&lt;br /&gt;
	return mw.ustring.toNFC(text)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return export&lt;/div&gt;</summary>
		<author><name>wikt&gt;Exarchus</name></author>
	</entry>
</feed>