Module:Conversion-zh: Difference between revisions
From Neodyland Wiki
More actions
https://meta.wikimedia.org/w/index.php?title=Module:Conversion-zh&oldid=19400964 |
No edit summary |
||
| Line 1: | Line 1: | ||
local | local this = {} | ||
this.fallbackList = { | |||
['zh']={'zh','zh-hant','zh-tw','zh-hk','zh-mo','zh-hans','zh-cn','zh-sg','zh-my'}, | |||
['zh']={'zh','zh- | ['zh-hans']={'zh-hans','zh-cn','zh-sg','zh-my','zh'}, | ||
['zh-cn']={'zh-cn','zh-hans','zh-my','zh-sg','zh'}, | |||
['zh-sg']={'zh-sg','zh-hans','zh-cn','zh-my','zh'}, | |||
['zh-my']={'zh-my','zh-hans','zh-cn','zh-sg','zh'}, | |||
['zh-hant']={'zh-hant','zh-tw','zh-hk','zh-mo','zh'}, | |||
['zh-tw']={'zh-tw','zh-hant','zh-hk','zh-mo','zh'}, | |||
['zh-hk']={'zh-hk','zh-hant','zh-tw','zh-mo','zh'}, | |||
['zh-mo']={'zh-mo','zh-hant','zh-tw','zh-hk','zh'} | |||
} | } | ||
function | function this._main(args) | ||
local userlanguage=frame:callParserFunction{ name = 'int', args = {'lang'} } | local frame = mw.getCurrentFrame() | ||
local userlanguage = frame:callParserFunction{ name = 'int', args = {'lang'} } | |||
local fallback = this.fallbackList[userlanguage] | |||
if (not fallback) then | |||
fallback = this.fallbackList['zh'] | |||
end | end | ||
for _,langArgName in ipairs(fallback) do | for _,langArgName in ipairs(fallback) do | ||
if | if args[langArgName] ~= nil then | ||
return args[langArgName] | return args[langArgName] | ||
end | end | ||
| Line 38: | Line 28: | ||
end | end | ||
function | function this.main(frame) | ||
local getArgs | |||
local args | |||
if not getArgs then | if not getArgs then | ||
getArgs = require('Module:Arguments').getArgs | getArgs = require('Module:Arguments').getArgs | ||
end | end | ||
args = getArgs(frame, {parentFirst=true}) | args = getArgs(frame, {parentFirst=true}) | ||
return this._main(args) | |||
end | end | ||
return | return this | ||
Revision as of 00:06, 29 February 2020
This documentation is transcluded from Module:Conversion-zh/doc.
local this = {}
this.fallbackList = {
['zh']={'zh','zh-hant','zh-tw','zh-hk','zh-mo','zh-hans','zh-cn','zh-sg','zh-my'},
['zh-hans']={'zh-hans','zh-cn','zh-sg','zh-my','zh'},
['zh-cn']={'zh-cn','zh-hans','zh-my','zh-sg','zh'},
['zh-sg']={'zh-sg','zh-hans','zh-cn','zh-my','zh'},
['zh-my']={'zh-my','zh-hans','zh-cn','zh-sg','zh'},
['zh-hant']={'zh-hant','zh-tw','zh-hk','zh-mo','zh'},
['zh-tw']={'zh-tw','zh-hant','zh-hk','zh-mo','zh'},
['zh-hk']={'zh-hk','zh-hant','zh-tw','zh-mo','zh'},
['zh-mo']={'zh-mo','zh-hant','zh-tw','zh-hk','zh'}
}
function this._main(args)
local frame = mw.getCurrentFrame()
local userlanguage = frame:callParserFunction{ name = 'int', args = {'lang'} }
local fallback = this.fallbackList[userlanguage]
if (not fallback) then
fallback = this.fallbackList['zh']
end
for _,langArgName in ipairs(fallback) do
if args[langArgName] ~= nil then
return args[langArgName]
end
end
return ''
end
function this.main(frame)
local getArgs
local args
if not getArgs then
getArgs = require('Module:Arguments').getArgs
end
args = getArgs(frame, {parentFirst=true})
return this._main(args)
end
return this