imported>28bytes fix |
(No difference)
|
Latest revision as of 23:52, 9 December 2018
gettitle edit source
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 edit source
- Formatting specifiers, in any order:
qto display the title excluding the disambiguator (if any) in quotestto display the title excluding the disambiguator (if any) in italics?to display this symbol after the article title: File:Symbol question.svgGto display this symbol after the article title: File:Symbol support vote.svgoto display ‹› after the article title
- Article title excluding the disamiguator (required)
- Disambiguator (optional)
Usage examples edit source
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) File:Symbol question.svg
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 "I.G.Y. (What a Beautiful World)" File:Symbol question.svg
For an album title without a parenthetical disambiguator:
{{#invoke:Sandbox/28bytes/acm|gettitle|?Gt|Move Like This}}- displays Move Like This File:Symbol question.svgFile:Symbol support vote.svg
local p = {}
p.gettitle = function( frame )
local fmter = frame.args[1]
local base = frame.args[2]
local disam = frame.args[3]
if fmter == nil then
fmter = "" --optional
end
if base == nil or base == "" then
error("Missing/empty parameter; see module documentation for usage")
return ""
end
if disam == nil then
disam = "" --optional
end
local c = ""
if mw.ustring.find(fmter,"q") ~= nil then
c = "\""
elseif mw.ustring.find(fmter,"t") ~= nil then
c = "''"
end
local title = ""
if disam == "" then
title = c .. "[[" .. base .. "]]" .. c
else
title = "[[" .. base .. " " .. disam .. "|" ..
c .. base .. c .. " " .. disam .. "]]"
end
local separator = " "
if mw.ustring.find(fmter,"o") ~= nil then
separator = separator .. "‹›"
end
if mw.ustring.find(fmter,"?") ~= nil then
separator = separator .. "[[File:Symbol question.svg|20px]]"
end
if mw.ustring.find(fmter,"G") ~= nil then
separator = separator .. "[[File:Symbol support vote.svg|20px]]"
end
return title .. separator .. " "
end
return p