<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://odden.us:443/thadar/wiki/index.php?action=history&amp;feed=atom&amp;title=Module%3AHeadword%2Ftemplates</id>
	<title>Module:Headword/templates - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://odden.us:443/thadar/wiki/index.php?action=history&amp;feed=atom&amp;title=Module%3AHeadword%2Ftemplates"/>
	<link rel="alternate" type="text/html" href="https://odden.us:443/thadar/wiki/index.php?title=Module:Headword/templates&amp;action=history"/>
	<updated>2026-04-12T11:12:48Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.41.0</generator>
	<entry>
		<id>https://odden.us:443/thadar/wiki/index.php?title=Module:Headword/templates&amp;diff=1274&amp;oldid=prev</id>
		<title>Oa10712: 1 revision imported</title>
		<link rel="alternate" type="text/html" href="https://odden.us:443/thadar/wiki/index.php?title=Module:Headword/templates&amp;diff=1274&amp;oldid=prev"/>
		<updated>2022-09-06T03:58:09Z</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 22:58, 5 September 2022&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>Oa10712</name></author>
	</entry>
	<entry>
		<id>https://odden.us:443/thadar/wiki/index.php?title=Module:Headword/templates&amp;diff=1273&amp;oldid=prev</id>
		<title>en&gt;Benwing2: User:Panda10 support nopalindromecat= and pass into Module:headword</title>
		<link rel="alternate" type="text/html" href="https://odden.us:443/thadar/wiki/index.php?title=Module:Headword/templates&amp;diff=1273&amp;oldid=prev"/>
		<updated>2022-09-04T17:20:39Z</updated>

		<summary type="html">&lt;p&gt;&lt;a href=&quot;/thadar/wiki/index.php?title=User:Panda10&amp;amp;action=edit&amp;amp;redlink=1&quot; class=&quot;new&quot; title=&quot;User:Panda10 (page does not exist)&quot;&gt;User:Panda10&lt;/a&gt; support nopalindromecat= and pass into &lt;a href=&quot;/thadar/wiki/index.php?title=Module:Headword&quot; title=&quot;Module:Headword&quot;&gt;Module:headword&lt;/a&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;
-- Part of speech types that should not be pluralized.&lt;br /&gt;
local invariable = mw.loadData(&amp;quot;Module:headword/data&amp;quot;).invariable&lt;br /&gt;
&lt;br /&gt;
function export.head_t(frame)&lt;br /&gt;
	local plain_param = {}&lt;br /&gt;
	local list_with_holes = {list = true, allow_holes = true}&lt;br /&gt;
	local boolean_list_with_holes = {list = true, allow_holes = true, type = &amp;quot;boolean&amp;quot;}&lt;br /&gt;
	local params = {&lt;br /&gt;
		[1] = {required = true, default = &amp;quot;und&amp;quot;},&lt;br /&gt;
		[&amp;quot;sc&amp;quot;] = plain_param,&lt;br /&gt;
		[&amp;quot;sort&amp;quot;] = plain_param,&lt;br /&gt;
		&lt;br /&gt;
		[2] = {required = true, default = &amp;quot;nouns&amp;quot;},&lt;br /&gt;
		[&amp;quot;sccat&amp;quot;] = {type = &amp;quot;boolean&amp;quot;},&lt;br /&gt;
		[&amp;quot;noposcat&amp;quot;] = {type = &amp;quot;boolean&amp;quot;},&lt;br /&gt;
		[&amp;quot;nomultiwordcat&amp;quot;] = {type = &amp;quot;boolean&amp;quot;},&lt;br /&gt;
		[&amp;quot;nogendercat&amp;quot;] = {type = &amp;quot;boolean&amp;quot;},&lt;br /&gt;
		[&amp;quot;nopalindromecat&amp;quot;] = {type = &amp;quot;boolean&amp;quot;},&lt;br /&gt;
		[&amp;quot;autotrinfl&amp;quot;] = {type = &amp;quot;boolean&amp;quot;},&lt;br /&gt;
		[&amp;quot;cat2&amp;quot;] = plain_param,&lt;br /&gt;
		[&amp;quot;cat3&amp;quot;] = plain_param,&lt;br /&gt;
		[&amp;quot;cat4&amp;quot;] = plain_param,&lt;br /&gt;
		&lt;br /&gt;
		[&amp;quot;head&amp;quot;] = {list = true, allow_holes = true, default = &amp;quot;&amp;quot;},&lt;br /&gt;
		[&amp;quot;id&amp;quot;] = plain_param,&lt;br /&gt;
		[&amp;quot;tr&amp;quot;] = list_with_holes,&lt;br /&gt;
		[&amp;quot;ts&amp;quot;] = list_with_holes,&lt;br /&gt;
		[&amp;quot;g&amp;quot;] = {list = true},&lt;br /&gt;
		&lt;br /&gt;
		[3] = list_with_holes,&lt;br /&gt;
		&lt;br /&gt;
		[&amp;quot;f=accel-form&amp;quot;]     = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=accel-translit&amp;quot;] = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=accel-lemma&amp;quot;]    = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=accel-lemma-translit&amp;quot;] = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=accel-gender&amp;quot;]   = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=accel-nostore&amp;quot;]  = boolean_list_with_holes,&lt;br /&gt;
		[&amp;quot;f=request&amp;quot;]        = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=alt&amp;quot;]            = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=sc&amp;quot;]             = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=id&amp;quot;]             = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=tr&amp;quot;]             = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=ts&amp;quot;]             = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=g&amp;quot;]              = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=qual&amp;quot;]           = list_with_holes,&lt;br /&gt;
		[&amp;quot;f=autotr&amp;quot;]         = boolean_list_with_holes,&lt;br /&gt;
		[&amp;quot;f=nolink&amp;quot;]         = boolean_list_with_holes,&lt;br /&gt;
		[&amp;quot;f=lang&amp;quot;]           = list_with_holes,&lt;br /&gt;
	}&lt;br /&gt;
	&lt;br /&gt;
	local args = require(&amp;quot;Module:parameters&amp;quot;).process(frame:getParent().args, params)&lt;br /&gt;
	&lt;br /&gt;
	-- Get language and script information&lt;br /&gt;
	local data = {}&lt;br /&gt;
	data.lang = require(&amp;quot;Module:languages&amp;quot;).getByCode(args[1]) or require(&amp;quot;Module:languages&amp;quot;).err(args[1], 1)&lt;br /&gt;
	data.sort_key = args[&amp;quot;sort&amp;quot;]&lt;br /&gt;
	data.heads = args[&amp;quot;head&amp;quot;]&lt;br /&gt;
	data.id = args[&amp;quot;id&amp;quot;]&lt;br /&gt;
	data.translits = args[&amp;quot;tr&amp;quot;]&lt;br /&gt;
	data.transcriptions = args[&amp;quot;ts&amp;quot;]&lt;br /&gt;
	data.genders = args[&amp;quot;g&amp;quot;]&lt;br /&gt;
	&lt;br /&gt;
	-- Script&lt;br /&gt;
	data.sc = args[&amp;quot;sc&amp;quot;] and require(&amp;quot;Module:scripts&amp;quot;).getByCode(args[&amp;quot;sc&amp;quot;], &amp;quot;sc&amp;quot;) or nil&lt;br /&gt;
	data.sccat = args[&amp;quot;sccat&amp;quot;]&lt;br /&gt;
&lt;br /&gt;
	-- Part-of-speech category&lt;br /&gt;
	data.pos_category = args[2]&lt;br /&gt;
	data.noposcat = args[&amp;quot;noposcat&amp;quot;]&lt;br /&gt;
	&lt;br /&gt;
	if not data.pos_category:find(&amp;quot;s$&amp;quot;) and not invariable[data.pos_category] then&lt;br /&gt;
		-- Make the plural form of the part of speech&lt;br /&gt;
		if data.pos_category:find(&amp;quot;x$&amp;quot;) then -- prefix, suffix, confix, infix, circumfix, affix, interfix, transfix&lt;br /&gt;
			data.pos_category = data.pos_category .. &amp;quot;es&amp;quot;&lt;br /&gt;
		else&lt;br /&gt;
			data.pos_category = data.pos_category .. &amp;quot;s&amp;quot;&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if cat_sc then&lt;br /&gt;
		data.pos_category = data.pos_category .. &amp;quot; in &amp;quot; .. cat_sc:getDisplayForm()&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Additional categories&lt;br /&gt;
	data.categories = {}&lt;br /&gt;
	data.nomultiwordcat = args[&amp;quot;nomultiwordcat&amp;quot;]&lt;br /&gt;
	data.nogendercat = args[&amp;quot;nogendercat&amp;quot;]&lt;br /&gt;
	data.nopalindromecat = args[&amp;quot;nopalindromecat&amp;quot;]&lt;br /&gt;
	&lt;br /&gt;
	if args[&amp;quot;cat2&amp;quot;] then&lt;br /&gt;
		table.insert(data.categories, data.lang:getCanonicalName() .. &amp;quot; &amp;quot; .. args[&amp;quot;cat2&amp;quot;])&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if args[&amp;quot;cat3&amp;quot;] then&lt;br /&gt;
		table.insert(data.categories, data.lang:getCanonicalName() .. &amp;quot; &amp;quot; .. args[&amp;quot;cat3&amp;quot;])&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	if args[&amp;quot;cat4&amp;quot;] then&lt;br /&gt;
		table.insert(data.categories, data.lang:getCanonicalName() .. &amp;quot; &amp;quot; .. args[&amp;quot;cat4&amp;quot;])&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	-- Inflected forms&lt;br /&gt;
	data.inflections = {enable_auto_translit = args[&amp;quot;autotrinfl&amp;quot;]}&lt;br /&gt;
	&lt;br /&gt;
	for i = 1, math.ceil(args[3].maxindex / 2) do&lt;br /&gt;
		local infl_part = {&lt;br /&gt;
			label    = args[3][i * 2 - 1],&lt;br /&gt;
			accel    = args[&amp;quot;faccel-form&amp;quot;][i] and {&lt;br /&gt;
				form      = args[&amp;quot;faccel-form&amp;quot;][i],&lt;br /&gt;
				translit  = args[&amp;quot;faccel-translit&amp;quot;][i],&lt;br /&gt;
				lemma     = args[&amp;quot;faccel-lemma&amp;quot;][i],&lt;br /&gt;
				lemma_translit = args[&amp;quot;faccel-lemma-translit&amp;quot;][i],&lt;br /&gt;
				gender    = args[&amp;quot;faccel-gender&amp;quot;][i],&lt;br /&gt;
				nostore   = args[&amp;quot;faccel-nostore&amp;quot;][i],&lt;br /&gt;
			} or nil,&lt;br /&gt;
			request  = args[&amp;quot;frequest&amp;quot;][i],&lt;br /&gt;
			enable_auto_translit = args[&amp;quot;fautotr&amp;quot;][i],&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		local form = {&lt;br /&gt;
			term          =  args[3][i * 2],&lt;br /&gt;
			alt           =  args[&amp;quot;falt&amp;quot;][i],&lt;br /&gt;
			genders       =  args[&amp;quot;fg&amp;quot;][i] and mw.text.split(args[&amp;quot;fg&amp;quot;][i], &amp;quot;,&amp;quot;) or {},&lt;br /&gt;
			id            =  args[&amp;quot;fid&amp;quot;][i],&lt;br /&gt;
			lang          =  args[&amp;quot;flang&amp;quot;][i],&lt;br /&gt;
			nolink        =  args[&amp;quot;fnolink&amp;quot;][i],&lt;br /&gt;
			qualifiers    = {args[&amp;quot;fqual&amp;quot;][i]},&lt;br /&gt;
			sc            =  args[&amp;quot;fsc&amp;quot;][i],&lt;br /&gt;
			translit      =  args[&amp;quot;ftr&amp;quot;][i],&lt;br /&gt;
			transcription =  args[&amp;quot;fts&amp;quot;][i],&lt;br /&gt;
		}&lt;br /&gt;
		&lt;br /&gt;
		if form.lang then&lt;br /&gt;
			form.lang = require(&amp;quot;Module:languages&amp;quot;).getByCode(form.lang) or require(&amp;quot;Module:languages&amp;quot;).err(form.lang, &amp;quot;f&amp;quot; .. i .. &amp;quot;lang&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if form.sc then&lt;br /&gt;
			form.sc = require(&amp;quot;Module:scripts&amp;quot;).getByCode(form.sc) or error(&amp;quot;The script code \&amp;quot;&amp;quot; .. form.sc .. &amp;quot;\&amp;quot; is not valid.&amp;quot;)&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		-- If no term or alt is given, then the label is shown alone.&lt;br /&gt;
		if form.term or form.alt then&lt;br /&gt;
			table.insert(infl_part, form)&lt;br /&gt;
		end&lt;br /&gt;
		&lt;br /&gt;
		if infl_part.label == &amp;quot;or&amp;quot; then&lt;br /&gt;
			-- Append to the previous inflection part, if one exists&lt;br /&gt;
			if #infl_part &amp;gt; 0 and data.inflections[1] then&lt;br /&gt;
				table.insert(data.inflections[#data.inflections], form)&lt;br /&gt;
			end&lt;br /&gt;
		elseif infl_part.label then&lt;br /&gt;
			-- Add a new inflection part&lt;br /&gt;
			table.insert(data.inflections, infl_part)&lt;br /&gt;
		end&lt;br /&gt;
	end&lt;br /&gt;
	&lt;br /&gt;
	return require(&amp;quot;Module:headword&amp;quot;).full_headword(data)&lt;br /&gt;
end&lt;br /&gt;
&lt;br /&gt;
return export&lt;/div&gt;</summary>
		<author><name>en&gt;Benwing2</name></author>
	</entry>
</feed>