Module:TNT: Difference between revisions

From the Croc Wiki, the Croc encyclopedia
Jump to navigationJump to search
Content added Content deleted
(Module has been nominated for deletion)
(resetting to the main mediawiki.org version, allows auto-syncing)
Line 1: Line 1:
--
-- INTRO: (!!! DO NOT RENAME THIS PAGE !!!)
-- This module allows any template or module to be copy/pasted between
-- wikis without any translation changes. All translation text is stored
-- in the global Data:*.tab pages on Commons, and used everywhere.
--
-- SEE: https://www.mediawiki.org/wiki/Multilingual_Templates_and_Modules
--
--
-- ATTENTION:
-- ATTENTION:
Line 5: Line 12:
-- Please do not modify it anywhere else, as it may get copied and override your changes.
-- Please do not modify it anywhere else, as it may get copied and override your changes.
-- Suggestions can be made at https://www.mediawiki.org/wiki/Module_talk:TNT
-- Suggestions can be made at https://www.mediawiki.org/wiki/Module_talk:TNT
--
-- DESCRIPTION:
-- This module allows templates to use translations from the shared Datasets on Commons
--
--
-- DESCRIPTION:
-- The "msg" function uses a Commons dataset to translate a message
-- The "msg" function uses a Commons dataset to translate a message
-- with a given key (e.g. source-table), plus optional arguments
-- with a given key (e.g. source-table), plus optional arguments
-- to the wiki markup in the current content language.
-- to the wiki markup in the current content language.
-- Use lang=xx to set language.
-- Use lang=xx to set language. Example:
--
--
-- {{#invoke:TNT | msg | Original/Template:Graphs.tab | source-table | param1 }}
-- {{#invoke:TNT | msg
-- uses https://commons.wikimedia.org/wiki/Data:Original/Template:Graphs.tab
-- | I18n/Template:Graphs.tab <!-- https://commons.wikimedia.org/wiki/Data:I18n/Template:Graphs.tab -->
-- | source-table <!-- uses a translation message with id = "source-table" -->
-- | param1 }} <!-- optional parameter -->
--
--
--
-- The "doc" function will generate the <templatedata> parameter documentation for templates.
-- The "doc" function will generate the <templatedata> parameter documentation for templates.
-- This way all template parameters can be stored and localized in a single Commons dataset.
-- This way all template parameters can be stored and localized in a single Commons dataset.
-- NOTE: "doc" assumes that all documentation is located in Data:Templatedata/* on Commons.
-- NOTE: "doc" assumes that all documentation is located in Data:Templatedata/* on Commons.
--
--
-- {{#invoke:TNT | doc | Graph:Lines }}
-- {{#invoke:TNT | doc | Graph:Lines }}
-- uses https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab
-- uses https://commons.wikimedia.org/wiki/Data:Templatedata/Graph:Lines.tab
-- if the current page is Template:Graph:Lines/doc
-- if the current page is Template:Graph:Lines/doc
--
--


Line 35: Line 43:
for k, v in pairs(frame.args) do
for k, v in pairs(frame.args) do
if k == 1 then
if k == 1 then
dataset = v
dataset = mw.text.trim(v)
elseif k == 2 then
elseif k == 2 then
id = v
id = mw.text.trim(v)
elseif type(k) == 'number' then
elseif type(k) == 'number' then
table.insert(params, v)
table.insert(params, v)
elseif k == 'lang' and v ~= '_' then
elseif k == 'lang' and v ~= '_' then
lang = v
lang = mw.text.trim(v)
end
end
end
end
Line 55: Line 63:
-- Given a dataset name, convert it to a title with the 'commons:data:' prefix
-- Given a dataset name, convert it to a title with the 'commons:data:' prefix
function link(dataset)
function link(dataset)
dataset = 'Data:' .. (dataset or '')
dataset = 'Data:' .. mw.text.trim(dataset or '')
if mw.site.siteName == 'Wikimedia Commons' then
if mw.site.siteName == 'Wikimedia Commons' then
return dataset
return dataset