This module contains data relating to the MediaWiki magic words which are enabled on the English Wiktionary.
There are three types of magic word:
{{PAGENAME}}
).{{#IF:foo|bar|baz}}
), and can take further arguments.{{SUBST:foo}}
). These can be stacked with each other (but see the priority
key below.Many magic words can act as a parser variable or parser function, but others can only be one or the other.
parser_variable
parser_function
is the link target when argument 1 has not been given, and key
is the link target when it has. For example, compare the PROTECTIONEXPIRY
link targets for {{PROTECTIONEXPIRY:foo}}
and {{PROTECTIONEXPIRY:foo|bar}}
.transclusion_modifier
name
aliases
can be used to give a table of aliases for the magic word, which are automatically converted into table keys with the same data as the canonical name when the table is returned. The aliases
key is not present in the returned data, however.case_sensitive
case_sensitive = false
, the magic word must be given in uppercase. The distribution of case-sensitive and case-insensitive magic words is essentially random, with the split being close to 50/50.priority
{{SUBST:MSG:foo}}
(both modifiers applied to Template:foo), and {{MSG:SUBST:foo}}
(MSG
applied to Template:SUBST:foo).local next = next
local date_and_time = "mw:Help:Magic words#Date and time"
local escaped_characters = "mw:Help:Magic words#Escaped characters"
local formatting = "mw:Help:Magic words#Formatting"
local labeled_section_transclusion = "mw:Extension:Labeled Section Transclusion"
local liquidthreads = "mw:Extension:LiquidThreads"
local localization_functions = "mw:Help:Magic words#Localization functions"
local localization_variables = "mw:Help:Magic words#Localization variables"
local miscellaneous = "mw:Help:Magic words#Miscellaneous"
local namespaces = "mw:Help:Magic words#Namespaces"
local namespaces_2 = "mw:Help:Magic words#Namespaces 2"
local noexternallanglinks = "mw:Wikibase/Installation/Advanced configuration#noexternallanglinks"
local page_names = "mw:Help:Magic words#Page names"
local parser_functions_ext = "mw:Help:Extension:ParserFunctions##" -- ## is not a typo
local statistics = "mw:Help:Magic words#Statistics"
local substitution = "mw:Manual:Substitution"
local technical_metadata = "mw:Help:Magic words#Technical metadata"
local technical_metadata_of_another_page = "mw:Help:Magic words#Technical metadata of another page"
local transclusion_modifiers = "mw:Help:Magic words#Transclusion modifiers"
local url_data = "mw:Help:Magic words#URL data"
local data = {}
for k, v in next, {
= {
parser_variable = escaped_characters,
case_sensitive = false
},
= {
parser_function = "mw:Extension:Babel#Usage",
case_sensitive = false
},
= { -- Case-sensitive lowercase.
parser_function = localization_functions,
parser_variable = localization_functions, -- Not a typo.
case_sensitive = true
},
= {
parser_function = "mw:Extension:CategoryTree#The {{#categorytree}} parser function",
case_sensitive = false
},
= {
parser_function = formatting,
case_sensitive = false
},
= { -- Case-sensitive lowercase.
parser_function = localization_functions,
parser_variable = localization_functions, -- Not a typo.
case_sensitive = true
},
= {
parser_function = parser_functions_ext .. "expr",
case_sensitive = false
},
= {
parser_function = localization_functions,
case_sensitive = true
},
= {
aliases = {"#DATEFORMAT"},
parser_function = formatting,
case_sensitive = false
},
= {
parser_function = parser_functions_ext .. "if",
case_sensitive = false
},
= {
parser_function = parser_functions_ext .. "ifeq",
case_sensitive = false
},
= {
parser_function = parser_functions_ext .. "iferror",
case_sensitive = false
},
= {
parser_function = parser_functions_ext .. "ifexist",
case_sensitive = false
},
= {
parser_function = parser_functions_ext .. "ifexpr",
case_sensitive = false
},
= { -- Case-sensitive lowercase.
parser_function = miscellaneous,
case_sensitive = true
},
= { -- Case-sensitive lowercase.
parser_function = miscellaneous,
case_sensitive = true
},
= {
parser_function = "mw:Extension:Scribunto#Usage",
case_sensitive = false
},
= {
parser_function = localization_functions,
parser_variable = localization_functions, -- Not a typo.
case_sensitive = false
},
= {
parser_function = liquidthreads,
case_sensitive = false
},
= {
aliases = {"#SECTION"},
parser_function = labeled_section_transclusion,
case_sensitive = false
},
= {
aliases = {"#SECTION-H"},
parser_function = labeled_section_transclusion,
case_sensitive = false
},
= {
aliases = {"#SECTION-X"},
parser_function = labeled_section_transclusion,
case_sensitive = false
},
= {
parser_function = "m:Wikidata/Notes/Inclusion syntax",
case_sensitive = false
},
= {
parser_function = parser_functions_ext .. "rel2abs",
case_sensitive = false
},
= {
parser_function = miscellaneous,
case_sensitive = false
},
= {
parser_function = miscellaneous,
case_sensitive = false
},
= {
parser_function = "d:WD:How to use data on Wikimedia projects#Parser function",
case_sensitive = false
},
= {
parser_function = parser_functions_ext .. "switch",
case_sensitive = false
},
= {
parser_function = miscellaneous,
case_sensitive = false
},
= {
parser_function = "mw:Extension:MassMessage#Parser function delivery lists",
case_sensitive = false
},
= {
parser_function = parser_functions_ext .. "time",
case_sensitive = false
},
= { -- Case-sensitive lowercase.
parser_function = parser_functions_ext,
case_sensitive = true
},
= { -- Case-sensitive lowercase.
parser_function = parser_functions_ext,
case_sensitive = true
},
= {
parser_function = parser_functions_ext .. "timel",
case_sensitive = false
},
= {
parser_function = parser_functions_ext .. "titleparts",
case_sensitive = false
},
= {
parser_function = liquidthreads,
case_sensitive = false
},
= {
parser_variable = escaped_characters,
case_sensitive = false
},
= {
parser_function = url_data,
case_sensitive = false
},
= {
parser_variable = technical_metadata,
case_sensitive = false
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
parser_function = formatting,
case_sensitive = false
},
= {
parser_function = url_data,
case_sensitive = false
},
= {
parser_function = url_data,
case_sensitive = false
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = true
},
= {
aliases = {"CONTENTLANG"},
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
aliases = {"CURRENTMONTH2"},
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
aliases = {"DEFAULTCATEGORYSORT", "DEFAULTSORTKEY"},
parser_function = technical_metadata,
case_sensitive = true
},
= {
aliases = {"DIRMARK"},
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = technical_metadata,
case_sensitive = true
},
= {
parser_function = url_data,
case_sensitive = false
},
= {
parser_function = formatting,
case_sensitive = false
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
parser_function = url_data,
case_sensitive = false
},
= {
parser_function = url_data,
case_sensitive = false
},
= {
parser_function = localization_functions,
case_sensitive = false
},
= {
parser_function = localization_functions,
case_sensitive = false
},
= {
parser_function = localization_functions,
case_sensitive = false
},
= {
parser_function = formatting,
case_sensitive = false
},
= {
parser_function = formatting,
case_sensitive = false
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
aliases = {"LOCALMONTH2"},
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_function = url_data,
case_sensitive = false
},
= {
parser_function = url_data,
case_sensitive = false
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
parser_variable = date_and_time,
case_sensitive = true
},
= {
transclusion_modifier = transclusion_modifiers,
priority = 2,
case_sensitive = false
},
= {
transclusion_modifier = transclusion_modifiers,
priority = 2,
case_sensitive = false
},
= {
parser_function = namespaces,
parser_variable = namespaces,
case_sensitive = true
},
= {
parser_function = namespaces,
parser_variable = namespaces,
case_sensitive = true
},
= {
parser_function = namespaces,
parser_variable = namespaces,
case_sensitive = true
},
= {
parser_function = noexternallanglinks,
parser_variable = noexternallanglinks,
case_sensitive = false
},
= {
parser_function = namespaces_2,
case_sensitive = false
},
= {
parser_function = namespaces_2,
case_sensitive = false
},
= {
aliases = {"NUMINGROUP"},
parser_function = statistics,
case_sensitive = true
},
= {
parser_function = statistics,
parser_variable = statistics,
case_sensitive = true
},
= {
parser_function = statistics,
parser_variable = statistics,
case_sensitive = true
},
= {
parser_function = statistics,
parser_variable = statistics,
case_sensitive = true
},
= {
parser_function = statistics,
parser_variable = statistics,
case_sensitive = true
},
= {
parser_function = statistics,
parser_variable = statistics,
case_sensitive = true
},
= {
parser_function = statistics,
parser_variable = statistics,
case_sensitive = true
},
= {
parser_function = statistics,
parser_variable = statistics,
case_sensitive = true
},
= {
parser_function = formatting,
case_sensitive = false
},
= {
parser_function = formatting,
case_sensitive = false
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = false
},
= {
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
aliases = {"PAGESINCAT"},
parser_function = statistics,
case_sensitive = true
},
= {
parser_function = technical_metadata_of_another_page,
case_sensitive = true
},
= {
parser_function = localization_functions,
case_sensitive = false
},
= {
parser_function = {
technical_metadata,
technical_metadata_of_another_page
},
case_sensitive = true
},
= {
parser_function = {
technical_metadata,
technical_metadata_of_another_page
},
case_sensitive = true
},
= {
transclusion_modifier = transclusion_modifiers,
priority = 3,
case_sensitive = false
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = technical_metadata_of_another_page,
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
transclusion_modifier = substitution,
priority = 1,
case_sensitive = false
},
= {
parser_variable = technical_metadata,
case_sensitive = false
},
= {
parser_variable = technical_metadata,
case_sensitive = false
},
= {
parser_variable = technical_metadata,
case_sensitive = false
},
= {
parser_variable = technical_metadata,
case_sensitive = true
},
= {
parser_variable = technical_metadata,
case_sensitive = false
},
= {
aliases = {"ARTICLEPAGENAME"},
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
aliases = {"ARTICLEPAGENAMEE"},
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
aliases = {"ARTICLESPACE"},
parser_function = namespaces,
parser_variable = namespaces,
case_sensitive = true
},
= {
aliases = {"ARTICLESPACEE"},
parser_function = namespaces,
parser_variable = namespaces,
case_sensitive = true
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
transclusion_modifier = substitution,
priority = 1,
case_sensitive = false
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
parser_function = page_names,
parser_variable = page_names,
case_sensitive = true
},
= {
parser_function = namespaces,
parser_variable = namespaces,
case_sensitive = true
},
= {
parser_function = namespaces,
parser_variable = namespaces,
case_sensitive = true
},
= {
parser_function = formatting,
case_sensitive = false
},
= {
parser_function = formatting,
case_sensitive = false
},
= {
parser_function = url_data,
case_sensitive = false
},
= {
parser_variable = localization_variables,
case_sensitive = true
},
} do
data = v
if not v.name then
v.name = k
end
local aliases = v.aliases
if aliases then
for i = 1, #aliases do
data] = v
end
v.aliases = nil
end
end
return data