Module:Lang: Difference between revisions
Jump to navigation
Jump to search
Content added Content deleted
No edit summary |
No edit summary |
||
Line 68: | Line 68: | ||
--[ |
--[[--------------------------< M A K E _ T E X T _ S P A N >-------------------------------------------------- |
||
]] |
|||
local function make_text_span (code, text, rtl, italic, size) |
|||
local span = {}; |
|||
⚫ | |||
⚫ | |||
⚫ | |||
table.insert (span, ' dir="rtl"'); -- for right to left languages |
|||
⚫ | |||
if is_set (size) then -- {{lang}} only |
|||
table.insert (span, table.concat ({'style="font-size:', size, ';"'})) |
|||
⚫ | |||
table.insert (span, '> '); -- close the opening span tag |
|||
⚫ | |||
⚫ | |||
⚫ | |||
table.insert (span, text); -- DEFAULT: text is not italicized |
|||
end |
|||
table.insert (span, '</span>'); -- close the span |
|||
⚫ | |||
⚫ | |||
end |
|||
return table.concat (span); -- put it all together and done |
|||
end |
|||
--[=[-------------------------< L A N G _ X X >---------------------------------------------------------------- |
|||
{{#invoke:lang|lang_xx|code=es|text={{{1}}}|link={{{links|{{{link}}}}}}|rtl={{{rtl}}}|nocat={{{nocat}}}}} |
{{#invoke:lang|lang_xx|code=es|text={{{1}}}|link={{{links|{{{link}}}}}}|rtl={{{rtl}}}|nocat={{{nocat}}}}} |
||
[[Spanish language|Spanish]]: <span lang="es" >''<span style="font-style:normal;">Don Quixote</span>''</span> |
|||
]=] |
]=] |
||
function p.lang_xx (frame) |
function p.lang_xx (frame) |
||
local args = getArgs(frame); |
local args = getArgs(frame); |
||
if not is_set (args.italic) then |
|||
args.italic = 'yes'; -- DEFAULT for {{lang-xx}} templates is to italicize |
|||
end |
|||
args.size = nil; -- size not supported in {{lang-xx}} |
|||
local out = {}; |
local out = {}; |
||
local language_name = mw.language.fetchLanguageName(args.code, mw.getContentLanguage():getCode()) |
local language_name = mw.language.fetchLanguageName(args.code, mw.getContentLanguage():getCode()); |
||
if not is_set (language_name) then |
|||
return 'error: unknown language'; |
|||
end |
|||
if 'no' == args.link then |
if 'no' == args.link then |
||
Line 89: | Line 126: | ||
end |
end |
||
table.insert (out, ': '); -- separator |
table.insert (out, ': '); -- separator |
||
⚫ | |||
table.insert (out, args.code |
table.insert (out, make_text_span (args.code, args.text, args.rtl, args.italic, args.size)) |
||
⚫ | |||
if is_set (args.lit) then -- translation (not supported in {{lang}}) |
|||
table.insert (out, ', <small>'); |
|||
⚫ | |||
table.insert (out, make_wikilink ('Literal translation', 'lit.')); |
|||
table.insert (out, " </small>'"); |
|||
⚫ | |||
table.insert (out, args. |
table.insert (out, args.lit); |
||
table.insert (out, "'"); |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
end |
end |
||