Difference between revisions of "Module:Sandbox/28bytes/acm"
Jump to navigation
Jump to search
blackwiki>28bytes (module test) |
blackwiki>28bytes (module test) |
||
| Line 4: | Line 4: | ||
local c = {}; | local c = {}; | ||
| + | local base = frame.args[2]; | ||
| + | local disam = frame.args[3]; | ||
if mw.ustring.find(frame.args[1],"q") ~= 0 then | if mw.ustring.find(frame.args[1],"q") ~= 0 then | ||
| Line 11: | Line 13: | ||
end | end | ||
| − | if | + | if disam == {} then |
| − | return c .. "[[" .. | + | return c .. "[[" .. base .. "]]" .. c; |
else | else | ||
| − | return "[[" .. | + | return "[[" .. base .. " " .. disam .. "|" .. c .. base .. c .. " " .. disam .. "]]"; |
end | end | ||
Revision as of 07:43, 8 December 2018
gettitle
This function accepts an article title and formats it with quotes or italics as specified (useful for songs, albums and books.) It can also optionally add a "Did you know" indicator and/or Good Article indicator following the article title.
Arguments
- Formatting specifiers, in any order:
- Article title excluding the disamiguator (required)
- Disambiguator (optional)
Usage examples
For a song title with a parenthetical disambiguator that should not be in quotation marks:
{{#invoke:Sandbox/28bytes/acm|gettitle|?q|Cinema|(Yes song)}}- displays "Cinema" (Yes song)
For a song title with a parenthetical that should be in quotation marks, as it is part of the title:
{{#invoke:Sandbox/28bytes/acm|gettitle|?q|I.G.Y. (What a Beautiful World)}}- displays Lua error at line 18: attempt to concatenate local 'disam' (a nil value).
For an album title without a parenthetical disambiguator:
{{#invoke:Sandbox/28bytes/acm|gettitle|?Gt|Move Like This}}- displays Lua error at line 18: attempt to concatenate local 'disam' (a nil value).
local p = {};
p.gettitle = function( frame )
local c = {};
local base = frame.args[2];
local disam = frame.args[3];
if mw.ustring.find(frame.args[1],"q") ~= 0 then
c = "\"";
elseif mw.ustring.find(frame.args[1],"t") ~= 0 then
c = "''";
end
if disam == {} then
return c .. "[[" .. base .. "]]" .. c;
else
return "[[" .. base .. " " .. disam .. "|" .. c .. base .. c .. " " .. disam .. "]]";
end
end
return p