<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.cultopedia.org/index.php?action=history&amp;feed=atom&amp;title=Module%3AKorean</id>
	<title>Module:Korean - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.cultopedia.org/index.php?action=history&amp;feed=atom&amp;title=Module%3AKorean"/>
	<link rel="alternate" type="text/html" href="https://www.cultopedia.org/index.php?title=Module:Korean&amp;action=history"/>
	<updated>2026-04-05T22:08:36Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.44.5</generator>
	<entry>
		<id>https://www.cultopedia.org/index.php?title=Module:Korean&amp;diff=462&amp;oldid=prev</id>
		<title>imported&gt;Grapesurgeon: adding syntax detection error</title>
		<link rel="alternate" type="text/html" href="https://www.cultopedia.org/index.php?title=Module:Korean&amp;diff=462&amp;oldid=prev"/>
		<updated>2025-11-30T16:17:01Z</updated>

		<summary type="html">&lt;p&gt;adding syntax detection error&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;require(&amp;#039;strict&amp;#039;);&lt;br /&gt;
local p = {}&lt;br /&gt;
&lt;br /&gt;
-- common label prepping to make loop more readable&lt;br /&gt;
local function prep_label(result, label, show_labels, out, i)&lt;br /&gt;
	if show_labels ~= &amp;#039;no&amp;#039; then&lt;br /&gt;
		-- labels for every case except for optional first term outside parentheses&lt;br /&gt;
		if (out ~= &amp;#039;yes&amp;#039;) or (out == &amp;#039;yes&amp;#039; and i &amp;gt; 1) then&lt;br /&gt;
			table.insert(result, label)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	return result&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
-- function to generate error message&lt;br /&gt;
local function format_error(message)&lt;br /&gt;
	local result = {&lt;br /&gt;
		&amp;#039;&amp;lt;span class=&amp;quot;error&amp;quot; style=&amp;quot;border:inherit; padding:inherit;&amp;quot;&amp;gt;{{[[Template:Korean/auto|Korean/auto]]}} error. &amp;#039;,&lt;br /&gt;
		message,&lt;br /&gt;
		&amp;#039; ([[Template:Korean/auto|Help]])&amp;lt;/span&amp;gt;&amp;#039;,&lt;br /&gt;
		&amp;#039;[[Category:Korean/auto template errors]]&amp;#039;&lt;br /&gt;
	}&lt;br /&gt;
	return table.concat(result)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p.ko(frame)&lt;br /&gt;
	local getArgs = require(&amp;#039;Module:Arguments&amp;#039;).getArgs&lt;br /&gt;
	return p._ko(getArgs(frame))&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
function p._ko(args)&lt;br /&gt;
	local lang_module = require(&amp;#039;Module:Lang&amp;#039;)      -- for wrapping non-English text&lt;br /&gt;
	local utils_module = require(&amp;#039;Module:Ko-utils&amp;#039;) -- for a function to check hangul&lt;br /&gt;
	local translit = require(&amp;#039;Module:Ko-translit&amp;#039;)  -- for automatic romanization&lt;br /&gt;
	local ipa_module = require(&amp;#039;Module:IPA&amp;#039;)        -- for IPA (duh)&lt;br /&gt;
	local template = &amp;#039;Korean&amp;#039;&lt;br /&gt;
	&lt;br /&gt;
	-- assign positional params&lt;br /&gt;
	local hangul, hanja&lt;br /&gt;
	if args[&amp;#039;hangul&amp;#039;] then hangul = args[&amp;#039;hangul&amp;#039;] else hangul = args[1] end&lt;br /&gt;
	if args[&amp;#039;hanja&amp;#039;] then hanja = args[&amp;#039;hanja&amp;#039;] else hanja = args[2] end&lt;br /&gt;
	&lt;br /&gt;
	-- assign named params&lt;br /&gt;
	local lit, rr, mr = args[&amp;#039;lit&amp;#039;], args[&amp;#039;rr&amp;#039;], args[&amp;#039;mr&amp;#039;]&lt;br /&gt;
	local hangulref, hanjaref, en_iparef, ko_iparef, litref = args[&amp;#039;hangulref&amp;#039;], args[&amp;#039;hanjaref&amp;#039;], args[&amp;#039;en_iparef&amp;#039;], args[&amp;#039;ko_iparef&amp;#039;], args[&amp;#039;litref&amp;#039;]&lt;br /&gt;
	local en_ipa, ko_ipa = args[&amp;#039;en_ipa&amp;#039;], args[&amp;#039;ko_ipa&amp;#039;]&lt;br /&gt;
	local out, en_out, order = args[&amp;#039;out&amp;#039;], args[&amp;#039;en_out&amp;#039;], args[&amp;#039;order&amp;#039;]&lt;br /&gt;
	local show_labels, show_links = args[&amp;#039;labels&amp;#039;], args[&amp;#039;links&amp;#039;]&lt;br /&gt;
	local capitalize, namemode = args[&amp;#039;capitalize&amp;#039;], args[&amp;#039;namemode&amp;#039;]&lt;br /&gt;
	&lt;br /&gt;
	-- validate input&lt;br /&gt;
	if not hangul then return format_error(&amp;#039;&amp;lt;code&amp;gt;hangul&amp;lt;/code&amp;gt; must not be empty.&amp;#039;) end&lt;br /&gt;
	if not utils_module.contains_hangul(hangul) then&lt;br /&gt;
		return format_error(&amp;#039;&amp;lt;code&amp;gt;hangul&amp;lt;/code&amp;gt; must contain at least one Hangul character.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if utils_module.contains_reference(hangul) then&lt;br /&gt;
		return format_error(&amp;#039;&amp;lt;code&amp;gt;hangul&amp;lt;/code&amp;gt; should not contain a reference; use &amp;lt;code&amp;gt;hangulref&amp;lt;/code&amp;gt; for that.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if utils_module.hangul_contains_syntax(hangul) and not (rr or mr) then&lt;br /&gt;
		return format_error(&amp;#039;&amp;lt;code&amp;gt;hangul&amp;lt;/code&amp;gt; contains special syntax but romanization not enabled; remove or escape (&amp;lt;code&amp;gt;\\&amp;lt;/code&amp;gt;) special syntax.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if hanjaref and not hanja then&lt;br /&gt;
		return format_error(&amp;#039;&amp;lt;code&amp;gt;hanja&amp;lt;/code&amp;gt; cannot be empty when &amp;lt;code&amp;gt;hanjaref&amp;lt;/code&amp;gt; is given.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if en_iparef and not en_ipa then&lt;br /&gt;
		return format_error(&amp;#039;&amp;lt;code&amp;gt;en_ipa&amp;lt;/code&amp;gt; cannot be empty when &amp;lt;code&amp;gt;en_iparef&amp;lt;/code&amp;gt; is given.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if ko_iparef and not ko_ipa then&lt;br /&gt;
		return format_error(&amp;#039;&amp;lt;code&amp;gt;ko_ipa&amp;lt;/code&amp;gt; cannot be empty when &amp;lt;code&amp;gt;ko_iparef&amp;lt;/code&amp;gt; is given.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if litref and not lit then&lt;br /&gt;
		return format_error(&amp;#039;&amp;lt;code&amp;gt;lit&amp;lt;/code&amp;gt; cannot be empty when &amp;lt;code&amp;gt;litref&amp;lt;/code&amp;gt; is given.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if ((out == &amp;quot;yes&amp;quot; or en_out == &amp;quot;yes&amp;quot;) and not (lit or rr or mr or en_ipa or ko_ipa)) then&lt;br /&gt;
		return format_error(&amp;#039;If &amp;lt;code&amp;gt;out=yes&amp;lt;/code&amp;gt;, a parameter other than &amp;lt;code&amp;gt;hangul&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;hangulref&amp;lt;/code&amp;gt; must be provided.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if en_out == &amp;#039;yes&amp;#039; then&lt;br /&gt;
		if out == &amp;#039;no&amp;#039; then return format_error(&amp;#039;If &amp;lt;code&amp;gt;en_out=yes&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;out&amp;lt;/code&amp;gt; cannot be &amp;lt;code&amp;gt;no&amp;lt;/code&amp;gt;&amp;#039;) end&lt;br /&gt;
		if en_out == &amp;#039;yes&amp;#039; then out = &amp;#039;yes&amp;#039; end -- set out if it wasn&amp;#039;t already specified &lt;br /&gt;
		if not lit then return format_error(&amp;#039;&amp;lt;code&amp;gt;en_out&amp;lt;/code&amp;gt; specified but no &amp;lt;code&amp;gt;lit&amp;lt;/code&amp;gt; was provided.&amp;#039;) end&lt;br /&gt;
		if (order and string.sub(order, 1, 1) ~= &amp;#039;l&amp;#039;) then&lt;br /&gt;
			return format_error(&amp;#039;If giving both &amp;lt;code&amp;gt;en_out&amp;lt;/code&amp;gt; and &amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;l&amp;lt;/code&amp;gt; should come first in &amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt;.&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if (namemode == &amp;#039;yes&amp;#039; and not (rr or mr)) then&lt;br /&gt;
		return format_error(&amp;#039;If &amp;lt;code&amp;gt;namemode=yes&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;rr&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;mr&amp;lt;/code&amp;gt; should be &amp;lt;code&amp;gt;yes&amp;lt;/code&amp;gt;.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if (namemode == &amp;#039;yes&amp;#039; and string.sub(hangul, 1, 1) == &amp;quot;%&amp;quot;) then&lt;br /&gt;
		return format_error(&amp;#039;If &amp;lt;code&amp;gt;namemode=yes&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;%&amp;lt;/code&amp;gt; is not needed at beginning of &amp;lt;code&amp;gt;hangul&amp;lt;/code&amp;gt; input.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if (capitalize == &amp;#039;yes&amp;#039; and not (rr or mr)) then&lt;br /&gt;
		return format_error(&amp;#039;If &amp;lt;code&amp;gt;capitalize=yes&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;rr&amp;lt;/code&amp;gt; or &amp;lt;code&amp;gt;mr&amp;lt;/code&amp;gt; should be &amp;lt;code&amp;gt;yes&amp;lt;/code&amp;gt;.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	if (capitalize == &amp;#039;yes&amp;#039; and string.sub(hangul, 1, 1) == &amp;quot;^&amp;quot;) then&lt;br /&gt;
		return format_error(&amp;#039;If &amp;lt;code&amp;gt;capitalize=yes&amp;lt;/code&amp;gt;, &amp;lt;code&amp;gt;^&amp;lt;/code&amp;gt; is not needed at beginning of &amp;lt;code&amp;gt;hangul&amp;lt;/code&amp;gt; input.&amp;#039;)&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- apply name mode&lt;br /&gt;
	if namemode == &amp;#039;yes&amp;#039; then&lt;br /&gt;
		hangul = &amp;#039;%&amp;#039; .. hangul&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- apply capitalization&lt;br /&gt;
	if capitalize == &amp;#039;yes&amp;#039; then&lt;br /&gt;
		hangul = &amp;#039;^&amp;#039; .. hangul&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- romanize&lt;br /&gt;
	local rr_out&lt;br /&gt;
	if rr == &amp;#039;yes&amp;#039; then&lt;br /&gt;
		rr_out = translit.rr({hangul})                                          -- generate automatic RR&lt;br /&gt;
		rr_out = lang_module._xlit({&amp;#039;ko&amp;#039;, &amp;#039;rr&amp;#039;, rr_out, [&amp;#039;template&amp;#039;]=template}) -- wrap in {{translit|ko|rr}}&lt;br /&gt;
	end&lt;br /&gt;
	local mr_out&lt;br /&gt;
	if mr == &amp;#039;yes&amp;#039; then&lt;br /&gt;
		mr_out = translit.mr({hangul})&lt;br /&gt;
		mr_out = lang_module._xlit({&amp;#039;ko&amp;#039;, &amp;#039;mr&amp;#039;, mr_out, [&amp;#039;template&amp;#039;]=template})&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- prep hangul for display&lt;br /&gt;
	hangul = translit.clean_hangul({hangul})                                    -- remove syntax characters&lt;br /&gt;
	hangul = lang_module._lang({&amp;#039;ko&amp;#039;, hangul, [&amp;#039;template&amp;#039;]=template})           -- wrap in lang template&lt;br /&gt;
	&lt;br /&gt;
	-- prep hanja for display&lt;br /&gt;
	if hanja then&lt;br /&gt;
		hanja = lang_module._lang({&amp;#039;ko&amp;#039;, hanja, [&amp;#039;template&amp;#039;]=template})&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- prep ipas&lt;br /&gt;
	local ipa_label&lt;br /&gt;
	if ko_ipa or en_ipa then&lt;br /&gt;
		if show_labels ~= &amp;#039;no&amp;#039; then&lt;br /&gt;
			ipa_label = &amp;#039;pronounced&amp;#039;&lt;br /&gt;
		else&lt;br /&gt;
			ipa_label = &amp;#039;&amp;#039;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	if ko_ipa then&lt;br /&gt;
		ko_ipa = ipa_module._main({&amp;#039;ko&amp;#039;, ko_ipa, [&amp;#039;label&amp;#039;] = ipa_label})&lt;br /&gt;
	end&lt;br /&gt;
	if en_ipa then&lt;br /&gt;
		en_ipa = ipa_module._main({&amp;#039;en&amp;#039;, en_ipa, [&amp;#039;label&amp;#039;] = ipa_label})&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- prep display order string&lt;br /&gt;
	if order then&lt;br /&gt;
		-- for en_out mode, add english ipa after literal if wasn&amp;#039;t specified&lt;br /&gt;
		if (en_out == &amp;#039;yes&amp;#039; and en_ipa and not string.find(order, &amp;#039;e&amp;#039;)) then&lt;br /&gt;
			order = string.sub(order, 1, 1) .. &amp;#039;e&amp;#039; .. string.sub(order, 2, #order)&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- check if order is malformed&lt;br /&gt;
		if not string.match(order, &amp;#039;^[hzrmkle]+$&amp;#039;) then return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; contains invalid characters.&amp;#039;) end&lt;br /&gt;
		-- check if any characters duplicated&lt;br /&gt;
		for _, c in ipairs({&amp;#039;h&amp;#039;, &amp;#039;z&amp;#039;, &amp;#039;r&amp;#039;, &amp;#039;m&amp;#039;, &amp;#039;e&amp;#039;, &amp;#039;k&amp;#039;, &amp;#039;l&amp;#039;}) do&lt;br /&gt;
			local _, count = string.gsub(order, c, &amp;#039;&amp;#039;)&lt;br /&gt;
			if count &amp;gt; 1 then return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; contains more than one &amp;lt;code&amp;gt;&amp;quot;&amp;#039; .. c .. &amp;#039;&amp;quot;&amp;lt;/code&amp;gt;.&amp;#039;) end&lt;br /&gt;
		end&lt;br /&gt;
		if not string.find(order, &amp;#039;h&amp;#039;) then return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; is missing &amp;quot;&amp;lt;code&amp;gt;h&amp;lt;/code&amp;gt;&amp;quot;.&amp;#039;) end&lt;br /&gt;
		if (hanja and not string.find(order, &amp;#039;z&amp;#039;)) or (not hanja and string.find(order, &amp;#039;z&amp;#039;)) then return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; is missing &amp;quot;&amp;lt;code&amp;gt;z&amp;lt;/code&amp;gt;&amp;quot; or &amp;lt;code&amp;gt;hanja&amp;lt;/code&amp;gt; is empty.&amp;#039;) end&lt;br /&gt;
		if (rr == &amp;#039;yes&amp;#039; and not string.find(order, &amp;#039;r&amp;#039;)) then&lt;br /&gt;
			return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; is missing &amp;quot;&amp;lt;code&amp;gt;r&amp;lt;/code&amp;gt;&amp;quot;.&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
		if (rr ~= &amp;#039;yes&amp;#039; and string.find(order, &amp;#039;r&amp;#039;)) then&lt;br /&gt;
			return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; contains &amp;quot;&amp;lt;code&amp;gt;r&amp;lt;/code&amp;gt;&amp;quot; but &amp;lt;code&amp;gt;rr&amp;lt;/code&amp;gt; is not &amp;lt;code&amp;gt;yes&amp;lt;/code&amp;gt;.&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
		if (mr == &amp;#039;yes&amp;#039; and not string.find(order, &amp;#039;m&amp;#039;)) then&lt;br /&gt;
			return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; is missing &amp;quot;&amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt;&amp;quot;.&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
		if (mr ~= &amp;#039;yes&amp;#039; and string.find(order, &amp;#039;m&amp;#039;)) then&lt;br /&gt;
			return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; contains &amp;quot;&amp;lt;code&amp;gt;m&amp;lt;/code&amp;gt;&amp;quot; but &amp;lt;code&amp;gt;mr&amp;lt;/code&amp;gt; is not &amp;lt;code&amp;gt;yes&amp;lt;/code&amp;gt;.&amp;#039;)&lt;br /&gt;
		end&lt;br /&gt;
		-- &amp;quot;i&amp;quot; and &amp;quot;l&amp;quot; are optional to specify, so only check if order is given but not value&lt;br /&gt;
		if (string.find(order, &amp;#039;e&amp;#039;) and not en_ipa) then return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; has &amp;quot;&amp;lt;code&amp;gt;e&amp;lt;/code&amp;gt;&amp;quot; but &amp;lt;code&amp;gt;en_ipa&amp;lt;/code&amp;gt; is empty.&amp;#039;) end&lt;br /&gt;
		if (string.find(order, &amp;#039;k&amp;#039;) and not ko_ipa) then return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; has &amp;quot;&amp;lt;code&amp;gt;k&amp;lt;/code&amp;gt;&amp;quot; but &amp;lt;code&amp;gt;ko_ipa&amp;lt;/code&amp;gt; is empty.&amp;#039;) end&lt;br /&gt;
		if (string.find(order, &amp;#039;l&amp;#039;) and not lit) then return format_error(&amp;#039;&amp;lt;code&amp;gt;order&amp;lt;/code&amp;gt; has &amp;quot;&amp;lt;code&amp;gt;l&amp;lt;/code&amp;gt;&amp;quot; but &amp;lt;code&amp;gt;lit&amp;lt;/code&amp;gt; is empty.&amp;#039;) end&lt;br /&gt;
	elseif en_out == &amp;#039;yes&amp;#039; then&lt;br /&gt;
		-- if no order was provided but en_out was given, build default order&lt;br /&gt;
		-- lit[litref] (en_ipa[en_iparef]; hangul[hangulref]; hanja[hanjaref]; rr; mr; ko_ipa[ko_iparef])&lt;br /&gt;
		order = &amp;#039;l&amp;#039;&lt;br /&gt;
		if en_ipa then order = order .. &amp;#039;eh&amp;#039; else order = order .. &amp;#039;h&amp;#039; end -- hangul also added here&lt;br /&gt;
		if hanja then order = order .. &amp;#039;z&amp;#039; end&lt;br /&gt;
		if rr_out then order = order .. &amp;#039;r&amp;#039; end&lt;br /&gt;
		if mr_out then order = order .. &amp;#039;m&amp;#039; end&lt;br /&gt;
		if ko_ipa then order = order .. &amp;#039;k&amp;#039; end&lt;br /&gt;
	else&lt;br /&gt;
		-- default order&lt;br /&gt;
		-- en_ipa[en_ipa]; hangul[hangulref]; hanja[hanjaref]; rr; mr; ko_ipa[ko_iparef]; lit[litref]&lt;br /&gt;
		if en_ipa then order = &amp;#039;eh&amp;#039; else order = &amp;#039;h&amp;#039; end -- hangul also added here&lt;br /&gt;
		if hanja then order = order .. &amp;#039;z&amp;#039; end&lt;br /&gt;
		if rr_out then order = order .. &amp;#039;r&amp;#039; end&lt;br /&gt;
		if mr_out then order = order .. &amp;#039;m&amp;#039; end&lt;br /&gt;
		if ko_ipa then order = order .. &amp;#039;k&amp;#039; end&lt;br /&gt;
		if lit then order = order .. &amp;#039;l&amp;#039; end&lt;br /&gt;
	end&lt;br /&gt;
	-- add optional order parameters (k, l) to end if not already there&lt;br /&gt;
	if (ko_ipa and not string.find(order, &amp;#039;k&amp;#039;)) then order = order .. &amp;#039;k&amp;#039; end&lt;br /&gt;
	if (lit and not string.find(order, &amp;#039;l&amp;#039;)) then order = order .. &amp;#039;l&amp;#039; end&lt;br /&gt;
	&lt;br /&gt;
	-- iterate through the order and add elements to output&lt;br /&gt;
	local result = {}&lt;br /&gt;
	local c, label&lt;br /&gt;
	for i = 1, #order do&lt;br /&gt;
	    c = string.sub(order, i, i)&lt;br /&gt;
	    &lt;br /&gt;
	    -- hangul processing&lt;br /&gt;
	    if c == &amp;#039;h&amp;#039; then&lt;br /&gt;
	    	-- language label insertion (more complicated conditionals in function)&lt;br /&gt;
	    	if show_links == &amp;#039;no&amp;#039; then&lt;br /&gt;
	    		label = &amp;#039;Korean: &amp;#039;&lt;br /&gt;
    		else&lt;br /&gt;
    			label = &amp;#039;[[Korean language|Korean]]: &amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
	    	result = prep_label(result, label, show_labels, out, i)&lt;br /&gt;
	    	&lt;br /&gt;
    		-- hangul insertion&lt;br /&gt;
	    	table.insert(result, hangul)&lt;br /&gt;
	    	&lt;br /&gt;
	    	-- hangul ref insertion&lt;br /&gt;
	    	if hangulref then table.insert(result, hangulref) end&lt;br /&gt;
    	end&lt;br /&gt;
    	&lt;br /&gt;
	    -- hanja processing&lt;br /&gt;
	    if c == &amp;#039;z&amp;#039; then&lt;br /&gt;
	    	if show_links == &amp;#039;no&amp;#039; then&lt;br /&gt;
	    		label = &amp;#039;Hanja: &amp;#039;&lt;br /&gt;
    		else&lt;br /&gt;
    			label = &amp;#039;[[Hanja]]: &amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
	    	result = prep_label(result, label, show_labels, out, i)&lt;br /&gt;
	    	table.insert(result, hanja)&lt;br /&gt;
	    	if hanjaref then table.insert(result, hanjaref) end&lt;br /&gt;
    	end&lt;br /&gt;
    	&lt;br /&gt;
    	-- rr processing&lt;br /&gt;
	    if c == &amp;#039;r&amp;#039; then&lt;br /&gt;
	    	if show_links == &amp;#039;no&amp;#039; then&lt;br /&gt;
	    		label = &amp;#039;&amp;lt;abbr title=&amp;quot;Revised Romanization of Korean&amp;quot;&amp;gt;RR&amp;lt;/abbr&amp;gt;: &amp;#039;&lt;br /&gt;
    		else&lt;br /&gt;
    			label = &amp;#039;[[Revised Romanization of Korean|RR]]: &amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
	    	result = prep_label(result, label, show_labels, out, i)&lt;br /&gt;
	    	table.insert(result, rr_out)&lt;br /&gt;
    	end&lt;br /&gt;
&lt;br /&gt;
    	-- mr processing&lt;br /&gt;
	    if c == &amp;#039;m&amp;#039; then&lt;br /&gt;
	    	if show_links == &amp;#039;no&amp;#039; then&lt;br /&gt;
	    		label = &amp;#039;&amp;lt;abbr title=&amp;quot;McCune–Reischauer&amp;quot;&amp;gt;MR&amp;lt;/abbr&amp;gt;: &amp;#039;&lt;br /&gt;
    		else&lt;br /&gt;
    			label = &amp;#039;[[McCune–Reischauer|MR]]: &amp;#039;&lt;br /&gt;
			end&lt;br /&gt;
	    	result = prep_label(result, label, show_labels, out, i)&lt;br /&gt;
	    	table.insert(result, mr_out)&lt;br /&gt;
    	end&lt;br /&gt;
    	&lt;br /&gt;
		-- en_ipa processing&lt;br /&gt;
    	if c == &amp;#039;e&amp;#039; then&lt;br /&gt;
			table.insert(result, en_ipa)&lt;br /&gt;
			table.insert(result, en_iparef)&lt;br /&gt;
    	end&lt;br /&gt;
    	&lt;br /&gt;
		-- ko_ipa processing&lt;br /&gt;
    	if c == &amp;#039;k&amp;#039; then&lt;br /&gt;
			table.insert(result, ko_ipa)&lt;br /&gt;
			table.insert(result, ko_iparef)&lt;br /&gt;
    	end&lt;br /&gt;
    	&lt;br /&gt;
    	-- literal translation processing&lt;br /&gt;
    	if c == &amp;#039;l&amp;#039; then&lt;br /&gt;
			label = &amp;#039;&amp;lt;abbr style=&amp;quot;font-size:85%;&amp;quot; title=&amp;quot;literal translation&amp;quot;&amp;gt;lit.&amp;lt;/abbr&amp;gt; &amp;#039;&lt;br /&gt;
			lit = &amp;quot;&amp;#039;&amp;quot; .. lit .. &amp;quot;&amp;#039;&amp;quot; -- single quotes around gloss&lt;br /&gt;
			result = prep_label(result, label, show_labels, out, i)&lt;br /&gt;
			table.insert(result, lit)&lt;br /&gt;
			table.insert(result, litref)&lt;br /&gt;
    	end&lt;br /&gt;
	&lt;br /&gt;
	    -- add semicolon&lt;br /&gt;
	    if i &amp;lt; #order then&lt;br /&gt;
	    	if not (out == &amp;#039;yes&amp;#039; and i == 1) then&lt;br /&gt;
	    		table.insert(result, &amp;#039;; &amp;#039;)&lt;br /&gt;
    		end&lt;br /&gt;
    	end&lt;br /&gt;
	    -- add parentheses if needed &lt;br /&gt;
		if (i == 1 and out == &amp;#039;yes&amp;#039;) then table.insert(result, &amp;#039; (&amp;#039;) end&lt;br /&gt;
		if (i == #order and out == &amp;#039;yes&amp;#039;) then table.insert(result, &amp;#039;)&amp;#039;) end&lt;br /&gt;
	end&lt;br /&gt;
	return unpack(result)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return p&lt;/div&gt;</summary>
		<author><name>imported&gt;Grapesurgeon</name></author>
	</entry>
</feed>