Module:Category tree/poscatboiler/data/transliterations
Documentation for this module may be created at Module:Category tree/poscatboiler/data/transliterations/documentation
local labels = {}
local raw_categories = {}
local handlers = {}
local raw_handlers = {}
-----------------------------------------------------------------------------
-- --
-- LABELS --
-- --
-----------------------------------------------------------------------------
labels["romanizations"] = {
description = "{{{langname}}} terms transliterated into the Latin alphabet.",
parents = {"non-lemma forms"},
umbrella_parents = "Transliterations subcategories by language",
-- Special romanization-specific table-of-contents bars are used on romanization pages
-- (e.g. [[Template:got-rom-categoryTOC]]) because they hold Latin-script terms in a
-- language-specific romanization scheme, rather than terms in the language's normal script.
-- For the same reason, we specify catfix = false to disable script-specific font
-- formatting.
toc_template = {"{{{langcode}}}-rom-categoryTOC", "en-categoryTOC"},
toc_template_full = {"{{{langcode}}}-rom-categoryTOC/full", "{{{langcode}}}-rom-categoryTOC", "en-categoryTOC/full"},
catfix = false,
}
labels["romanizations without a main entry"] = {
description = "{{{langname}}} romanizations where the corresponding entry in the language's normal script does not exist. Automatically added by <code>{{[[Template:romanization of|romanization of]]}}</code> when applicable.",
parents = {"entry maintenance", {name = "romanizations", sort = " "}},
umbrella_parents = "Entry maintenance subcategories by language",
--See 'romanizations' above.
toc_template = {"{{{langcode}}}-rom-categoryTOC", "en-categoryTOC"},
toc_template_full = {"{{{langcode}}}-rom-categoryTOC/full", "{{{langcode}}}-rom-categoryTOC", "en-categoryTOC/full"},
catfix = false,
can_be_empty = true,
hidden = true,
}
labels["terms transliterated from other languages"] = {
description = "{{{langname}}} terms that have been transliterated from other languages.",
parents = {{name = "borrowed terms", sort = " "}},
umbrella_parents = "Transliterations subcategories by language",
}
-----------------------------------------------------------------------------
-- --
-- RAW CATEGORIES --
-- --
-----------------------------------------------------------------------------
raw_categories["Transliterations subcategories by language"] = {
description = "Umbrella categories covering topics related to transliterations.",
additional = "{{{umbrella_meta_msg}}}",
parents = {
"Umbrella metacategories",
{name = "Terms by etymology subcategories by language", sort = " "},
},
}
raw_categories["Terms with manual transliterations different from the automated ones"] = {
intro = "{{also|:Category:Languages with automatic transliteration}}",
description = "Categories with terms with manual transliterations different from the automated ones, by language.",
hidden = true,
parents = "Category:Template tracking",
}
raw_categories["Terms with redundant transliterations"] = {
intro = "{{also|:Category:Languages with automatic transliteration}}",
description = "Categories with terms with redundant transliteration, by language.",
hidden = true,
parents = "Category:Template tracking",
}
-----------------------------------------------------------------------------
-- --
-- HANDLERS --
-- --
-----------------------------------------------------------------------------
table.insert(handlers, function(data)
local source_name = data.label:match("^transliterations of (.+) terms$")
if source_name then
local source = require("Module:languages").getByCanonicalName(source_name, true,
"allow etym langs")
local source_desc = source:makeCategoryLink()
return {
description = "{{{langname}}} terms that have been transliterated from " .. source_desc .. ".",
breadcrumb = source_name,
parents = {
{ name = "terms transliterated from other languages", sort = source_name },
{ name = "terms borrowed from " .. source_name, sort = " "},
},
umbrella = {
no_by_language = true,
parents = {
{ name = "terms borrowed from " .. source_name, is_label = true, sort = " " }
}
},
}
end
end)
-----------------------------------------------------------------------------
-- --
-- RAW HANDLERS --
-- --
-----------------------------------------------------------------------------
table.insert(raw_handlers, function(data)
local langcode = data.category:match("^Terms with manual transliterations different from the automated ones/(.+)$")
if langcode then
return {
description = "{{{langname}}} terms with manual transliterations different from the automated ones.",
lang = langcode,
breadcrumb = "{{{langname}}}",
parents = {
{ name = "Terms with manual transliterations different from the automated ones", sort = langcode },
{ name = "entry maintenance", is_label = true, lang = langcode },
},
-- Set catfix = false because the page will have a mixture of native-language and
-- non-native-language pages, but include the normal native-language table of contents headers
-- because most pages are in the native language.
catfix = false,
toc_template = "{{{langcode}}}-categoryTOC",
toc_template_full = "{{{langcode}}}-categoryTOC/full",
can_be_empty = true,
hidden = true,
}
end
end)
table.insert(raw_handlers, function(data)
local langcode = data.category:match("^Terms with redundant transliterations/(.+)$")
if langcode then
return {
description = "{{{langname}}} terms with redundant transliterations.",
lang = langcode,
breadcrumb = "{{{langname}}}",
parents = {
{ name = "Terms with redundant transliterations", sort = langcode },
{ name = "entry maintenance", is_label = true, lang = langcode },
},
-- Set catfix = false because the page will have a mixture of native-language and
-- non-native-language pages, but include the normal native-language table of contents headers
-- because most pages are in the native language.
catfix = false,
toc_template = "{{{langcode}}}-categoryTOC",
toc_template_full = "{{{langcode}}}-categoryTOC/full",
can_be_empty = true,
hidden = true,
}
end
end)
return {LABELS = labels, RAW_CATEGORIES = raw_categories, HANDLERS = handlers, RAW_HANDLERS = raw_handlers}